intro duca o a program a cao linear
DESCRIPTION
programação linearTRANSCRIPT
-
Prof. Jos Elias C. Arroyo
Departamento de Informtica DPI
Sala: CCE 415-B
INF 682 Introduo Programao Linear
-
Programao Linear (PL)Programao Linear (PL)Programao Linear (PL)Programao Linear (PL) O termo programao significa planejamento O termo Linear relativo a funes, equaes ou
inequaes lineares. A PL (ou Otimizao Linear) consiste na otimizao
(minimizao ou maximizao) de uma funo linear(funo objetivo) satisfazendo um conjunto derestries tcnicas representadas por um sistema deequaes/inequaes lineares.
As restries representam, geralmente, limitaes de recursos disponveis (capital, mo de obra, matria prima, etc.) ou exigncias que devem ser cumpridas (ex. satisfazer demandas).
-
Problema de PLProblema de PLProblema de PLProblema de PL Uma fbrica produz 4 tipos de cadeiras.
So usados 2 tipos de materiais: lminas de madeira para revestimento e tecido (recursos escassos).
50 lminas/semana 75 metros/semana
-
Problema de PLProblema de PLProblema de PLProblema de PL
A fbrica precisa decidir quais modelos de cadeira deve produzir e quantas unidades de cada um de tal maneira que o lucro seja o mximo?
R$150 R$300 R$200
1 4 1
1 1 2
R$300
3
1
50
75
-
Programao Linear (PL)Programao Linear (PL)Programao Linear (PL)Programao Linear (PL)
Passos fundamentais para resolver um problema de PL
Modelagem do problema
Utilizao de um Mtodo de soluo
-
Componentes de um Modelo de PLComponentes de um Modelo de PLComponentes de um Modelo de PLComponentes de um Modelo de PL
Variveis de deciso: So as variveis cujos valores devem ser calculados.So as quantidades de atividades/itens/produtos a serem realizadas/alocadas/produzidas.O conjunto das variveis de deciso forma uma soluo do problema.
Funo objetivo: a meta ou critrio a ser otimizado.Por exemplo:
Minimizar os custosMinimizar o tempo de produo,Maximizar o lucro da produo, etc.
-
Componentes de um Modelo de PLComponentes de um Modelo de PLComponentes de um Modelo de PLComponentes de um Modelo de PL
Restries:So as condies do problema a serem satisfeitas pelas solues.Por exemplo:
Produtos devem ser produzidos utilizando somente os recursos disponveis (capital).
O produto fabricado deve atender alguns requisitos mnimos, (segurana, necessidade nutricional, etc.)
A funo objetivo e as restries so expresses lineares (funes) definidas em termos das variveis de deciso.
-
Modelagem de um Problema de PLModelagem de um Problema de PLModelagem de um Problema de PLModelagem de um Problema de PL
Variveis de decisoxi = quantidade de cadeiras do modelo i (i=1,2,3,4)Estas variveis devem ser no negativas (xi 0).Proporcionalidade
Para produzir uma cadeira modelo2 precisa de 4 laminas de madeira, x2 cadeiras, precisa 4x2 laminas de madeira
Uma cadeira modelo2 gera um lucro de R$300, x2 cadeiras, gera um lucro R$ 300x2.
R$150 R$300 R$200
1 4 1
1 1 2
R$300
3
1
50
75
-
Modelagem de um Problema de PLModelagem de um Problema de PLModelagem de um Problema de PLModelagem de um Problema de PL
Funo objetivoMaximizar o lucro total gerado pela fabricao de todas as cadeiras.
Lucro total =lucro gerado pelo modelo1 +. . .+lucro gerado pelo modelo4
Lucro total = 150x1 + 300x2 + 300x3 + 200x4
R$150 R$300 R$200
1 4 1
1 1 2
R$300
3
1
50
75
-
Modelagem de um Problema de PLModelagem de um Problema de PLModelagem de um Problema de PLModelagem de um Problema de PL
RestriesDisponibilidade de matria prima (Recursos Disponveis)
O total de madeira utilizado na fabricao de todos os modelos de cadeira no deve ultrapassar 50 laminas.
O total de Tecido utilizado na fabricao de todos os modelos de cadeira no deve ultrapassar 75 m.
R$150 R$300 R$200
1 4 1
1 1 2
R$300
3
1
50
75
501x1 + 4x2 + 3x3 + 1x4
751x1 + 1x2 + 1x3 + 2x4
-
Modelagem de um Problema de PLModelagem de um Problema de PLModelagem de um Problema de PLModelagem de um Problema de PL
Modelo de PL
x1 x2 x4150 + 300 + 200
x1 x2 x41 + 4 + 1 50
x1 x2 x41 + 1 + 2 75
Max x3+ 300
x3+ 3
x3+ 1x1 0x2 0x3 0x4 0
-
Modelagem de um Problema de PLModelagem de um Problema de PLModelagem de um Problema de PLModelagem de um Problema de PL
Modelo de PL
x1 x2 x4150 + 300 + 200
x1 x2 x41 + 4 + 1 50
x1 x2 x41 + 1 + 2 75
Max x3+ 300
x3+ 3
x3+ 1
Sujeito a:
Funo objetivoFuno lucro
Variveis de deciso
Restries
Restries de domnio ou No-negatividade
xi : quantidade de cadeiras do modelo i (i =1...,4)
x1 0x2 0x3 0x4 0
-
Tipos de soluesTipos de soluesTipos de soluesTipos de soluesUma soluo do modelo o vetor formado pelos valores das variveis de deciso: x = (x1, x2,...,xn).Soluo factvel ou vivel:
uma soluo x = (x1, x2,...,xn) que satisfaze todas as restries do modelo, inclusive as condies de no-negatividade.Soluo infactvel ou invivel:
uma soluo x = (x1, x2,...,xn) que no satisfaz (ou viola) uma das restries do modelo.Soluo tima:
uma soluo vivel x* = (x*1, x*2,...,x*n) que determina o valor mximo ou mnimo da funo objetivo.
Para um problema de minimizao, uma soluo x* soluo tima se: f(x*) f(x), para toda soluo x vivel.
-
Tipos de soluesTipos de soluesTipos de soluesTipos de solues
Uma soluo vivel:x1 = 6, x2 = 3, x3 = 5, x4 = 4. Lucro = R$4.100
Outra soluo vivel:x1 = 8, x2 = 4, x3 = 5, x4 = 10. Lucro = R$5.900
Uma soluo invivel:x1 = 6, x2 = 8, x3 = 5, x4 = 5.
Qual a soluo tima?
x1 x2 x4150 + 300 + 200
x1 x2 x41 + 4 + 1 50
x1 x2 x41 + 1 + 2 75
max x3+ 300
x3+ 3
x3+ 1
-
Problema de PLProblema de PLProblema de PLProblema de PLA refinaria de petrleo Recap destila leo cru proveniente deduas fontes, Arbia e Venezuela e produz trs produtos:gasolina, querosene e lubrificantes. Os leos tm diferentescomposies qumicas e fornecem diferentes quantidades dedestilados por barril processado. Cada barril de leo cru daArbia d 0,3 barril de gasolina, 0,4 de querosene e 0,2 delubrificante. Para o leo da Venezuela estas quantidades sorespectivamente: 0,4, 0,2 e 0,3. H 10% de resduos. Os leosdiferem em custo e disponibilidade. A Recap pode comprarat 9000 barris da Arbia a $20 o barril e at 6000 barris daVenezuela a $15 o barril. Contratos da Recap comdistribuidores exigem que ela produza 2000 barris de gasolinapor dia, 1500 barris de querosene e 500 de lubrificantes.Como cumprir os contratos gastando o mnimo? (qual o mixde compra dos leos).
-
Modelagem do problemaModelagem do problemaModelagem do problemaModelagem do problema
Produtos Arbia(barril)
Venezuela(barril)
Demanda(barris)
Gasolina 0,3 0,4 2.000Querosene 0,4 0,2 1.500Lubrificante 0,2 0,3 500Custo p/barril $20 $15Oferta (barris) 9.000 6.000
- Modelagem do problemaModelagem do problemaModelagem do problemaModelagem do problema Variveis de deciso:x1 = quantidade de barris de leo /dia vindos da Arbiax2 = quantidade de barris de leo /dia vindos da Venezuela Tipo das Variveis de Deciso:x1, x2 >= 0 (reais no-negativos) Funo Objetivo: 20x1 + 15 x2 (custo total) Conjunto de Restries Principais:0,3 x1 + 0,4 x2 >= 2000 barris (Demanda gasolina)0,4 x1 + 0,2 x2 >= 1500 barris (Demanda querosene)0,2 x1 + 0,3 x2 >= 500 barris (Demanda lubrificantes)x1
-
Modelo matemtico de PLModelo matemtico de PLModelo matemtico de PLModelo matemtico de PLMinimizar f(x1, x2) = 20x1 + 15 x2 (custo total)Sujeito a:
0,3 x1 + 0,4 x2 20000,4 x1 + 0,2 x2 15000,2 x1 + 0,3 x2 500x1 9000x2 6000x1 0, x2 0 (condies de no-negatividade)
-
Problema da DietaProblema da DietaProblema da DietaProblema da Dieta O objetivo do problema determinar a quantidade de
determinados alimentos a serem usados numa dieta (ourao).
A dieta deve conter as quantidades mnimas(necessrias) de determinados nutrientes.
O custo total dos alimentos utilizados na dieta deve serminimizado.
-
Problema da DietaProblema da DietaProblema da DietaProblema da DietaExemplo: Na tabela abaixo, esto os alimentos que podemser utilizados numa dieta, o preo dos alimentos, aquantidade de nutrientes contidos 100g de cada alimento ea necessidade mnima de cada nutriente na dieta.
Necessidademnima
-
Problema da DietaProblema da DietaProblema da DietaProblema da DietaNecessidade
mnima
xi = quantidade do alimento i a ser inserida na dieta, (i = carne, ...., laranja).Min f = 0,5x1 + 0,18 x2 + 0,2 x3 + 0,16 x4 + 0,30 x5 + 0,18x6S.a: 225 x1 + 364 x2 + 337 x3 + 385 x4 + 15 x5 + 42 x6 3200 (energtico)
7 x1 + 0 x2 + 2 x3 + 0 x4 + 87 x5 + 13 x6 750 (Vit. A)0 x1 + 0 x2 + 3 x3 + 0 x4 + 12 x5 + 59 x6 70 (Vit. C)
2,9 x1 + 1,3 x2 + 7,6 x3 + 0,1 x4 + 1,3 x5 + 0,7 x6 10 (Ferro)11x1 + 9 x2 + 86 x3 + 0 x4 + 43x5 + 34 x6 650 (Clcio)
xi 0, i=1,...,6.
-
Problema de TransporteProblema de TransporteProblema de TransporteProblema de TransporteConsidere uma companhia distribuidora de bebidas que tem 2 centrosde produo: Araraquara e So Jos dos Campos e 3 mercadosconsumidores principais: So Paulo, Belo Horizonte e Rio deJaneiro. Na tabela abaixo so mostrados os custos unitrios de setransportar uma caixa de bebida de cada centro de produo para cadamercado consumidor, as demandas dirias de cada mercado e anmero de caixas disponveis diariamente em cada centro deproduo. Deseja-se minimizar o custo total de transporte debebidas dos diversos centros de produo em quantia suficiente parasuprir as demandas dos mercados.
Centros deproduo
Mercados DisponibilidadeEm cada centroSP BH RJ
Araraquara 4 2 5 800S.J. Campos 11 7 4 1000
Demanda SP500
Demanda BH400
Demanda RJ900
-
Problema de TransporteProblema de TransporteProblema de TransporteProblema de Transporte
xij = quantidade de caixas a ser enviada do centro de produo i para omercado j .i=1(Araraquara), i=2( S.J.Campos), j=1(SP), j=2( BH), j=3( RJ).Minimizar f(x11,..., x23) = 4x11 + 2x12 + 5x13 + 11x21 + 7x22 + 4x23s.a. x11 + x12 + x13 800 (oferta Araraquara)
x21 + x22 + x23 1000 (oferta S.J.C)x11 + x21 500 (demanda SP)x12 + x22 400 (demanda BH)x13 + x23 900 (demanda RJ)x11 0, x12 0, x13 0, x21 0, x22 0, x23 0.
Centros deproduo
Mercados DisponibilidadeEm cada centroSP BH RJ
Araraquara 4 2 5 800S.J. Campos 11 7 4 1000
Demanda SP500
Demanda BH400
Demanda RJ900
-
Problema de Alocao de RecursosProblema de Alocao de RecursosProblema de Alocao de RecursosProblema de Alocao de RecursosUm gerente est executando o planejamento da produo de 3produtos em 4 mquinas. Todos os produtos podem ser fabricadospor todas as mquinas. Os custos unitrios de produo de cadaproduto em cada mquina so apresentados na seguinte tabela:
-
Problema de Alocao de RecursosProblema de Alocao de RecursosProblema de Alocao de RecursosProblema de Alocao de RecursosH uma demanda (pedidos) de 4000, 5000 e 3000 unidades paraos produtos 1, 2 e 3, respectivamente.As mquinas esto disponveis por uma quantidade determinadade horas e cada unidade de um produto requer uma quantidadefixa de horas em cada mquina de acordo com a seguinte tabela:
Deseja-se minimizar o custo total de produo.
-
Problema de Alocao de RecursosProblema de Alocao de RecursosProblema de Alocao de RecursosProblema de Alocao de Recursos.
-
Problema de Alocao de RecursosProblema de Alocao de RecursosProblema de Alocao de RecursosProblema de Alocao de RecursosVariveis de deciso:xij = quantidade do produto i produzido na mquina j (unidades)(i = 1,2,3; j = 1,2,3,4) 12 variveis.xij 0 inteiros
Custo total de Produo (Minimizar)
f = 4 x11 + 4 x12 + 5 x13 + 7 x14 +6 x21 + 7 x22 + 5 x23 + 6 x24 +
12 x31 + 10 x32 + 8 x33 + 11 x34
-
Problema de Alocao de RecursosProblema de Alocao de RecursosProblema de Alocao de RecursosProblema de Alocao de RecursosDemanda de produtos: Produto1) x11 + x12 + x13 + x14 4000 Produto2) x21 + x22 + x23 + x24 5000 Produto3) x31 + x32 + x33 + x34 3000
Capacidade de produo das mquinas: Mquina1) 0.3 x11 + 0.2 x21 + 0.8x31 1500 Mquina2) 0.25x12 + 0.3 x22 + 0.6x32 1200 Mquina3) 0.2 x13 + 0.2 x23 + 0.6x33 1500 Mquina4) 0.2 x14 + 0.25x24 + 0.5x34 2000
-
Forma geral de um modelo PLForma geral de um modelo PLForma geral de um modelo PLForma geral de um modelo PL
Min ou Max f(x1, ...,xn) = c1x1 + c2x2 + . . . + cnxnS.a: a11x1 + a12x2 + . . . + a1nxn b1
a21x1 + a22x2 + . . . + a2nxn b2. . . . . . . . . . . . . . . . . . . . . .
am1x1 + am2x2 + . . . + amnxn bmx1 0; x2 0; . . . ; xn 0
Min ou Max f(x1, ...,xn) =S. a:
; j = 1,2, ... , m.
xi 0; i = 1,2, ... , n.
=
n
iii xc
1
jn
iiji bxa =
=
,,
1
=
Modelo evolvendo n variveis de deciso e m restries:
-
Modelo geral do problema da DietaModelo geral do problema da DietaModelo geral do problema da DietaModelo geral do problema da Dieta
.,...,1;0
.,...,1;
),...,(min
1
11
nix
mjbxa
xcxxf
i
jn
iiji
n
iiin
=
=
=
=
=
s.a.
n = nmero de alimentos.m = nmero de nutrientes.ci = custo de uma unidade do alimento i.aij = quantidade do nutriente j no alimento i.bj = quantidade mnima do nutriente j que a dieta deve conter.Varivel de deciso:xi = quantidade do alimento i a ser usada na dieta (valor real).
-
Modelo geral de TransporteModelo geral de TransporteModelo geral de TransporteModelo geral de Transporte
.,...,1;,...,1;0
.,...,1 ;
.,...,1 ; s.a.
),...,(min
1
1
1 111
mjnixmjdx
nisx
xcxxf
ij
jn
iij
i
m
jij
n
i
m
jijijnm
==
=
=
=
=
=
= =
n = nmero de fornecedores.m = nmero de clientes.si = oferta do fornecedor i (quantidade disponvel).dj = demanda do cliente j (quantidade requerida). cij = custo unitrio de transporte do fornecedor i para o clientes j.Varivel de deciso:xij = quantidade a ser enviada do fornecedor i para o cliente j.
-
Modelo de PL Forma MatricialModelo de PL Forma MatricialModelo de PL Forma MatricialModelo de PL Forma MatricialMin ou Max f(x) = cxS. a: Ax b
x 0
=
mnmm
n
n
aaa
aaa
aaa
...
............
...
...
21
22221
11211
A
=
nx
x
x
...
2
1
x
=
mb
bb
...
2
1
b
=
nc
c
c
...
2
1
Tc
-
Soluo Grfica de um Modelo de PLSoluo Grfica de um Modelo de PLSoluo Grfica de um Modelo de PLSoluo Grfica de um Modelo de PL Vlida para problemas com 2 variveis A soluo grfica nos ajudar a entender os princpios bsicos
do mtodo Simplex.
3
2
x1
x2
2x1 + 3x2 = 6
2x1 + 3x2 6
2x1 + 3x2 6
A representao grfica de uma equao linear com 2 variveis uma reta.
A representao grfica de uma inequao linear com 2 variveis um dos semiplanos definidos pela reta correspondente equao.
-
Soluo Grfica de um Modelo de PLSoluo Grfica de um Modelo de PLSoluo Grfica de um Modelo de PLSoluo Grfica de um Modelo de PLResolver :
Max 2x1 + 6x2S.a.
8x1 + 9x2
-
Soluo Grfica de um Modelo de PLSoluo Grfica de um Modelo de PLSoluo Grfica de um Modelo de PLSoluo Grfica de um Modelo de PLResolver :
Max 2x1 + 6x2S.a.
8x1 + 9x2
-
Soluo Grfica de um Modelo de PLSoluo Grfica de um Modelo de PLSoluo Grfica de um Modelo de PLSoluo Grfica de um Modelo de PLResolver :
Max 2x1 + 6x2S.a.
8x1 + 9x2
-
Soluo Grfica de um Modelo de PLSoluo Grfica de um Modelo de PLSoluo Grfica de um Modelo de PLSoluo Grfica de um Modelo de PLResolver :
Max 2x1 + 6x2S.a.
8x1 + 9x2
-
Soluo Grfica de um Modelo de PLSoluo Grfica de um Modelo de PLSoluo Grfica de um Modelo de PLSoluo Grfica de um Modelo de PLResolver :
Max 2x1 + 6x2S.a.
8x1 + 9x2
-
Soluo Grfica de um Modelo de PLSoluo Grfica de um Modelo de PLSoluo Grfica de um Modelo de PLSoluo Grfica de um Modelo de PLResolver :
Max 2x1 + 6x2S.a.
8x1 + 9x2
-
Soluo Grfica de um Modelo de PLSoluo Grfica de um Modelo de PLSoluo Grfica de um Modelo de PLSoluo Grfica de um Modelo de PLResolver o seguinte problema graficamente: Uma empresa fabrica 2 produtos. Na fabricao destes produtos, sousados dos tipos de matria prima e dois tipos de mo de obra.
Produto 1111 Produto 2222 DisponibilidadeDisponibilidadeDisponibilidadeDisponibilidade
Matria Prima A 70 kg/unidade 70 kg/unidade 4900 kg
Matria Prima B 90 kg/unidade 50 kg/unidade 4500 kg
Mo de Obra Especializada P1 2 H-h/unidade - 80 H-h
Mo de Obra Especializada P2 - 3 H-h/unidade 180 H-h
Lucro por unidade de produto: 20 R$/unidade 60 R$/unidade
Dada a grande procura, estima-se que todas as unidades a seremproduzidas, dos 2 produtos, podero ser vendidas. O objetivo dafbrica obter o maior lucro possvel com a produo e a vendados produtos 1 e 2.
-
Modelo de PL e Grfico da Regio VivelModelo de PL e Grfico da Regio VivelModelo de PL e Grfico da Regio VivelModelo de PL e Grfico da Regio VivelMax f = 20x1 + 60x2s.a.
70x1 + 70x2 4900 (R1)90x1 + 50x2 4500 (R2)2x1 80 (R3)3x2 180 (R4)x1 ,x2 0
Regio Vivel
-
Soluo GrficaSoluo GrficaSoluo GrficaSoluo Grfica
Sendo a funof (x) = 20x1 + 60x2,
f(x) = (20, 60).
f f
f
Ponto timo(10,60)
Para x1 = 10 e x2 = 60, f(x1, x2) = 3800 (lucro mximo).
-
Soluo GrficaSoluo GrficaSoluo GrficaSoluo Grfica
Regio Vivel
Valores de f para os diferentes pontos extremos da regio vivel:f (x) = 20x1 + 60x2x = (0,0) f(x)= 0x = (40,0) f(x)= 800x = (40,18) f(x)= 1880x = (25,45) f(x)= 3200x = (10,60) f(x)= 3800x = (0,60) f(x) = 3600
(10,60)
(25,45)
(40,18)
-
Soluo GrficaSoluo GrficaSoluo GrficaSoluo GrficaMin f(x1, x2) = 3x1 + 5x2s.a.
x1 4 R12x2 12 R23x1 + 2x2 18 R3x10, x20
4
6
9
6
(4,3)
(4,6)(2,6)
R3R1
R2
f = 42
f = 27f
-
Soluo GrficaSoluo GrficaSoluo GrficaSoluo Grfica
Max f(x1, x2) = x1+ 2x2s.a.
-3x1 + x2 2 R1x2 3 R2x1 + 2x2 9 R3
3x1 + x2 18 R4x1 0, x2 0.
Quando o problema tiver mltiplas solues timas, estas solues estaro em um segmento de reta tangente regio vivel.
6
4,5
x1
x2R4
9
3 R2
f = x1 + 2x2 = 9
2
R1R3Mltiplas solues timas
0
(3; 3)(5.4; 1.8)Regio
vivelPara os pontos:x = (3;3), (4, 2.5) e (5.4; 1.8)f(x) = 9 (valor mximo)
-
Soluo GrficaSoluo GrficaSoluo GrficaSoluo Grfica
Max f(x1, x2) = x1+ 2x2s.a. x1 x2 10
2x1 40x1, x20
Soluo Ilimitada: o valor da funo objetivo pode crescer ou decrescer indefinidamente.
x1
x2
10
x1 - x2 = 10
x1 = 20
20
Regio vivel ilimitada
f
f
-
Forma padro de um modeloForma padro de um modeloForma padro de um modeloForma padro de um modeloMax f(x) = cxs. a: Ax = b
x 0Transformao de problemas na forma padro
Problemas de minimizaoMin f(x) Max f(x).
Problemas com restries de desigualdade ou As restries do tipo (ou ) so transformadas em restries do tipo = adicionando (ou subtraindo) uma nova varivel no-negativa no lado esquerdo da inequao. Estas variveis so chamadas de variveis de folga (ou excesso).
Problemas com variveis livres ou irrestritas
b 0
-
Forma padro de um modeloForma padro de um modeloForma padro de um modeloForma padro de um modeloMin f(x1, x2) = 3x1 + 5x2s.a.
x1 4 R12x2 12 R23x1 + 2x2 18 R3x10, x20
4
6
9
6
(4,3)
(4,6)(2,6)
R3R1
R2
f = 42
f = 27f = 36f
-
Forma padro de um modeloForma padro de um modeloForma padro de um modeloForma padro de um modeloMax -f(x1, x2) = -3x1 - 5x2s.a.
x1 4 R12x2 12 R23x1 + 2x2 18 R3x10, x20
4
6
9
6
(4,3)
(4,6)(2,6)
R3R1
R2
f = -42
f = -27f = -36f
-
Forma padro de um modeloForma padro de um modeloForma padro de um modeloForma padro de um modeloMax -f(x1, x2) = -3x1 - 5x2s.a.
x1 4 2x2 12 3x1 + 2x2 18x10, x20
Max -f(x1, x2) = -3x1 - 5x2s.a.
x1 + x3 = 4 2x2 + x4 = 12
3x1 + 2x2 x5 =18x10, x20x30, x40, x50
-
Resolver o ModeloResolver o ModeloResolver o ModeloResolver o Modelo
Deve-se determinar uma soluo do sistema de equaes que determine o valor mximo da funo objetivo. Note que temos 3 equaes e 5 variveis. O sistema possui infinitas solues. Como determinar uma soluo do sistema?
Max -f(x1, x2) = -3x1 - 5x2s.a.
x1 + x3 = 4 2x2 + x4 = 12
3x1 + 2x2 x5 =18x10, x20, x30, x40, x50
-
Resolver o ModeloResolver o ModeloResolver o ModeloResolver o Modelo
Fixar (anular) 5-3 = 2 variveis. Quais variveis devem ser anuladas? Possveis maneiras de anular 2 variveis:
Max -f(x1, x2) = -3x1 - 5x2s.a.
x1 + x3 = 4 2x2 + x4 = 12
3x1 + 2x2 x5 =18x10, x20, x30, x40, x50
10)!25(!2!5
25
=
=
-
Resolver o ModeloResolver o ModeloResolver o ModeloResolver o Modelo
Se anulamos x4 e x5 (x4 = 0, x5 = 0 ):x1 + x3 = 4
2x2 = 12 3x1 + 2x2 = 18
x1 = 2, x2 = 6, x3 = 2. Esta soluo vivel. f = -36
Max -f(x1, x2) = -3x1 - 5x2s.a.
x1 + x3 = 4 2x2 + x4 = 12
3x1 + 2x2 x5 =18x10, x20, x30, x40, x50
-
Resolver o ModeloResolver o ModeloResolver o ModeloResolver o Modelo
Uma maneira de determinar a soluo tima do modelo: Determinar todas as solues viveis anulando 2 variveis. Escolher a soluo que gera o maior valor de f.
Max -f(x1, x2) = -3x1 - 5x2s.a.
x1 + x3 = 4 2x2 + x4 = 12
3x1 + 2x2 x5 =18x10, x20, x30, x40, x50
-
Solues BsicasSolues BsicasSolues BsicasSolues BsicasConsidere o seguinte modelo na forma padro: Max f(x) = cxS. a: Ax = b
x 0
Note que no sistema Ax = b tem-se m equaes e nvariveis (m
-
Solues BsicasSolues BsicasSolues BsicasSolues Bsicas Ax = b pode ser escrito como BxB + NxN = b xN = vetor de variveis a serem fixadas (variveis
no-bsicas). xB = vetor de variveis a serem determinadas
(variveis bsicas). O sistema possui uma soluo se existe uma matriz B
no singular, isto , uma base para o Rm. Soluo bsica: xB = B1b; xN = 0. Se xB 0, ento x = [xB xN] uma soluo bsica
vivel. Nmero mximo de parties:
)!(!!
mnm
n
m
n
=
Nmero mximo de solues bsicas
-
Solues Bsicas Solues Bsicas Solues Bsicas Solues Bsicas ---- Exemplo:Exemplo:Exemplo:Exemplo:Max f = x1 + 2x2s.a.
x1 + x2 6x2 3x1, x2 0
Max f = x1 + 2x2s.a.
x1 + x2 + x3 = 6x2 + x4 = 3
x1, x2, x3, x4 0
==
10100111][ 4321 a a a aA
=
36
b
Nmero mximo de solues bsicas (ou nmero mximo de possveis parties): 6
24
=
x2
x1
(0,6)
(3,3)(0,3)
(0,0) (6,0)O P
QR
S
=
36
10100111
4
3
2
1
x
x
x
x
-
Solues Bsicas Solues Bsicas Solues Bsicas Solues Bsicas ---- Exemplo:Exemplo:Exemplo:Exemplo:Determinando todas as parties A = [B N] e x = [xB xN]e resolvendo, Ax = b, com xN = 0:
1) B = [a1 a2], N = [a3 a4]
xB = (x1,x2)T =(3, 3), xN = (x3, x4)T = (0,0) soluo bsica vivel (ponto Q)
=
36
10100111
4
3
2
1
x
x
x
x
=
+
=+
36
1001
1011
4
3
2
1
x
x
x
x bNxBx NB
=
+
36
2
21
x
xx
0
1x1 + 1x2 + 1x3 + 0x4 = 60x1 + 1x2 + 0x3 + 1x4 = 3
= bBxB
-
Solues Bsicas Solues Bsicas Solues Bsicas Solues Bsicas ---- Exemplo:Exemplo:Exemplo:Exemplo:
2) B = [a1 a3], N = [a2 a4]
xB = (x1,x3)T, xN = (x2, x4)T
As colunas a1 e a3 so linearmente dependentes, no formam uma base de R2.
3) B = [a1 a4], N = [a2 a3]
xB = (x1,x4)T, xN = (x2, x3)T
xB = (x1,x4)T = (6, 3), xN = (x2, x3)T = (0,0) soluo bsica vivel (ponto P)
=
=
1101
N 0011
B
1x1 + 1x2 + 1x3 + 0x4 = 60x1 + 1x2 + 0x3 + 1x4 = 3
=
=
0111
N 1001
B
bBxB =
-
Solues Bsicas Solues Bsicas Solues Bsicas Solues Bsicas ---- Exemplo:Exemplo:Exemplo:Exemplo:
4) B = [a2 a3], N = [a1 a4]
xB = (x2,x3)T, xN = (x1, x4)T
xB = (x2,x3)T= (3, 3), xN = (x1, x4)T = (0,0) soluo bsica vivel (ponto R)5) B = [a2 a4], N = [a1 a3]
xB = (x2,x4)T, xN = (x1, x3)T
xB = (x2,x4)T= (6, -3), xN = (x1, x3)T = (0,0) soluo bsica invivel (ponto S)
=
=
1001
N 0111
B
1x1 + 1x2 + 1x3 + 0x4 = 60x1 + 1x2 + 0x3 + 1x4 = 3
=
=
0011
N 1101
B
-
Solues Bsicas Solues Bsicas Solues Bsicas Solues Bsicas ---- Exemplo:Exemplo:Exemplo:Exemplo:
6) B = [a3 a4], N = [a1 a2]xB = (x3,x4)T = (6, 3), xN = (x1, x2)T = (0,0) soluo bsica vivel (ponto O)
1x1 + 1x2 + 1x3 + 0x4 = 60x1 + 1x2 + 0x3 + 1x4 = 3
-
Solues BsicasSolues BsicasSolues BsicasSolues BsicasNote que: Cada ponto extremo da regio vivel (polgono ou
poliedro) corresponde a uma soluo bsica vivel Cada soluo bsica obtida pela interseo n-m retas,
planos ou hiperplanos (n-m variveis so anuladas).
x2
x1
(0,6)
(3,3)(0,3)
(0,0) (6,0)O P
QR
S
-
Solues BsicasSolues BsicasSolues BsicasSolues Bsicas
Teoremas:x um ponto extremo do poliedro X = {x : Ax = b, x 0} sss x uma soluo bsica vivel.
Toda soluo x do poliedro pode ser escrito como uma combinao linear convexa dos seus pontos extremos.
Tj
p
j
T
jj
T
jjj
,...,1 ,0
1
x
1
1
=
=
=
=
=
T = no de pontos extremospj = pontos extremos
-
Solues Bsicas Solues Bsicas Solues Bsicas Solues Bsicas Exemplo 2:Exemplo 2:Exemplo 2:Exemplo 2:Max f = 2x1 + 3x2s.a.
x1 42x2 123x1 + 2x2 18x1, x2 0
Max f = 2x1 + 3x2s.a.
x1 + x3 = 42x2 + x4 = 12
3x1 + 2x2 + x5 = 18x1, x2, x3, x4, x5 0
==
100230102000101
]a a a a a[A 54321
=
18124
b
Determine todas as solues bsicas.
-
Solues Bsicas Solues Bsicas Solues Bsicas Solues Bsicas Exemplo 2:Exemplo 2:Exemplo 2:Exemplo 2:Max f = 2x1 + 3x2s.a.
x1 42x2 123x1 + 2x2 18x1, x2 0
(0,0) (4,0) (6,0)
(0,6)
(4,6) (2,6)
(0,9)
(4,3)
2.2 : 2 12eq x
2.5 : 0eq x
1.4 : 0eq x
1.1 : 4eq x
(0,0) 1x
2x
1 2.3 : 3 2 18eq x x+
(1,6)
Regio vivel
Max f = 2x1 + 3x2s.a.
x1 + x3 = 42x2 + x4 = 12
3x1 + 2x2 + x5 = 18x1, x2, x3, x4, x5 0
-
Solues BsicasSolues BsicasSolues BsicasSolues BsicasMtodo De Busca Exaustiva para Resolver um Problema de PL1) Transformar o problema na forma padro;2) Determinar todas as solues bsicas do sistema (agrupando m
variveis bsicas e n-m variveis no bsicas ). Para cada soluo bsica vivel calcular o valor da funo objetivo.
3) Retornar a soluo com maior valor da funo objetivo.
m
n
m
n
Apesar do nmero ser finito,
ele pode ser muito grande para problemas prticos em que n da ordem de centenas ou milhares, e muito maior que m.
Suponha n = 100 e m = 10. = 17.310.309.456.440 solues bsicas.
-
Mtodo SimplexMtodo SimplexMtodo SimplexMtodo Simplex um mtodo mais eficiente. Inicia com uma soluo bsica vivel e procura apenas outras solues bsicas viveis melhores que as anteriores.
Este mtodo reduz consideravelmente o nmero de solues bsicas a serem calculadas.
Max f = 5x1 + 2x2s.a:
x1 + 2x2 8x1 4x2 3x1 0, x2 0.
Max f = 5x1 + 2x2s.a.
x1 + 2x2 + x3 = 8x1 + x4 = 4
x2 + x5 = 3x1, x2, x3, x4, x5 0
Exemplo:
-
Mtodo SimplexMtodo SimplexMtodo SimplexMtodo SimplexMax f = 5x1 + 2x2s.a.
x1 + 2x2 + x3 = 8x1 + x4 = 4
x2 + x5 = 3x1, x2, x3, x4, x5 0
==
100100100100121
][ 54321 a a a a aA
=
348
b
Soluo bsica vivel inicial:
=
25
c
x3 = 8 x1 2x2x4 = 4 x1x5 = 3 x2
Fazer x1 = x2 = 0x3 = 8x4 = 4x5 = 3
Base inicial
-
Mtodo SimplexMtodo SimplexMtodo SimplexMtodo SimplexMax f = 5x1 + 2x2s.a.
x1 + 2x2 + x3 = 8x1 + x4 = 4
x2 + x5 = 3x1, x2, x3, x4, x5 0
==
100100100100121
][ 54321 a a a a aA
=
348
b
Soluo bsica vivel inicial: Na forma matricial: Considerar a base :
==
100010001
][ 543 a a aB
=
==+=
348
100010001
bBx bNx Bx bAx
5
4
3
BNB
x
x
x
=
25
c
-
Mtodo SimplexMtodo SimplexMtodo SimplexMtodo Simplex
;
348
5
4
3
=
x
x
x Valor da funo objetivo:
=
00
2
1
x
x
Esta soluo bsica vivel corresponde ao ponto extremo O = (0,0)Para determinar outra soluo bsica vivel (outro ponto extremo), devemos determinar outra BASE a partir da base anterior.Ou seja, Vamos determinar um ponto extremo adjacente ao ponto anterior.
Na soluo anterior, trocar uma varivel no-bsica com uma bsica.Em outras palavras, uma varivel no-bsica deve passar ser bsica(Varivel que entrar na base). Temos duas possibilidades:1) x1 entra na base ou2) x2 entra na bse
Escolher a varivel com maior coeficiente em f, ou seja, x1.
0)0,0,0()2,5(255
4
3
2
121 =
+
=+=
x
x
x
x
xxxf
-
Mtodo SimplexMtodo SimplexMtodo SimplexMtodo SimplexQual varivel bsica deve passar a ser no-bsica (i.e. sair da base)?
Temos trs possibilidades: x3, x4 ou x5.
Como x1 vai entrar na base, Qual deve ser o maior valor de x1 de tal maneira que as restries de no-negatividade no sejam violadas?
;
348
5
4
3
=
x
x
x
=
00
2
1
x
x
-
Mtodo SimplexMtodo SimplexMtodo SimplexMtodo SimplexQual varivel bsica deve passar a ser no-bsica (i.e. sair da base)?
Temos trs possibilidades: x3, x4 ou x5.
Como x1 vai entrar na base, Qual deve ser o maior valor de x1 de tal maneira que as restries de no-negatividade no sejam violadas?
;
348
5
4
3
=
x
x
x
=
00
2
1
x
x
0348
1
1
x
xx3 = 8 x1 2x2x4 = 4 x1x5 = 3 x2
x3 = 8 x1 0x4 = 4 x1 0x5 = 3 0
Ento, x1 pode ser no mximo 4.x1 = 4 x4
-
Mtodo SimplexMtodo SimplexMtodo SimplexMtodo SimplexPor tanto,x1 entra na base (x1 = 4)x4 sai da base (x4 = 0)Nova soluo bsica:
==
100010011
][ 513 a a aB
==
110020
][ 24 a aN
=
348
100010011
5
1
3
3
2
1
x
x
x
LLL
=
00
2
4
x
x
==
100100100100121
][ 54321 a a a a aA
=
348
b
Transformando B em Identidade (i.e. multiplicando ambos lados por B-1):Operaes: L1 L1 L2
Resolvendo BxB + NxN = b com xN = 0:
x1 = 4 x4
-
Mtodo SimplexMtodo SimplexMtodo SimplexMtodo Simplex
Nova soluo bsica:
=
344
100010001
5
1
3
3
2
1
x
x
x
LLL
=
344
5
1
3
x
x
x
=
00
2
4
x
x 21 25 xxf +=
x4 = 4 x1 24 2)4(5 xxf += 24 25 xxf += 20
Ponto extremo: (4, 0). f = 20
Como x4 foi trocada com x1, x1 escrito em termos de x4 :
A funo objetivo f definida em termos das variveis no-bsicas.A soluo obtida tima (o valor de f mximo)?NO, pois ela pode melhorar fazendo com que x2 passe ser bsica. O mtodo simplex continua at obter uma soluo bsica vivel com o valor mximo de f (ou seja, at que no seja possvel melhorar f ).
-
Mtodo Simplex em TabelasMtodo Simplex em TabelasMtodo Simplex em TabelasMtodo Simplex em TabelasOs clculos realizados acima so sintetizados nas tabelas.
Variveis Bsicas x1 x2 x3 x4 x5
Valores de f e xB
L1 -f 5 2 0 0 0 0L2 x3 1 2 1 0 0 8L3 x4 1 0 0 1 0 4L4 x5 0 1 0 0 1 3
Max f = 5x1 + 2x2s.a.
x1 + 2x2 + x3 = 8x1 + x4 = 4
x2 + x5 = 3x1, x2, x3, x4, x5 0
Determinando uma nova soluo bsica vivel (iterao 1):Varivel que entra na base: x1 (varivel com maior coeficiente > 0 em f ).
;
348
5
4
3
=
=
x
x
x
xB
=
=
00
2
1
x
xxN
Soluo bsica vivel inicial:
f = 0
-
Mtodo Simplex em TabelasMtodo Simplex em TabelasMtodo Simplex em TabelasMtodo Simplex em Tabelas
Varivel que sai:
Variveis Bsicas x1 x2 x3 x4 x5
Valores de f e xB
L1 -f 5 2 0 0 0 0L2 x3 1 2 1 0 0 8L3 x4 1 0 0 1 0 4L4 x5 0 1 0 0 1 3
x3: x1 8/1 = 8x4: x1 4/1 = 4x5: 3/0 = indeterminado
Menor valor 0. x4 sai da base.
-
Mtodo Simplex em TabelasMtodo Simplex em TabelasMtodo Simplex em TabelasMtodo Simplex em Tabelas
Varivel que sai:
Variveis Bsicas x1 x2 x3 x4 x5
Valores de f e xB
L1 -f 5 2 0 0 0 0L2 x3 1 2 1 0 0 8L3 x4 1 0 0 1 0 4L4 x5 0 1 0 0 1 3
x3: x1 8/1 = 8x4: x1 4/1 = 4x5: 3/0 = indeterminado
Menor valor 0. x4 sai da base.
Se xk a varivel que entra, o valor mximo de xk :
>=
0 onde ,0min ikik
iBik
aa
bx
A varivel que sai da base xi , onde kik
i xa
b=
, B conjunto de ndices das variveis bsicas
-
Mtodo Simplex em TabelasMtodo Simplex em TabelasMtodo Simplex em TabelasMtodo Simplex em TabelasVariveis Bsicas x1 x2 x3 x4 x5
Valores de f e xB
L1 -f 5 2 0 0 0 0L2 x3 1 2 1 0 0 8L3 x4 1 0 0 1 0 4L4 x5 0 1 0 0 1 3
A nova soluo determinada fazendo operaes de pivteamento. Note na tabela anterior, x3, x4 e x5 so VB. Na linha de f, estas variveis possuem coeficiente zero e suas colunas formam uma matriz identidade.
Coluna de pivteamento
-
Mtodo Simplex em TabelasMtodo Simplex em TabelasMtodo Simplex em TabelasMtodo Simplex em Tabelas
Operaes para transformar a tabela (pivteamento):L3 L3/piv = L3/1 = L3L1 L1 5L3; L2 L2 1L3; L4 L4 0L3
Variveis Bsicas x1 x2 x3 x4 x5
Valores de f e xB
L1 -f 5 2 0 0 0 0L2 x3 1 2 1 0 0 8L3 x1 1 0 0 1 0 4L4 x5 0 1 0 0 1 3
piv
Variveis Bsicas x1 x2 x3 x4 x5
Valores de f e xB
L1 -f 0 2 0 -5 0 -20L2 x3 0 2 1 -1 0 4L3 x1 1 0 0 1 0 4L4 x5 0 1 0 0 1 3
;
344
5
1
3
=
x
x
x
=
00
2
4
x
xNova soluobsica vivel: ; f = 20 tima?NO. f pode aumentar.
-
Mtodo Simplex em TabelasMtodo Simplex em TabelasMtodo Simplex em TabelasMtodo Simplex em TabelasDeterminando a prxima soluo bsica (iterao 2):
Variveis Bsicas x1 x2 x3 x4 x5
Valores de f e xB
L1 -f 0 2 0 -5 0 -20L2 x3 0 2 1 -1 0 4L3 x1 1 0 0 1 0 4L4 x5 0 1 0 0 1 3
Operaes de Pivteamento:L2 L2/piv = L2/2L1 L1 2L2;L3 L3 0L2; L4 L4 1L2
Varivel que entra na base: x2 (varivel com maior coeficiente >0 em f ).Varivel que sai:x3 : 4/2 = 2x1 : 4/0 = indeterminadox5 : 3/1 = 3
Menor valor 0. x3 sai da base.
x3 0 2 1 -1 0 4piv
-
Mtodo Simplex em TabelasMtodo Simplex em TabelasMtodo Simplex em TabelasMtodo Simplex em TabelasNova tabela:
Variveis Bsicas x1 x2 x3 x4 x5
Valores de f e xB
L1 -f 0 0 -1 -4 0 -24L2 x2 0 1 1/2 -1/2 0 2L3 x1 1 0 0 1 0 4L4 x5 0 0 -1/2 1/2 1 1
Esta soluo tima? SIM, pois f no pode aumentar mais (os coeficientes so todos negativos).
Fim do mtodo.
;
142
5
1
2
=
x
x
x
=
00
3
4
x
xNova soluo bsica vivel: f = 24
-
Mtodo SimplexMtodo SimplexMtodo SimplexMtodo SimplexBusca da soluo tima pelo mtodo simplex:
Max f = 5x1 + 2x2s.a:
x1 + 2x2 8x1 4x2 3x1 0, x2 0.
x2
x1
(0,3)(2,3)
(0,4)
(0,0) (8,0)(4,0)
(4,2)
x1 + 2x2 =8
x2 =3
x1 = 4
-
Algoritmo do Mtodo SimplexAlgoritmo do Mtodo SimplexAlgoritmo do Mtodo SimplexAlgoritmo do Mtodo Simplex
Incio
Determine uma soluo bsica vivel
Determine outra soluo bsicavivel melhor que a anterior
No
FimSimA soluo tima?
Teste de otimalidade
-
Tabela tima:Tabela tima:Tabela tima:Tabela tima:
Tabela da soluo tima:Variveis Bsicas x1 x2 x3 x4 x5
Valores de f e xB
L1 -f 0 0 -1 -4 0 -24L2 x2 0 1 1/2 -1/2 0 2L3 x1 1 0 0 1 0 4L4 x5 0 0 -1/2 1/2 1 1
B-1
Variveis de folga
Max f = 5x1 + 2x2s.a. x1 + 2x2 + x3 = 8
x1 + x4 = 4x2 + x5 = 3
x1, x2, x3, x4, x5 0
=
100100100100121
A
==
101010012
][ 512 a a aB
a1 a2 a3 a4 a5
-
Tabela tima:Tabela tima:Tabela tima:Tabela tima:Forma cannica da tabela simplex:
xB xN
-f 0 cj cBB-1aj cBB-1bxB I B-1N B-1b
Max f = 5x1 + 2x2 + 0x3 + 0x4 + 0x5x1 + 2x2 + x3 = 8x1 + x4 = 4
x2 + x5 = 3x1, x2, x3, x4, x5 0
;142
348
12/12/101002/12/1
bBx 1B
=
==
=
4
3
x
xNx
;052
5
1
2
cB
=
=
c
c
c
;
5
1
2
xB
=
x
x
x
24 =
=
142
052
f
Custos reduzidos
-
Tabela tima:Tabela tima:Tabela tima:Tabela tima:Forma cannica da tabela simplex:
xB xN
-f 0 cj cBB-1aj cBB-1bxB I B-1N B-1b
Max f = 5x1 + 2x2 + 0x3 + 0x4 + 0x5x1 + 2x2 + x3 = 8x1 + x4 = 4
x2 + x5 = 3x1, x2, x3, x4, x5 0
;1001
12/12/101002/12/1
052
03 =
=
aBc 31
Bc aBc 41
B 44 =
c
Na linha de f, coeficientes das varives nao-bsicas x3 e x4:
=
4
3
x
xNx;
5
1
2
xB
=
x
x
x
-
Tabela tima:Tabela tima:Tabela tima:Tabela tima:Forma cannica da tabela simplex:
xB xN
-f 0 cj cBB-1aj cBB-1bxB I B-1N B-1b
BxB + NxN = b B-1BxB + B-1NxN = B-1b IxB + B-1NxN = B-1b.
xB = B-1b B-1 NxNN = [aj] jR e xN = (xj)jR Rj jj
xa xB = B-1b B-1
f = cx f = cBxB + cNxN
Provando que f est em termos das Variveis No Bsicas (VNBs), ou seja:; R conjunto de ndices das VNBs.
Condio para que a soluo bsica seja vivel: B-1b 0.
-
Tabela tima:Tabela tima:Tabela tima:Tabela tima:
Substituindo (1) e (2) em f = cBxB + cNxN :
Rj
jj xaxB = B-1b B-1 ......(1) cNxN = ......(2)Rj
jj xc
A condio para que a tabela seja tima: cj cBB-1aj 0, jR
-
Tabela tima:Tabela tima:Tabela tima:Tabela tima:Tabela da soluo tima:
Variveis Bsicas x1 x2 x3 x4 x5
Valores de f e xB
L1 -f 0 0 -1 -4 0 -24L2 x2 0 1 1/2 -1/2 0 2L3 x1 1 0 0 1 0 4L4 x5 0 0 -1/2 1/2 1 1
Variveis de folga
(1): Preos Duais dos recursos
Preo Dual de um Recurso: o preo de uma unidade de recurso (ex. custo de 1 m de tecido).No modelo, bi a quantidade do recurso i. Se o recurso i aumentado ou diminudo em 1 unidade, o valor do lucro (funo objetivo) aumentar ou diminuir no seu preo dual.A quantidade do recurso pode ser variada numa certa faixa (intervalo).
-
Tabela tima:Tabela tima:Tabela tima:Tabela tima:Tabela da soluo tima:
Variveis Bsicas x1 x2 x3 x4 x5
Valores de f e xB
L1 -f 0 0 -1 -4 0 -24L2 x2 0 1 1/2 -1/2 0 2L3 x1 1 0 0 1 0 4L4 x5 0 0 -1/2 1/2 1 1
Custos reduzidos dos
Custo reduzido: a reduo da funo objetivo quando uma varivel no-bsicaentrar na base (passar ser bsica). Caso um produto no seja produzido, por cada unidade produzida deste produto, a funo objetivo diminuir no custo reduzido do produto. Se o produto est sendo produzido, seu custo reduzido zero.
-
Problema Problema Problema Problema PrimalPrimalPrimalPrimal e Duale Duale Duale DualPrimalMax f(x) = cTxs.a Ax = b
x 0
DualMin g(y)= bT ys.a ATy c
y irrestrito
-
Problema Problema Problema Problema PrimalPrimalPrimalPrimal e Duale Duale Duale DualPrimalMax f(x) = 2x1 + 3x2 + x3s.a.
3x1 + 4x2 + 2x3 = 102x1 + 6x2 + x3 = 20x1 x2 x3 = 30x1 0, x2 0, x3 0
DualMin g(y) = 10y1 + 20y2 + 30y3s.a. 3y1 + 2y2 + y3 2
4y1 + 6y2 y3 32y1 + y2 y3 1
-
Problema Problema Problema Problema PrimalPrimalPrimalPrimal e Duale Duale Duale DualPrimalMax f = 5x1 + 2x2s. a: x1 3
x2 4 x1 + 2x2 9 x1 0, x2 0
DualMin g = 3y1 + 4y2 + 9y3S.a. y1 + y3 5
y2 + 2y3 2y1 0y2 0y3 0
Max f = 5x1 + 2x2 + 0x3+ 0x4+ 0x5S.a. x1 + x3 = 3
x2 + x4 = 4x1 + 2x2 + x5 = 9x1 0, x2 0, x3 0, x4 0, x5 0.
-
Problema Problema Problema Problema PrimalPrimalPrimalPrimal e Duale Duale Duale DualPropriedade
1) Se x e y so solues viveis do problema primale dual respectivamente, entof(x) g(y).
1) Se x* o y* e so solues viveis do problemaprimal e dual respectivamente,
tal que f(x*) = g(y*), ento ambas so soluestimas dos correspondentes problemas.
* *
F.O.DualF.O. Primal
j j i ij i
c x b y= 123123
-
Problema Problema Problema Problema PrimalPrimalPrimalPrimal e Duale Duale Duale DualPropriedade
Suponha que x e y sejam solues timas dos modelos primal e do dual, respectivamente.g(y) = by = yTb
f(x) = cx = cBxB + cNxN , xN = 0, f(x) = cBxBf(x) = cBB-1b
Se g(y) = f(x) ento, yTb = cBB-1b
yT = cBB-1 Preos Duais
-
Problema Problema Problema Problema PrimalPrimalPrimalPrimal e Duale Duale Duale DualTabela simplex do primal:
xB xN-f 0 cj cBB-1aj cBB-1bxB I B-1N B-1b
Custos reduzidos:zj = cj cBB-1aj, j ndice das variveis no-bsicaszj = cj yajonde y o vetor de Preos Duais
-
Problema Problema Problema Problema PrimalPrimalPrimalPrimal e Duale Duale Duale DualPrimal:Max f = 5x1 + 2x2s.a. x1 3
x2 4x1 + 2x2 9x1, x2 0.
Max f = 5x1 + 2x2s.a. x1 + 0x2 + x3 +0x4 + 0x5 = 3
0x1 + x2 + 0x3 + x4 +0x5 = 4x1 + 2x2 + 0x3 +0x4 + x5 = 9xi 0, i =1,5.
Dual:Min g = 3y1 + 4y2 + 9y3s.a. y1 + y3 5
y2 + 2y3 2y1, y2, y3 0
Min g = 3y1 + 4y2 + 9y3s.a.
y1 + y3 y4 = 5y2 + 2y3 y5 = 2
y1, y2 , y3, y4, y5 0
Preos Duais: Vetor das variveis originais do Dual (y1 , y2 , y3)
-
Problema Problema Problema Problema PrimalPrimalPrimalPrimal e Duale Duale Duale Dual
xB x1 x2 x3 x4 x5-f 0 0 -4 0 -1 -21x1 1 0 1 0 0 3x4 0 0 1/2 1 -1/2 1x2 0 1 -1/2 0 1/2 3
y4 y5 y1 y2 y3
Tabela tima do primal
Solues do Primal e do Dual:xB = (x1, x4, x2) = (3, 1,3). xN = (x3, x5)yB = (y1, y3) = (4, 1). yN = (y4, y2, y5)g = f = 21