Método Simplex - sistemas.riopomba.ifsudestemg.edu.br · Método Simplex A ideia do método...

37
Método Simplex A ideia do método simplex consiste em caminhar pela fronteira do poliedro de um PPL, através de pontos extremos adjacentes com valores da função objetivo sempre melhores do que os valores anteriores. Max ou Min

Transcript of Método Simplex - sistemas.riopomba.ifsudestemg.edu.br · Método Simplex A ideia do método...

Método Simplex● A ideia do método simplex consiste em

caminhar pela fronteira do poliedro de um PPL, através de pontos extremos adjacentes com valores da função objetivo sempre melhores do que os valores anteriores.

● Max ou Min

● Considere o problema de PL

Max Z= 3x1 + 5x

2

s. a: 2x1 + 4x

2 <= 10

6x1 + x

2 <= 20

x1 – x

2 <= 30

x1, x

2 >= 0

Simplex para Maximização

● O problema na forma padrão

Max Z= 3x1 + 5x

2

s. a: 2x1 + 4x

2 + x

3 = 10

6x1 + x

2 +x

4 = 20

x1 – x

2 +x

5 = 30

x1, x

2 >= 0

● Pode-se visualizar uma solução formada pelas variáveis de folga.

● Se fizermos x1 e x

2 iguais a 0, teremos x

3= 10,

x4 = 20 e x

5 = 30

1 0 0 10 0 x

3 + 1 x

4 + 0 x

5 = 20

0 0 1 30

Max Z= 3x1 + 5x

2

Examinando a FO e a solução inicial x1 =0, x

2 =0 e z=0,

temos:Se x

1 entra na base, Z= 3. Se x

2 entra na base, Z=5.

Se o coeficiente de x1 ou x

2 fosse negativo, a entrada da

variável diminuiria o valor de z, de acordo com o seu coeficiente.

Enquanto a FO apresentar variáveis não básicas com coeficientes positivos, ela pode ser aumentada.

VB Z x1 x2 x3 x4 x5 const

1 -3 -5 0 0 0 0

x3 0 2 4 1 0 0 10

x4 0 6 1 0 1 0 20

x5 0 1 -1 0 0 1 30

SBF inicial = 0, com {0,0,10,20,30}

VB Z x1 x2 x3 x4 x5 const

1 -3 -5 0 0 0 0

x3 0 2 4 1 0 0 10/4 = 2,5

x4 0 6 1 0 1 0 20/1 = 20

x5 0 1 -1 0 0 1 30

Entra na base - a variável com maior coeficiente negativoSai da base – a variável que primeiro se anula com a entrada da variável escolhida

L2 = L2/4Cada uma das outras linhas:1) multiplicar os elementos da nova linha pivô pelo coeficiente da variável que entra da outra linha, com sinal trocado2) Somar termo a termo com os elementos da outra linhaL1=L1 + (5)L2

VB Z x1 x2 x3 x4 x5 const1 -3 -5 0 0 0 0

x2 0 0,5 1 0,25 0 0 2,5x4 0 6 1 0 1 0 20x5 0 1 -1 0 0 1 30

L1 1 -3 -5 0 0 0 0L2 0 2,5 5 1,25 0 0 12,5Nova linha

1 -0,5 0 1,25 0 0 12,5

VB Z x1 x2 x3 x4 x5 const

1 -0,5 0 1,25 0 0 12,5

x2 0 0,5 1 0,25 0 0 2,5

x4 0 6 1 0 1 0 20

x5 0 1 -1 0 0 1 30

L3=L3 + (-1)L2

VB Z x1 x2 x3 x4 x5 const1 -0,5 0 1,25 0 0 12,5

x2 0 0,5 1 0,25 0 0 2,5x4 0 6 1 0 1 0 20x5 0 1 -1 0 0 1 30

L3 0 6 1 0 1 0 20L2 0 -0,5 -1 -0,25 0 0 -2,5Nova linha

0 5,5 0 -0,25 1 0 17,5

VB Z x1 x2 x3 x4 x5 const

1 -0,5 0 1,25 0 0 12,5

x2 0 0,5 1 0,25 0 0 2,5

x4 0 6 1 0 1 0 20

x5 0 1 -1 0 0 1 30

L4=L4 + (1)L2

VB Z x1 x2 x3 x4 x5 const1 -0,5 0 1,25 0 0 12,5

x2 0 0,5 1 0,25 0 0 2,5x4 0 5,5 0 -0,25 1 0 17,5x5 0 1 -1 0 0 1 30

L4 0 1 -1 0 0 1 30L2 0 0,5 1 0,25 0 0 2,5Nova linha

0 1,5 0 0,25 0 1 32,5

VB Z x1 x2 x3 x4 x5 const

1 -0,5 0 1,25 0 0 12,5

x2 0 0,5 1 0,25 0 0 2,5

x4 0 5,5 0 -0,25 1 0 17,5

x5 0 1,5 0 0,25 0 1 32,5

