382 apostila pesquisa operacional parte 1
TRANSCRIPT
-
Pesquisa Operacional
Engenharia de ProduoDEPROT / UFRGS
Profs. Flavio Fogliatto, Ph.D.
Prof. Fogliatto Pesquisa Operacional 2
EmentaINTRODUO1. Programao Matemtica2. Reviso de lgebra Linear 3. Uso de pacotes computacionais na soluo de problemas
PROGRAMAO LINEAR1. Introduo Programao Linear 2. O algoritmo Simplex
Prof. Fogliatto Pesquisa Operacional 3
Ementa
MODELOS DE REDES1. O problema do transporte2. O problema da designao3. O problema do transbordo4. Modelos de Redes
TPICOS AVANADOS1. Programao Inteira
Prof. Fogliatto Pesquisa Operacional 4
Referncias Bibliogrficas
LIVRO-TEXTO: Operations Research, Applications and Algorithms, de Wayne L. Winston, 3a. Ed., Duxburry Press.
Adicionais (no mesmo nvel):1. Pesquisa Operacional, de Harvey Wagner, 2a. Ed., Prentice-Hall
do Brasil.2. Pesquisa Operacional, de Pierre J. Ehrlich, Ed. Atlas.
-
Prof. Fogliatto Pesquisa Operacional 5
INTRODUO PROGRAMAO LINEAR
Programao Linear uma ferramenta para soluo de problemas de otimizao.
Em 1947, George Dantzig desenvolveu o algoritmo SIMPLEX, extremamente eficiente na soluo de problemas de PL.
A partir de ento, PL passou a ser utilizada em diversos segmentos da atividade produtiva:
BancosInstituies Financeiras
Empresas de Transportes, etc.
Vamos introduzir a PL a partir de um exemplo.
Prof. Fogliatto Pesquisa Operacional 6
EXEMPLO: O caso Politoy
A Politoy S/A fabrica soldados e trens de madeira.
Cada soldado vendido por $27 e utiliza $10 de matria-prima e $14 de mo-de-obra. Duas horas de acabamento e 1 hora de carpintaria so demandadas para produo de um soldado.
Cada trem vendido por $21 e utiliza $9 de matria-prima e $10 de mo-de-obra. Uma hora de acabamento e 1 h de carpintaria so demandadas para produo de um trem.
Prof. Fogliatto Pesquisa Operacional 7
EXEMPLO: O caso Politoy
A Politoy no tem problemas no fornecimento de matria-primas, mas s pode contar com 100 h de acabamento e 80 h de carpintaria.
A demanda semanal de trens ilimitada, mas no mximo 40 soldados so comprados a cada semana.
A Politoy deseja maximizar seus ganhos semanais.
Formule um modelo matemtico a ser utilizado nessa otimizao.
Prof. Fogliatto Pesquisa Operacional 8
Ao desenvolver um modelo para a Politoy, investigaremos caractersticas comuns a todos os problemas de PL
VARIVEIS DE DECISO
O primeiro passo na formulao de um problema de PL a definio das variveis de deciso relevantes.
Estas variveis devem descrever completamente as decises a serem tomadas.
A Politoy deve decidir sobre:
x1 = nm. de soldados produzidos a cada semanax2 = nm. de trens produzidos a cada semana
-
Prof. Fogliatto Pesquisa Operacional 9
FUNO OBJETIVO
Em qualquer problema de PL, o analista sempre vai desejar maximizar (ex., lucro) ou minimizar (ex., custo) alguma funo das variveis de deciso.A funo a ser maximizada (ou minimizada) a funo objetivo.A Politoy deseja maximizar seus ganhos semanais. Ou seja:ganho semanal = ganho semanal oriundo da venda de soldados +
ganho semanal oriundo da venda de trens.= ($/soldado).(soldados/sem) + ($/trem).(trem/sem)= 27x1 + 21x2
Tambm devemos considerar:custo semanal com matria-prima: 10x1 + 9x2custo semanal com mo-de-obra: 14x1 + 10x2
Prof. Fogliatto Pesquisa Operacional 10
FUNO OBJETIVO
O que a Politoy deseja maximizar :
(27x1 + 21x2) - (10x1 + 9x2) - (14x1 + 10x2) = 3x1 + 2x2
Usaremos a varivel z para designar o valor assumido pela funoobjetivo.
Assim:Max z = 3x1 + 2x2
Os nmeros 3 e 2 so chamados coeficientes da funo objetivo. Elesindicam a contribuio de cada varivel nos ganhos da empresa.
Prof. Fogliatto Pesquisa Operacional 11
RESTRIES
A medida que x1 e x2 crescem, o valor da funo objetivo aumenta.
Mas x1 e x2 no podem crescer indefinidamente. Trs restrieslimitam seu crescimento:
Restrio 1 - 100 h de acabamento / semana. Restrio 2 - 80 h de carpintaria / semana Restrio 3 - no mais que 40 soldados / semana, devido a limitaes
na prpria demanda.
Restries 1 3 devem ser expressas em termos das variveis dedeciso x1 e x2.
Prof. Fogliatto Pesquisa Operacional 12
RESTRIES
Restrio 1:
(total hs acabamento/sem.) = (hs.acab./sold.).(sold. produzidos/sem.)+ (hs.acab./trem).(trens produzidos/sem.)
(total hs acabamento/sem.) = 2(x1) + 1(x2) = 2x1 + x2
A restrio 1 ser dada por:
2x1 + x2 100Observe que todos os termos de uma restrio devem ter a mesmaunidade de medida.Os valores 2 e 1 na restrio so denominados coeficientes tecnolgicos.
-
Prof. Fogliatto Pesquisa Operacional 13
Restrio 2 (determinada de maneira similar):
(total hs carpintaria/sem.) = (hs.carp./sold.).(sold. produzidos/sem.)+ (hs.carp./trem).(trens produzidos/sem.)
(total hs carpintaria/sem.) = 1(x1) + 1(x2) = x1 + x2
A restrio 2 ser dada por: x1 + x2 80
Restrio 3:
A restrio 3 definida pela limitao do nmero de soldados produ-zidos por semana (devido a limitaes na demanda):
x1 40
Prof. Fogliatto Pesquisa Operacional 14
RESTRIES DE SINAL
Identificam os tipos de valores que as variveis podem assumir.
Podem ser de trs tipos: 0 0 irrestritaCombinando a funo objetivo e as restries, chega-se a formulaomatemtica do problema da Politoy:
max z = 3x1 + 2x2
Sujeito a:2x1 + x2 100
x1 + x2 80x1 40
x1, x2 0
Restrio de horas de acabamento
Restrio de horas de carpintaria
Restrio de demanda
Prof. Fogliatto Pesquisa Operacional 15
PRTICA 1:
Um fazendeiro deseja determinar quantos acres de milho e trigo ele deve plantar esse ano. Um acre de trigo rende 25 sacas e requer 10 horas de trabalho/semana. A saca vale $4 no mercado.Um acre de milho rende 10 sacas e requer 4 horas de trabalho/semana. A saca vale $3 no mercado. O governo garante a compra de pelo menos 30 sacas de milho/ano.O fazendeiro dispe de 7 acres de terra e pode trabalhar 40 horas/semana.
Formule o problema tal que os ganhos do fazendeiro sejam maximizados.
Prof. Fogliatto Pesquisa Operacional 16
Soluo - Prtica 1
Variveis de Deciso: x1 = no de acres de milho a serem plantados x2 = no de acres de trigo a serem plantados
-
Prof. Fogliatto Pesquisa Operacional 17
ESPAO DE SOLUES E SOLUO TIMA
O espao de solues formado por todos os pontos quesatisfazem as restries do problema.
A soluo tima em um problema de maximizao corresponde ao ponto no espao de solues onde o valor dafuno objetivo mximo.
Prof. Fogliatto Pesquisa Operacional 18
Representao grfica
Representao da restrio 2x1 + 3x2 = 6:
(0,0) 2 3 4
2
3
4
2x1 + 3x2 = 62x1 + 3x2 6
2x1 + 3x2 6
x1
x2
Prof. Fogliatto Pesquisa Operacional 19
Representao grfica do problema Politoy
20
20
40
40
60
60
80
80
100
100
(2)
(4)
(3)
O espao de solues encontra-sehachurado.
(2) - (4) denotam as restries.
As restries de sinal restringem o problemaao primeiro quadrante do espao bi-dimens.
Soluo tima:(1) Desenhe o vetor z.
z
(2) Desenhe linhas ortogonais ao vetor z. Essas so as linhas de isocusto.
Ponto timo: (20,60)
(3) Calcule o valor de z no ponto timo.
z = 3(20) + 2(60) = 180
x1
x2
Prof. Fogliatto Pesquisa Operacional 20
Restries crticas (binding) e no-crticas
Uma restrio crtica (binding) se, substituindo os valores correspondentes ao ponto timo na restrio, a igualdade de verifica.
Ex.: restries (2) e (3) no grfico anterior.
Todas as demais restries so consideradas no-crticas.
Ex.: restrio (4) e restries de sinal no grfico anterior.
-
Prof. Fogliatto Pesquisa Operacional 21
Solucione graficamente o problema e identifique o tipo de conjuntode solues resultante.
Um empresa de eletrodomsticos planeja veicular seus produtos emcomerciais de TV durante a novela das 8 e os jogos da seleo na Copa.
Comerciais na novela so vistos por 7 milhes de mulheres e 2 milhesde homens e custam $50000.Comerciais nos jogos so vistos por 2 milhes de mulheres e 12 milhesde homens, e custam $100000.
Qual a distribuio ideal de comerciais se a empresa deseja que eles sejam vistos por 28 milhes de mulheres e 24 milhes de homens a um menorcusto possvel?
Outro exemplo:
Prof. Fogliatto Pesquisa Operacional 22
Variveis de deciso:x1 = num. de comerciais veiculados durante a novela.x2 = num. de comerciais veiculados durante os jogos
Funo objetivo:Min z = 50x1 + 100x2
Restries: Pblico feminino: 7x1 + 2x2 28 Pblico masculino: 2x1 + 12x2 24 x1, x2 0
Soluo tima: (3.6, 1.4) com z = $320. A soluo nica.
A soluo grfica ...
Prof. Fogliatto Pesquisa Operacional 23
2
2
4
4
6
6
8
8
10
10z
Ponto timo: (3.6, 1.4)
x1
x2 Ponto timo no inteiro: Testar pontos (4,1), (3,2), (4,2), checando restries e z. Usar programao inteira.
Prof. Fogliatto Pesquisa Operacional 24
CASOS ESPECIAIS:
(1) Problemas com solues alternativas (vrias solues sosimultaneamente timas).
Nestes casos, a linha de isocusto, ao abandonar o espao desolues viveis, intersecciona com uma linha inteira (e no somente um ponto) desse conjunto.
-
Prof. Fogliatto Pesquisa Operacional 25
(2) Problemas com soluo tendendo ao infinito.
Nestes casos, as restries formam um espao aberto de soluesviveis.
Se a funo objetivo for do tipomax, z e a formulaodo problema pode estar incorreta.
Se for do tipo Min, uma ou maissolues sero encontradas.
CASOS ESPECIAIS:
Prof. Fogliatto Pesquisa Operacional 26
(3) Problemas sem soluo
Nestes casos, as restries no formam nenhum espao desolues viveis.
CASOS ESPECIAIS:
Prof. Fogliatto Pesquisa Operacional 27
Resolva graficamente o problema formulado na Prtica 1
Prof. Fogliatto Pesquisa Operacional 28
Outro exerccio Um fabricante deseja maximizar a receita. A tabela mostra
as composies das ligas, seus preos e as limitaes na disponibilidade de matria-prima:
Formule o problema e encontre a soluo tima graficamente.
-
Prof. Fogliatto Pesquisa Operacional 29
Problemas Tpicos de Formulao
Escolha da dieta
Scheduling de pessoal
Deciso Financeira
Problema da Mistura
Programao da Produo
Prof. Fogliatto Pesquisa Operacional 30
FORMULAO 1: Escolha de dieta
Quatro tipos de alimentos esto disponveis na elaborao da merenda de um grupo de crianas: biscoito de chocolate, sorvete, refrigerante e torta de queijo. A composio desses alimentos e seus preos so:
As crianas devem ingerir pelo menos 500 calorias, 6 g de chocolate, 10 g de acar, e 8 g de gordura.
Formule o problema tal que o custo seja minimizado.
Prof. Fogliatto Pesquisa Operacional 31
Variveis de deciso:
x1 = pores de biscoitos;x2 = pores de sorvete;x3 = pores de refrigerante;x4 = pores de torta de queijo;
Funo objetivo:
(custo total) = (custo dos biscoitos) + (custo do sorvete) + (custo dorefrigerante) + (custo da torta de queijo)
Min z = 50 x1 + 20 x2 + 30 x3 + 80 x4
Prof. Fogliatto Pesquisa Operacional 32
Restries:
(1) Ingesto mnima de 500 calorias;(2) Ingesto mnima de 6 g de chocolate;(3) Ingesto mnima de 10 g de acar;(4) Ingesto mnima de 8 g de gordura.
(1) 400 x1 + 200 x2 + 150 x3 + 500 x4 500(2) 3 x1 + 2 x2 3(3) 2 x1 + 2 x2 + 4 x3 + 4 x4 10(4) 2 x1 + 4 x2 + x3 + 5 x4 8Variveis 0.
-
Prof. Fogliatto Pesquisa Operacional 33
FORMULAO 2: Otimizao da Fora de Trabalho
Uma agncia de correios necessita de um nmero diferente de fun-cionrios, de acordo com o dia da semana:
Por exigncia sindical, cada trabalhador trabalha cinco dias con-secutivos e descansa dois.
Formule o problema tal que o nmero de empregados contratadosseja o mnimo necessrio para atender s necessidades de mo-de-obra.
Prof. Fogliatto Pesquisa Operacional 34
Variveis de deciso:
xi = nm. de empregados trabalhando no dia i;
Funo objetivo:
Min z = x1 + x2 + x3 + x4 + x5 + x6 + x7
Restries:
x1 17x2 13
x3 15x4 19
x5 14x6 16
x7 11xi 0
Qual o problemacom essa formulao?
Prof. Fogliatto Pesquisa Operacional 35
PROBLEMAS
(1) A funo-objetivo no o nmero de funcionrios, como seimagina. Cada funcionrio est sendo computado 5 vezes.
Por ex.: um funcionrio que comea a trabalhar na segunda,trabalha de segunda a sexta e est includo nas variveisx1, x2, x3, x4, x5.
(2) A inter-relao entre as variveis x1, x2, ..., x5 no est capturadana formulao.
Por ex.: alguns funcionrios que trabalham na segunda estarotrabalhando na tera. Ou seja x1 e x2 esto inter-relacionadasmas isso no aparece na formulao.
Prof. Fogliatto Pesquisa Operacional 36
FORMULAO CORRETA
Variveis de deciso:
xi = nm. de empregados comeando a trabalhar no dia i;
Cada empregado comea a trabalhar em um nico dia, no sendo assimcontados mais de uma vez.
Funo objetivo:
Min z = x1 + x2 + x3 + x4 + x5 + x6 + x7
-
Prof. Fogliatto Pesquisa Operacional 37
17 funcionrios devem estar trabalhando na segunda.
Quem estar trabalhando segunda?
xi = trabalham nos dias i, i+1, i+2, i+3, i+4;
i = 1 (segunda). Assim, estaro trabalhando na segunda os empregados x1 + x4 + x5 + x6 + x7.
Assim, a restrio referente ao nmero de empregados trabalhando nasegunda ser:
x1 + x4 + x5 + x6 + x7 17Os demais dias sero formulados de maneira similar.
Prof. Fogliatto Pesquisa Operacional 38
Restries:
x1 + x4 + x5 + x6 + x7 17x1 + x2 + x5 + x6 + x7 13x1 + x2 + x3 + x6 + x7 15x1 + x2 + x3 + x4 + x7 19x1 + x2 + x3 + x4 + x5 14x2 + x3 + x4 + x5 + x6 16x3 + x4 + x5 + x6 + x7 11
xi 0A soluo tima x1 = 4/3; x2 = 10/3; x3 = 2; x4 = 22/3x5 = 0; x6 = 10/3; x7 = 5. xi fracionrio no faz sentido. Arredondando-se chegamos a uma soluo que, quando checada via otimizao inteira, resulta completamente sub-tima. Para esses problemas precisamos de programao inteira.
Prof. Fogliatto Pesquisa Operacional 39
FORMULAO: Deciso Financeira
O conceito de valor lquido presente:
Considere que $1 investido hoje valer mais de $1 daqui h um ano. O novo valor depender da taxa anual de juros, r.Assim:
$1 hoje = $(1 + r)k em k anosou
$ 1 recebidos em k anos = $ (1 + r)-k hoje$ x recebidos em k anos = $x / (1 + r)k hoje
O valor lquido presente (VLP) de um investimento determinado descontando o fluxo de caixa de um investimento at o tempo atual, ou tempo 0.
Prof. Fogliatto Pesquisa Operacional 40
EXEMPLO:
Investim. 1 = requer um investimento de $10,000 no tempo 0 e de $14,000 em 2 anos e tem um retorno de $24,000 em 1 ano.
Investim. 2 = requer um investimento de $6,000 no tempo 0 e de $1,000 em 2 anos e tem um retorno de $8,000 em 1 ano.
Qual o melhor investimento (r = 0.2)?
VLP (Inv. 1) = -10,000 + (24,000/1+0.2) - [14,000/(1+0.2)2]= $277.78
VLP (Inv. 2) = -6,000 + (8,000/1+0.2) - [1,000/(1+0.2)2]= - $27.78
O investimento 1 bem melhor!
-
Prof. Fogliatto Pesquisa Operacional 41
EXEMPLO DE FORMULAO:Formulao 3
Uma empresa est considerando 5 oportunidades de investimento, com caractersticas dadas a seguir:
A empresa tem $40 disponveis para investimento no tempo t = 0 e estima dispor de $20 no tempo t = 1. Capital no investido em t=0 no estar disponvel em t = 1. Fraes de cada investimento podem ser compradas. Formule o problema tal que o VLP da companhia seja maximizado.
Prof. Fogliatto Pesquisa Operacional 42
Varivel de deciso:
A empresa deseja determinar qual frao de cada investimento deve ser comprada:
xi = frao do investimento i comprada pela empresa.
Funo objetivo:
Consiste em maximizar os VLP dados na tabela:
Max z = 13x1 + 16x2 + 16x3 + 14x4 + 39x5
Prof. Fogliatto Pesquisa Operacional 43
Restries:
(1) A empresa no pode investir mais de $40 no tempo 0:
11x1 + 53x2 + 5x3 + 5x4 + 29x5 40(2) A empresa no pode investir mais de $20 no tempo 1:
3x1 + 6x2 + 5x3 + x4 + 34x5 20Falta alguma restrio?
(3) A empresa no pode comprar mais que 100% de nenhuminvestimento:
xi 1(4) Todas as variveis devem ser positivas.
Prof. Fogliatto Pesquisa Operacional 44
PRTICA 2:
A empresa X deseja determinar quanto dinheiro investir e quanto dinheiro tomar emprestado no prximo ano. Cada real investido pela empresa reduz o VLP em 10 centavos e cada real tomado em emprstimo aumenta o VLP em 50 centavos (vale mais a pena tomar emprestado do que investir).X pode investir no mximo $1000000. O dbito pode somar at 40% do que for investido.X dispe de $800000 em caixa.Todo o investimento deve ser pago com o dinheiro em caixa ou com dinheiro emprestado.Formule o problema tal que o VLP de X seja maximizado.Resolva o problema graficamente.
-
Prof. Fogliatto Pesquisa Operacional 45
FORMULAO: Problema da Mistura
Situaes onde vrias matrias-primas devem ser misturadas em propores ideais so modelveis via programao linear.Alguns exemplos:(1) Mistura de vrios tipos de leos para produzir diferentes tipos de gasolina.(2) Mistura de compostos qumicos para gerar outros compostos.(3) Mistura de ingredientes para produo de raes.(4) Mistura de diferentes tipos de papis para produzir um papel reciclado.
Prof. Fogliatto Pesquisa Operacional 46
EXEMPLO (Formulao 4): O caso Texaco
A Texaco produz at 14000 barris/dia de 3 tipos de gasolina misturando 3 tipos de leos. Dados a respeito das gasolinas e leos so:
Prof. Fogliatto Pesquisa Operacional 47
EXEMPLO (Formulao 4): O caso Texaco
As gasolinas tm especificaes de octanagem e contedo de enxofre dadas abaixo. A mistura de leos para produo de gasolina deve satisfazer essas especificaes.
Cada $/dia gasto em publicidade c/ qualquer tipo de gasolina, aumenta em 10 barris a venda daquele tipo de gasolina. Formule este problema tal que a Texaco maximize seus lucros dirios (= receita-despesa).
Prof. Fogliatto Pesquisa Operacional 48
Variveis de deciso:
A Texaco deve decidir sobre (i) quanto dinheiro gastar na publicidade de cada tipo de gasolina e (ii) qual a mistura apropriada de leos.
ai = $/dia gasto na publicidade da gasolina i.xij = barris de leo i gastos/dia para produzir gasolina j.
Funo objetivo:
Primeiro, note que:
x11 +x12 + x13 = bar.leo 1 consum./dia.x21 +x22 + x23 = bar.leo 2 consum./dia.x31 +x32 + x33 = bar.leo 3 consum./dia. x11 +x21 + x31 = bar.gas.1 prod./dia.x12 +x22 + x32 = bar.gas.2 prod./dia.
x13 +x23 + x33 = bar.gas.3 prod./dia.
-
Prof. Fogliatto Pesquisa Operacional 49
Funo objetivo:
(1) Ganhos/dia com vendas de gasolina:
70(x11 +x21 + x31) + 60(x12 +x22 + x32) + 50(x13 +x23 + x33)
(2) Custo/dia da compra de leo:
45(x11 +x12 + x13) + 35(x21 +x22 + x23) + 25(x31 +x32 + x33)
(3) Custo/dia com propaganda:a1 + a2 + a3
(4) Custo/dia produo:
4(x11 +x12 + x13 + x21 +x22 + x23+ x31 +x32 + x33)
Lucro dirio: (1) - (2) - (3) - (4)
Prof. Fogliatto Pesquisa Operacional 50
Funo objetivo:
Max z = 21x11 +11x12 + x13 + 31x21 + 21x22 + 11x23 + 41x31 +31x32 + 21x33 - a1 - a2 - a3
Restries:
(1-3) Gas 1-3 produzida diariamente deve ser igual a demanda (no queremos estocar gasolina).Demanda diria gas 1: 3000 + demanda gas 1 gerada por publicidade
= 3000 + 10a1Demanda gas 2: 2000 + 10a2Demanda gas 3: 1000 + 10a3Assim:
x11 + x21 + x31 - 10a1 = 3000x12 + x22 + x32 - 10a2 = 2000x13 + x23 + x33 - 10a3 = 1000
Prof. Fogliatto Pesquisa Operacional 51
Restries:
(4-6) Compra diria de leo 1-3 no deve exceder 5000 barris.x11 + x12 + x13 5000x21 + x22 + x23 5000x31 + x32 + x33 5000
(7) Produo/dia de gas no deve exceder 14000 barris.x11 +x12 + x13 + x21 +x22 + x23+ x31 +x32 + x33 14000
(8) Mistura de leos p/produzir gas 1 deve ter uma octanagem mdia de pelo menos 10 graus.
Para linealizar essa inequao, multiplica-se os dois lados pelo denominador:
2x11 - 4x21 - 2x31 0Prof. Fogliatto Pesquisa Operacional 52
(9) Mistura de leos p/produzir gas 2 deve ter uma octanagem mdia de pelo menos 8 graus.
4x12 - 2x22 0
(10) Mistura de leos p/produzir gas 3 deve ter uma octanagem mdia de pelo menos 6 graus.
6x13 + 2x33 0A restrio (10) redundante e no precisa ser includa no modelo.
Por qu?
Porque x13 e x33 0 por definio. Verifique a octanagem dos leos crus para entender o porqu desta redundncia.
-
Prof. Fogliatto Pesquisa Operacional 53
(11) Mistura de leos p/produzir gas 1 deve ter um teor de enxofre menor ou igual a 1%.
-0.015x12 + 0.01x32 0
(12) Mistura de leos p/produzir gas 2 deve ter um teor de enxofre menor ou igual a 2%.
-0.005x11 + 0.01x21 + 0.02x13 0
(13) Mistura de leos p/produzir gas 3 deve ter um teor de enxofre menor ou igual a 1%.
-0.005x13 + 0.01x23 + 0.02x33 0
Prof. Fogliatto Pesquisa Operacional 54
FORMULAES MULTIPERODO (Formulao 5)O problema do estoque - O caso da empresa Regata
A Regata S/A quer decidir quantos barcos produzir nos prximos 4 trimestres, de modo a satisfazer sua demanda a um menor custo:
Prof. Fogliatto Pesquisa Operacional 55
A Regata deve atender seus pedidos em dia. No incio do 1o trimestre, 10 barcos esto em estoque. No incio de cada trimestre, a Regata deve decidir quantos barcos sero produzidos naquele trimestre. Barcos produzidos num trimestre podem ser usados para atender pedidos naquele mesmo trimestre (pedidos so atendidos no final do trimestre).
A Regata por produzir at 40 barcos/trim, a um custo de $400/barco. Para aumentar a produo, pode usar horas-extra, a um custo de $450/barco.
Estocar um barco de um trim. para outro custa $20/barco.
Formule o problema tal que a demanda seja atendida um mnimo custo.
FORMULAES MULTIPERODO (Formulao 5)O problema do estoque - O caso da empresa Regata
Prof. Fogliatto Pesquisa Operacional 56
Variveis de deciso:
A Regata deve determinar quantos barcos produzir usando mo-de-obra normal e horas-extra a cada trimestre:
xt = barcos produzidos por m.o. normal durante trim. t.yt = barcos produzidos por horas-extra durante trim. t.
Variveis de estoque tambm devem ser definidas:
it = barcos em estoque no final do trimestre t.
Assim:Custo total = custo produo normal + custo produo hora-extra +
custo estocagem= 400 (x1 + x2 + x3 + x4) + 450(y1 + y2 + y3 + y4) +
20 (i1 + i2 + i3 + i4)
-
Prof. Fogliatto Pesquisa Operacional 57
Funo objetivo:
Min z = 400x1 + 400x2 + 400x3 + 400x4 + 450y1 + 450y2 + 450y3 +450y4 + 20i1 + 20i2 + 20i3 + 20i4
Estoque no final de cada trimestre:
it = it-1 + (xt + yt) - dt , t = 1,,4
onde dt = demanda no trimestre t.
Para satisfazer a demanda ao final de cada trimestre:
it-1 + (xt + yt) dt
ou it = it-1 + (xt + yt) dt 0Prof. Fogliatto Pesquisa Operacional 58
Restries:
(1-4) Produo normal em cada trimestre no deve exceder 40 barcos:
x1 40x2 40x3 40x4 40
(5-8) Demanda deve ser satisfeita a cada trimestre:
i1 = 10 + x1 + y1 - 40 i2 = i1 + x2 + y2 - 60i3 = i2 + x3 + y3 - 75 i4 = i3 + x4 + y4 - 25
Todas as variveis so do tipo 0.
Prof. Fogliatto Pesquisa Operacional 59
PRTICA 3: Modelos Financeiros com mltiplos perodos.Uma empresa precisa definir sua estratgia financeira para os prximos trs anos. No tempo t = 0, $100000 esto disponveis para investimento. Planos A, B, C, D e E esto disponveis. Investir $1 em cada um desses planos gera o fluxo de caixa abaixo:
No mximo $75000 podem ser investidos num mesmo plano. A empresa pode ganhar 8% de juros se investir no mercado financeiro ao invs dos planos. Lucros gerados em qualquer perodo podem ser imediatamente reinvestidos (no mesmo perodo). A empresa no pode tomar dinheiro emprestado.Formule o problema tal que $ no ltimo priodo seja mximo.
Prof. Fogliatto Pesquisa Operacional 60
Utilizao do Whats Best na soluo de problemas de PL
Whats Best um programa da famlia Lindo para otimizao linear, no-linear e inteira.
Vantagens: implementado na planilha Excel; vrias funes
algbricas do Excel so aceitas na formulao do problema:
ABS, ACOS, AND, ASIN, ATAN, ATAN2, AVERAGE, COS, EXP, FALSE, IF, INT, LN, LOG, MAX, MIN, MOD, NOT, NPV, OR, PI, SIN, SQRT, SUM, SUMPRODUCT, TAN, TRUE, TRUNC, NORMINV, TRIAINV, EXPOINV, UNIFINV, MULTINV.
-
Prof. Fogliatto Pesquisa Operacional 61
Outras vantagens do Whats Best
Programa permite alterar coeficientes da formulao facilmente: formulao fica explicita na planilha.
Facilidade de uso: princpio de programao o mesmo do Excel.
Gratuito para download da rede:www.lindo.com
Opo: Whats Best
Prof. Fogliatto Pesquisa Operacional 62
Como utilizar o programa
Abra o Excel. O Whats Best deve carregar-se como uma Macro daquela planilha.
Abra o arquivo XYZPort, que contm o exemplo.
Este o arquivo.
Prof. Fogliatto Pesquisa Operacional 63
Os comandos do programa esto na barra de ferramentas e no menu
Prof. Fogliatto Pesquisa Operacional 64
O Problema do Mix de Produo
A XYZ Corporation monta dois modelos de computador.
O modelo Padro gera um lucro por unidade produzida de $300, enquanto o modelo Luxo gera um lucro por unidade de $500.
Os dois modelos utilizam trs componentespara sua montagem: o chassis Padro (60), o chassis de Luxo (50) e o drive de disquete (120). Disponveis em estoque
-
Prof. Fogliatto Pesquisa Operacional 65
Necessidades de componentes em cada modelo
O modelo Padro utiliza um chassis Padro e um drive de disquete.
O modelo Luxo utiliza um chassis Luxo e dois drives de disquete.
Problema: qual combinao de modelos Padro e Luxo maximiza os lucros da XYZ, considerando os componentes atualmente em estoque?
Prof. Fogliatto Pesquisa Operacional 66
n Determinar as variveis de deciso (adjustable cells)
Variveis de deciso: Padro = quantidd de computadores padro a
serem produzidos.
Luxo = quantidd de computadores luxo a serem produzidos.
Prof. Fogliatto Pesquisa Operacional 67
n Determinar as variveis de deciso (adjustable cells)
Identificao das variveis de deciso
Valor inicial das variveis de deciso (pode ser qualquer valor).
Na busca pelo timo, o programa permitir que essas clulas assumam qualquer valor no-
negativo.Prof. Fogliatto Pesquisa Operacional 68
Identifique as clulas como variveis de deciso (adjustable cells)
n Selecione as clulas onde foram escritos os zeros.
o Na opo WB! do menu, selecione adjustable.
Tela resultante
-
Prof. Fogliatto Pesquisa Operacional 69
n Identificao das clulasselecionadas como ajustveis.
o Opo caso as variveis de decisosejam irrestritas no sinal.
q Caso as variveis sejam irrestritasno sinal, siga os passos abaixo.
p Caso as variveis de decisosejam no-negativas, clique OK.
r Nomeie as variveis irrestritasno sinal (qualquer nome serve).
s Clique em Add.
t Clique em OK.
WBFree identificavariveis irrestritas
Prof. Fogliatto Pesquisa Operacional 70
Variveis de deciso so identificadas em
azul pelo WB.
Existe um cone de atalho p/ identificao de variveis de deciso no-negativas, conforme apresentado abaixo.
n Selecione as variveis de deciso.
o Clique no cone . Clulas passam a ser apresentadas em azul.
Prof. Fogliatto Pesquisa Operacional 71
o Escreva a funo objetivo (best)
Funo objetivo: Lucro Total =
(Lucro por unidade do Modelo Padro) (Qtdd de Modelos Padro produzidos) + (Lucro por unidade do Modelo Luxo) (Qtdd de Modelos Luxo produzidos)
Lucro Total = 300 Padro + 500 Luxo
Prof. Fogliatto Pesquisa Operacional 72
Coeficientes de custo da funo objetivo.
Frmula da funo objetivo.
-
Prof. Fogliatto Pesquisa Operacional 73
o Identifique a clula que contm a frmula como funo objetivo (best)
n Clique na clula onde afrmula da funo objetivo foiescrita.
o Selecione WB! no menu e a opo Best.
Este a tela correspondente opo Best.
Prof. Fogliatto Pesquisa Operacional 74
n Identificao das clulasselecionadas como ajustveis.
o Identifique se o problema de Minimizao ou Maximizao (default Minimizao).
p Confirme clicando OK.
Clula contendo funo objetivo passar a ser identificada como clula a ser maximizada (WBMAX).
Prof. Fogliatto Pesquisa Operacional 75
n Selecione a clula contendo a frmula da funo objetivo.
o Clique no cone .
Confira se clula passou a ser identificada por WBMAX.
Prof. Fogliatto Pesquisa Operacional 76
p Especifique as restries (constraints)
Restries informam que total de componentes utilizados deve ser quantidade disponvel em estoque.
Restrio p/ componente chassis padro:(Qtdd de Modelos Padro produzidos) (No de chassis padro por modelo) +(Qtdd de Modelos Luxo produzidos) (No de chassis padro por modelo) Qtdd de chassis padro em estoque
Padro 1 + Luxo 0 60
-
Prof. Fogliatto Pesquisa Operacional 77
Demais restries (constraints)
Restrio p/ componente chassis luxo:
Restrio p/ componente drive de disquete:
Restrio de no-negatividade: o default do WB.
Padro 0 + Luxo 1 50
Padro 1 + Luxo 2 120
Prof. Fogliatto Pesquisa Operacional 78
Organizao das restries na planilha do WB
Coeficientes tecnolgicosdas restries.
Clulas c/ as frmulasdas restries.
Frmula da 1a restrio.
Lado direito das restries.
Prof. Fogliatto Pesquisa Operacional 79
Restries devem ser identificadas no WB
Restries podem ser de trs tipos: , , =. Ao escrever-se o sentido da restrio numa clula
da planilha: a clula adjacente esquerda passa a ser identificada
como aquela que contm a frmula da restrio;
a clula adjacente direita passa a ser identificada como aquela que contm a disponibilidade do recurso.
Prof. Fogliatto Pesquisa Operacional 80
Identifique restries
n Selecione a clula onde ser escrito o sentido da 1a restrio.
o Na opo WB! do menu, selecione constraints.
Tela resultante
-
Prof. Fogliatto Pesquisa Operacional 81
n Identificao da clulaque deve conter a frmula darestrio.
o Identificao do tipo de restrio (default ).
p Identificao da clula que deveconter o lado direito da restrio.
Confirme clicando OK.
Prof. Fogliatto Pesquisa Operacional 82
Identificao do tipo da restrio.
Identificao do tipo da restrio e clulas consideradas.
Repita o procedimento para as demais restries.
Prof. Fogliatto Pesquisa Operacional 83
n Selecione a clula onde o tipo da restrio deve ser escrito.
o Clique no cone apropriado.
Confira se clula passou a ser identificada como
restrio.
Prof. Fogliatto Pesquisa Operacional 84
Clique em para rodar a otimizao
Valor das variveis de deciso no ponto timo.
Valor da funo objetivo no ponto timo.
Situao das restries no ponto timo.
-
Prof. Fogliatto Pesquisa Operacional 85
Situao especial:Variveis de deciso devem ser inteiras
n Selecione as clulas onde foram escritos os zeros.
o Na opo WB! do menu, selecione integer.
Tela resultante
Prof. Fogliatto Pesquisa Operacional 86
n Identificao das clulasselecionadas como ajustveis e inteiras.
o Escolha um nome para as variveis inteiras (qualquer nome serve).
q Clique em OK p/ confirmar.
p Identifique se variveis de deciso so inteiras binrias (0 ou 1) ou qualquer nmero inteiro no-negativo (opo General). Ateno: default do programa binrio
Prof. Fogliatto Pesquisa Operacional 87
Outros programas de otimizao
Solver do Excel Vantagem: suporta todas as funes matemticas do
Excel.
Desvantagem: esconde a formulao.
Lindo Vantagem: executa anlise de sensibilidade e pode ser
baixado gratuitamente da rede.
Desvantagem: formulao deve ser escrita como texto.
Tutorial do Lindo disponvel na apostilaProf. Fogliatto Pesquisa Operacional 88
I. REVISO DE LGEBRA LINEAR
I.1. MATRIZES E VETORES
Uma matriz qualquer arranjo retangular de nmeros. Uma matriz A com m linhas e n colunas uma matriz m x n. m x n a ordem de A.
Forma geral:
O nmero na isima linha e jsimacoluna da matriz denominado aij.
-
Prof. Fogliatto Pesquisa Operacional 89
I.1 Matrizes e Vetores
Uma matriz com uma nica coluna um vetor de coluna. Uma matriz com uma nica linha um vetor de linha. Vetores, por definio, so de coluna; um vetor de linha um vetor de coluna transposto. Um vetor de zeros designado por 0.
Produto Escalar de Vetores:
Sejam u = [ u1,,un ] um vetor (transposto) de linha e v = [ v1,,vn ] um vetor de coluna de igual dimenso. Seu produto escalar ser o nmero:
u . v = u1v1 + u2v2 ++ unvn
Prof. Fogliatto Pesquisa Operacional 90
I.1 Matrizes e Vetores
O produto escalar:
no definido.
Prof. Fogliatto Pesquisa Operacional 91
OPERAES COM MATRIZES
Transposto de uma Matriz:
Seja uma matriz qualquer de ordem (m x n) :
O transposto de A, designado por A, ser uma matriz de ordem (n x m):
Prof. Fogliatto Pesquisa Operacional 92
MATRIZES E SISTEMAS DE EQUAES LINEARES
a11x1 + a12x2 + . + a1nxn = b1a21x1 + a22x2 + . + a2nxn = b2
am1x1 + am2x2 + . + amnxn = bm
x1, x2,, xn = variveis desconhecidas (incgnitas). aij , bi = constantes
Soluo para um sistema de equaes lineares com m equaes e nincgnitas = conjunto de valores para x1, x2,, xn que satisfaa as m equaes do sistema.
-
Prof. Fogliatto Pesquisa Operacional 93
SISTEMAS DE EQUAES LINEARESRepresentao Matricial
(m x n) (n x 1) (m x 1)
Ax = b
Prof. Fogliatto Pesquisa Operacional 94
INVERSO DE UMA MATRIZDefinies:
n A uma matriz (m x n). Se m = n, ento A uma matriz quadrada.o A = [aij]. Os elementos diagonais de A so aqueles aij para os
quais i = j.
p= matriz identidade (Im)
Prof. Fogliatto Pesquisa Operacional 95
Idia Central:
Determine A-1 tal que A.A-1 = I.
Procedimento:
Transformar A em I atravs de operaes elementares com linhas.As mesmas operaes transformaro I em A-1.
MTODO DE GAUSS-JORDAN DE INVERSO DE MATRIZES
Prof. Fogliatto Pesquisa Operacional 96
EXEMPLO 1:
-
Prof. Fogliatto Pesquisa Operacional 97
EXEMPLO 2:
B-1 no existe! Note que a segundalinha uma combinao linearda primeira.
Prof. Fogliatto Pesquisa Operacional 98
Prtica 4Resolva o seguinte sistema de equaes lineares usando a matriz inversa de A:
A soluo do sistema ser dada por x = A-1.b
Prticas adicionais: inverta as matrizes abaixo (utilize a funo matriz.inv do Excel para checar o resultado)
Prof. Fogliatto Pesquisa Operacional 99
Considere o seguinte problema:
Um fabricante de mveis deseja determinar o mix ideal de produo, levando em conta preos-de-venda dos produtos e quantidade disponvel de insumos.
A situao atual vem dada na tabela abaixo:
Prof. Fogliatto Pesquisa Operacional 100
A formulao matemtica deste problema
Max z = 60x1 + 30x2 + 20x3s.a: 8x1 + 6x2 + x3 48
4x1 + 2x2 + 1.5 x3 202x1 + 1.5x2 + 0.5 x3 8x1, x2, x3 0
Restrio das Tbuas
Restrio de Acabamento
Restrio de Carpintaria
No escrivaninhas produzidas
No mesas produzidas
No cadeiras produzidas
-
Prof. Fogliatto Pesquisa Operacional 101
Para resolver o problema pelo Simplex, temos que adicionar variveis de folga
Max z = 60x1 + 30x2 + 20x3
s.a: 8x1 + 6x2 + x3 + f1 = 48 4x1 + 2x2 + 1.5 x3 + f2 = 202x1 + 1.5x2 + 0.5 x3 + f3 = 8x1, x2, x3, f1, f2, f3 0
Uma vez adicionadas variveis de folga e excesso, o problema dito no formato padro, pronto para ser resolvido atravs do mtodo
Simplex!
Prof. Fogliatto Pesquisa Operacional 102
Conceitos-chave no mtodo Simplex
Variveis de folga e excesso. Folgas introduzidas em restries do tipo . Excessos introduzidos em restries do tipo .
Variveis bsicas e no-bsicas.
Bsicas = var. p/ as quais o sistema de equaes resolvido.
No-bsicas = var. zeradas para que o sistema de equaes apresente uma soluo (equaes=variveis).
Prof. Fogliatto Pesquisa Operacional 103
Solucionando problemas de otimizao linear no tableau do simplex
O tableau inicial tem a seguinte estrutura:
Prof. Fogliatto Pesquisa Operacional 104
Montagem do tableau passo a passo
A montagem do tableau sempre pressupe variveis de folga formando a base inicial
O no de variveis na base igual ao no de restries no problema
Se no houver variveis de folga em quantidade suficiente para formar a base inicial, utilizaremos variveis de folga artificiais (vistas mais adiante)
-
Prof. Fogliatto Pesquisa Operacional 105
Montagem do tableau passo a passoLista das variveis no cabealho das colunas
Para um problema com n variveis, o tableau ter n + 2 colunas
Cada varivel ser posicionada em uma coluna do tableau: Inicie pelas variveis estruturais (x1, x2, ...) Depois lista folgas, excessos e artificiais na
ordem em que aparecerem nas restries
Prof. Fogliatto Pesquisa Operacional 106
Primeira coluna do tableau
A primeira coluna a coluna z: Ali so listadas as variveis bsicas do tableau Exemplo:
Base inicial formada por
f1, f2 e f3
Prof. Fogliatto Pesquisa Operacional 107
ltima coluna do tableau
a coluna RHS (right hand side): Ali aparecem o valor atual da funo objetivo
(no cruzamento entre coluna RHS e linha z) e o valor das variveis que esto na base
No primeiro tableau (se as var. de folga forem a base inicial), o valor atual da funo objetivo zero e o valor das variveis na base correspondem ao lado direito das restries
Prof. Fogliatto Pesquisa Operacional 108
ltima coluna do tableauExemplo
Valor def1, f2 e f3 na base
Valor da f.o. para a base atual
-
Prof. Fogliatto Pesquisa Operacional 109
Linhas do tableau
O tableau do simplex constitudo de m + 1 linhas (m = no de restries do problema): A primeira linha denominada linha z:
Analisando a linha z se verifica se o tableau timo ou se h melhorias possveis na funo obj.
As demais linhas esto associadas s variveis que esto na base, uma por varivel
Prof. Fogliatto Pesquisa Operacional 110
Linha z
No tabelau inicial, a linha z dada pelos coeficientes de cada varivel na funo objetivo, com o sinal invertido: Variveis de folga e de escesso tm coeficientes
zero, pois nunca esto na f.o. original
Embaixo das variveis bsicas, na linha z do tableau, s pode-se ter o valor 0!
Prof. Fogliatto Pesquisa Operacional 111
Exemplo de montagem da linha zMax z = 60x1 + 30x2 + 20x3
s.a: 8x1 + 6x2 + x3 + f1 = 48 4x1 + 2x2 + 1.5 x3 + f2 = 202x1 + 1.5x2 + 0.5 x3 + f3 = 8x1, x2, x3, f1, f2, f3 0
Prof. Fogliatto Pesquisa Operacional 112
Demais linhas do tableau
Copia-se literalmente o sistema de restries do problema:
-
Prof. Fogliatto Pesquisa Operacional 113
Prtica 5Considere o problema abaixo:
Min z = 3x1 - x2 + 5x3s.a
Transforme as inequaes em equaes introduzindo var. de folga. Monte o tableau inicial do problema.
Prof. Fogliatto Pesquisa Operacional 114
ALGORITMO SIMPLEX NO TABLEAU
Passo 1 Verifique se a base atual a base tima do problema: Um problema de Minimizao est na base
tima se todos os valores abaixo das variveis na linha z do tableau so negativos ou zero
Ex.:
O algoritmo encerra aqui!
Prof. Fogliatto Pesquisa Operacional 115
ALGORITMO SIMPLEX NO TABLEAU
Passo 1 Verifique se a base atual a base tima do problema: Um problema de Maximizao est na base
tima se todos os valores abaixo das variveis na linha z do tableau so positivos ou zero
Ex.:
O algoritmo encerra aqui!Prof. Fogliatto Pesquisa Operacional 116
ALGORITMO SIMPLEX NO TABLEAUPasso 2
Identifique a varivel a entrar na base:
Em problema de Minimizao, o valor mais positivo abaixo das variveis na linha z do tableau denota a varivel entrante
Em problema de Maximizao, o valor mais negativo na linha z denota a varivel entrante
-
Prof. Fogliatto Pesquisa Operacional 117
ALGORITMO SIMPLEX NO TABLEAUPasso 3
Identifique a varivel que sai da base atravs do teste da mnima razo:
Divida os nos (abaixo da linha z) no lado direito do tableau pelos nos positivos em posies correspondentes na coluna da varivel entrante (abaixo da linha z)
A menor razo indica a varivel que sai da base
Prof. Fogliatto Pesquisa Operacional 118
ALGORITMO SIMPLEX NO TABLEAUPasso 3 Exemplo (Minimizao)
varivel entrante
Razes:4 / 2 = 28 / 1 = 8
Menor razo! Varivel x1 sai da base para que x2 possa entrarNo 2 na coluna do x2 o elemento de pivot!
Elemento de pivot
Prof. Fogliatto Pesquisa Operacional 119
ALGORITMO SIMPLEX NO TABLEAUPasso 3 Exemplo (Maximizao)
varivel entrante
Razes:4 / -2 = No vale!8 / 2 = 4 nica razo (menor por definio!)
Varivel f2 sai da base para que f1 possa entrarNo 2 na coluna do f1 o elemento de pivot!
Elemento de pivot
Prof. Fogliatto Pesquisa Operacional 120
ALGORITMO SIMPLEX NO TABLEAUPasso 3 Nota importante
O critrio de entrada na base depende da funo objetivo do problema (maximizao ou minimizao)
O teste da mnima razo, entretanto, o mesmo, independente do tipo de funo objetivo!
-
Prof. Fogliatto Pesquisa Operacional 121
ALGORITMO SIMPLEX NO TABLEAUPasso 4
Realize o pivot para a troca de base:
Atravs de operaes elementares com linhas do tableau, faa com que a coluna da varivel entrante fique igual a coluna da varivel que est saindo da base
Inicie as operaes pelo elemento de pivot
Prof. Fogliatto Pesquisa Operacional 122
ALGORITMO SIMPLEX NO TABLEAUPasso 4 Exemplo
varivel entrante
Elemento de pivot
Coluna da varivel f1 deve ficar igual coluna da varivel f2
Prof. Fogliatto Pesquisa Operacional 123
ALGORITMO SIMPLEX NO TABLEAUPasso 4 Exemplo
Inicie pelo elemento de pivot: ele deve virar 1
A linha de trabalho ser usada nas operaes que transformaro os demais nos da coluna da varivel entrante em zero
Prof. Fogliatto Pesquisa Operacional 124
ALGORITMO SIMPLEX NO TABLEAUPasso 4 Exemplo
Como o problema de minimizao e no h mais valores negativos na linha z do tableau abaixo das variveis, esta a base tima do
problema!
-
Prof. Fogliatto Pesquisa Operacional 125
ALGORITMO SIMPLEX NO TABLEAUPasso 5
Volte ao passo 1
Prof. Fogliatto Pesquisa Operacional 126
ALGORITMO SIMPLEX NO TABLEAUAlguns comentrios
Cada tableau do simplex corresponde a uma base diferente do problema. Assim:
O valor da funo objetivo nunca deve piorar a medida que a troca de bases ocorre
As variveis bsicas no podem assumir valores negativos (ou houve erro no teste da mnima razo!)
Prof. Fogliatto Pesquisa Operacional 127
ALGORITMO SIMPLEX NO TABLEAUAlguns comentrios
Problemas de maximizao podem apresentar valores negativos de funo objetivo (depende da funo) e vice-versa
Atualize as variveis na base: aps cada pivot, certifique-se de que o cabealho das linhas est correto
Prof. Fogliatto Pesquisa Operacional 128
ALGORITMO SIMPLEX NO TABLEAUAlguns comentrios
As colunas das variveis bsicas no tableau abaixo da linha z devem sempre corresponder a colunas de uma matriz identidade
-
Prof. Fogliatto Pesquisa Operacional 129
Situaes especiais:
1. Solues timas alternativas;
2. Soluo infinita (tendendo ao infinito).
3. Base inicial no disponvel (problema c/variveis de excesso ou restries do tipo =).
Prof. Fogliatto Pesquisa Operacional 130
Exemplo c/ solues timas alternativas
Min z = -2x1 - 4x2s.a: x1 + 2x2 4
-x1 + x2 1x1, x2 0
2
2
4
4
6
6B1
B3
z
B2
Reta de solues timas alternativas
Prof. Fogliatto Pesquisa Operacional 131
Tableau
Prof. Fogliatto Pesquisa Operacional 132
Exemplo c/ soluo tendendo ao infinito
Min z = - x1 - 3x2s.a: x1 - 2x2 4
-x1 + x2 3x1, x2 0
2
2
4
4
6
6B1z
B2
Soluo tima
-
Prof. Fogliatto Pesquisa Operacional 133
Tableau
Prof. Fogliatto Pesquisa Operacional 134
Ex. c/ base inicial no disponvelMin z = x1 - 2x2s.a: - x1 + x2 1
x2 4x1, x2 0
2
2
4
4
6
6B1
B3 (Base tima)
z
B2
Adicionando excesso e folga
Min z = x1 - 2x2s.a: x1 + x2 - e1 = 1
x2 + f1 = 4x1, x2, e1, f1 0
Adicionando artificial
Min z = x1 - 2x2 + Ma1s.a: x1 + x2 - e1 + a1 = 1
x2 + f1 = 4x1, x2, e1, f1, a1 0
Prof. Fogliatto Pesquisa Operacional 135
Tableau
Prof. Fogliatto Pesquisa Operacional 136
Prtica 6ASoluo tima nica
Max z = 60x1 + 30x2 + 20x3s.a: 8x1 + 6x2 + x3 48
4x1 + 2x2 + 1.5 x3 202x1 + 1.5x2 + 0.5 x3 8x1, x2, x3 0
-
Prof. Fogliatto Pesquisa Operacional 137
Prtica 6BSoluo
Max z = 36x1 + 30x2 - 3x3 - 4x4s.a: x1 + x2 - x3 5
6x1 + 5x2 - x4 10x1, x2, x3, x4 0
Prof. Fogliatto Pesquisa Operacional 138
Prtica 6CSolues timas alternativas
Max z = -3x1 + 6x2s.a
5x1 + 7x2 35-x1 + 2x2 2x1, x2 0
Prof. Fogliatto Pesquisa Operacional 139
Prtica 6DBase Inicial no-disponvel
Max z = -x1 - 2x2s.a
3x1 + 4x2 122x1 - x2 2x1, x2 0
Prof. Fogliatto Pesquisa Operacional 140
Prtica 6EBase Inicial no-disponvel
Min z = -x1 - x2s.a
x1 - x2 1-x1 + x2 1x1, x2 0
Este problema no possui solues viveis (confira graficamente). Verifique como o mtodo do M-Grande vai sinalizar a ausncia de solues viveis.
-
Prof. Fogliatto Pesquisa Operacional 141
Prticas Adicionais
cMax z = 2x1 + x2 - x3s.a x1 + x2 + 2 x3 6
x1 + 4x2 - x3 4x1, x2, x3 0
dMin z = 3x1 - 3x2 + x3s.a x1 + 2x2 - x3 5
-3x1 - x2 + x3 4x1, x2, x3 0
eMax z = 2x1 - x2s.a x1 + x2 3
-x1 + x2 1x1, x2, 0
Prof. Fogliatto Pesquisa Operacional 142
O PROBLEMA DUAL
Todo o problema de programao linear possui um problemadual correspondente.
Chamaremos o problema original de primal e o problema dual de dual.
Variveis do problema primal z, x1, x2,,xn. Variveis do problema dual w, y1, y2,,ym.
Prof. Fogliatto Pesquisa Operacional 143
Escrevendo o dual de um problema de progr. linear
Max z = c1x1 + c2x2 + + cnxns.a: a11x1 + a12x2 + + a1nxn b1
a21x1 + a22x2 + + a2nxn b2
am1x1 + am2x2 + + amnxn bm
Min w = b1y1 + b2y2 + + bmyms.a: a11y1 + a21y2 + + am1ym c1
a12y1 + a22x2 + + am2ym c2
a1ny1 + a2ny2 + + amnym cn
Prof. Fogliatto Pesquisa Operacional 144
EXEMPLO
Max z = 60x1 + 30x2 + 20x3s.a: 8x1 + 6x2 + 1x3 48
4x1 + 2x2 + 1.5x3 202x1 + 1.5x2 + 0.5x3 8
x1, x2, x3 0
P r i ma l
Du a l
Min w = 48y1 + 20y2 + 8y3s.a: 8y1 + 4y2 + 2y3 60
6y1 + 2y2 + 1.5y3 301y1 + 1.5y2 + 0.5y3 20
y1, y2, y3 0
-
Prof. Fogliatto Pesquisa Operacional 145
A isima restrio do dual corresponde isima varivel do primal
Usando a tabela abaixo, pode-se achar o dual de qualquer primal:
Variveis
Variveis
Restries
Restries
Prof. Fogliatto Pesquisa Operacional 146
OUTRO EXEMPLO
Max z = 2x1 + x2s.a: 2x1 + x2 = 2
2x1 - x2 3x1 - x2 1x1 0, x2 irrestr.
P r i ma l
Min w = 2y1 + 3y2 + 1y3s.a: 2y1 + 2y2 + y3 2
y1 - y2 - y3 = 1y1 irrestr., y2 0, y3 0
Du a l
Prof. Fogliatto Pesquisa Operacional 147
INTERPRETAO ECONMICA DO PROBLEMA DUAL
Max z = 60x1 + 30x2 + 20x3s.a: 8x1 + 6x2 + 1x3 48
4x1 + 2x2 + 1.5x3 202x1 + 1.5x2 + 0.5x3 8
x1, x2, x3 0
O exemplo visto anteriormente:
Corresponde modelagem matemtica do seguinte problema:
Prof. Fogliatto Pesquisa Operacional 148
O DUAL DESTE PROBLEMA :
Min w = 48y1 + 20y2 + 8y3s.a: 8y1 + 4y2 + 2y3 60
6y1 + 2y2 + 1.5y3 301y1 + 1.5y2 + 0.5y3 20
y1, y2, y3 0
Escrivaninha
Mesa
Cadeira
Restries associadas com escrivaninhas, mesas e cadeiras, respectiv. y1 associado com tbuas; y2 com acabamto; y3 com carpintaria.
Suponha uma situao onde exista escassez de insumos. Um outro fabricante de mveis deseja comprar os insumos disponveis na fbrica de escrivaninhas, mesas e cadeiras.
A pergunta-chave : qual o gio mximo a ser cobrado pelos insumos?
-
Prof. Fogliatto Pesquisa Operacional 149
Definindo as variveis do problema dual
y1 = gio mximo cobrado por uma tbua de madeira; y2 = gio mximo cobrado por 1 hora de acabamento; y3 = gio mximo cobrado por 1 hora de carpintaria
O gio total a ser cobrado por estes insumos corresponder funo objetivo:
Min w = 48y1 + 20y2 + 8y3
Note que a funo objetivo busca minimizar o custo de compra:este o ponto de vista do comprador.
Prof. Fogliatto Pesquisa Operacional 150
O comprador deseja o menor preo, mas o preo deve ser atraente o suficiente para induzir o fabricante de
escrivaninhas a vender seus insumos
Assim:
8y1 + 4y2 + 2y3 60
Ou seja, se comprarmos todos os insumos nas quantidades necessrias para produzir uma escrivaninha, o gio a ser pago deve ser, no mnimo, o que o fabricante lucraria com a venda daquele produto.
Restrio dasescrivaninhas
O mesmo ocorre com as outros produtos:
6y1 + 2y2 + 1.5y3 301y1 + 1.5y2 + 0.5y3 20
Restr. das mesas
Restr. das cadeiras
Prof. Fogliatto Pesquisa Operacional 151
Para determinarmos o menor gio de compra dos insumos que mantenha a venda desses insumos
interessantes para o fabricante, devemos resolver o problema dual
As variveis y1, y2, y3 so normalmente denominadas preos-sombra dos insumos.
Por definio, o preo-sombra da isima restrio corresponde
melhoria no valor z da funo objetivo ocasionada peloincremento de uma unidade no lado direito da restrio [ouseja, de bi para (bi + 1)].
Prof. Fogliatto Pesquisa Operacional 152
Exerccio
Determine o dual do seguinte problema de programao linear:
Max z = x1 + 2x2s.t.: 3x1 + x2 6
2x1 + x2 = 5x1, x2 0
-
Prof. Fogliatto Pesquisa Operacional 153
Como ler a soluo tima do dual a partir da linha 0 (ou linha z) do tableau timo do primal
Caso 1 - Primal = Max
Para resolver o problema abaixo:
Max z = 3x1 + 2x2 + 5x3s.a: 1x1 + 3x2 + 2x3 15
2x2 - x3 52x1 + x2 - 5x3 = 10x1, x2, x3 0
Adicionar var. folga f1Adicionar var. excesso e2 e art. a2Adicionar var. artificial a3
A base inicial ser formada por B = { f1, a2, a3}. Usaremos o Mtodo do M-Grande para solucionar este problema. O tableau timo vem dado a seguir...
Prof. Fogliatto Pesquisa Operacional 154
Tableau timo
Prof. Fogliatto Pesquisa Operacional 155
Regras para identificao da soluo tima dual na linha 0 (ou z) do tableau timo do primal (Max)
Valor timo da var. dual yiqdo restrio i do tipo
Valor timo da var. dual yiqdo restrio i do tipo
Valor timo da var. dual yiqdo restrio i do tipo =
Coeficiente de fi na linha 0 do tableau timo
-(Coeficiente de ei) na linha 0 do tableau timo
(Coeficiente de ai na linha 0 do tableau timo) - M
Prof. Fogliatto Pesquisa Operacional 156
No tableau timo do exemplo anterior:
y1 -y2 y3-M
Ou seja, o problema dual possui a seguinte soluo tima:
y1 = 51/23; y2 = -58/23; y3 = 9/23
-
Prof. Fogliatto Pesquisa Operacional 157
Conferindo o resultado na funo objetivo do problema dual
Min w = 15y1 + 5y2 + 10y3
w = 565/23
y1 = 51/23; y2 = -58/23; y3 = 9/23
Prof. Fogliatto Pesquisa Operacional 158
Regras para identificao da soluo tima dual na linha 0 (ou z) do tableau timo do primal (Min)
Valor timo da var. dual yiqdo restrio i do tipo
Valor timo da var. dual yiqdo restrio i do tipo
Valor timo da var. dual yiqdo restrio i do tipo =
Coeficiente de fi na linha 0 do tableau timo
-(Coeficiente de ei) na linha 0 do tableau timo
(Coeficiente de ai na linha 0 do tableau timo) + M
Prof. Fogliatto Pesquisa Operacional 159
Exerccio