Escolar Documentos
Profissional Documentos
Cultura Documentos
Metodo Simplex PDF
Metodo Simplex PDF
Max z = c1 x1 + c2 x2 + ... + cn xn
x j 0 j = 1,..., n
n
n
aij x j + Si = bi
aij x j bi j =1
j =1 0 S
i
n
n
aij x j Si = bi
aij x j bi j =1
j =1 0 S
i
b) Relao entre maximizao e minimizao
n n
Max z = cjxj Min ( z ) = ( c j ) x j
j =1 j =1
Substituio : x j = xj x j = x +
xj 0
xj 0
Substituio : x j = xj x j = xj
xj
xj 0
x j = xj xj
xj
xj 0 e xj 0
Exemplo - Empresa WYNDOR GLASS CO.
Produtos Capacidade
Planta
Janelas Portas Disponvel
1 1 0 4
2 0 2 12
3 3 2 18
Lucro Unit. $3 $5
Max Z = 3 X1 + 5 X2
S.a: X1 4
2 X2 12
3 X1 + 2 X2 18
X1, X2 0
X2
0 X1
0 1 2 3 4 5 6 7 8 9
Propriedades dos PPLs
(a) Se existe exatamente uma soluo tima, ento
deve ser uma soluo factvel em um vrtice;
Mtodo Simplex
1. Passo inicial: iniciar com uma soluo factvel em
um vrtice;
Max Z = 3 X1 + 5 X2
s.a: X1 4
2 X2 12
3 X1 + 2 X2 18
X1,X2 0
Max Z
s.a: Z 3 X1 5 X2 = 0
X1 + S1 = 4
2 X2 + S2 = 12
3 X1 + 2 X2 + S3 = 18
X1,X2,S1,S2,S3 0
Soluo aumentada
Soluo bsica
Soluo bsica vivel = Vrtice
Solues adjacentes
Z 3 X1 5 X2 = 0
X1 + S1 = 4
2 X2 + S2 = 12
3 X1 + 2 X2 + S3 = 18
Soluo:
Z,X1,X2,S1,S2,S3)=(0,0,0,4,12,18)
Z 3 X1 + + 5/2 S2 = 30
X1 + S1 = 4
X2 + 1/2 S2 = 6
3 X1 - S2 + S3 = 6
Soluo: (Z,X1,X2,S1,S2,S3)=(30,0,6,4,0,6)
Z + 3/2 S2 + S3 = 36
S1 + 1/3 S2 1/3 S3 = 2
X2 + 1/2 S2 = 6
X1 - 1/3 S2 + 1/3 S3 = 2
Soluo: (Z,X1,X2,S1,S2,S3)=(36,2,6,2,0,0)
xj 0 j = 1,..., n
xj 0 j = 1,..., n
di 0 i = 1,..., m
P1 P2 d i = 0, i = 1,..., m
xj 0 j = 1,..., n
di 0 i = 1,..., m
Ento:
i) toda soluo de P3 tambm soluo de P2;
ii) se a soluo tima de P3 tiver w = 0 , ento tambm
ser uma soluo bsica vivel para o P1.
Algoritmo
1. Se P1 tem soluo bsica vivel trivial, v para 4;
Min Z = 3 X1 + 2 X2 + 4 X3
s.a: 2 X1 + X2 + 3 X3 = 60
3 X1 + 3 X2 + 5 X3 120
X1,X2,X3 0
Forma Equivalente
Z = (-Z) = -3 X1 - 2 X2 - 4 X3
Max Z
Z + 3 X1 + 2 X2 + 4 X3 = 0
2 X1 + X2 + 3 X3 = 60
3 X1 + 3 X2 + 5 X3 S2 = 120
X1,X2,X3,S2 0
Max Z
Z+ 3 X1 + 2 X2 + 4 X3 = 0
2 X1 + X2 + 3 X3 + d1 = 60
3 X1 + 3 X2 + 5 X3 S2 + d2 = 120
X1,X2,X3,S2,d1,d2 0
Problema da Primeira Fase
Min W = d1 + d2
ou
Max W= (-W) = - d1 d2
W + d1 + d2 = 0
Z+ 3 X1 + 2 X2 + 4 X3 = 0
2 X1 + X2 + 3 X3 + d1 = 60
3 X1 + 3 X2 + 5 X3 S2 + d2 = 120
X1,X2,X3,S2,d1,d2 0
Iterao 0
V.B. W' Z' X1 X2 X3 S2 d1 d2 Valor
W' 1 0 -5 -4 -8 1 0 0 -180
Z' 0 1 3 2 4 0 0 0 0
a1 0 0 2 1 3 0 1 0 60
a2 0 0 3 3 5 -1 0 1 120
Iterao 1
V.B. W' Z' X1 X2 X3 S2 d1 d2 Valor
W' 1 0 1/3 -4/3 0 1 8/3 0 -20
Z' 0 1 1/3 2/3 0 0 -4/3 0 -80
X3 0 0 2/3 1/3 1 0 1/3 0 20
a2 0 0 -1/3 4/3 0 -1 -5/3 1 20
Iterao 2
V.B. W' Z' X1 X2 X3 S2 d1 d2 Valor
W' 1 0 0 0 0 0 1 1 0
Z' 0 1 1/2 0 0 1/2 -1/2 -1/2 -90
X3 0 0 2/3 0 1 3/4 1/3 -1/4 15
X2 0 0 -1/4 1 0 -3/4 -5/4 3/4 15
Iterao 0
V.B. Z' X1 X2 X3 S2 Valor
Z' 1 1/2 0 0 1/2 -90
X3 0 2/3 0 1 3/4 15
X2 0 -1/4 1 0 -3/4 15
Soluo do Problema
X1 = 0
X2 = 15
X3 = 15
S2 = 0
Z = -90 Z = 90
Mtodo Simplex na Forma Matricial
Max z = cT x (1.a)
s.a: Ax = b (1.b)
x0 (1.c)
x c
x = B c = B A = [B R] (2)
xR c R
m nm
onde c B , x B R , c R , x R R , B uma matriz m m
no-singular, e R uma matriz m ( n m) .
Com isto o PPL poder ser re-escrito na forma:
B xB = b R xR
B 1 B x B = B 1 (b R x R )
x B = B 1b B 1 R x R (4)
x B = B 1b (5)
z = c TB x B (6)
(
z = cTB B 1b B 1 R x R + cTR x R)
z = cTB B 1b cTB B 1 R x R + cTR x R
(
z = cTB x B + cTR cTB B 1 R x R )
(
z = z + c TR cTB B 1 R x R ) (7)
x B = B 1b B 1 R x R 0 (11)
Considerando que apenas um componente do vetor de
variveis no-bsicas incrementado por vez, esta
expresso resume-se a:
x B = x B B 1 a Rk x Rk 0 (12)
x Bi
r = min{ i } = min | aik > 0 (14)
i i aik
x Rk = r (15)
Proposio 1
* *
i) Seja x a soluo tima do PPL Primal. Seja a
soluo tima do PPL Dual. Ento c T x * = bT * .
ii) Se o PPL Primal tem soluo ilimitada, ento o PPL
Dual no tem soluo, e vice-versa.
Proposio 2
*
Seja x a soluo bsica tima do PPL Primal, e B a
* T 1 T
base correspondente. Ento = c B B R c R a
soluo tima do PPL Dual.
Algoritmo SIMPLEX Primal-Dual
(G. B. DANTZIG, 1956)
Max cTB x B + c TR x R
s.a: Bx B + Rx R = b
P1 Calcule B 1 .
Calcule x B = B 1b e z = cTB B 1R cRT .
P2 Determine x Br = min i x Bi .
Determine z k = min j z j .
Se z k x Br e z k < 0 , ento v a P3.
Se x Br < z k e x Br < 0 , ento v a P4.
Se x Br 0 e z k 0 , ento PARE. A soluo
atual tima.
1
P3 Iterao Primal. Calcule ak = B ak . Se
/ aik > 0 ,
ento PARE. O problema tem soluo ilimitada.
Em caso contrrio, determine a varivel que
dever sair da base:
x Bi
r = min i i = min i | aik > 0
aik
V para P5.
T 1
P4 Iterao Dual. Calcule ar = er B R , onde erT o
r-simo vetor linha unitrio. Se / arj < 0 , ento
PARE. O problema no tem soluo vivel. Em
caso contrrio, determine a varivel que dever
entrar na base:
z j
k = max j j = max j | arj < 0
arj
P5 Troca de base. Efetue a troca de base entre as
variveis x Br x Rk . Determine a nova partio
para o PPL e retorne a P1.
Exemplo de Aplicao do Algoritmo Simplex Primal-Dual
Max 3 x1 + 2 x 2 + 4 x3
s.a: 2 x1 + x 2 + 2 x3 10
x1 + 4 x3 12
x1 + x2 + x3 16
x1 , x 2 , x3 0
X1 3
X2 2
X = X3 C = 4
S1 0
S2 0
S3 0
2 1 2 -1 0 0 10
A = 1 0 4 0 -1 0 b = 12
1 1 1 0 0 1 16
Iterao 1
S1 -1 0 0 -1 -1 0 0
Xb = S2 B = 0 -1 0 B = 0 -1 0
S3 0 0 1 0 0 1
X1 2 1 2
Xr = X2 R = 1 0 4
X3 1 1 1
Cb' = 0 0 0 Cr' = 3 2 4
S1 -1 0 0 10 -10
Xb = S2 = 0 -1 0 * 12 = -12
S3 0 0 1 16 16
-1 0 0 2 1 2
dZ = 0 0 0 * 0 -1 0 * 1 0 4 - 3 2 4
0 0 1 1 1 1
dZ = -3 -2 -4
-1 0 0 2 1 2
a2 = 0 1 0 * 0 -1 0 * 1 0 4 = -1 0 -4
0 0 1 1 1 1
Alfa = 3 ? 1
S1 -1 2 0 -1 -1 2 0
Xb = X1 B = 0 1 0 B = 0 1 0
S3 0 1 1 0 -1 1
S2 0 1 2
Xr = X2 R = -1 0 4
X3 0 1 1
Cb' = 0 3 0 Cr' = 0 2 4
S1 -1 2 0 10 14
Xb = X1 = 0 1 0 * 12 = 12
S3 0 -1 1 16 4
-1 2 0 0 1 2
dZ = 0 3 0 * 0 1 0 * -1 0 4 - 0 2 4
0 -1 1 0 1 1
dZ = -3 -2 8
-1 2 0 0 -2
a1 = 0 1 0 * -1 = -1
0 -1 1 0 1
?
Teta = ?
4
S1 -1 2 0 -1 -1 0 2
Xb = X1 B = 0 1 -1 B = 0 0 1
S2 0 1 0 0 -1 1
S3 0 1 2
Xr = X2 R = 0 0 4
X3 1 1 1
Cb' = 0 3 0 Cr' = 0 2 4
S1 -1 0 2 10 22
Xb = X1 = 0 0 1 * 12 = 16
S2 0 -1 1 16 4
-1 0 2 0 1 2
dZ = 0 3 0 * 0 0 1 * 0 0 4 - 0 2 4
0 -1 1 1 1 1
dZ = 3 1 -1
-1 0 2 2 0
a1 = 0 0 1 * 4 = 1
0 -1 1 1 -3
?
Teta = 16
?
S1 -1 2 0 -1 -1 0 2
Xb = X3 B = 0 4 -1 B = 0 0 1
S2 0 1 0 0 -1 4
S3 0 1 2
Xr = X2 R = 0 0 1
X1 1 1 1
Cb' = 0 4 0 Cr' = 0 2 3
S1 -1 0 2 10 22
Xb = X3 = 0 0 1 * 12 = 16
S2 0 -1 4 16 52
-1 0 2 0 1 2
dZ = 0 4 0 * 0 0 1 * 0 0 1 - 0 2 3
0 -1 4 1 1 1
dZ = 4 2 1
22
Z = 0 4 0 * 16 = 64
52
Interpretao dos Resultados
Max 3 x1 + 2 x2 + 4 x3 (Lucro)
s.a: 2 x1 + x2 + 2 x3 10 (Subproduto 1)
x1 + 4 x3 12 (Subproduto 2)
x1 + x2 + x3 16 (Mo de Obra)
x1, x2 , x3 0
Var. Valor dZ
X1 0 1
X2 0 2
X3 16 0
S1 22 0
S2 52 0
S3 0 4
Z 64
Anlise de Ps-otimalidade
Seja o PPL na forma padro
Max cT x
s.a: Ax = b
x0
( * *)
e seja x B , x R a sua soluo bsica tima. Se algum
parmetro do modelo sofrer alterao, uma nova
soluo dever ser determinada. Entre as alteraes
mais significativas, tem-se:
(
x*B = B 1 b R x*R )
Dado que um coeficiente do vetor b sofreu alterao,
isto , dado que o novo vetor b dado por
b = b + r er , onde er o r-simo vetor coluna unitrio
tem-se:
( ) [
x B* = B 1 b R x *R = B 1 (b + r er ) R x *R ]
x B* = B 1 (b R x*R )+ B 1 r e r = x*B + B 1 r e r
Z j = cTR j cTB B 1 R j 0 , se x TR j = 0
Z j = c RT j c TB B 1 R j = c TR j + j c TB B 1 R j 0
Z j = j + Z j 0 , ou
j Z j
Caso 3 - Alterao de um coeficiente do vetor c BT
( )
Z j = cTR j cTB + k ekT B 1 R j 0
Z j = cTR j c TB B 1 R j k ekT B 1 R j 0
Z j = Z j k Rkj 0 ,