Você está na página 1de 18

CAPTULO 3

Mtodo Simplex

1. Solues Bsicas Admissveis


Considere um problema de PL representado nas suas formas padro e matricial. Uma base
um conjunto de m variveis, tais que a matriz dos coeficientes do sistema de equaes lineares (3.2)
no singular (isto , cujo determinante no nulo). Por outras palavras, toda a submatriz quadrada
regular (mm) contida em A (mn) existe pelo menos uma, j que car (A) = m < n.
Ento, pode-se rescrever a matriz A da seguinte forma :

A= B

onde N a submatriz formada pelas colunas de A que no esto na base B.


Da mesma forma, se pode particionar o vector X em

XN T

CN .

X = XB

e o vector C em
C = CB

Portanto, o problema pode ser representado da seguinte forma :


Maximizar

Sujeito a

XB
CN

X N

Z = CB

[B

XB
N
= b B XB + N XN = b
X N

X0

28

Mtodo Simplex

Considere-se as seguintes definies :


variveis bsicas (VB) : as m variveis que formam a base do sistema
variveis no bsicas (VNB) : as restantes n-m variveis
soluo bsica (SB) : soluo cujos valores das VNB so nulos (X com XN = 0 e XB = B-1 b)
soluo bsica admissvel (SBA) : SB com todas as VB no negativas (XB 0)
SBA no degenerada : SBA em que as VB so estritamente positivas (XB > 0)
SBA degenerada : SBA em que uma ou mais VB so nulas
base admissvel : uma base que corresponde a uma soluo bsica admissvel

um ponto x X ponto extremo se e s se constituir uma SBA do problema de PL


o conjunto dos vrtices de um politopo X = { x : A x = b, x 0, x Rn } corresponde ao conjunto
de solues bsicas admissveis

o conjunto dos PE da regio admissvel corresponde ao conjunto das SBA e so ambos no


vazios, desde que a regio admissvel seja no vazia. Cada SBA equivalente a um PE, mas
podem existir vrias SBA correspondendo ao mesmo PE.
Propriedades dos pontos extremos admissveis :
1. Se existe apenas uma soluo ptima, ento tem de ser um PE admissvel.
2. Se existem vrias solues ptimas, ento pelo menos 2 so PE admissveis adjacentes.
3. Existe um nmero finita de PE admissveis.
4. Se um PE admissvel no tem PE admissveis adjacentes melhores, ento esse PE ptimo.

As propriedades 1 e 2, implicam que a pesquisa de uma soluo ptima pode ser reduzida,
considerando apenas os PE admissveis; desta forma, existe um nmero finito de solues a
considerar (propriedade 3). A propriedade 4 fornece um teste de optimalidade muito conveniente.

2. Mtodo Simplex
O mtodo Simplex explora as 4 propriedades dos pontos extremos admissveis apresentadas no
sub-captulo anterior (1), apenas examinando relativamente poucos PE admissveis e parando logo
que um deles passe o teste de optimalidade. Desta forma, o mtodo Simplex move-se repetidamente
(iterativamente) do PE admissvel actual para um melhor PE admissvel, at que a soluo actual no
tenha nenhum PE admissvel adjacente melhor. Este processo composto pelos seguintes passos :
1) Iniciao : Comear com um PE admissvel. Qualquer PE admissvel pode ser adoptada como

soluo inicial; no entanto, uma boa hiptese para a SBA inicial ser considerar as slacks como
VB e as originais como VNB.
2) Iterao : Mover-se para um melhor PE admissvel adjacente. (Repetir este passo quantas

vezes forem necessrias). Este movimento implica a converso de uma VNB numa VB
Mtodo Simplex

Algoritmo Primal Simplex (problema de maximizao)

29

(chamada a varivel bsica de entrada) e, simultaneamente, a converso de uma VB numa


VNB (chamada varivel bsica de sada), para depois identificar a nova SBA.
3) Teste de optimalidade : O PE admissvel actual ptimo se nenhum dos PE admissveis seus

adjacentes so melhores.

3. Algoritmo Primal Simplex (problema de maximizao)