VB Z x1 x2 x3 x4 x5 const

1 -0,5 0 1,25 0 0 12,5

x2 0 0,5 1 0,25 0 0 2,5

x4 0 5,5 0 -0,25 1 0 17,5

x5 0 1,5 0 0,25 0 1 32,5

SBF Z = 12,5, com {0, 2,5, 0, 17,5, 32,5}x1 ainda é negativo, ainda não é a melhor solução

VB Z x1 x2 x3 x4 x5 const

1 -0,5 0 1,25 0 0 12,5

x2 0 0,5 1 0,25 0 0 2,5 2,5/0,5 = 5

x4 0 5,5 0 -0,25 1 0 17,5 17,5/5,5=3,18

x5 0 1,5 0 0,25 0 1 32,5 32,5/1,5= 21,67

Entra na base x1 – menor coeficiente negativo

Sai da base x4, a primeira que se anula com a entrada de x

1

VB Z x1 x2 x3 x4 x5 const

1 -0,5 0 1,25 0 0 12,5

x2 0 0,5 1 0,25 0 0 2,5

x4 0 5,5 0 -0,25 1 0 17,5

x5 0 1,5 0 0,25 0 1 32,5

L3 = L3/5,5

VB Z x1 x2 x3 x4 x5 const

1 -0,5 0 1,25 0 0 12,5

x2 0 0,5 1 0,25 0 0 2,5

x1 0 1 0 -0,045 0,18 0 3,18

x5 0 1,5 0 0,25 0 1 32,5

L1 = L1 + (0,5L3)

VB Z x1 x2 x3 x4 x5 const

1 -0,5 0 1,25 0 0 12,5

x2 0 0,5 1 0,25 0 0 2,5

x1 0 1 0 -0,045 0,18 0 3,18

x5 0 1,5 0 0,25 0 1 32,5

L1 1 -0,5 0 1,25 0 0 12,5L3 0 0,5 0 -0,022 0,09 0 1,59Nova linha

1 0 0 1,227 0,09 0 14,09

VB Z x1 x2 x3 x4 x5 const

1 0 0 1,227 0,09 0 14,09

x2 0 0,5 1 0,25 0 0 2,5

x1 0 1 0 -0,045 0,18 0 3,18

x5 0 1,5 0 0,25 0 1 32,5

L2 = L2 + (-0,5L3)

VB Z x1 x2 x3 x4 x5 const

1 0 0 1,227 0,09 0 14,09

x2 0 0,5 1 0,25 0 0 2,5

x1 0 1 0 -0,045 0,18 0 3,18

x5 0 1,5 0 0,25 0 1 32,5

L2 0 0,5 1 0,25 0 0 2,5L3 0 -0,5 0 0,022 -0,09 0 -1,59Nova linha

0 0 1 0,272 -0,09 0 0,91

VB Z x1 x2 x3 x4 x5 const

1 0 0 1,227 0,09 0 14,09

x2 0 0 1 0,272 -0,09 0 0,91

x1 0 1 0 -0,045 0,18 0 3,18

x5 0 1,5 0 0,25 0 1 32,5

L4 = L4+ (-1,5)L3

VB Z x1 x2 x3 x4 x5 const

1 0 0 1,227 0,09 0 14,09

x2 0 0 1 0,272 -0,09 0 0,91

x1 0 1 0 -0,045 0,18 0 3,18

x5 0 1,5 0 0,25 0 1 32,5

L232,5 0 1,5 0 0,25 0 1 2,5L3 0 -1,5 0 0,067 -0,27 0 -4,77Nova linha

0 0 0 0,317 -0,27 1 27,73

VB Z x1 x2 x3 x4 x5 const

1 0 0 1,227 0,09 0 14,09

x2 0 0 1 0,272 -0,09 0 0,91

x1 0 1 0 -0,045 0,18 0 3,18

x5 0 0 0 0,317 -0,27 1 27,73

SBF = 14,09, com {3,18; 0,91; 0; 0; 27,73}

Esta é a solução ótimaOs valores dos coeficientes de x

3 e x

4 são positivos. Qualquer uma delas que entrar na

base diminuirá o valor de Z, contrariando o objetivo

VB Z x1 x2 x3 x4 x5 const

1 0 0 1,227 0,09 0 14,09

x2 0 0 1 0,272 -0,09 0 0,91

x1 0 1 0 -0,045 0,18 0 3,18

x5 0 0 0 0,317 -0,27 1 27,73

Simplex para Minimização● Considere o problema

de PL Min Z= 4x

1 – 2x

2

s. a: 2x1 + x

2 <= 10

x1 – x

2 <= 8

x1,x

2 >= 0

Max (-Z)= -4x1 + 2x

2

s. a: 2x1 + x

2 <= 10

x1 – x

2 <= 8

x1,x

2 >= 0

Max (-Z)= -4x1 + 2x

2

s. a: 2x1 + x

2 + x

3 = 10

x1 - x

2 +x

4 = 8

x1,x

2 >= 0

