Upload
clebernes
View
6
Download
2
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