Considere-se um problema de PL de maximizao na sua forma padro (Error! Reference
source not found.). Na resoluo de um problema atravs do algoritmo de Simplex, recorre-se ao

chamado quadro Simplex. Supondo que as variveis bsicas so as primeiras m,


xB = (x1, ..., xm) e
xN = (xm+1, ..., xm+n),

o quadro Simplex padro assume o seguinte aspecto :


XB

zj cj

xB

xN

2 membro

Im

A = B 1 N

b = x B = B 1 b

CB A CN

ZB = CB b

Passo inicial :

Construir o quadro Simplex, considerando como SBA inicial, as m variveis slacks, ficando o quadro
Simplex com o seguinte aspecto :
XB

x1

...

xn

xn+1

...

xn+m

2 m.

xn+1

a11

...

a1n

...

b1

...
xn+m

...
am1

...
...

...
amn

...
0

...
...

...
1

...
bm

zj cj

c1

cn

...

Passo principal : Considerar o quadro Simplex padro.


1) Seja zk ck = mnimo { zj cj : j R }, onde R o conjunto dos ndices das VNB (candidatas a

entrarem na base)
Se zk ck 0 ento a SBA actual ptima seno continuar (teste de optimalidade)
2) Examinar a coluna k do quadro ( A k ) :

Se A ik 0 i ento o problema tem ptimo ilimitado (+) seno continuar.


3) A varivel xk entra na base e a xt sai da base, sendo t determinado pelo seguinte teste :

xt =

bt
= min
a tk

bi

, a ik > 0 .

a ik

Mtodo Simplex

30

Algoritmo Primal Simplex (problema de maximizao)

Se existirem mais do que uma varivel nestas condies, qualquer uma pode ser usada (conduz
a solues degeneradas).
4) Actualizar o quadro Simplex, sendo o pivot o valor de a tk , utilizando o mtodo de

eliminao de Gauss, de forma que o quadro apresente as seguintes alteraes :


a) na coluna k aparece tudo a 0, excepto na posio do pivot onde aparece 1,
b) a linha zj cj recalculada.
Exemplo :

Uma empresa fabrica dois tipos de produtos : A e B. O lucro unitrio lquido de cada um 45
(A) e 30 u.m. (B). Numa mquina, os produtos so processados durante 2 min. (A) e 1 min. (B). A
mquina est disponvel 1000 min.. Cada um dos produtos requer 1 min. de mo-de-obra directa. A
disponibilidade de mo-de-obra 800 min..
Estudos de mercado indicam que a procura dos produtos A e B no excede 400 e 700 unidades,
respectivamente.
Quantas unidades de A e B devem ser fabricadas de modo a maximizar o lucro ?
Formalizao do problema :

x1 = quantidade de unidades do produto A


x2 = quantidade de unidades do produto B
Max

45 x1 + 30 x2

s. a

2 x1 + x2

1 000

(mquina)

x1 + x2

800

(mo-de-obra)

x1

400

(procura de A)

700

(procura de B)

x2
x1, x2

(lucro)

Passar o problema para a sua forma padro :

Determinar xi 0 , i = 1,...,6 de modo a


Max

45 x1 + 30 x2

s. a

2 x1 + x2
x1 + x2
x1

+ x3

= 1 000
+ x4
+ x5

x2

+ x6

800

400

700

xi 0 , i = 1,...,6

Mtodo Simplex

Algoritmo Primal Simplex (problema de maximizao)

31

Resoluo do problema, utilizando o algoritmo Simplex :


Passo inicial :

XB

x1

x2

x3

x4

x5

x6

2 m.

L1 2 L3

x3

1 000

1000/2 = 500

L2 L3

x4

800

800/1 = 800

L3

x5

400

400/1 = 400

L4

x6

700

zj cj

45

30

XB

x1

x2

x3

x4

x5

x6

2 m.

L1

x3

200

200/1 = 200

L2 L1

x4

400

400/1 = 400

L3

x1

400

L4 L1

x6

700

zj cj

30

45

18 000

XB

x1

x2

x3

x4

x5

x6

2 m.

L1 + 2 L2

x2

200

L2

x4

