223
Celso Carneiro Ribeiro Introdução aos Modelos e Métodos de Otimização em Pesquisa Operacional Parte I – Programação Linear 2004

OtimizacaoONS-parte1

Embed Size (px)

DESCRIPTION

Otimização ONS

Citation preview

  • Celso Carneiro Ribeiro

    Introduo aos Modelos e Mtodos de Otimizao em Pesquisa Operacional

    Parte I Programao Linear

    2004

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 2

    Organizao

    Parte I: Programao linear (5 aulas) Parte II: Programao inteira (5 aulas) Parte III: Heursticas (4 aulas) Parte IV: Programao dinmica (2 aulas)

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 3

    Parte I Programao linear Origens Motivao Formulao de problemas Soluo grfica Forma cannica Geometria da PL Mtodo Simplex Dualidade Anlise de sensibilidade Laboratrio de programao linear

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 4

    Origens

    Fourier (1827): mtodo para resolver sistemas de inequaes lineares considerado como o primeiro estudo de programao linear Kantorovich (1939): formulao de problemas de

    programao linear em alocao tima de recursos em economias centralizadas Koopmans (1957): formulao de problemas de

    programao linear em economia Kantorovich e Koopmans receberam o prmio Nobel de

    Economia em 1975.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 5

    Origens

    von Neumann (1928): relao entre teoria dos jogos e dualidade em programao linear II Guerra Mundial: formulao e soluo de modelos de

    programao linear em problemas de planejamento de operaes militares, envolvendo aprovisionamento de suprimentos, programao de manuteno e treinamento de pilotos, distribuio de navios pelas foras no Pacfico, localizao de radares na costa da Inglaterra e a estratgia de caa aos U-boats no Mar Bltico Pesquisa Operacional: Operations Research

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 6

    Origens

    Dantzig (1947): descoberta do mtodo Simplex para a soluo de problemas de programao linear, coincidindo com o aparecimento dos primeiros computadores e viabilizando sua aplicao a problemas reais Hitchcock (1941): problema de transporte Kachian (1979): mtodo do elipside (polinomial) Karmarkar (1984): mtodo de pontos interiores

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 7

    Origens

    Ford e Fulkerson, anos 50: fluxos em redes Problema do caminho mais curto: dados um grafo (rede) e

    distncias associadas a seus arcos, encontrar o caminho mais curto entre dois ns especficos (Dijkstra, Floyd, Belmann)

    Problema do fluxo mximo: dados um grafo (rede) e capacidades associadas a seus arcos, encontrar o maior fluxo que pode ser enviado de um n a outro

    Problema de fluxo mnimo: dados um grafo (rede), capacidades e custos associados a seus arcos e ofertas e demandas associadas a seus ns, encontrar um fluxo de custo mnimo que satisfaa ofertas, demandas e restries de capacidade

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 8

    Origens

    Primeira tentativa de resolver o problema do caixeiro viajante (Dantzig, 1954): 49 cidades (Simplex + cortes) Gomory, anos 60: problemas de programao linear

    inteira (as variveis s podem assumir valores inteiros) Anos 60: primeiros resolvedores de programao linear Atuais resolvedores podem tratar de forma exata

    problemas com algumas centenas de milhares de variveis e restries: XPRESS, CPLEX, LINDO, EXCEL, etc. Maior TSP resolvido atualmente: 15.112 cidades

    (110 processadores, 26 anos de processamento) http://www.math.princeton.edu/tsp/d15sol/

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 9

    Bibliografia

    G. Dantzig, Linear programming and extensions, 1963 V. Chvatal, Linear progamming, 1983 M. Bazaraa, J. Jarvis e H. Sherali, Linear programming

    and network flows, 1990 D. Bertsimas e J. Tsitsiklis, Introduction to Linear

    Optimization, 1997 Transparncias disponveis em:

    http://www.inf.puc-rio.br/~celso/grupo_de_pesquisa.htm

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 10

    Motivao

    Uma empresa produz dois tipos de fsforos. Esta empresa tem um lucro de 3 (x100 u.m.) em cada caixa de fsforos longos e de 2 (x100 u.m.) em cada caixa de fsforos curtos. Fsforos dos dois tipos so feitos por uma nica mquina, que pode produzir 9 (x100.000) caixas de fsforos por ano. Para produzir e vender os fsforos, a empresa precisa de madeira e de caixas. So necessrios 3 m3 de madeira para cada caixa de fsforos longos e 1 m3

    de madeira para cada caixa de fsforos curtos.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 11

    Motivao

    A empresa possui 18 (x100.000) m3 de madeira para usar durante o prximo ano. Dispe ainda de 7 (x100.000) caixas para fsforos longos e 6 (x100.000) caixas para fsforos curtos. A empresa deseja maximizar seus lucros com a venda de fsforos no prximo ano, sabendo que toda sua produo pode ser vendida. Como formular e resolver este problema atravs de um

    modelo matemtico?

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 12

    Motivao

    Variveis de deciso:x1: nmero de caixas (x100.000) de fsforos longosx2: nmero de caixas (x100.000) de fsforos curtos

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 13

    Motivao

    Objetivo da empresa:

    funo objetivo

    Lucro em uma caixa de fsforos longos = 3 (x100)Lucro em x1 caixas de fsforos longos = 3 x1 (x100)Lucro em x2 caixas de fsforos curtos = 2 x2 (x100)Lucro total a ser maximizado = 3 x1 + 2 x2

    A funo objetivo sozinha define a programao da produo?

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 14

    Motivao

    Restries:

    Quantidade de madeira disponvel:

    Capacidade mxima anual de produo da mquina:x1 + x2 9 (x100.000)

    3x1 + x2 18 (x100.000)Nmero mximo de caixas disponveis:

    x1 7 (x100.000)x2 6 (x100.000)

    No-negatividade: x1 0 e x2 0

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 15

    Motivao

    Problema de programao linear:

    0,67

    1839

    23

    21

    2

    1

    21

    21

    21

    ++

    +

    xxxx

    xxxx

    xx:a sujeito

    maximizar

    Programao linear: todas as relaes entre variveis so lineares (funo objetivo e restries)

    restrio (1)

    restrio (2)

    restrio (3)

    restrio (4)

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 16

    Motivao

    Como representar no plano uma desigualdade?

    x1

    x2 x1 0

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 17

    Motivao

    Como representar no plano uma desigualdade?

    x1

    x2

    x2 11

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 18

    Motivao

    Como representar no plano uma igualdade?

    x1

    x2

    x1 + x2 = 11

    1

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 19

    Motivao

    x1

    x2

    Como representar no plano uma desigualdade?

    1

    1

    x1 + x2 1

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 20

    Motivao

    x1

    x2

    Como representar no plano uma desigualdade?

    1

    1

    x1 + x2 1

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 21

    Motivao

    Como resolver aquele problema de programao linear? Resolver: determinar os valores timos das variveis de

    deciso Soluo grfica: mtodo mais simples para problemas com

    duas variveis apenas Representar e tratar o problema no plano

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 22

    Motivao

    Restries de no-negatividade:

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 23

    Motivao

    No-negatividade e restries (1) a (4): regio vivel

    A restrio (3) desnecessria ou redundante.

    0,67

    1839

    23

    21

    2

    1

    21

    21

    21

    ++

    +

    xxxx

    xxxx

    xx:a sujeito

    maximizar

    restrio (1)

    restrio (2)

    restrio (3)

    restrio (4)

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 24

    Motivao

    Maximizao da funo objetivo:

    21 23 xx +maximizar

    normal=(3,2)

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 25

    Motivao

    Maximizao da funo objetivo:

    21 23 xx +maximizar

    023 21 =+ xx

    1223 21 =+ xx

    5,2223 21 =+ xx

    5,421 == xx(mximo)

    021 == xx(mnimo)

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 26

    Motivao

    Visualizao do modelo em trs dimenses:

    21 23 xx +=z

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 27

    Motivao

    Extenso do modelo com uma restrio adicional: devido a restries contratuais, a empresa deve fornecer um mnimo de 5 (x100.000) caixas de fsforos no prximo ano.

    x1 + x2 5 (x100.000)

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 28

    Motivao

    Novo modelo de programao linear:

    0,5

    67

    1839

    23

    21

    21

    2

    1

    21

    21

    21

    +

    ++

    +

    xxxx

    xx

    xxxx

    xx:a sujeito

    maximizar

    restrio (1)

    restrio (2)

    restrio (3)

    restrio (4)

    restrio (5)

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 29

    Motivao

    Nova regio vivel:

    0,5

    67

    1839

    23

    21

    21

    2

    1

    21

    21

    21

    +

    ++

    +

    xxxx

    xx

    xxxx

    xx:a sujeito

    maximizar

    restrio (1)

    restrio (2)

    restrio (3)

    restrio (4)

    restrio (5)

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 30

    Formulao de problemas

    Princpios bsicos da programao linear: Proporcionalidade: se o valor de uma varivel multiplicado por

    uma constante, sua contribuio para a funo objetivo e para cada restrio tambm multiplicada por esta mesmaconstante.

    Aditividade: o custo total a soma dos custos individuais, assim como o valor total de uma restrio a soma dos valores individuais de cada atividade.

    Divisibilidade: o valor de cada varivel pode assumir qualquer valor fracionrio.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 31

    Formulao de problemas

    (I) Problema das ligas metlicas: Uma metalrgica deseja maximizar sua receita bruta. A tabela a seguir ilustra a proporo de cada material na mistura para a obteno das ligas passveis de fabricao, assim como a disponibilidade de cada matria prima (em toneladas) e os preos de venda por tonelada de cada liga. Qual deve ser a quantidade produzida de cada liga?

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 32

    Formulao de problemas

    5.0003.000Preo

    15 ton.0,50,25Chumbo

    11 ton.0,30,25Zinco

    16 ton.0,20,5Cobre

    DisponibilidadeLiga 2Liga 1

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 33

    Formulao de problemas

    Variveis de deciso:x1: quantidade produzida da liga 1 (em toneladas)x2: quantidade produzida da liga 2 (em toneladas)

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 34

    Formulao de problemas

    Funo objetivo:maximizar 3.000 x1 + 5.000 x2 Disponibilidade das matrias primas:

    0,5 x1 + 0,2 x2 16 cobre0,25 x1 + 0,3 x2 11 zinco 0,25 x1 + 0,5 x2 15 chumbo Todas as quantidades produzidas so no-negativas:

    x1, x2 0

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 35

    Formulao de problemas

    (II) Problema da dieta: Este problema tem diversas verses, aborda-se aqui a mais simples. Suponha que uma dieta alimentar est restrita a leite desnatado, carne magra, peixe e salada verde. Os requisitos nutricionais so expressos em quantidades mnimas (em miligramas) das vitaminas A, C e D. A tabela a seguir resume a quantidade disponvel de cada vitamina em cada alimento, a necessidade diria de cada vitamina e o custo de cada alimento. Determine uma dieta de custo mnimo que satisfaa as necessidades alimentares.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 36

    Formulao de problemas

    11,542Custo

    250 mg80 mg10 mg70 mg80 mgD

    70 mg30 mg10 mg20 mg50 mgC

    11 mg20 mg10 mg2 mg2 mgA

    Requisito mnimo

    Salada (100g)

    Peixe (kg)

    Carne (kg)

    Leite (litro)

    Vitamina

    (slide 178)

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 37

    Formulao de problemas

    Variveis de deciso:xi: quantidade ingerida do alimento i {l, c, p, s} Funo objetivo:

    minimizar 2 xl + 4 xc + 1,5 xp + xs Restries:

    2 xl + 2 xc + 10 xp + 20 xs 1150 xl + 20 xc + 10 xp + 30 xs 7080 xl + 70 xc + 10 xp + 80 xs 250xl, xc, xp, xs 0

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 38

    Formulao de problemas

    (III) Problema de capitalizao de investimentos: Um projeto de construo estadual exige recursos financeiros ao longo dos prximos quatro anos de 2 milhes, 4 milhes, 8 milhes e 5 milhes, respectivamente. Assume-se que todos os recursos so necessrios e recebidos no incio do ano. A administrao estadual decide vender bnus para cobrir as demandas anuais de recursos. Todos estes bnus sero resgatados numa certa data futura distante, independentemente da data de sua emisso. As taxas anuais de juros projetadas para os prximos quatro anos so 7%, 6%, 6,5% e 7,5%, respectivamente.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 39

    Formulao de problemas

    O pagamento dos juros comea um ano aps o fim do projeto e continua ao longo de 20 anos, quando os bnus so resgatados. Durante este perodo, as taxas de juros a curto prazo (o que a administrao pode receber sobre depsitos) so estimadas em 6%, 5,5% e 4,5% (a administrao no pretende investir em depsitos de curto prazo ao longo do quarto ano). Qual deve ser a estratgia tima da administrao para vender bnus e fazer depsitos de curto prazo para poder completar seu projeto de construo?

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 40

    Formulao de problemas

    Variveis de deciso:xi: valor dos bnus vendidos no incio do ano i=1,...,4Quando bnus so vendidos, uma parte dos recursos apurados so aplicados em depsitos de curto prazo para serem usados nos anos seguintes, enquanto o restante usado no projeto de construo.yi: valor aplicado em depsito de curto prazo no incio do ano i=1,...,3

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 41

    Formulao de problemas

    Restries:A diferena entre o valor apurado com a venda de bnus no ano 1 e o valor aplicado em depsito de curto pazo neste ano deve ser suficiente para cobrir os recursos necessrios para o projeto neste ano:

    x1 y1 2Esta restrio equivalente igualdade

    x1 y1 = 2,j que sobras de recursos sero sempre aplicadas em depsitos de curto prazo.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 42

    Formulao de problemas

    Considera-se agora o incio do segundo ano. Alm dos bnus vendidos e dos depsitos de curto prazo efetuados, deve-se considerar o resgate e os juros do depsito de curto prazo efetuado no ano 1:

    1,06y1 + x2 y2 = 4Nos anos seguintes:

    1,055y2 + x3 y3 = 81,045y3 + x4 = 5

    Restries de no-negatividade: x1, x2, x3, x4, y1, y2 0

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 43

    Formulao de problemas

    Objetivo da administrao: desconsiderando-se a taxa de inflao a cada ano, minimizar o valor total pago de juros ao longo dos 20 anos subseqentes a cada venda de bnus

    Juros dos bnus vendidos no ano 1: 20 x 0,07 x1Juros dos bnus vendidos no ano 2: 20 x 0,06 x2Juros dos bnus vendidos no ano 3: 20 x 0,065 x3Juros dos bnus vendidos no ano 4: 20 x 0,075 x4

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 44

    Formulao de problemas

    Modelo de programao linear completo:

    0,,,,,,5045,1

    8055,1406,1

    2

    )075,0(20)065,0(20)06,0(20)07,0(20

    3214321

    43

    332

    221

    11

    4321

    =+

    =+=+

    =

    +++

    yyyxxxxxy

    yxyyxy

    yx

    xxxx:a sujeito

    minimizar

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 45

    Formulao de problemas

    (IV) Problema de planejamento da produo: Uma empresa fabrica n produtos usando m matrias primas. Seja bi a quantidade disponvel da matria prima i=1,...,m. Cada unidade do produto j=1,...,n requer aij unidades da matria prima i=1,...,m para sua produo e resulta em um lucro cjpor unidade produzida. Qual deve ser a quantidade produzida de cada produto de forma a maximizar o lucro da empresa? Variveis de deciso:

    xj: quantidade produzida do produto j=1,,n

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 46

    Formulao de problemas

    Modelo:

    0,...,,...

    .........

    ...

    21

    221

    222221

    112121

    2211

    +++

    ++++++

    +++

    n

    mnmnm

    nn

    nn

    nn

    xxxbxaxax

    bxaxaxbxaxax

    xcxcxc

    m

    21

    11

    a

    a

    a

    : a sujeito

    maximizar

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 47

    Formulao de problemas

    (V) Problema de transporte: Uma empresa produz um determinado produto em m fbricas distintas e afastadas, para atender a demanda de n cidades diferentes. A capacidade de produo da fbrica i no mximo igual a ai, i=1,...,m. A demanda da cidade j igual a bj, j=1,..,n. Sabendo-se que o custo de envio de uma unidade do produto da fbrica i para a cidade j igual a cij, determinar a quantidade que deve ser enviada de cada fbrica para cada cidade, de modo a minimizar os custos de transporte desta empresa.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 48

    Formulao de problemas

    1

    m

    2

    a1

    a2

    am

    1

    n

    2

    b1

    b2

    bn

    11

    cmn

    c

    Variveis de deciso:xij: quantidade enviada da fbrica i para a cidade j

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 49

    Formulao de problemas

    Modelo:

    njmixbxxx

    bxxx

    axxx

    axxx

    xcxcxcxc

    ij

    nmnnn

    m

    mmnm

    n

    mnmnmmnn

    ,...,1;,...,10...

    ......

    ......

    ......

    .........

    21

    112111

    2

    111211

    11111111

    ===+++

    =+++

    +++

    +++

    ++++++

    : a sujeito

    minimizar

    m1

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 50

    Formulao de problemas

    (VI) Problema de planejamento de capacidade: Um estado deseja fazer seu planejamento de capacidade instalada. A previso de demanda de capacidade igual a dt MW para cada ano t=1,...,T. A capacidade existente em usinas a leo e que estar disponvel em cada ano t=1,...,T igual a et. H duas alternativas possveis para a expanso de capacidade: usinas nucleares e usinas a carvo. H um custo de capital igual a ct por MW de usinas a carvo que tornam-se disponveis no ano t. O custo de capital correspondente para usinas nucleares nt. A capacidade

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 51

    Formulao de problemas

    em usinas nucleares no pode ser superior a 20% da capacidade total instalada. Usinas a carvo tm vida til de 20 anos, enquanto usinas nucleares tm vida tl de 15 anos. Deseja-se planejar a expanso de custo mnimo. Variveis de deciso:

    xt: capacidade instalada em usinas a carvo disponibilizada no incio do ano tyt: capacidade instalada em usinas nucleares disponibilizada no incio do ano t

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 52

    Formulao de problemas

    Funo objetivo: custo da expanso de capacidade:

    Capacidade instalada em usinas a carvo disponibilizada no incio do ano t=1,...,T:

    Capacidade instalada em usinas nucleares disponibilizadano incio do ano t=1,,T:

    =

    +T

    ttttt ynxc

    1)(minimizar

    =

    =t

    tsst xw

    }19,1max{

    =

    =t

    tsst yz

    }14,1max{

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 53

    Formulao de problemas

    Atendimento demanda no ano t=1,...,T:

    Frao da capacidade instalada em nucleares no ano t=1,...,T:

    tttt dezw ++

    2,0++ tttt

    ezwz

    02,02,08,0 ttt ewz

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 54

    Formulao de problemas

    0,2,02,08,0

    0

    0

    )(

    }14,1max{

    }19,1max{

    1

    +=

    =

    +

    =

    =

    =

    tt

    ttt

    tttt

    t

    tsst

    t

    tsst

    T

    ttttt

    yxewz

    edzw

    yz

    xw

    ynxcminimizar

    Tt ,...,1=

    Tt ,...,1=

    Tt ,...,1=Tt ,...,1=Tt ,...,1=

    Modelo:

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 55

    Formulao de problemas

    (VII) Problema de plantio: Uma cooperativa agrcola opera trs fazendas. A produo total de cada fazenda depende da rea disponvel para o plantio e da gua para irrigao. A cooperativa procura diversificar sua produo e vai plantar este ano trs culturas em cada fazenda: milho, arroz e feijo. Cada cultura demanda uma certa quantidade de gua. So estabelecidos limites de rea plantada para cada cultura. Para evitar concorrncia entre os cooperados, acordou-se que a proporo de rea cultivada seja a mesma para cada fazenda. Determinar a rea plantada de cada cultura em cada fazenda de modo a otimizar o lucro da cooperativa.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 56

    Formulao de problemas

    9503503

    2.2006502

    1.8004001

    gua (litros)rea (acres)Fazenda

    1.8003,5400Feijo

    4.0004880Arroz

    5.0005,5660Milho

    Lucro (por acre)Agua (litros por acre)rea mx. (acres)Cultura

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 57

    Formulao de problemas

    Variveis de deciso:xij: rea da fazenda i=1,2,3 destinada ao plantio da cultura j {m, a, f} Funo objetivo:

    maximizar 5.000 (x1m + x2m + x3m) + 4.000 (x1a + x2a + x3a) + 1.800 (x1f + x2f + x3f) Restries de no-negatividade:

    xim, xia, xif 0, i=1,2,3

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 58

    Formulao de problemas

    Restries associadas rea de cultivo:x1m + x1a + x1f 400x2m + x2a + x2f 650x3m + x3a + x3f 350 Restries associadas ao consumo de gua:

    5,5 x1m + 4 x1a + 3,5 x1f 1.8005,5 x2m + 4 x2a + 3,5 x2f 2.2005,5 x3m + 4 x3a + 3,5 x3f 950

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 59

    Formulao de problemas

    Restries associadas ao plantio por cultura:x1m + x2m + x3m 660x1a + x2a + x3a 880x1f + x2f + x3f 400 Restries associadas proporo de rea cultivada:

    (x1m + x1a + xif)/400 = (x2m + x2a + x2f)/650 (x2m + x2a + x2f)/650 = (x3m + x3a + x3f)/350

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 60

    Formulao de problemas

    (VIII) Problema da mistura de petrleos: Uma refinaria processa vrios tipos de petrleo. Cada tipo de petrleo possui uma planilha de custos diferentes, expressando condies de transporte e preos na origem. Cada tipo de petrleo representa uma configurao diferente de subprodutos para a gasolina. Na medida em que cada tipo de petrleo utilizado na mistura para produo de gasolina, possvel programar a octanagem e outros requisitos de cada tipo de gasolina produzida. Estes requisitos definem o tipo de gasolina obtida.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 61

    Formulao de problemas

    Supondo-se que a refinaria utiliza quatro tipos de petrleo e deseja produzir trs tipos de gasolina (amarela, azul e super), programar a mistura dos tipos de petrleo de modo a maximizar o lucro obtido (diferena entre as vendas e o custo de petrleo). Variveis de deciso:

    xij: quantidade de barris de petrleo do tipo j=1,2,3,4 destinados produo de gasolina do tipo i=1,2,3

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 62

    Formulao de problemas

    271.8004204.2003242.2002193.5001

    Custo (barril/dia)Disponibilidade (barris/dia)Petrleo

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 63

    Formulao de problemas

    22No mais que 70% do petrleo (1)Amarela (3)

    28No mais que 30% do petrleo (1)No menos que 10% do petrleo (2)

    Azul (2)

    35No mais que 30% do petrleo (1)No menos que 40% do petrleo (2)No mais que 50% do petrleo (3)

    Super (1)Preo (por barril)EspecificaesGasolina

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 64

    Formulao de problemas

    Funo objetivo:maximizar 35 (x11 + x12 + x13 + x14) + 28 (x21 + x22 + x23 + x24) + 22 (x31 + x32 + x33 + x34) 19 (x11 + x21+x31) 24 (x12 + x22 + x32) 20 (x13 + x23 + x33) 27 (x14 + x24 + x34) Restries associadas quantidade de petrleo disponvel:

    x11 + x21 + x31 3.500x12 + x22 + x32 2.200x13 + x23 + x33 4.200x14 + x24 + x34 1.800

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 65

    Formulao de problemas

    Restries associadas s especificaes da mistura:x11 0.3 (x11 + x12 + x13 + x14) gasolina superx12 0.4 (x11 + x12 + x13 + x14)x13 0.5 (x11 + x12 + x13 + x14)x21 0.3 (x21 + x22 + x23 + x24) gasolina azulx22 0.1 (x21 + x22 + x23 + x24)x31 0.7 (x31 + x32 + x33 + x34) gasolina amarela Restries de no-negatividade:

    xij 0, i=1,2,3; j=1,2,3,4

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 66

    Formulao de problemas

    O que muda na formulao do problema anterior se a obteno de gasolina no tratar-se simplesmente de uma mistura, mas que ainda exista um fator tecnolgico aij que indique o nmero de barris de gasolina do tipo i=1,2,3 obtidos a partir de cada barril de petrleo do tipo j=1,2,3,4 utilizado na mistura? Funo objetivo:

    maximizar 35 (a11x11 + a12x12 + a13x13 + a14x14) + 28 (a21x21 + a22x22 + a23x23 + a24x24) + 22 (a31x31 + a32x32 + a33x33 + a34x34) 19 (x11 + x21+x31) 24 (x12 + x22 + x32) 20 (x13 + x23 + x33) 27 (x14 + x24 + x34)

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 67

    Formulao de problemas

    (IX) Problema de corte linear: Uma fbrica necessita cortar uma fita de ao de 12 cm de largura em tiras de 2,4 cm, 3,4 cm e 4,5 cm de largura. As necessidades globais de tiras de cada comprimento so as seguintes:

    80004,53

    45003,42

    25002,41

    Demanda (m)Largura (cm)Tipo

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 68

    Formulao de problemas

    Formule um modelo que permita otimizar o consumo da fita a ser cortada, minimizando a perda de material.

    0,712071,803060,620150,402240,310331,4013200051

    Perda (cm)Tiras 3Tiras 2Tiras 1Padro

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 69

    Formulao de problemas

    Exemplo: Padro 5

    Perda = 0,6cm

    4,5cm 2,4cm(3)

    4,5cm(3) (1)

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 70

    Formulao de problemas

    Variveis de deciso:xi: comprimento cortado segundo o padro i=1,...,7 Restries de demanda por tipo de fita:

    5 x1 + 3 x2 + 3 x3 + 2 x4 + x5 2500 tipo 1x2 + 2 x4 + 3 x6 + 2 x7 4500 tipo 2x3 + 2 x5 + x7 8000 tipo 3

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 71

    Formulao de problemas

    Funo objetivo:perdas por sobras + perdas por fitas desnecessriasminimizar 1,4 x2 + 0,3 x3 + 0,4 x4 + 0,6 x5 + 1,8 x6 + 0,7 x7 ++ 2,4 (5 x1 + 3 x2 + 3 x3 + 2 x4 + x5 - 2500) + + 3,4 (x2 + 2 x4 + 3 x6 + 2 x7 - 4500) ++ 4,5 (x3 + 2 x5 + x7 - 8000)ou comprimento total cortadominimizar x1 + x2 + x3 + x4 + x5 + x6 + x7

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 72

    Formulao de problemas

    (X) Problema de escalonamento de horrios: Um hospital deseja planejar os horrios das enfermeiras de seu turno da noite. A demanda por enfermeiras no turno da noite no dia j=1,...,7 da semana um nmero inteiro dj. Cada enfermeira trabalha cinco dias consecutivos e descansa nos dois dias seguintes. O objetivo consiste em minimizar o nmero de enfermeiras contratadas. Variveis de deciso:

    xj: nmero de enfermeiras que comeam seu horrio no dia j=1,...,7

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 73

    Formulao de problemas

    Modelo:

    0,,,,,, 7654321776543

    665432

    554321

    474321

    376321

    276521

    176541

    7654321

    ++++++++++++++++++++++++++++

    ++++++

    xxxxxxxdxxxxxdxxxxxdxxxxxdxxxxxdxxxxxdxxxxxdxxxxx

    xxxxxxx:a sujeito

    minimizar

    inteiros 7654321 ,,,,,, xxxxxxx

    Problema de programao linear inteira: seu valor timo superior ao do problema linear associado, pois contm restries adicionais (todas as variveis devem assumir valores inteiros).

    O nmero de enfermeiras nunca pode ser fracionrio!

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 74

    Formulao de problemas

    (XI) Problema da mochila: Um viajante dispe de n itens que deve selecionar para colocar em uma mochila que est sendo preparada para uma viagem. O peso do item j igual aj e o lucro obtido caso ele seja selecionado e colocado na mochila igual a cj, para j=1,,n. Quais itens devem ser selecionados, sabendo-se que o peso mximo que o viajante pode carregar na mochila igual a b? Variveis de deciso:

    xj: quantidade selecionada do item j

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 75

    Formulao de problemas

    Caso (1): os itens podem ser fracionados e no h limite na quantidade selecionada

    njx

    bxa

    xc

    j

    jj

    j

    n

    jj

    ,...,1,0

    1

    =

    =

    =

    : a sujeito

    maximizar

    n

    1j

    Problema de programao linear Soluo trivial? Selecionar o item j* cuja razo cj/aj mxima e fazer

    xj*=b/aj*, xj = 0 para os demais.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 76

    Formulao de problemas

    Caso (2): os itens podem ser fracionados e no mximo uma unidade de cada item pode ser selecionada

    njx

    bxa

    xc

    j

    jj

    j

    n

    jj

    ,...,1,01

    1

    =

    =

    =

    : a sujeito

    maximizar

    n

    1j Problema de programao linear Soluo trivial? Ordenar os itens pela razo cj/aj e fazer xj=1 enquanto

    couber, fracionar o objeto seguinte e fazer xj = 0 para os demais.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 77

    Formulao de problemas

    Exemplo:

    1,2,3,4j

    :a sujeito

    6maximizar

    =+++

    +++

    ,01422

    48

    4321

    4321

    jxxxxxxxxx

    Maior razo: c1/a1= 6/1= 6 x1=1 Segunda maior razo: c2/a2 = 8/2 = 4 x2=1 Terceira maior razo: c3/a3 = 4/2 = 2 x3=0,5 x4 = 0

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 78

    Formulao de problemas

    Caso (3): os itens no podem ser fracionados e no mximo uma unidade de cada item pode ser selecionada

    { } njxbxa

    xc

    j

    jj

    j

    n

    jj

    ,...,1,1,0

    1

    =

    =

    =

    : a sujeito

    maximizar

    n

    1j

    Problema de programao inteira Soluo trivial?

    No!!!

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 79

    Formulao de problemas

    Exemplo:

    { } 1,2,3j 3 :a sujeito

    12maximizar

    =++

    ++

    ,1,0422

    67

    321

    321

    jxxxxxxx

    Maior razo: c1/a1= 12/3 = 4 x1=1 x2 = x3 = 0 Esta soluo tima?

    No, o problema de programao inteira mais difcil!!!(lucro = 12) Soluo tima: x1 = 0, x2 = 1, x3 = 1 (lucro = 13)

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 80

    Soluo grfica

    00

    1826

    52

    2

    1

    21

    21

    21

    +

    +

    xx

    xxxx

    xxminimizar

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 81

    Soluo grfica

    A normal c=(c1,c2) da funo objetivo sempre aponta para a direo de crescimento da funo.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 82

    Soluo grfica

    0,82

    63

    21

    21

    21

    21

    +

    +

    xxxx

    xxxxminimizar

    A normal c=(c1,c2) da funo objetivo sempre aponta para a direo de crescimento da funo.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 83

    Soluo grfica

    0,3232

    21

    21

    21

    21

    ++

    xxxxxx

    xxminimizar

    A normal c=(c1,c2) da funo objetivo sempre aponta para a direo de crescimento da funo.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 84

    Soluo grfica

    0,,111

    321

    3

    2

    1

    321

    xxxxxx

    xxxminimizar

    A normal c=(c1,c2 ,c3) da funo objetivo sempre aponta para a direo de crescimento da funo.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 85

    Soluo grfica

    Em todos os exemplos anteriores, a regio vivel era limitada e a soluo tima era nica: correspondia a um ponto extremo da regio vivel e seu valor era finito. Ser que isto ocorre sempre?

    No!!! Outras situaes possveis:

    Problemas com mltiplas solues timas Problemas com soluo ilimitada Problemas inviveis

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 86

    Soluo grfica

    0,1

    21

    21

    221

    +

    +

    xxxx

    xcx1cminimizar

    z

    c=(1,1): soluo tima nica (0,0) c=(1,0): conjunto limitado com mltiplas

    solues timas c=(0,1): conjunto ilimitado com mltiplas

    solues timas c=(-1,-1): soluo tima ilimitada restrio adicional x1+ x2 -2: problema

    invivelA normal c=(c1,c2) aponta para a direo de crescimento

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 87

    Soluo grfica

    Soluo tima finita nica:

    Regio vivel limitada Regio vivel no-limitada

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 88

    Soluo grfica

    Solues timas finitas alternativas:

    Regio vivel limitada Regio vivel no-limitada

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 89

    Soluo grfica

    Valor timo ilimitado:

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 90

    Soluo grfica

    Em trs dimenses:

    Generalizao: mtodo Simplex

    Visitar os vrtices do politopo que representa a regio vivel at chegar a um

    vrtice timo

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 91

    Forma cannica de um PPL

    0,...,,...

    .........

    ...

    21

    221

    222221

    112121

    2211

    =+++

    =+++=+++

    +++

    n

    mnmnm

    nn

    nn

    nn

    xxxbxaxax

    bxaxaxbxaxax

    xcxcxc

    m

    21

    11

    a

    a

    a

    : a sujeito

    minimizar

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 92

    Forma cannica de um PPL

    Variveis:Dados:

    1

    2

    1

    21

    22221

    112

    121

    ...

    ...............

    ...

    ...),...,,

    =

    =

    =

    mm

    nmmnmm

    n

    n

    nn

    b

    bb

    b

    aaa

    aaaaaa

    A

    cccc

    11

    (

    1

    2

    1

    ...

    =

    nnx

    xx

    x

    Modelo:

    :a sujeito

    minimizar

    0..

    =

    xbxA

    xc

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 93

    Forma cannica de um PPL

    Variveis irrestritas ou livres: qualquer nmero real pode ser escrito com a diferena entre dois nmeros positivos Transformar a varivel em: sinal em irrestrita jx

    0

    0

    =

    +

    +

    j

    j

    jjj

    x

    x

    xxx

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 94

    Forma cannica de um PPL

    Eliminao de desigualdades: dada uma desigualdade do tipo , transform-la em:

    Eliminao de desigualdades: dada uma desigualdade do tipo , transform-la em:

    Em ambos os casos, chamada de varivel de folga.

    in

    j jijbxa =1

    01

    =+ =

    i

    in

    j jij

    s

    bsxa

    in

    j jijbxa =1

    01

    = =

    i

    in

    j jij

    s

    bsxa

    is

    i

    i

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 95

    Forma cannica de um PPL

    Uma igualdade pode ser transformada em duas desigualdades:

    in

    j jijbxa =1inj jij bxa = =1 equivalente ai

    n

    j jijbxa =1i

    n

    j jijbxa =1

    in

    j jijbxa =1 )(

    ou ainda a

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 96

    Forma cannica de um PPL

    Um problema de minimizao equivalente a um de maximizao:

    x*

    f(x)

    -f(x)

    -f(x*)

    f(x*)

    min f(x) = max {f(x)}Ento:

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 97

    Forma cannica de um PPL

    Valores absolutos na funo objetivo (custos positivos):

    Por definio, |xj| o menor nmero positivo zj tal que xj zj e xj zj. Ento, o problema acima equivale a:

    :a sujeito

    minimizar n

    1j

    bxA

    xc jj

    =.

    njzxnjzx

    bxA

    zc

    jj

    jj

    jj

    ,...,1

    ,...,1.

    ==

    =

    :a sujeito

    minimizar n

    1j

    jc

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 98

    Forma cannica de um PPL

    Valores absolutos na funo objetivo (custos positivos):

    Alternativamente, inicialmente substituir a varivelirrestrita por:

    :a sujeito

    minimizar n

    1j

    bxA

    xc jj

    =.jc

    0

    0

    =

    +

    +

    j

    j

    jjj

    x

    x

    xxxjx

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 99

    Forma cannica de um PPL

    A idia garantir que ou , dependendo do valor de ser positivo ou negativo. Em seguida, substituir por Ento, alternativamente o problema anterior equivale a:

    jx .+ + jj xx

    += jj xx = jj xxjx

    njxxbxAxA

    xxc

    jj

    jjj

    ,...,10,..

    )(

    =

    +

    +

    +=

    +

    :a sujeito

    minimizar n

    1jIsto porque em uma soluo vivel tima necessariamente pelo menos uma das componentes ou ser nula.

    +jx

    jx

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 100

    Forma cannica de um PPL

    Qualquer problema de programao linear, envolvendo igualdades ou desigualdades variveis restritas ou irrestritas em sinal minimizao ou maximizao valores absolutos funes lineares por partes

    pode ser reformulado e colocado na forma cannica.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 101

    Geometria da PL

    Um poliedro um conjunto que pode ser descrito da forma {x Rn: A.xb}, onde A uma matrix mxn e b um vetor mx1. O conjunto das solues viveis de um PPL pode ser

    descrito por restries da forma A.xb e portanto um poliedro (mesmo na forma cannica A.x=b e x0). Seja a um vetor nx1 no-nulo. Ento,

    O conjunto {x Rn: a.x=b} um hiperplano. O conjunto {x Rn: a.x b} um semi-espao.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 102

    Geometria da PL

    Exemplo: hiperplano em R2

    x1

    x2

    x1 + x2 = 11

    1

    normal (1,1)

    x1 + x2 > 1x1 + x2 < 1

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 103

    Geometria da PL

    x1

    x2

    Exemplo: semi-espao em R2

    1

    1

    x1 + x2 1equivalente a -x1 -x2 -1

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 104

    Geometria da PL

    Um conjunto S convexo se para qualquer par de elementos x,y S e qualquer [0,1], ento .x+(1- ).y S.

    No-convexo

    x

    y

    Convexox

    y

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 105

    Geometria da PL

    A regio vivel de um problema de programao linear um conjunto convexo.

    a 1.x=

    b 1

    a2.x=b2

    a 3.x=

    b 3

    a4 .x=b

    4

    a.x=b

    a.xb

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 106

    Geometria da PL

    Dados os vetores x1, x2, ..., xk Rn e nmeros escalares no-negativos satisfazendo 1 + 2 + ... + k = 1, diz-se que o vetor 1.x1 + 2.x2 + ... + k.xk uma combinao linear convexa de x1, x2, ..., xk. A envoltria convexa dos vetores x1, x2, ..., xk o conjunto

    formado por todas suas combinaes convexas:

    x1

    x3

    x2

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 107

    Geometria da PL

    Um vetor x P um ponto extremo do poliedro P se no existem dois vetores y,z P diferentes de x tais que x seja uma combinao linear de y e z.

    x1

    x2 x3

    x4

    Pw

    w no ponto extremo

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 108

    Geometria da PL

    O conjunto das solues viveis de um PPL corresponde envoltria convexa de seus pontos extremos:

    a 1.x=

    b 1

    a2.x=b2

    a 3.x=

    b 3

    a4 .x=b

    4

    x1

    x2 x3

    x4

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 109

    Geometria da PL

    Um vetor x P um vrtice do poliedro P se existe um vetor c de dimenso 1xn tal que c.x < c.y para qualquery P diferente de x.

    x1

    x2 x3

    x4

    Pw w no vrtice, pois

    qualquer hiperplano passando por w intercepta o poliedro em outros pontos.

    x1 vrtice, pois existe um hiperplano passando por x1

    que no intercepta o poliedro em outros pontos.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 110

    Geometria da PL

    vrtice

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 111

    Geometria da PL

    Seja um poliedro P Rn associado a um problema de programao linear definido em termos de restries lineares de igualdade e de desigualdade:

    Os conjuntos M1, M2 e M3 so conjuntos finitos de ndices.

    3

    2

    1

    ,.,.,.

    MibxaMibxaMibxa

    ii

    ii

    ii

    =

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 112

    Geometria da PL

    Se um vetor (isto , uma soluo do PPL) x* satisfaz ai.x* = bi para algum i em M1, M2 ou M3, diz-se ento que a restrio correspondente est ativa em x*. Seja x* Rn e I = {i M1 M2 M3: ai.x* = bi} o

    conjunto de restries ativas em x*. Ento: H n vetores independentes no conjunto {ai: i I} (isto , h n

    restries linearmente independentes ativas em x*). Qualquer vetor de Rn pode ser expresso como combinao linear

    dos vetores em {ai: i I}. O sistema de equaes ai.x=bi, i I, tem soluo nica.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 113

    Geometria da PL

    Diz-se que os vetores x1, x2, ..., xk de Rn so linearmente independentes se nenhum deles pode ser obtido como uma combinao linear dos demais, isto :1.x1 + 2.x2 + ... + k.xk = 0 1= 2= ... = k = 0

    Definio algbrica de ponto extremo: uma soluo vivel do problema na qual h n restries ativas linearmente independentes.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 114

    Geometria da PL

    Sejam um poliedro P definido por restries lineares de igualdade e de desigualdade e x* Rn: (a) O vetor x* uma soluo bsica se todas as restries de

    igualdade esto ativas e se h n restries linearmente independentes ativas em x*.

    (b) Se x* uma soluo bsica que satisfaz todas as restries,ento diz-se que x* uma soluo bsica vivel.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 115

    Geometria da PL

    x3

    P

    A

    B

    C

    D

    E

    P={(x1,x2,x3): x1+x2+x3=1, x10, x20, x30}

    H 3 restries ativas nos pontos A, B, C e D.

    H apenas 2 restries ativas no ponto (vivel) E.

    A, B e C: soluesbsicas viveis

    x2

    x1

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 116

    Geometria da PL

    A, B, C, D, E e F so solues bsicas (duas restries ativaslinearmente independentes em cada).

    C, D, E e F so solues bsicas viveis (satisfazem todas as restries).

    A

    BC

    DE

    FP

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 117

    Geometria da PL

    0,5

    67

    1839

    23

    21

    21

    2

    1

    21

    21

    21

    +

    ++

    +

    xxxx

    xx

    xxxx

    xx:a sujeito

    maximizar

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 118

    Geometria da PL

    Sejam um poliedro P no-vazio e x* P. Ento, as seguintes afirmaes so equivalentes: x* um vrtice. x* um ponto extremo. x* uma soluo bsica vivel.

    Dado um nmero finito m de desigualdades lineares, pode haver apenas um nmero finito de solues bsicas viveis. m desigualdades lineares, n restries ativas em qualquer soluo

    bsica: nmero de solues bsicas limitado pelo nmero de maneiras que se pode escolher n restries dentre m.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 119

    Geometria da PL

    Embora o nmero de solues bsicas (viveis) seja finito, ele pode ser muito grande: {x Rn: 0 xi 1, i=1,...,n} Nmero de restries? Nmero de solues bsicas viveis?

    n2n

    nn

    22 =

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 120

    Geometria da PL

    A, B, C, D, E e F so solues bsicas (duas restries ativaslinearmente independentes em cada).

    A

    BC

    DE

    FP

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 121

    Geometria da PL

    Duas solues bsicas so adjacentes se h n-1 restries linearmente independentes comuns ativas em ambas. Se duas solues bsicas adjacentes so viveis, diz-se que

    o segmento de reta que as conecta uma aresta do conjunto vivel.

    B e E so adjacentes a D.

    C-F uma aresta.

    A

    BC

    DE

    FP

    D e E so adjacentes a B.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 122

    Geometria da PL

    Considera-se agora um problema de programao linear formulado na forma cannica e P = {x Rn: A.x = b, x0} o poliedro associado s suas restries. A tem dimenso mxn, onde m o nmero de restries de

    igualdade. Hiptese simplificadora: as m restries so linearmente

    independentes. Logo, n m. Linhas linearmente dependentes de A

    correspondem a restries redundantes que podem ser descartadas.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 123

    Geometria da PL

    Em toda soluo bsica h n restries ativas linearmente independentes. Toda soluo bsica satisfaz as m restries de igualdade

    A.x = b, o que prov m restries ativas. Para totalizar as n restries ativas linearmente

    independentes, necessrio tornar ativas n-m restries de no-negatividade xi 0, fixando em 0 as variveis correspondentes. Entretanto, para que as n restries ativas sejam

    linearmente independentes, esta escolha no pode ser totalmente arbitrria.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 124

    Geometria da PL

    Teorema: Sejam as restries A.x = b e x 0. Assume-se que a matriz A de dimenses mxn tenha suas linhas linearmente independentes. Ento, um vetor x Rn uma soluo bsica se e somente se A.x = b e se existem ndices B(1), ..., B(m) tais que:(a) as colunas AB(1), ..., AB(m) so linearmente independentes. (b) se i B(1), ..., B(m), ento xi = 0.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 125

    Geometria da PL

    Procedimento para construir solues bsicas: (1) Escolher m colunas linearmente independentes AB(1), ..., AB(m). (2) Fazer xi = 0 para todo i B(1), ..., B(m). (3) Resolver o sistema de m equaes A.x = b para calcular as

    variveis xB(1), ..., xB(m).

    Se todas estas variveis so no-negativas, ento trata-se de uma soluo bsica vivel.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 126

    Geometria da PL

    Se x uma soluo bsica, as variveis xB(1), ..., xB(m) so chamadas de variveis bsicas. Neste caso, as colunas AB(1), ..., AB(m) so chamadas de

    bsicas e como so linearmente independentes formam uma base para Rm. Colocando-se as m colunas bsicas lado a lado, obtm-se

    uma matriz bsica B de dimenso mxm. Como as colunas da base so linearmente independentes, a

    matriz bsica inversvel.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 127

    Geometria da PL

    =

    N

    B

    xx

    x[ ]NBA =

    =

    )(

    )2(

    )1(

    ...

    mB

    B

    B

    B

    x

    xx

    x

    =

    )(

    )2(

    )1(

    ...

    mB

    B

    B

    B

    x

    xx

    x[ ])()2()1( ... mBBB AAAB = A soluo bsica determinada resolvendo-se a equao

    B.xB = b, cuja soluo nica xB = B-1.b.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 128

    Geometria da PL

    Sistema A.x = b da forma:

    Colunas bsicas A4, A5, A6 e A7 so linearmente independentes.

    =

    64

    128

    .

    1000010010000100106100001211

    x

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 129

    Geometria da PL

    =

    64

    128

    .

    1000010010000100106100001211

    x Soluo bsica vivel, pois todas as variveis bsicas so no-negativas.

    Matriz bsica:

    =

    ==

    =

    64

    128

    64

    128

    .

    1000010000100001

    .1

    7

    6

    5

    4

    bB

    xxxx

    xB

    =

    1000010000100001

    B

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 130

    Geometria da PL

    Considerando-se o mesmo sistema A.x = b:

    Colunas bsicas A3, A5, A6 e A7 tambm so linearmente independentes.

    =

    64

    128

    .

    1000010010000100106100001211

    x

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 131

    Geometria da PL

    =

    64

    128

    .

    1000010010000100106100001211

    x Soluo bsica no-vivel, pois uma varivel bsica negativa.

    Matriz bsica:

    =

    ==

    =

    64124

    64

    128

    .

    1000010000130002/1

    .1

    7

    6

    5

    3

    bB

    xxxx

    xB

    =

    1000010000160002

    B

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 132

    Geometria da PL

    Solues bsicas adjacentes e bases adjacentes: Duas solues bsicas so adjacentes se existem n-1 restries

    linearmente independentes ativas em ambas. Duas bases so adjacentes se possuem todas as colunas bsicas

    em comum, exceto uma. As bases {A3, A5, A6, A7} e {A4, A5, A6, A7} do exemplo anterior

    so adjacentes.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 133

    Geometria da PL

    Degenerao: uma soluo bsica x Rn degenerada se h mais de n restries ativas em x. Exemplo: x1 + x2 + 2x3 8

    x2 + 6x3 12x1 4

    x2 6x1, x2, x3 0

    x = (2,6,0) soluo bsica vivel no-degenerada (3 ativas) x = (4,0,2) soluo bsica vivel degenerada (4 ativas)

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 134

    Geometria da PL

    A

    BC

    DE

    FP

    B: soluo bsica degenerada

    F: soluo bsica vivel no-degenerada

    G

    E: soluo bsica vivel degeneradaH

    A: soluo bsica

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 135

    Geometria da PL

    Degenerao na forma cannica:

    0,,64

    12682

    321

    2

    1

    32

    321

    +++

    xxxxx

    xxxxx

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 136

    Geometria da PL

    Inserindo-se variveis de folga:

    0,,,,,,64

    12682

    7654321

    72

    61

    532

    4321

    =+=+

    =++=+++

    xxxxxxxxxxx

    xxxxxxx

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 137

    Geometria da PL

    =

    64

    128

    .

    1000010010000100106100001211

    x

    Base formada pelas colunas A1, A2, A3 e A7:Fazer x4 = x5 = x6 = 0.Resolvendo-se o sistema B.xB = b para as demais variveis:x1 = 4, x2 = 0, x3 = 2, x7 = 6Base degenerada: quatro varives nulas, e no apenas trs.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 138

    Geometria da PL

    Considera-se um problema de programao linear formulado na forma cannica e P = {x Rn: A.x = b, x0} o poliedro associado s suas restries. Sejam x uma soluo bsica e m o nmero de linhas de A. O vetor x uma soluo bsica degenerada se mais de n-m de suas componentes so nulas. Mltiplas bases correspondem mesma soluo bsica

    degenerada. No exemplo anterior, as bases {A1,A2,A3,A7}, {A1,A4,A3,A7 }, {A1,A5,A3,A7 } e {A1,A6,A3,A7 } correspondem mesma soluo bsica degenerada x1 = 4, x3 = 2, x7 = 6, x2 = x4 = x5 = x6 = 0.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 139

    Geometria da PL

    A degenerao tem conseqncias importantes na queda de desempenho dos resolvedores de problemas de programao linear.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 140

    Geometria da PL

    Nem todo poliedro tem um ponto extremo: x1+x2 1em R2 A existncia de um ponto extremo depende do poliedro

    conter ou no uma reta infinita. Diz-se que um poliedro P Rn contm uma reta se

    existem um vetor x P e um vetor no-nulo d Rn tal que x + .d P para qualquer escalar .

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 141

    Geometria da PL

    Teorema: Suponha-se que o poliedro P = {x Rn: ai.x bi, i=1,...,m} seja no vazio. Ento, as afirmaes abaixo so equivalentes: O poliedro P tem pelo menos um ponto extremo. O poliedro P no contm uma reta. H n vetores da famlia a1, a2, ..., am que so linearmente

    independentes.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 142

    Geometria da PL

    Um poliedro limitado no pode conter uma reta. O conjunto {x Rn: x 0} limitado, logo no contm

    uma reta. Como um poliedro na forma cannica est contido em

    {x Rn: x 0}, ele no pode conter uma reta. Qualquer poliedro limitado no-vazio e qualquer poliedro

    no-vazio na forma cannica contm pelo menos um ponto extremo, ou seja, uma soluo bsica vivel.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 143

    Geometria da PL

    Teorema da otimalidade: Considera-se o problema de programao linear de minimizar a funo objetivo c.x sobre um poliedro P. Suponha-se que P tenha pelo menos um ponto extremo e que exista uma soluo tima. Ento, existe pelo menos uma soluo tima que um ponto extremo de P.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 144

    Geometria da PL

    Soluo tima finita nica:

    Regio vivel limitada Regio vivel no-limitada

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 145

    Geometria da PL

    Solues timas finitas alternativas:

    Regio vivel limitada Regio vivel no-limitada

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 146

    Geometria da PL

    Valor timo ilimitado: No existe soluo tima, pois o valor timo ilimitado

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 147

    Geometria da PL

    Teorema da otimalidade: Considera-se o problema de programao linear de minimizar a funo objetivo c.x sobre um poliedro P no-vazio. Ento, ou o custo timo igual a - (valor ilimitado) ou existe uma soluo tima (em um ponto extremo).

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 148

    Geometria da PL

    Resumindo... (a) Se o conjunto de solues viveis no-vazio e

    limitado, ento existe uma soluo tima. Alm disso, existe uma soluo tima que um ponto extremo. (b) Se o conjunto de solues viveis ilimitado, ento

    existe uma soluo tima que um ponto extremo ou o valor timo -.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 149

    Geometria da PL

    Resumindo... Supe-se que o valor timo seja finito e que o conjunto de

    solues viveis contenha pelo menos um ponto extremo. Como h um nmero finito de pontos extremos, o PPL pode ser resolvido em um nmero finito (embora eventualmente muito grande) de passos por enumerao. Mtodo Simplex: procedimento sistemtico que se move

    de um ponto extremo para outro, sem necessitar enumerar todos.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 150

    Geometria da PL

    Resumindo... Pontos extremos esto associados a solues bsicas

    viveis. H n restries ativas (todas as m de igualdade e n-m de

    desigualdade) em cada ponto extremo. Considerando-se o PPL na forma cannica, cada soluo

    bsica obtida fixando-se (n-m) variveis (no-bsicas) em zero e calculando-se as demais resolvendo o sistema B.xB = b, cuja soluo xB = B-1.b, onde B a matriz formada pelas colunas associadas s variveis bsicas.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 151

    Mtodo Simplex

    Variveis:Dados:

    1

    2

    1

    21

    22221

    112

    121

    ...

    ...............

    ...

    ...),...,,

    =

    =

    =

    mm

    nmmnmm

    n

    n

    nn

    b

    bb

    b

    aaa

    aaaaaa

    A

    cccc

    11

    (

    1

    2

    1

    ...

    =

    nnx

    xx

    x

    Problema na forma cannica:

    :a sujeito

    minimizar

    0..

    =

    xbxA

    xc

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 152

    Mtodo Simplex

    Se um PPL na forma cannica tem uma soluo tima, ento existe uma soluo bsica vivel (ponto extremo) que tima. O mtodo Simplex procura a soluo tima movendo-se

    de uma soluo bsica vivel para outra atravs das arestas da regio vivel, sempre diminuindo o valor da funo objetivo. O algoritmo termina ao chegar numa soluo bsica vivel

    onde todas arestas levam a aumento de custo.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 153

    Mtodo Simplex

    Mtodos de busca local: partem de uma soluo vivel, procuram sempre por uma soluo vizinha de menor custo e terminam quando tal soluo vizinha inexiste timo local PPL: solues bsicas viveis adjacentes so vizinhas. PPL: timo local tambm timo global Problema: como encontrar uma uma direo (aresta) de

    diminuio de custo na vizinhana de uma dada soluo?

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 154

    Mtodo Simplex

    Seja x P: ento, um vetor d Rn uma direo vivelem x se existe um escalar tal que x + .d P.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 155

    Mtodo Simplex

    Seja x uma soluo bsica e B(1), ..., B(m) os ndices das variveis bsicas. Seja ainda

    a matriz bsica correspondente. Ento, xi = 0 para qualquer varivel no-bsica e o vetor de variveis bsicas dado por

    [ ])()2()1( ... mBBB AAAB =

    bB

    x

    xx

    x

    mB

    B

    B

    B ....1

    )(

    )2(

    )1(

    =

    =

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 156

    Mtodo Simplex

    Considera-se a possibilidade de mover de x para uma nova soluo x + .d selecionando-se uma varivel no-bsica xj(at ento igual a zero) e aumentando-a at um valor , mantendo todas as demais variveis no-bsicas iguais a zero. Ento, dj = 1 e di = 0 para qualquer outra varivel

    no-bsica xi diferente de xj. O novo vetor de variveis bsicas passa a ser xB + .dB.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 157

    Mtodo Simplex

    Como s nos interessam as solues viveis, ento exige-se que A.(x + .d) = b. Como x vivel, A.x = b. Logo, para que as restries de igualdade sejam satisfeitas

    para > 0, necessrio que A.d = 0:

    Como a matriz B inversvel, ento a direo dB = -B-1.Aj. = = +=+=== ni mi jBjiBiBii AdBAdAdAdA 1 1 )()( ....0

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 158

    Mtodo Simplex

    A direo d assim construda chamada de direo bsica j. Mostramos que as restries de igualdade so respeitadas

    quando se move ao longo desta direo d. Mas o que acontece com as restries de no-negatividade? As demais variveis no-bsicas diferentes de xj no so

    afetadas, continuando portanto nulas. Seja x uma soluo bsica no-degenerada. Como xB > 0,

    ento xB + .d > 0 para suficientemente pequeno.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 159

    Mtodo Simplex

    Como varia o custo da soluo a medida em que se desloca ao longo de uma direo bsica? Se d a j-sima direo bsica, a variao no custo da

    soluo obtida aps um deslocamento de valor ao longo de d igual a cB.(xB + .dB) + cj. - cB.xB.= .(cB.dB + cj). Como dB = -B-1.Aj, a taxa de variao do custo por unidade

    da varivel j ao longo da j-sima direo bsica ento igual a cj - cB.B-1.Aj.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 160

    Mtodo Simplex

    A taxa de variao do custo ao longo da j-sima direo bsica ento igual a cj - cB.B-1.Aj. Interpretao: cj o custo por incremento unitrio na

    varivel xj, enquanto o termo -cB.B-1.Aj. reflete as compensaes necessrias para manter as restries A.x = b viveis com o aumento de xj. Definio: sejam x uma soluo bsica, B a matriz bsica

    associada e cB o vetor de custos das variveis bsicas. Define-se o custo reduzido cj da varivel xj como: cj = cj (cB.B-1).Aj

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 161

    Mtodo Simplex

    Qual o custo reduzido de uma varivel bsica xB(i)? cB(i) = cB(i) cB.B-1.AB(i) = cB(i) cB.ei = cB(i) cB(i) = 0,pois B-1.AB(i) igual ao produto da inversa da matriz bsica pela i-sima coluna da base, que igual coluna i da matriz identidade. Resumindo:

    cj = cj - cB.B-1.Aj, se xj uma varivel no-bsicacj = 0, se xj uma varivel bsica

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 162

    Mtodo Simplex

    Repetindo:cj = cj - cB.B-1.Aj, se xj uma varivel no-bsicacj = 0, se xj uma varivel bsica Se x no uma soluo tima, como devemos escolher a

    varivel que ter seu valor aumentado? Deve-se aumentar uma varivel xj cujo custo reduzido seja

    negativo!

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 163

    Mtodo Simplex

    Teorema: Seja uma soluo bsica vivel associada com uma matriz bsica B e c o vetor correspondente de custos reduzidos.(a) se c 0, ento x uma soluo tima.(b) se x tima e no-degenerada, ento c 0. A matriz bsica B tima se:

    (a) B-1.b 0, isto , se todas as variveis bsicas so no-negativas (e satisfazem as restries do problema).(b) c = c (cB.B-1).A 0, isto , no possvel reduzir o custo da soluo bsica correspondente.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 164

    Mtodo Simplex

    Hipteses para o desenvolvimento final do Simplex: Toda soluo bsica no degenerada. Soluo bsica x com todos os custos reduzidos c das variveis

    no-bsicas j calculados. Se todos os custos reduzidos so positivos ou nulos, trata-se da

    soluo tima e o algoritmo pode ser parado. Se existe uma varivel xj de custo reduzido cj < 0 , ento a

    j-sima direo bsica d uma direo de reduo de custo. Ao longo desta direo, apenas a varivel no-bsica xj torna-se

    positiva e entra na base.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 165

    Mtodo Simplex

    Quando se move a partir de x ao longo da direo d, so obtidos pontos da forma x + .d com > 0. Como o custo da soluo diminui ao longo desta direo,

    deve-se fazer o maior deslocamento possvel, que dado por * = max { 0: x + .d P}. A reduo no custo dada por *.cj. Mostrou-se que A.d = 0 e que as restries de igualdade

    no sero violadas. Ento, x + .d s pode se tornar invivel se uma das

    restries de no-negatividade passar a ser violada.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 166

    Mtodo Simplex

    (a) Se d 0, ento x + .d 0 para qualquer 0. A soluo nunca se torna invivel e faz-se * = +: soluo tima ilimitada. (b) Se di < 0 para alguma varivel xi, a restrio

    xi + .di 0 equivale a -xi/di. Esta restrio deve ser satisfeita para todas os ndices i com di < 0. Assim, o maior valor possvel de dado por

    =

    =

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 167

    Mtodo Simplex

    Uma vez o valor de * determinado, e assumindo-se que seja finito, move-se para a nova soluo vivel y = x + *.d. Como xj = 0 (varivel no-bsica) e dj = 1, obtem-se yj = *

    na nova soluo: a varivel de ndice j torna-se bsica. Seja r o ndice da varivel bsica que definiu *:

    Como dB(r) < 0, ento xB(r) + *.dB(r) = 0: a varivel de ndice r sai da base.

    )(

    )(

    )(

    )(}0:,...,1{ )(

    minrB

    rB

    iB

    iBdmi d

    xdx

    iB=

    =

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 168

    Mtodo Simplex

    O mtodo simplex iniciado com uma soluo bsica vivel (ponto extremo, cuja existncia j foi provada).

    - Soluo bsica inicial x = 0 e y = b.- Resolver o novo problema.- y* = 0, problema vivel e base inicial.- y* > 0, problema invivel.

    :a sujeito

    minimizar

    0..

    =

    xbxA

    xc

    :a sujeito

    yminimizar n

    1j

    m

    1i i

    0,

    1,.

    ==+

    =

    =

    yx

    ,...,mibyxa iijij

    - Criar problema com variveis artificiais.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 169

    Mtodo Simplex

    Cada iterao corresponde aos seguintes passos:1. Iniciar com uma base formada pelas colunas bsicas

    AB(1), , AB(m) e com uma soluo bsica vivel x.2. Calcular os custos reduzidos cj = cj (cB.B-1).Aj para

    todas as variveis no bsicas j. Se todos so positivos, a soluo corrente tima, seno escolher algum j comcj < 0.

    3. Calcular dB = -B-1.Aj. Se todos as componentes de dBforem positivas, ento * = +, o valor timo - e o algoritmo termina.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 170

    Mtodo Simplex

    4. Se alguma componente de dB = -B-1.Aj for negativa, calcular

    5. Formar uma nova base substituindo a coluna AB(r) pela coluna Aj. Na nova soluo bsica vivel y obtida aps esta mudana de base, os valores das variveis bsicas so yj = * e yB(i) = xB(i) + *.dB(i) para qualquer i r.

    )(

    )(

    )(

    )(}0:,...,1{ )(

    minrB

    rB

    iB

    iBdmi d

    xdx

    iB=

    =

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 171

    Mtodo Simplex

    Supondo-se que o PPL seja vivel, o mtodo Simplex termina aps um nmero finito de iteraes com uma soluo bsica vivel tima ou mostrando que o custo timo -. Implementao simples, mas requer muitos cuidados

    para ser eficiente (soluo inicial, degenerao, tratamento de matrizes esparsas, determinantes prximos de zero, atualizao rpida da base e de sua inversa, etc.). Criador do mtodo Simplex: Dantzig (1947)

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 172

    Mtodo Simplex

    Complexidade de pior caso: proporcional a 2n. Na mdia, o nmero de iteraes cresce linearmente. Excelente desempenho mdio. Resolvedores: MPSX, XMP, ..., OSL, ..., LINDO, CPLEX,

    XPRESS, GLPK, ..., EXCEL Mtodos de pontos interiores: percorrem o interior do

    poliedro, e no vrtices e arestas. Karmarkar (1984) To bons ou melhores que o Simplex para muitas classes de

    problemas.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 173

    Dualidade

    O problema dual de um PPL outro PPL satisfazendo:

    = cjlivre

    restries cj 0variveis cj 0livre= bi

    variveis 0 birestries 0 bi

    DUALmaximizarminimizarPRIMAL

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 174

    Dualidade

    Problema PRIMAL na forma cannica:

    Problema DUAL:

    :a sujeito

    minimizar

    0..

    =

    xbxA

    xc

    cAubu

    ..

    :a sujeito

    maximizar

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 175

    Dualidade

    Problema DUAL:

    Problema DUAL do DUAL:

    O DUAL do DUAL o prprio problema PRIMAL.

    cAubu

    ..

    :a sujeito

    maximizar

    :a sujeito

    minimizar

    0..

    =

    ybyA

    yc

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 176

    Dualidade

    Teorema fraco da dualidade: se x uma soluo vivel do primal e u uma soluo vivel do dual, ento u.b c.x. Teorema forte da dualidade: se x* uma soluo tima do

    primal e u* uma soluo tima do dual, ento u*.b = c.x*. simples provar que se B a base tima do primal (com

    x*B = B-1.b e c.x* = cB.B-1.b), ento u* = cB.B-1. Se a soluo tima do primal (resp. dual) ilimitada, ento

    o dual (resp. primal) invivel.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 177

    Dualidade

    Teorema das folgas complementares: sejam x e u solues viveis para os problemas primal e dual, respectivamente. Estas solues so timas se e somente se:(a) ui.(ai.x bi) = 0, i(b) (cj u.Aj).xj = 0, j

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 178

    Dualidade

    Variveis duais como custos marginais:- base B tima no-degenerada- soluo tima x*B = B-1.b > 0- custo timo = cB .B-1.b = u*.b

    :a sujeito

    minimizar

    0..

    =

    xbxA

    xc

    Problema perturbado (d pequeno):

    :a sujeito

    minimizar

    0..

    +=

    xdbxA

    xc - mesma base B tima: B-1.(b+d) > 0- custo timo = cB .B-1.(b+d) = u*(b+d)- variao no custo: u*.d- u*: custos marginais dos recursos!

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 179

    Dualidade

    Interpretao econmica do dual: problema da dieta Coluna Aj: contedos nutricionais do alimento j (slide 36). Vetor b: contedo nutricional ideal que se deseja atingir. ui: preo justo que se desejaria pagar pelo nutriente i. Uma unidade do alimento j tem valor cj no mercado de

    alimentos, mas tem valor u.Aj se cotada no mercado de nutrientes. Folgas complementares asseguram que todo alimento

    usado para sintetizar o nutriente ideal deve estar cotado consistentemente nos dois mercados: xj > 0 cj = u.Aj

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 180

    Dualidade

    A dualidade relaciona as duas maneiras alternativas de contabilizar custos. O valor do alimento ideal calculado pelo mercado de

    alimentos c.x* (onde x* a soluo tima do primal). O valor do alimento ideal calculado pelo mercado de

    nutrientes u*.b (onde u* so os preos ideais). A relao de dualidade c.x* = u*.b garante que quando os

    preos esto corretos, os dois mtodos de contabilizao dos custos do os mesmos resultados.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 181

    Anlise de sensibilidade

    PPL na forma cannica:

    Como afetada a soluo de um PPL devido a modificaes simples na sua formulao? Como recalcular a soluo tima aps estas modificaes? Diversos casos podem ser tratados diretamente usando

    dualidade e os conceitos j estudados.

    :a sujeito

    minimizar

    0..

    =

    xbxA

    xc

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 182

    Anlise de sensibilidade

    (1) Uma base tima continua tima aps a adio de uma nova varivel xn+1? Como reotimizar um problema aps a adio desta nova varivel? (2) Como criar uma nova base e reotimizar o problema

    aps a incluso de uma nova restrio de igualdade? (3) Qual a faixa de variao do vetor de recursos b que

    mantm a base tima inalterada? (4) Qual a faixa de variao dos custos c que mantm a

    base tima inalterada? (5) Como mudanas em uma coluna afetam a soluo?

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 183

    Extenses

    Sistemas de grande porte Decomposio: gerao de colunas, Dantzig-Wolfe,

    Benders Programao estocstica (cenrios) Problemas de fluxos em redes Mtodos de pontos interiores: percorrem o interior

    do poliedro, e no os vrtices e arestas. Programao inteira

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 184

    Resolvedores de PL

    CPLEX Empresa: ILOG Resolvedor lider no mercado Programao linear, linear inteira, quadrtica Alto desempenho Muito flexivel Resolve problemas com milhes de variveis e restries Parte de um solver mais geral que inclui e.g. programao por

    restries e linguagem de modelagem http://www.ilog.com/products/cplex/

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 185

    Resolvedores de PL

    Xpress-MP Empresa: Dash Optimization Compete com o CPLEX Programao linear, linear inteira, quadrtica Alto desempenho Muito flexvel Resolve problemas com milhes de variveis e restries Tambm possui uma linguagem de modelagem (AMPL) http://www.dashoptimization.com

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 186

    Resolvedores de PL

    LINDO Empresa: LINDO Systems Inc. Programao linear, linear inteira, quadrtica Muito simples de instalar e usar http://www.lindo.com

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 187

    Resolvedores de PL

    GLPK Software livre Cdigo em ANSI C disponvel na web Programao linear e linear inteira http://www.gnu.org/software/glpk/glpk.html

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 188

    Resolvedores de PL

    Survey atualizado disponvel em: http://www.lionhrtpub.com/orms/surveys/LP/LP-survey.html

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 189

    Resolvendo problemas

    Digitar o modelo diretamente na interface Forma mais direta de resolver problemas simples. Invivel para problemas de tamanho mdio

    Criar um arquivo com o modelo do problema Necessrio programar (C, Basic, Java) para gerar o modelo. Permite tratar problemas grandes. No flexivel.

    Chamar funes do resolvedor atravs de bibliotecas. a forma mais flexivel. Permite interagir com o resolvedor enquanto o modelo resolvido.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 190

    Sintaxe do Lindo

    Funo objetivo: MAX 10 STD + 15 DLX

    Sujeito a: {subject to, such that, S.T., ST}

    Restries: STD + 2 DLX

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 191

    Escalonamento de funcionrios

    Uma loja quer contratar funcionrios para atendimento ao pblico durante os sete dias da semana. Cada funcionrio ganha R$ 300 por semana, mais um extra

    de R$ 25 por trabalhar no sbado e de R$ 35 por trabalhar no domingo.

    Os funcionrios trabalham cinco dias consecutivos e descansam dois.

    Existem requisitos mnimos de funcionrios por dia:

    D S T Q Q S S

    20 20 13 10 12 16 18

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 192

    Escalonamento de funcionrios

    Objetivo: minimizar o custo de pessoal sujeito ao cumprimento das necessidades de atendimento.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 193

    Soluo Variveis de deciso DOM: Quantidade de funcionrios que comeam a trabalhar nos

    domingos. SEG: Quantidade de funcionrios que comeam a trabalhar nas

    segundas feiras. TER: Quantidade de funcionrios que comeam a trabalhar nas

    teras feiras. QUA: Quantidade de funcionrios que comeam a trabalhar nas

    quartas feiras. QUI: Quantidade de funcionrios que comeam a trabalhar nas

    quintas feiras domingos. SEX: Quantidade de funcionrios que comeam a trabalhar nas

    sextas feiras. SAB: Quantidade de funcionrios que comeam a trabalhar nos

    sbados.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 194

    Soluo - Funo objetivo

    MIN 335 DOM + 300 SEG + 325 TER + 360 QUA + 360 QUI + 360 SEX + 360 SAB

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 195

    Soluo - Restries

    RDOM) DOM + QUA + QUI + SEX + SAB >= 20RSEG) DOM + SEG + QUI + SEX +SAB >= 20RTER) DOM + SEG + TER + SEX + SAB >= 13RQUA) DOM + SEG + TER + QUA + SAB >= 10RQUI) DOM + SEG + TER + QUA + QUI >= 12RSEX) SEG + TER + QUA + QUI + SEX >= 16RSAB) TER + QUA + QUI + SEX + SAB >= 18

    Alm destas, restries de no-negatividade.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 196

    Soluo - Modelo

    MIN 335 DOM + 300 SEG + 325 TER + 360 QUA + 360 QUI + 360 SEX + 360 SAB

    STRDOM) DOM + QUA + QUI + SEX + SAB >= 20RSEG) DOM + SEG + QUI + SEX +SAB >= 20RTER) DOM + SEG + TER + SEX + SAB >= 13RQUA) DOM + SEG + TER + QUA + SAB >= 10RQUI) DOM + SEG + TER + QUA + QUI >= 12RSEX) SEG + TER + QUA + QUI + SEX >= 16RSAB) TER + QUA + QUI + SEX + SAB >= 18Restries de no-negatividade.END

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 197

    Anlise dos resultados

    Valor da funo objetivo: 7750 Valor das variveis:

    DOM: 2, SEG: 2, TER: 0, QUA: 2, QUI: 7, SEX: 5, SAB: 4

    Quando se altera esta soluo tima? Anlise de sensibilidade:

    Coeficientes da funo objetivo Lado direito das restries (para variveis duais)

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 198

    Anlise - Custos reduzidos

    Variveis com valor nulo na soluo: De quanto deve se modificar o coeficiente da varivel na funo

    objetivo para que ela possa deixar de ser nula?

    Quando a varivel tem valor diferente de zero na soluo, seu custo reduzido nulo. Valor da varivel TER na soluo: 0 Custo reduzido da varivel TER: 100

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 199

    Anlise - Custos reduzidos

    O que acontece se o coeficiente de TER reduzido em 90? E em 110? Seu custo reduzido s se torna negativo se seu custo

    diminuir de pelo menos 100 unidades. De quanto aumenta o valor da funo objetivo se a

    seguinte restrio acrescentada?RTER2) TER >= 1

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 200

    Anlises - Variveis de folga

    H uma varivel de folga para cada restrio. Variveis de folga:

    RQUI = 1

    Isto quer dizer que na soluo encontrada a restrio RQUI cumprida com folga de uma unidade, ou seja, na quinta feira trabalham 13 funcionrios quando apenas 12 so necessrios.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 201

    Anlises - Variveis duais

    H uma varivel dual para cada restrio. As variveis duais dizem de quanto a funo objetivo vai

    melhorar se aumentamos de uma unidade o valor do lado direito da restrio. Em quanto piora a funo objetivo quando se aumenta de

    20 para 21 a quantidade de funcionrios necessrios s segundas feiras?

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 202

    Anlises - Variveis duais

    A validez das variveis duais determinada pelo analise de sensibilidade. Aumentar o nmero de funcionrios necessrios s

    segundas feiras para 22, 23 e 24. O que acontece quando aumenta para 24?

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 203

    Problema de planejamento da produo

    Uma fbrica de computadores fabrica os modelos GP1, GP2, GP3, WS1 e WS2.

    10.0$ 15.000WS221.4$ 30.000WS120.0$ 30.000GP321.7$ 40.000GP240.3$ 60.000GP1

    # placas # discosPreoSistema

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 204

    Problema de planejamento da produo

    Disponibilidade de CPUs: no mximo 7.000 unidades. Suprimento de discos: limitado a 3.000 unidades. Suprimento de placas de memria limitado a 8.000. Demandas mximas:

    1800 para GP1, 300 para GP3 3800 para toda a famlia GP 3200 para toda a famlia WS

    Pedidos j recebidos: 500 GP2 500 WS1, 400 WS2

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 205

    Problema de planejamento da produo

    Objetivo: maximizar o lucro da empresa.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 206

    Problema de planejamento da produo

    Variveis:xi: quantidade de sistemas produzidos do tipo GPj, j=1,2,3x4: quantidade de sistemas produzidos do tipo WS1x5: quantidade de sistemas produzidos do tipo WS2

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 207

    Problema de planejamento da produo

    1 2 3 4 5

    1 2 3 4 5

    1 2 3 4 5

    1 2 4

    1

    3

    1 2 3

    4 5

    2

    4

    5

    1 2 3 4 5

    maximizar 60 40 30 30 15sujeito a:

    70004 2 2 2 80000.3 1.7 1.4 3000

    1800300

    38003200

    500500400

    , , , , 0

    x x x x x

    x x x x xx x x x xx x x

    xxx x xx xxxxx x x x x

    + + + +

    + + + + + + + +

    + + + + +

    disponibilidade de CPUsdisponibilidade de placasdisponibilidade de discosdemanda mxima de GP-1demanda mxima de GP-3demanda mxima de GPdemanda mxima de WSdemanda mnima de GP-2demanda mnima de WS-1demanda mnima de WS-2

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 208

    Problema de planejamento da produo

    Analise a soluo e responda: Quais recursos esto limitando o lucro da empresa?CPUs?Placas?Discos?

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 209

    Problema de planejamento da produo

    Se no existirem outros custos a serem considerados: Comprar-se-ia discos a $ 15.000 para aumentar a produo? Comprar-se-ia placas a $ 5.000 para aumentar a produo?

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 210

    Problema de planejamento da produo

    A empresa quer avaliar outro modo de produo para economizar discos. Produzir todos os computadores GP1 sem discos Produzir todos os computadores GP2 com um disco Produzir todos os computadores WS1 com um disco

    Como muda a formulao? Quanto ser o lucro?

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 211

    Problema de planejamento da produo

    0,,,,400500500

    32003800

    3001800

    30004.17.13.080002224

    7000 :a sujeito

    1530304060 maximizar

    54321

    5

    4

    2

    54

    321

    3

    1

    421

    54321

    54321

    54321

    +++

    ++++++

    ++++

    ++++

    xxxxxxxx

    xxxxx

    xx

    xxxxxxxx

    xxxxx

    xxxxx

    disponibilidade de CPUsdisponibilidade de placasdisponibilidade de discosdemanda mxima de GP-1demanda mxima de GP-3demanda mxima de GPdemanda mxima de WSdemanda mnima de GP-2demanda mnima de WS-1demanda mnima de WS-2

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 212

    Problema de planejamento da produo

    0,,,,400500500

    32003800

    3001800

    300080002224

    7000 :a sujeito

    1530304060 maximizar

    54321

    5

    4

    2

    54

    321

    3

    1

    42

    54321

    54321

    54321

    +++

    +++++

    ++++

    ++++

    xxxxxxxx

    xxxxx

    xx

    xxxxxxx

    xxxxx

    xxxxx

    disponibilidade de CPUsdisponibilidade de placasdisponibilidade de discosdemanda mxima de GP-1demanda mxima de GP-3demanda mxima de GPdemanda mxima de WSdemanda mnima de GP-2demanda mnima de WS-1demanda mnima de WS-2

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 213

    Problema de planejamento da produo

    O fabricante poderia tratar a falta de placas de memria utilizando duas placas alternativas nos sistemas GP1, em vez de quatro placas comuns. 4000 placas alternativas se encontram disponiveis.

    Como mudar o modelo para considerar esta posibilidade? Aumenta o lucro? Concluso do exmplo

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 214

    Problema de planejamento da produo

    0,,,,400500500

    32003800

    3001800

    300080002224

    7000 :a sujeito

    1530304060 maximizar

    54321

    5

    4

    2

    54

    321

    3

    1

    42

    54321

    54321

    54321

    +++

    +++++

    ++++

    ++++

    xxxxxxxx

    xxxxx

    xx

    xxxxxxx

    xxxxx

    xxxxx

    disponibilidade de CPUsdisponibilidade de placasdisponibilidade de discosdemanda mxima de GP-1demanda mxima de GP-3demanda mxima de GPdemanda mxima de WSdemanda mnima de GP-2demanda mnima de WS-1demanda mnima de WS-2

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 215

    Problema de planejamento da produo

    0,,,,400500500

    32003800

    3001800

    300040002

    80002227000

    :a sujeito1530304060 maximizar

    54321

    5

    4

    2

    54

    321

    3

    1

    42

    1

    5432

    54321

    54321

    +++

    +

    +++++++

    ++++

    xxxxxxxx

    xxxxx

    xx

    xxx

    xxxxxxxxx

    xxxxx

    disponibilidade de CPUsdisponibilidade de placas

    disponibilidade de discosdemanda mxima de GP-1demanda mxima de GP-3demanda mxima de GPdemanda mxima de WSdemanda mnima de GP-2demanda mnima de WS-1demanda mnima de WS-2

    disponibilidade de placas alt.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 216

    Caminho mais curto em uma rede

    Dada uma rede com custos (ou comprimentos) associados s sua arestas, determinar o caminho mais curto entre dois ns especficos (ns 1 e 5 abaixo).

    2

    1 5

    3

    1

    3

    43

    2

    41

    O problema equivale a enviar uma unidade de fluxo do n 1 ao n 5 a custo mnimo

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 217

    Fluxo de uma unidade a custo mnimo

    Dada uma determinada rede com custos nas arestas, transportar a custo mnimo uma unidade de fluxo entre os dois ns.

    2

    1 5

    3

    1

    3

    43

    2

    41

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 218

    Caminho mais curto em uma rede

    min 3 x12 + 2 x13 + x24 + 4 x25 + x34 + 3 x45str1) x12 + x13 = 1r5) x25 + x45 = 1r2) x12 - x24 - x25 = 0r3) x13 - x34 = 0r4) x24 + x34 - x45 = 0x12 >= 0x13 >= 0x24 >= 0x25 >= 0x34 >= 0x45 >= 0

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 219

    Exerccio Avaliao

    O grafo a seguir ilustra uma rede de distribuio: centros produtores, armazns e centros de consumo. Uma empresa produz trs tipos de produtos, que devem ser distribudos da seguinte maneira: Produto A: 50 unidades de produzidas em 1 devem ser enviadas

    para 18 Produto B: 50 unidades de produzidas em 5 devem ser enviadas

    para 14 Produto C: 40 unidades produzidas em 10 devem ser enviadas

    para 9

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 220

    Exerccio Avaliao

    1

    12

    8

    15

    76

    432

    9

    1716

    11 13

    5

    10

    18

    14

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 221

    Exerccio Avaliao

    Os valores mnimo e mximo do fluxo total (isto , considerando-se os trs produtos) que pode transitar em cada arco da rede so dados a seguir: Arcos horizontais: capacidade mnima = 5, capacidade

    mxima = 40, custo unitrio de transporte = 100 Arcos verticais: capacidade mnima = 0, capacidade

    mxima = 20, custo unitrio de transporte = 200 Arcos inclinados: capacidade mnima = 0, capacidade

    mxima = 30, custo unitrio de transporte = 300

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 222

    Exerccio Avaliao

    Existem ainda as seguintes restries adicionais: Os ns 6, 7, 12 e 13 so armazns e o fluxo total atravs

    de cada um deles no pode ser superior a 60 unidades. Em nenhum arco horizontal podem passar mais de 30

    unidades do produto A. Em nenhum arco inclinado podem passar mais de 10

    unidades do produto B. Em nenhum arco vertical podem passar mais de 10

    unidades do produto C.

  • Abril-agosto 2004 Modelos e mtodos de otimizao ONS 223

    Exerccio Avaliao

    Determine o fluxo timo de cada produto a sertransportado em cada arco, de modo a minimizar o custototal de transporte, utilizando um modelo de programao linear. Apresente os resultados, fornecendo: O arquivo usado como entrada (impresso) para o LINDO. O arquivo de sada (impresso) com os resultados do LINDO. Os valores dos fluxos em cada arco sobre uma cpia da rede na

    transparncia 220, indicando tambm o valor da soluo tima(custo total de