Você está na página 1de 15

Mtodo Simplex

V 1.1, V.Lobo, EN / ISEGI, 2008

Resoluo de PL
usando o mtodo
Simplex

Mtodo Simplex

Algoritmo para resolver problemas de programao


linear

George Dantzig, 1947

Muito utilizado
Facilmente

implementado como programa de


computador
Consegue resolver problemas com muitas variveis
(milhares)
Produz variveis auxiliares para anlise de sensibilidade
Convm saber resolver mo, para se compreender o
seu funcionamento.

Mtodo Simplex
V 1.1, V.Lobo, EN / ISEGI, 2008

Mais um problema de PL

Wyndor Glass Co.


3

oficinas com alguma capacidade sobrante

Oficina n1 Trabalhos em Alumnio


Oficina n2 Carpintaria
Oficina n3 Montagem final

propostas de novos produtos

1 - Portas de vidro com caixilho de alumnio


2 - Janelas grandes com caixilho de madeira

Que

dados preciso recolher para tomar uma


deciso ptima ?

Dados do problema

Quanta capacidade sobrante existe ?


Oficina

1 (alumnios)
Oficina 2 (madeiras)
Oficina 3 (montagem)

4 horas/semana
12 horas/semana
18 horas/semana

Quanto tempo demora o fabrico das peas ?


1

lote de portas 1h nos alumnios, 3 na montagem


1 lote de janelas 2h na carpintaria, 2 na montagem

Que lucro se consegue com as peas ?


1

lote de portas 3.000


1 lote de janelas 5.000

Mtodo Simplex
V 1.1, V.Lobo, EN / ISEGI, 2008

Formalizao

Variveis de deciso
N de lotes de portas
x2 - N de lotes de janelas
x1

Funo objectivo:
Z

=3x1+5x2

Restries
x 1

4
2x2 12
x 1, x 2, x 3 0

3x1+2x2 18

Resoluo grfica
x2 (janelas)

10

2
1
0

10
x1 (portas)

Mtodo Simplex
V 1.1, V.Lobo, EN / ISEGI, 2008

Alguns pontos a considerar

A soluo (caso exista) estar sempre na


intercepo de duas restries
Basta

procurar uma soluo nas intercepes

Para irmos de uma intercepo para outra,


basta seguirmos uma das restries
Devemos

seguir aquela que provoque maior variao


no valor da funo objectivo

Uma soluo inicial trivial considerar que as


variveis de deciso so todas nulas

Mtodo simplex: 1,2,3,4 e 5 !

1 Escrever as equaes numa forma cannica


(tabular)

2 Comear com uma soluo inicial vivel

3 Melhorar a soluo usando uma das


restries

4 Testar a optimalidade da soluo

5 Repetir os passos 3 e 4 at no ser possvel


melhorar mais

Mtodo Simplex
V 1.1, V.Lobo, EN / ISEGI, 2008

O sistema na forma cannica

Gostaramos de ter um sistema de


equaes

mais fcil trabalhar com equaes do que com inequaes

Vamos obter um sistema com:

(0)

n equaes ( restries e funo objectivo)


m incgnitas verdadeiras (variveis de deciso)

Se m>n

H vrias solues possveis. Podemos fixar m-n


variveis, e s ento as n restantes ficam definidas

O sistema na forma cannica (1)

Transformar inequaes em equaes


Acrescentar

uma varivel de folga nas restries:

B
Ax1 + x2 = B, x20
Variveis de folga
Ax1

Formam as variveis bsicas iniciais do simplex


Tm sempre coeficiente 1
Aparecem apenas numa das equaes de restrio
Ficamos com um problema aumentado, onde
temos as variveis de deciso e as variveis
bsicas
Se assumirmos que as variveis de deciso so 0,
ento as variveis de folga so iguais a B

Mtodo Simplex
V 1.1, V.Lobo, EN / ISEGI, 2008

O sistema na forma cannica (2)


Sistema original

Sistema aumentado

Max Z = C1x1+ C2x2+ C3x3


s.a.
A11x1+ A12x2+ A13x3 B1
A21x1+ A22x2+ A23x3 B2

Z- C1x1 - C2x2 - C3x3 +0s1+0s2 =0