200

200/1 = 200

L3 L2

x1

400

400/1 = 400

L4 2 L2

x6

500

500/2 = 250

zj cj

30

15

24 000

XB

x1

x2

x3

x4

x5

x6

2 m.

x2

600

x2 (opt)

x5

200

x5 (opt)

x1

200

x1 (opt)

x6

100

x6 (opt)

zj cj

15

15

L5 + 45 L3

1 Iterao :

L5 + 30 L1

2 Iterao :

L5 + 15 L2

3 Iterao :

()

()
700/1 = 700

()

27 000 Zmax

Como os elementos da linha (zj cj) so todos no negativos, a soluo presente ptima :
x* = (200, 600, 0, 0, 200, 100) com z* = 27 000.

Mtodo Simplex

32

Tcnica da base artificial

4. Problemas com restries , = e


Considere-se um problema de PL, apresentando a seguinte forma :
Max

CX

s. a

AX b

{ , =, }

X0
em que todas as componentes de b so no negativas.
Restrio varivel slack
coeficiente 1 (coluna I)
quando o valor de b excede o lado esquerdo
coeficiente nulo na funo objectivo
corresponde quantidade de recurso no consumido

Restrio varivel slack


coeficiente 1
quando o lado esquerdo excede o valor de b
coeficiente nulo na funo objectivo
corresponde quantidade de recurso consumido alm do mnimo requerido

Restries e = varivel artificial


coeficiente 1 (coluna I)
no pode aparecer na soluo ptima
coeficiente negativo muito elevado na funo objectivo

5. Tcnica da base artificial


Como no existe qualquer varivel que possa ser imediatamente tornada como bsica, isto , a
matriz dos coeficientes A no contm uma submatriz identidade (b 0), necessrio introduzir
algumas variveis artificiais, tantas quanto as necessrias, para se conseguir arranjar um submatriz
identidade de ordem m.
As variveis artificiais, ao contrrio das slacks, no tm significado de natureza econmica,
sendo apenas um mero artifcio matemtico da a designao de artificiais.
O objectivo consiste em anular as variveis artificiais, pois s desta forma ser possvel a
obteno de uma soluo do problema inicial. No entanto, qualquer soluo do problema original
tambm soluo do problema aumentado, com as variveis artificiais a zero. O inverso tambm
verdade, desde que as variveis artificiais valem zero.
Para conseguir tal objectivo, iro ser estudados 2 mtodos diferentes, que so 2 variantes do
mtodo Simplex : mtodo do MGrande (Penalidades) e mtodo das DuasFases.

Mtodo Simplex

Tcnica da base artificial

33

5.1. Mtodo do MGrande (ou das Penalidades)


Neste mtodo, as variveis artificiais so fortemente penalizadas na funo objectivo, de
modo a provocar rapidamente o seu anulamento. O mtodo Simplex, tender naturalmente a
eliminar da base as variveis artificiais, como se pretende, dado que aquelas esto penalizadas com
coeficientes arbitrariamente grandes : (M) na maximizao e (+M) na minimizao.
Considere-se um problema de PL na forma padro :
Maximizar
Sujeito a

Z = c1 x1 + + cn xn
a11 x1 + + a1n xn = b1
...
am1 x1 + + amn xn = bm
xi 0, i = 1,,n

Por aplicao do mtodo do M-Grande, passa-se ao seguinte problema aumentado :


Maximizar
Sujeito a

Z = c1 x1 + + cn xn M xn+1 M xn+m
a11 x1 + + a1n xn + xn+1

= b1

...
am1 x1 + + amn xn

+ xn+m

= bm

xi 0, i = 1,, n+m
em que as variveis xi (i = n+1, , n+m) so artificiais e M o coeficiente de penalizao.
No entanto, os valores dos coeficientes de custo da funo objectivo (linha de custo), associados
s variveis artificiais so no nulos (cj = M, j ndice de varivel artificial) o que no pode
acontecer, pois todos aqueles valores tm quer ser nulos.
Logo, necessrio determinar uma nova funo objectivo, que seja equivalente anterior, mas
em que os coeficientes de custo das variveis artificiais sejam nulos. Para tal, calcula-se a nova funo
objectivo, em funo da anterior e das restries onde existam as referidas variveis.
Exemplo :