● O problema na forma padrão

Min Z= 4x1 – 2x

2

s. a: 2x1 + x

2 + x

3 = 10

x1 - x

2 +x

4 = 8

x1,x

2 >= 0

Exemplo

VB Z x1 x2 x3 x4 const

-1 4 -2 0 0 0

x3 0 2 1 1 0 10

x4 0 1 -1 0 1 8

VB Z x1 x2 x3 x4 const

1 -4 2 0 0 0

x3 0 2 1 1 0 10

x4 0 1 -1 0 1 8

Modo 1) Max (-Z)= -4x1 + 2x

2

Entra na base a variável com coeficiente mais negativo

Modo 2) Min Z= 4x1 – 2x

2

Entra na base a variável de maior ceficiente positivo

Restrições do tipo = e >=

● O problema na forma padrão

Min Z= 10x1 + 6x

2

s. a: 4x1 + 2x

2 >= 24

x1 < = 8

x1 + 2x

2 = 12

x1,x

2 >= 0

Min Z= 10x1 + 6x

2

s. a: 4x1 + 2x

2 - x

3 = 24

x1 + x

4 = 8

x1 + 2x

2 = 12

x1,x

2 >= 0

Inserir variável artificial

Método das Penalidades (Big M)● Dado um PPL na forma padrão, ara cada uma

das equações que não tem uma variávl de folga, deve-se adicionar uma variável artificial a

i

do lado esquerdo da equação.● Como estas variáveis não fazem parte do PPL

original, o método atribui uma penalização M (M--> inf) às variáveis artificiais, subtraindo o produto Ma

i da FO (max) ou adicionando (min)

● Eliminar as variávis artificiais da FO

SBF = Z= 36M,com {0,0,0, 8,24,12}

SBF z= 6M + 60, com {6, 0, 0, 2, 0, 6}

x1 > x2

x2 > x3

Zx

1

x4

x2

SBF Z= 64, com {4,4,0, 4,0,0}

As variáveis artificiais assumem valor nulo na solução ótima

Método das duas fases● Também utiliza variáveis artificiais● Inserir, na forma padrão, uma variável artificial

em cada uma das restrições que não possui variável de folga.

● Fase 1 – encontrar SBF inicial para o problema original. Criase uma FO de min, representando a soma de todas as variáveis artificiais.

● A solução ótima encontrada via simplex para o problema adaptado é usada como SBFinicial da fase 2.

● Fase 2 – encontrar uma solução ótima para o problema original. Elimina-se as variáveis artificiais.

Fase 2)

Casos especiais – Múltiplas Soluções

max Z= 8x1 + 4x

2

s. a: 4x1 + 2x

2 <= 16

x1 + x

2 <= 6

x1,x

2 >= 0

● O problema na forma padrão

Max Z= 8x1 + 4x

2

s. a: 4x1 + 2x

2 + x

3 = 16

x1 + x

2 +x

4 = 6

x1,x

2 ,x

3,x

4 >= 0

A FO é 2x a restrição 1 - A reta da FO e a reta da primeira restrição são paralelas. Como Essa restrição é ativa, tem-se um problema com infinitas soluções ótimasCombinação Linear

Resultado - Múltiplas Soluções

Solução Ilimitada● Ocorre quando a variável que entra na base

não possui em sua coluna nenhum coeficiente positivo.

Não existe solução ótima● Pode-se identificar, pelos métodos Big M e

duas fases.● Um caso com solução infactível, terá na

solução final do Big M ou na fase 1 do duas fases, pelo menos uma variável artificial com coeficiente positivo.

Solução Degenerada● Uma solução é degenerada se há pelo menos uma

solução básica viável com uma variável básica com valor igual a 0. Se há, essa solução é uma solução básica viável degenerada

Max Z= 5x1 + 3x

2

sa: 4x1 + 2x

2 <= 12

4x1 + x

2 <= 10

x1 + x

2 <= 4

x1 , x

2 >= 0

VB z x1 x2 x3 x4 x5 const1 -5 -3 0 0 0 0

x3 0 4 2 1 0 0 12x4 0 4 1 0 1 0 10x5 0 1 1 0 0 1 4

VB z x1 x2 x3 x4 x5 const1 0 -1,75 0 1,25 0 12,5

x3 0 0 1 1 -1 0 2 2/1=2x1 0 1 0,25 0 0,25 0 2,5 2,5/0,25=10x5 0 0 0,75 0 -0,25 1 1,5 1,5/0,75=2

VB z x1 x2 x3 x4 x5 const1 0 0 0 0,67 2,33 16

x3 0 0 0 1 -0,67 -1,33 0x1 0 1 0 0 0,33 -0,33 2x2 0 0 1 0 -0,33 1,33 2

z x1 x2 x3 x4 x5 constVB 1 0 0 1,75 -0,5 0 16x2 0 0 1 1 -1 0 2x1 0 1 0 -0,25 0,5 0 2

x5 0 0 0 -0,75 0,5 1 0