A11x1+ A12x2+ A13x3 +1s1+0s2= B1
A21x1+ A22x2+ A23x3 +0s1+1s2= B2
x1,x2,x3 s1, s2 0

x1,x2,x3 0
Solues: (x1,x2,x3, Z)

Solues: (x1,x2,x3, s1, s2, Z)

Solues do sistema aumentado so tambm solues


do sistema original

Sistema aumentado tem sempre mais variveis que equaes,


logo posso forar os valores de algumas delas, obtendo ento
os valores das outras
O valor das variveis bsicas est directamente acessvel

O sistema na forma cannica (3)


Sistema aumentado
Z- C1x1 - C2x2 - C3x3 +0s1+0s2 =0
A11x1+ A12x2+ A13x3 +1s1+0s2= B1
A21x1+ A22x2+ A23x3 +0s1+1s2= B2
x1,x2,x3 s1, s2 0
Solues: (x1,x2,x3, s1, s2, Z)

Forma tabelar

V x1 x2 x3 s1 s2
Z

-C1 -C2 -C3 0

s1
s2

A11 A12 A13 1

B1

A21 A22 A23 0

B2

Coeficientes
Variveis bsicas de cada linha
(i.e., variveis no nulas)

Valores das
variveis
bsicas

Mtodo Simplex
V 1.1, V.Lobo, EN / ISEGI, 2008

No problema da Wyndor Glass


Sistema original

Sistema aumentado

Max Z = 3x1+ 5x2


s.a.
x1+
4
2x2 12
3x1+ 2x2 18

Z- 3x1 - 5x2
x1
+s1
2x2
+s2
3x1+ 2x2
+s3

=0
=4
= 12
= 18

Forma tabelar

V x1 x2 s1 s2 s3
Variveis
diferentes de 0

-3

-5

s1
s2

12

s3

18

Valores dessas
variveis

Soluo inicial, e significado da


tabela

A soluo inicial a trivial:


As

variveis de deciso so 0
As variveis de folga so iguais restrio
A funo objectivo 0

As variveis no bsicas da tabela so


nulas

As variveis bsicas tm o valor da ltima


coluna

Mtodo Simplex
V 1.1, V.Lobo, EN / ISEGI, 2008

Ideia geral para melhorar a soluo

Vamos trocar de variveis base

Vamos fazer crescer uma das variveis no


bsicas (que assim deixa de ser 0)
Vamos

escolher a que mais contribui para o lucro


Essa varivel passa a ser varivel base

Vamos sacrificar uma das velhas variveis


bsicas.
Vamos

escolher a varivel que menos dimiui com essa

entrada
Essa varivel deixa de ser base e passa a ser 0

Ideia geral para melhorar a soluo

Interpretao:
Estamos

a eliminar a folga (varivel bsica) de


uma das restries, aumentando uma varivel
de deciso

Passos para melhorar


Escolher

varivel a entrar e varivel a sair


Ajustar as equaes para que a varivel que
entra passe a ser varivel base
Ter coeficiente 1
S aparecer numa equao

Mtodo Simplex
V 1.1, V.Lobo, EN / ISEGI, 2008

Regras para escolher as novas


variveis base

Regra de entrada
Escolher

a varivel que na primeira linha tenha


o coeficiente negativo que em mdulo for
maior

Escolher xi : i=argmin -Ci , -Ci<0

Regra de sada
Escolher

a varivel base i que na sua linha


tiver menor razo Bi/Aik, com Aik > 0

Aik o coeficiente da varivel que vai entrar

No problema da Wyndor Glass

Varivel que
entra:
X2

Varivel que
sai:

V x1 x2 s1 s2 s3
Z

-3

-5

s1
s2

12

s3

18

S2

Mtodo Simplex
V 1.1, V.Lobo, EN / ISEGI, 2008

Ajuste para a forma cannica, por


condensao de Gauss

Fazer entrar/sair variveis no mais ajustar a


tabela para obedecer s condies das
variveis base

V x1 x2 s1 s2 s3

V x1 x2 s1 s2 s3

-3

-5

-3

5/2 0

30

s1
s2

12

s1
x2

1/2 0

s3

18

s3

-1

Tem que passar a ser 1