Uma pequena empresa fabrica 3 tipos de kits electrnicos : A, B e C. O lucro unitrio lquido de
cada um 5 (A), 10 (B) e 15 u.m. (C). O tempo disponvel limita o nmero total de kits que podem ser
fabricados, a 500. Estudos de mercado indicam que o total de kits tipos A e B deve ser pelo menos
100. O total de kits tipo A deve exceder exactamente em 120 o total de kits tipos B e C.
Quantas unidades de A, B e C devem ser fabricadas de modo a maximizar o lucro ?

Mtodo Simplex

34

Tcnica da base artificial

Formalizao do problema :

x1 = quantidade de unidades do kit A


x2 = quantidade de unidades do kit B
x3 = quantidade de unidades do kit C
Max

Z = 5 x1 + 10 x2 + 15 x3

s. a

x1

+ x2

x1

+ x2

x1

x2

+ x3

x3

(lucro)

500

(capacidade)

100

(procura de A e B)

120

(excedente de A)

x1, x2, x3 0
Passar o problema para a sua forma padro :

Max
s. a

Z = 5 x1 + 10 x2 + 15 x3
x1

+ x2

x1

+ x2

x1

x2

+ x3

+ x5

= 500

x4

= 100

x3

= 120

xi 0 , i = 1,...,5
Como no possvel arranjar uma matriz identidade, tero que ser introduzidas variveis artificiais
no problema. Desta forma, o problema passar a ter a seguinte forma :
Z = 5 x1 + 10 x2 + 15 x3 + 0 x4 + 0 x5 M x6 M x7

Max
s. a

x1

+ x2

x1

+ x2

x1

x2

+ x3

+ x5
x4

+ x6

x3

+ x7

(M +)

500

100

120

xi 0 , i = 1,...,7 (x6, x7 variveis artificiais)


Aplicando o algoritmo Simplex a este problema, tem-se :
Passo inicial :

XB

x1

x2

x3

x4

x5

x6

x7

2 m.

L1 L2

x5

500

L2

x6

100

L3 L2

x7

120

10

15

2M5

10

M15

220 M

(1) zj cj
L4 + (2M+5) L2 (2) zj cj

Mtodo Simplex

Tcnica da base artificial

35

