Sie sind auf Seite 1von 8

Programao Linear

Prof. Moretti
Mtodo Simplex para Variveis Canalizadas
Min z = c t x
sa
Ax = b
l x u
Solues Bsicas:
A = [ B , N1, N2 ]

N1 corresponde s VNB que esto no seu limite superior


N2 corresponde s VNB que esto no seu limite inferior

Se uma VB est em um dos seus limites, ento temos uma SB degenerada.

x = x B , x N1 , x N2 , onde x N1 = l N1 e x N2 = uN2
Ax = b

xB
[ B , N1, N2 ] x N1 = b
x N
2

Bx B + N1x N1 + N2 x N2 = b
x B = B 1b B 1N1x N1 B 1N2 x N2

Da mesma forma,

z =cx
t

z = c B , c N1 , c N2

xB

x N1
x N
2

z = c Bt x B + c N1 x N1 + c N2 x N2

z = c Bt B 1b c Bt B 1N1 c N1 x N1 c Bt B 1N 2 c N2 x N2

Soluo Bsica Factvel

Como no MS para variveis canalizadas assumimos que as VNB esto no seu limite
superior ou inferior, temos que a funo objetivo dada por

z = c Bt B 1 b c Bt B 1 N 1 c N 1 l N 1 c Bt B 1 N 2 c N 2 u N 2

Critrio de Otimalidade

Vamos analisar os custos reduzidos das VNB.


1) x k : k N1
Como a varivel est em seu limite inferior, se ela for escolhida para entrar na
base, somente poder ter seu valor aumentado. Ento,
x k = lk + k

Substituindo x k na funo objetivo, temos:

z = c Bt B 1 b c Bt B 1 N 1 c N 1 l N 1 c Bt B 1 N 2 c N 2 u N 2
= c Bt B 1 b
= c Bt B 1 b