Tem que passar a ser 0

Teste de optimalidade

Verificar se ainda h algum coeficiente negativo


na funo objectivo

Se sim:
Repetir

o processo de escolha e ajuste

Se no
Temos

a soluo ptima, e sabemos o valor das


variveis de deciso e o lucro (todos na ltima
coluna)

10

Mtodo Simplex
V 1.1, V.Lobo, EN / ISEGI, 2008

No problema da Wyndor Glass


(2 iterao)

V x1 x2 s1 s2 s3
Z

-3

5/2 0

30

s1
x2

1/2 0

s3

-1

4/1

6/3

V x1 x2 s1 s2 s3
Z

3/2 1

s1
x2

1/3

1/2 0

x1

-1/3

-1/3

36
2
6

1/3 2

No problema da Wyndor Glass

Soluo:
Consegue-se

ter um lucro de 36, fabricando 6


lotes de janelas e 2 lotes de portas

V x1 x2 s1 s2 s3
Z

3/2 1

36

s1
x2

1/3 1/3 2

1/2 0

x1

-1/3

Lucro
Folga (em h) da oficina de alumnios

Lotes de janelas

1/3 2

Lotes de portas

11

Mtodo Simplex
V 1.1, V.Lobo, EN / ISEGI, 2008

No problema da Wyndor Glass

Tabela inicial
Soluo

X1=X2=0

x 1 x2 s 1 s 2 s 3

-3

-5

s1
s2

12

s3

18

V x1 x2 s1 s2 s3

1 Iterao
Soluo

X1=0 X2=6

-3

5/2 0

30

s1
x2

1/2 0

s3

-1

V x1 x2 s1 s2 s3

2 Iteraco
Soluo

X1=2 X2=6

3/2 1

s1
x2

1/3 1/3 2

36

1/2 0

x1

-1/3

1/3 2

Revendo: 1,2,3,4,5

1 Escrever a tabela
Introduzir

variveis de folga, que passam a


ser variveis bsicas da tabela

2 Escolher soluo inicial


Implcita

na escrita da tabela
Todas as variveis de deciso so nulas, e as
de folga so mximas

12

Mtodo Simplex
V 1.1, V.Lobo, EN / ISEGI, 2008

Revendo: 1,2,3,4,5

3 Melhorar
Escolher

varivel que entra (maior A)

Maior A em valor absoluto desde que seja negativo

Escolher

varivel que sai (menor B/A), e


consequentemente qual a equao da qual a nova
varivel base
Acertar a tabela

A nova varivel base tem que ter coeficiente 1 na sua linha, e


zero nas restantes condensao de Gauss

4 Testar optimalidade
Existem

mais A ?

5 Repetir se necessrio

Fluxograma para o Simplex


1) Escrever a tabela do
sistema aumentado, com as
variveis de folga

3.2) Escolher a varivel que


sai (varivel com menor B/A)

3.3) Acertar a tabela para a


forma cannica

2) Obter a soluo inicial,


onde as variveis de
deciso so zero.
3.1) Escolher a varivel que
entra (varivel com maior
coeficiente absoluto da 1
linha)

Ainda h
coeficientes negativos para
as variveis de deciso
na 1 linha ?

N
A soluo da tabela ptima !

13

Mtodo Simplex
V 1.1, V.Lobo, EN / ISEGI, 2008

Ponto da situao

Temos uma receita para resolver


problemas de qualquer tamanho

H casos particulares que veremos mais


tarde:
Empates

nas regras de entrada/sada


Ausncia de variveis de sada
Adaptao para problemas mais gerais
(minimizaes, problemas mistos, etc)

Resolver o modelo da Pisobom

Variveis de deciso:
X1
X2

Funo objectivo a maximizar:

Quantidade de angor (100 m)


Quantidade de caxemira (100 m)

Z = 40 X1 + 30 X2

Restries
3

X1 + 4 X2 12
7 X1 + 2 X2 14

(Mquina A)
(Mquina B)

14

Mtodo Simplex
V 1.1, V.Lobo, EN / ISEGI, 2008

Casos especiais

Empates na regra de entrada

Empates na regra de sada

Inexistncia de variveis para sair

15

Você também pode gostar