(1) Como os valores de z c (j = 6, 7) so no nulos (M) e x e x so variveis bsicas (portanto, para


j
j
6
7

que se possa aplicar o algoritmo Simplex tm que ter zj cj = 0, j = 6, 7), necessrio construir uma
nova linha para zj cj, o que se faz da seguinte forma :
[

Linha 2 (x6)

M [

5
1

Linha 3 (x7)

M [

Linha 4

[ 2M5

Nova linha 4

10
1

15
0

100

120

10

M15

220 M ]

Desta forma, o primeiro quadro Simplex ser o anterior, em que a linha zj cj ser a (2).
1 Iterao :

XB

x1

x2

x3

x4

x5

x6

x7

2 m.

L1 L3

x5

400

L2 + L3

x1

100

L3

x7

20

zj cj

2M5

M15

M5

2M+5

20 M+500

XB

x1

x2

x4

x5

x6

x7

2 m.

L3 + L1

x5
x1
x4
zj cj

2
1
2
15

20

0
0
1
0

1
0
0
0

0
0
1
M

1
1
1

L4 + 10 L1

0
1
0
0

x3
2
1
1

M+5

380
120
20
600

XB

x1

x2

x3

x4

x5

x6

x7

2 m.

x3

0.5

0.5

190

x1

0.5

0.5

310

x4

0.5

0.5

210

zj cj

10

M5

4 400

L4 + (M+5) L2

2 Iterao :
L1
L2 + L1

3 Iterao :

Como todos os elementos da linha (zj cj) so no negativos, ento a soluo presente ptima :
x* = (310, 0, 190, 210, 0, 0, 0) com z* = 4 400.
No quadro inicial as variveis artificiais x6 e x7 so VB

R2 e R3 so violadas.

No 2 quadro a varivel artificial x7 VB

R3 violada.

No 3 quadro a varivel artificial x6 e x7 so VNB

Soluo admissvel.

Mtodo Simplex

36

Tcnica da base artificial

5.2. Mtodo das Duas-Fases


Nesta variante, o problema de PL resolvido em duas fases distintas : na primeira, procura-se
determinar se existem solues admissveis para o problema inicial e, caso existam, obtm-se uma
SBA que ser a soluo de partida (inicial), da fase seguinte; a segunda, consiste simplesmente na
aplicao do algoritmo do Simplex, tal como foi descrito inicialmente.
A 1 fase consiste em remover da base todas as variveis artificiais, de forma a obter uma SB
apenas com variveis no artificiais do problema.

Para tal, resolve-se o seguinte problema de PL

(problema auxiliar), comeando com (X, Xa) = (0, b) como SBA :


Minimizar

Z = Xa

Sujeito a

AX=b
X0

em que Xa o vector das variveis artificiais e o objectivo consiste, nesta fase, em minimizar a sua
soma (funo objectivo artificial), quer o problema inicial seja de maximizao quer seja de
minimizao.
Portanto, obtida uma soluo para o problema auxiliar com as variveis artificiais nulas, fica
determinada a SBA de partida para o problema inicial. evidente que uma soluo nestas condies
s se verifica com o valor da FO artificial igual a zero (Z = 0).
No entanto, outros situaes podem acontecer. Portanto, no fim do 1 fase, em que se atingiu a
soluo ptima do problema auxiliar, est-se numa das situaes seguintes :
i) z > 0 existe pelo menos uma varivel artificial bsica com valor estritamente positivo o

problema inicial impossvel (regio admissvel vazia);


ii) z = 0 com todas as variveis artificiais no bsicas a soluo em presena uma SBA de

partida para o problema inicial passar directamente 2 fase.


iii) z = 0 com pelo menos uma varivel artificial bsica (nula) a soluo encontrada uma

soluo admissvel para o problema inicial. Se existir algum vector no artificial fora da base em
condies de substituir um vector artificial procede-se substituio, sendo a soluo obtida
degenerada; caso contrrio, tira-se do quadro Simplex a linha respectiva (e a varivel artificial
associada). Em qualquer dos casos, aps estas operaes, passar 2 fase.
A 2 fase consiste em considerar a soluo obtida na fase anterior como primeira SBA, e aplicar
o mtodo Simplex normalmente at se atingir a soluo ptima. Nesta fase, os vectores artificiais
podem ser suprimidos dos respectivos quadros; no entanto, vantajoso a sua manuteno, sem
contudo questionar a sua possvel reentrada na base.

Mtodo Simplex

Tcnica da base artificial

37

Exemplo :

Considere o seguinte problema de PL (minimizao) :


Min

Z = 3 x1 + 2 x2

s. a

x1
x2

x2

x1 + 5 x2

5 x1 + 2 x2

10

x1 +

x1, x2 0
Este problema equivalente ao seguinte problema de maximizao :
Maximizar

Z = 3 x1 2 x2

(x1, x2) X

Sujeito a

(mesmas restries anteriores)

Passar o problema para a sua forma padro :

Maximizar Z = 3 x1 2 x2

Sujeito a

x1

+ x5
x2

x1 +

+ x6

x2

+ x7

x1 + 5 x2
5 x1 + 2 x2

x3

+ x8

x4

xi 0 , i = 1,...,9 (x8, x9 variveis artificiais)


1 Fase :

Resolver o seguinte problema de PL auxiliar :


Minimizar Z = x8 + x9
sujeito a

xX

o qual equivalente ao seguinte problema de maximizao :


Maximizar

Z = x8 x9

sujeito a x X

Mtodo Simplex

+ x9 = 10

38

Tcnica da base artificial

Aplicando o algoritmo Simplex a este problema de maximizao, tem-se :


Passo inicial :

XB

x1

x2

x3

x4

x5

x6

x7

x8

x9

2 m.

L1

x5

L2 (1/5) L4

x6