(z

cj xj

(z

c j l j (z k c k )(l k + k )

(z

cj lj

jN 1

jN 1
jk

= c Bt B 1 b

jN 1

jN 2

(z

cj xj

jN 2

(z

jN 2

(z

cj uj

c j u j (z k c k ) k

Se z k c k > 0 , ento vale a pena aumentar x k de l k para l k + k . Ou seja,


x k candidata a entrar na base.
2) x k : k N2
Como a varivel est em seu limite superior, podemos apenas diminuir seu
valor. Ento,
x k = uk k
Da mesma forma que anteriormente, temos para a funo objetivo:
z = c Bt B 1 b

= c Bt B 1 b
= c Bt B 1 b

(z

(z

c j l j (z k c k )(u k k )

(z

cj lj

jN 1

jN 1
jk

jN 1

cj xj

jN 2

(z

cj xj

jN 2

(z

jN 2

(z

cj uj

c j u j + (z k c k ) k

Se z k c k < 0 , ento x k candidata a entrar na base, ou seja, lucrativo


tirar x k de seu limite superior e decresc-la por k unidades.
Portanto, o critrio de otimalidade dado por:

(z

c j ) 0 , j N1

(z

c j ) 0 , j N 2

Quem entra na base

1) x k : k N2 entra na base
x k = lk + k
Observando as equaes bsicas, x B = B 1b
Numa SBF temos x B = B 1b

yj xj

j N1

yj xj

j N1

yj xj

j N2

yj xj

j N2

y
y k k = b
k k

Quando k cresce, podem ocorrer 3 situaes:


( S1 ) Uma VB atinge o seu limite inferior

Se y ik > 0 , ento x Bi decresce junto com o crescimento de k .


y1k
x B1 b
1
x

b
B2 2 y 2 k
M M M
=

k
x Bi b
i
y ik
M M M

x Bm bm y mk

b
i
Bi
min
: y ik > 0
1 =

y ik

, se y ik 0

( S2 ) Uma VB atinge o seu limite superior

Se y ik < 0 , ento x Bi cresce junto com o crescimento de k .


y1k
x B1 b
1
x

B2 b 2 y 2 k
M M M
=

k
y
ik
x Bi b
i

M M M

x Bm bm y mk

min
=

( S3 ) A VNB atinge o seu limite superior

3 = uk l k

u
b

i
Bi
: y ik < 0

y ik

, se y ik 0

Portanto, k = min {1, 2 , 3 }


Obs: No caso de k = 3 , ento atualize a SB e mantenha e mesma base.
+ y
2) x : k N
x =b
k

x k = uk k

Analogamente quando a VNB est em seu limite inferior, temos 3 situaes:


( S1 ) A VB atinge o seu limite inferior

Se y ik < 0 , ento x Bi decresce junto com o crescimento de k .


y1k
x B1 b
1
x

B2 b 2 y 2 k
M M M
=

k
y
ik

x Bi b
i

M M M

y mk
x Bm b
m

l B b
i
min i
: y ik < 0
1 =

y ik

, se y ik 0

( S2 ) A VB atinge o seu limite superior

Se y ik > 0 , ento x Bi cresce junto com o crescimento de k .


y1k
x B1 b
1
x

B2 b 2 y 2 k
M M M
=

k
x Bi b
i
y ik
M M M

y mk
x Bm b
m

min
=

( S3 ) A VNB atinge seu limite inferior

3 = uk l k
E assim, k = min {1, 2 , 3 }.

uB b
i
i
: y ik > 0

y ik

, se y ik 0

Exemplo: Varivel Canalizada + MSR


Min z = 2x1 4x 2 x 3
sa
2x1 + x 2 + x 3 10
x1 + x 2 + x 3 4
0 x1 4

0 x 2 6 Canalizaes
1 x 3 4

Em primeio lugar, vamos colocar o problema na forma padro.


Min z = 2x1 4x 2 x 3
sa
2x 1 + x 2 + x 3 + x 4
x1 + x 2 + x 3

= 10
+ x5 = 4

0 x1 4
Continuam como canalizaes,
0 x 2 6
e sero tratadas implicitamente
1 x 3 4

Agora, vou fixar B = a 4 , a 5 e as VNB nos seus limites inferiores, i.e,


N1 = {1, 2, 3 } ; N2 = .
Eu ainda no sei se esta base factvel, pois preciso calcular os efeitos que as
VNB, nos seus limites inferiores, provocam em x 4 e x 5 .
x 4 = 10 2l1 l2 l 3 = 9
x 5 = 4 l1 l2 + l3 = 5
z = 0 2l1 4 l 2 l 3 = 1
Agora, podemos montar o quadro simplex.

x4
x5

0
1
0

0
0
1

-1
9
5

w = c BB 1 = ( 0, 0 )

z = 1

B 1 = I2 x 2

x B = [ 9, 5 ] t

Clculo dos custos reduzidos:


z1 c1 = wa1 c1 = c1 = + 2 Como as variveis esto nos seus

z 2 c 2 = wa 2 c 2 = c 2 = + 4 limites inferiores, todas elas so


z 3 c 3 = wa 3 c 3 = c 3 = + 1 candidatas a entrar na base.
Escolho x 2 para entrar na base.
Portanto, x 2 = l 2 + 2

x4
x5

0
1
0

0
0
1

-1
9
5

y 2 = B 1a 2 = ( 1,1 ) t .

e
4
1
1

9 5
1 = min , min , = 5
1 1

2 = min { } =
3 = u2 l 2 = 6

Assim, 2 = min { 1, 2 , 3 } = 5

x 5 sai da base.

Vamos calcular a nova B 1 e o novo w; para fazer isto, basta isolar x 2


no lugar de x 5 .
z 2 c2

x4
x5

0
1
0

0
0
1

-1
9
5

x4
x2

0
1
0

-4
-1
1

-21
4
5

4
1
1

Vamos transformar os dois


primeiros elementos desta
coluna em zeros.
z = 1 ( z 2 c 2 ) 2 = 21

l2 + 2 = 0 + 5 = 5

9 1
4 x4
x B = b y 2 2 = 5 = =
5 1
0 x5

Iterao 2: N 1 = { 1, 3 , 5 } , N 2 =

Clculo dos z j c'js , jN 1 :


Como x 1 est no seu limite inferior,
2
z 1 c 1 = wa 1 c 1 = ( 0 , 4 ) ( 2 ) = 2
1
ela no candidata para entrar na base

1
z 3 c 3 = wa 3 c 3 = ( 0 , 4 )
1

( 1 ) = 5

No preciso calcular ( z 5 c 5 ) pois x 5 acabou de sair da base.


Logo, x 3 entra na base, pois a nica candidata.
Teste da razo:

x4
x2

0
1
0

-4
-1
1

-21
4
5

5
2
-1

1 1 1
t
y 3 = B 1a 3 =
1 = ( 2 , 1 )
0
1

4
1 = min , min = 2
2

6 5
2 = min , min
= 1
1

3 = 4 1 = 3

3 = min { 1 , 2 , 3 } = min { 2 , 1, 3 } = 1

x 2 sai da base no seu limite superior.

Atualizando B 1 e w

x4
x2

0
1
0

-4
-1
1

x4
x3

0
1
0

1
1
-1

5
2
-1

Pivotear sobre 1, transformando-o em 1


e os demais elementos em zeros.

z = 21 ( z 3 c 3 ) 3 = 26

-26
2
2

l3 + 3 = 1 + 1 = 2

4 2
2 x4
1 = =
x B = b y 3 3 =
5 1
6 x2

Iterao 3: N 1 = { 1, 5 }

N2 = {2 }

Candidatas a entrarem na base

0
z 5 c 5 = wa 5 c 5 = ( 0 , 1 ) ( 0 ) = 1

2
z 1 c 1 = wa 1 c 1 = ( 0 , 1 ) ( 2 ) =
1

Escolho x 1

x1 = l 1 + 1 = 1
1
1
y 1 = B 1a 1 =

0 1

Teste da razo:

x4

0
1

-4
-1

-21
4

5
2

2
t
1 = ( 3, 1 )

1 = min , min

2 = min , min

3 = 4 0 = 4

2 2
=
3 3
4 2
= 2

x2

1 = min { 1 , 2 , 3 } =

-1

2
3

x 4 sai da base

Atualizando B 1 e w
0
1
0

x1
x3

1
1
-1

3
3
-1

z = 26 ( z 1 c 1 ) 1 = 28

-1
1
-28
1/3 1/3 2/3
1/3 -2/3 8/3

Iterao 4: N 1 = { 4 , 5 }

Pivotear sobre 3, transformando-o em 1


e os demais elementos em zeros.

2 3 2 0

=
x B = b y 1 1 =
2 1 3 8 /3
,

N2 = {2 }

0
z 5 c 5 = wa 5 c 5 = ( 1, 0 ) ( 0 ) = 0
1

1
z 2 c 2 = wa 2 c 2 = ( 1, 0 ) ( 4 ) =
1

Indica solues alternativas

No candidata pois x 2 est no seu limite superior

Como no h candidatas e entrarem na base, estamos no timo.


Soluo tima:

x1 = 2 3
x2 = 6 no seu limite superior
x3 = 8 3
x4 = 0
x5 = 0
z = 28

Das könnte Ihnen auch gefallen