L3 (1/5) L4

x7

(1/5) L4

x8

L5 (2/5) L4

x9

10

(1) zj cj

(2) zj cj

15

L6 + (7/5) L4

(1) Como os valores de z c (j = 8, 9) so no nulos (1), x e x so variveis bsicas (portanto, para


j
j
8
9

que se possa aplicar o algoritmo Simplex tm que ter zj cj = 0, j = 8, 9), necessrio construir uma
nova linha para zj cj, o que se faz da seguinte forma :
[

Linha 4 (x8)

Linha 5 (x9)

10

[ 6

15 ]

Linha 6

Nova linha 6

Desta forma, o primeiro quadro Simplex ser o anterior, em que a linha zj cj ser a (2).
1 Iterao :

XB

x1

x2

x3

x4

x5

x6

x7

x8

x9

2 m.

L1 (5/23) L5

x5

L2 + (1/23) L5

x6

1/5

1/5

1/5

L3 (4/23) L5

x7

4/5

1/5

1/5

L4 (1/23) L5

x2

1/5

1/5

1/5

(5/23) L5

x9

23/5

2/5

2/5

2/5

7/5

x3

x4

x5

x6

x7

x8

x9

2 m.

L6 + L5

2 Iterao :

zj cj 23/5
XB

x1

x2

x5

2/23 5/23

2/23 5/23 29/23

x6

5/23 1/23

5/23 1/23

x7

3/23 4/23

3/23 4/23 60/23

x2

5/23 1/23

5/23 1/23 15/23

x1

2/23 5/23

2/23 5/23

zj cj

Mtodo Simplex

77/23

40/23
0

Tcnica da base artificial

39

Como zj cj 0, j, a soluo actual ptima, para o problema auxiliar, que ser a SBA de
partida para o problema inicial. Esta soluo a seguinte :
29 77 60
40 15
x* = ,
, 0, 0,
,
,
e z* = 0.
23 23 23
23 23
2 Fase :

Resolver o problema inicial utilizando o algoritmo Simplex, em que a SBA de partida a


soluo ptima do problema auxiliar.
Portanto, retoma-se a funo objectivo inicial, pelo que o 1 quadro desta fase apenas difere do
ltimo da 1 fase no que diz respeito aos zj cj.
Como x1 e x2 fazem parte da SBA de partida, ento valores de zj cj (j = 1, 2) tm de ser nulos, o
que no acontece (c1 = 3 e c2 = 2). Para tal, necessrio alterar a linha que corresponde a estes
valores, da seguinte forma :
XB

x1

x2

x5

x6

x7

x3

x4

x5

x6

x7

x8

x9

2 m.

2/23 5/23

2/23

5/23

29/23

5/23 1/23

5/23

1/23

77/23

3/23 4/23

3/23 4/23

60/23

x2

5/23 1/23

5/23

1/23

15/23

x1

2/23 5/23

2/23

5/23

40/23

(1) zj cj

(2) zj cj

4/23 13/23

4/24 13/23

150/23
Zmax

(1) Como os valores de z c (j = 1, 2) so no nulos (3, 2), x e x so variveis bsicas (portanto, para
j
j
1
2

que se possa aplicar o algoritmo Simplex tm que ter zj cj = 0, j = 1, 2), necessrio construir uma
nova linha para zj cj, o que se faz da seguinte forma :
(1) Linha 6

[ 3

Linha 4 (x8)

2 [ 0

Linha 5 (x9)

3 [ 1
[ 0

(2) Nova linha 6

5/23 1/23

5/23

1/23

15/23

2/23 5/23

2/23

5/23

40/23

4/23 13/23

4/23 13/23

150/23

Desta forma, o primeiro quadro Simplex ser o anterior, em que a linha zj cj ser a (2).
Como zj cj 0, j, a soluo associada ao quadro ptima. Esta a seguinte :

150
29 77 60
40 15
(= Z max )
x* = ,
, 0, 0,
,
,
com Z min =
23
23
23
23
23
23

Mtodo Simplex

40

Problemas de minimizao

Resoluo grfica do problema :

6. Problemas de minimizao
At aqui, o mtodo Simplex apenas tem sido aplicado a problemas que consistem na
maximizao das funes de custo. No entanto, este mtodo tambm se pode aplicar a problemas de
minimizao. Para tal, no ser necessrio alterar o algoritmo Simplex, descrito anteriormente,
podendo aquele ser aplicando a problemas de minimizao, pois pode-se converter um problema
daquele tipo num problema de maximizao equivalente, da seguinte forma :
Z = c1 x1 + c2 x2 + + cn xn

Minimizar
Sujeito a

(x1, x2, , xn) X

equivalente a
Maximizar

Z = c1 x1 c2 x2 cn xn

Sujeito a

(x1, x2, , xn) X

Mtodo Simplex

Propriedades do quadro Simplex

41

7. Interpretao econmica das variveis folga (slack)


Uma varivel slack, corresponde quantidade de recurso no consumido (com coeficiente
+1), ou quantidade de recurso consumido alm do mnimo requerido (com coeficiente 1).
Considere-se a soluo ptima encontrada para o exemplo descrito em (5.1) :
X* = (310, 0, 190, 210, 0)

Z* = 4 400

{ b = (500, 100, 120) }

Estes valores significam o seguinte :


x1 (quantidade do kit A produzida) = 310
x2 (quantidade do kit B produzida) = 0
x3 (quantidade do kit C produzida) = 190
x4 (quantidade de kits do tipo A e B produzidos, alm do mnimo exigido) = 210
x5 (quantidade de horas que restam) = 120
Por outro lado,
zj = c1 x1j + c2 x2j + . . . + cm xmj
corresponde ao valor do rendimento que se deixa de ter pela activao unitria de cada uma das
actividades excludas custo de oportunidade.
cj rendimento directo.

8. Propriedades do quadro Simplex


Cada quadro contm uma matriz identidade de ordem m (Im).
Todas as componentes de b so positivas ( b 0 ).
zj cj negativo funo objectivo pode ser melhorada.
Mesmo valor de zj cj para diferentes j qualquer um pode ser utilizado (heurstica : escolher

o de menor ndice).
Existe zj cj negativo mas apenas h elementos no positivos na coluna pivot soluo no

limitada. Acontece, normalmente, quando o problema est mal formulado.


Varivel artificial na soluo ptima soluo inexistente (regio admissvel vazia).
Empate na escolha do elemento pivot qualquer um pode ser usado (conduz a solues

degeneradas).
zj cj nulo e xj VNB

ptimos alternativos. Se xj entrar na base, obtm-se a soluo

alternativa (tambm PE admissvel); portanto, qualquer soluo resultante da combinao


convexa daquelas solues, ser tambm soluo ptima.

Mtodo Simplex

42

Degenerescncia e entrada em ciclo (Tcnica da Perturbao)

9. Degenerescncia e entrada em ciclo (Tcnica da Perturbao)


Como a quantidade de SBA de um problema de PL finito, o algoritmo Simplex garante a
convergncia para a soluo ptima, desde que o valor da FO v sempre melhorando (em sentido
estrito) em cada iterao solues no degeneradas. Desta forma, a soluo ptima atingida ao
fim de um nmero finito de iteraes, uma vez que cada SBA do problema aparecer, quando muito,
apenas uma vez ao longo do processo.
No entanto, pode acontecer que, ao passar-se de uma SBA para outra, esta tenha associado um
valor da funo objectivo igual ao da anterior, podendo esta situao manter-se no decurso de uma
sucesso de iteraes, e at mesmo acontecer que, aps algumas iteraes, estar-se perante uma SBA
j anteriormente considerada. A aplicao do algoritmo Simplex, reproduzir periodicamente as
mesmas SB, mantendo-se constante o valor da FO, entrando-se em ciclo; nestas condies, a soluo
ptima nunca ser atingida.
O algoritmo Simplex apenas entra em ciclo em situao de degenerescncia. A degenerescncia
pode surgir logo na SBA inicial, ou aps a ocorrncia de empate no critrio de sada, mesmo quando a
SBA em presena no degenerada. Neste caso, dado que existe melhoria da FO, apesar de existirem
vrias variveis que podem sair da base, a nova SBA ser degenerada.
Geralmente, a entrada em ciclo depende do tipo de SBA degenerada em presena; tal s
possvel quando nesta existir mais do que uma varivel bsica nula.
Para casos destes, em que existe a possibilidade de entrada em ciclo, existem mtodos que
permitem eliminar a ambiguidade no critrio de sada, merc da determinao de uma nica varivel
de entrada, sendo o que est em causa a escolha correcta do vector a sair da base. Um desses
mtodos a Tcnica da Perturbao.

Tcnica da Perturbao.
Esta tcnica consiste em formular um novo problema, sem degenerescncia, em que o vector
formado

pelos

segundos

membros

das

restries,

so

obtidos

deslocando

ligeiramente

(perturbando) o mesmo vector do problema inicial.


Esta tcnica consiste nos seguintes passos :
Passo 1. Calcular

bi
x t = min
,
i a ik

a ik > 0

Se x t nico, ento o processo a seguir o normal, de acordo com o processo descrito no


algoritmo Simplex; neste caso no h lugar tcnica da perturbao.

Mtodo Simplex

Degenerescncia e entrada em ciclo (Tcnica da Perturbao)

43

Se, pelo contrrio, houver empate no critrio de sada, isto ,

bi
x t = min
,
i a ik

bq
bs
a ik > 0 =
=L=
a qr
a sr

passa-se ao passo seguinte.


Passo 2. Calcular

a ik > 0

a i1
min
i =s ,...,q a ik

para i correspondente aos vectores empatados. Se o mnimo desta expresso for nico, ento a
varivel associada quele valor sai da base, de acordo com o processo descrito.
Se, pelo contrrio, o empate ainda persiste, isto ,

a i1
min
,
i a ik

a q1
a s1
a ik > 0 =
=L=
a qr
a sr

passa-se ao passo seguinte.


Passo 3. Calcular

a ik > 0

a i2
min
i =s ,...,q a ik

para i correspondente aos vectores ainda empatados.


Se o mnimo desta expresso for nico, ento a varivel associada quele valor sai da
base, utilizando o mesmo processo.
Se, pelo contrrio, o empate ainda persistir, repetir o processo com
a ij
,
min
i
a ik

a ik > 0

para j = 3, 4, ..., m ,

havendo a garantia de existir desempate, pois j percorre o conjunto dos ndices dos vectores x1,
x2, ..., xm, e estes constituem uma matriz identidade.
Exemplo :

Considere-se o quadro seguinte, correspondente resoluo de um problema de maximizao.


XB

x1

x2

x3

x4

x5

x6

x7

2 m.

x1

1/4

x2

1/2

12

1/2

x3

zj cj

3/4

20

1/2

0 0

I 0 = i : min ,
= {i : min {0 , 0}} = {1, 2}
1 4 1 2

Mtodo Simplex

44

Degenerescncia e entrada em ciclo (Tcnica da Perturbao)

Como I0 no singular (situao de empate), ento passar ao Passo 2.

1 0

I 1 = i : min ,
= {i : min {4 , 0}} = {2}
1 4 1 2

coluna x 1

Como I1 singular, ento a varivel que sai na base a x2 (a 2 na base). Logo, o quadro a
passa a ter o seguinte aspecto :
XB

x1

x2

x3

x4

x5

x6

x7

2 m.

x1

1/2

x4

24

x3

zj cj

3/2

3/4 15/2

5/4 21/2

1
I 0 = i : min = {i : min {1}} = {3}
1

Como I0 singular, ento a varivel que sai na base a x3 (a 3 na base). Logo, o quadro a
passa a ter o seguinte aspecto :
XB

x1

x2

x3

x4

x5

x6

x7

2 m.

x1

1/2

3/4

15/2

3/4

x4

24

x6

zj cj

3/2

5/4

21/2

5/4

Como zj cj 0, j, a soluo actual ptima. Esta soluo a seguinte :

3
x * = , 0 , 0 , 1, 0 , 1, 0

com

z* =

5
.
4

Mtodo Simplex

Você também pode gostar