1 Pesquisa Operacional: Método Simplex – Duas Fases.

38

Click here to load reader

Transcript of 1 Pesquisa Operacional: Método Simplex – Duas Fases.

Page 1: 1 Pesquisa Operacional: Método Simplex – Duas Fases.

1

Pesquisa Operacional:

Método Simplex – Duas Fases

Page 2: 1 Pesquisa Operacional: Método Simplex – Duas Fases.

Minimizar Z = 3x1 + 2x2

Restrições:2x1 + x2 ≥ 10x1 + 5x2 ≥ 15x1 ≥ 0x2 ≥ 0

Exemplo 1: Minimização da função objetivo

Pode-se transformar em um problema de maximização da seguinte forma:

Page 3: 1 Pesquisa Operacional: Método Simplex – Duas Fases.

Passo 1: Transformar para maximização e introduzir as variáveis de folga.Multiplicar a função objetivo por (-1) para utilizar o método Simplex como foi efetuado anteriormente na maximização.

Max(-z) = Min(z)Max (-z) = -3x1 - 2x2

Restrições:2x1 + x2 ≥ 10x1 + 5x2 ≥ 15x1 ≥ 0 e

x2 ≥ 0

Minimizar Z = 3x1 + 2x2

Restrições:2x1 + x2 ≥ 10x1 + 5x2 ≥ 15x1 ≥ 0x2 ≥ 0

Page 4: 1 Pesquisa Operacional: Método Simplex – Duas Fases.

Passo 1: inserir as variáveis de folga.

Max(-z) = Min(z)Max (-z) = -3x1 - 2x2

Restrições:2x1 + x2 ≥ 10x1 + 5x2 ≥ 15x1 ≥ 0 e x2 ≥ 0

2x1 + x2 + f1 = 10x1 + 5x2 + f2 = 15

2x1 + x2 + 1f1 + 0f2 = 10x1 + 5x2 + 0f1 + 1f2 = 15

Função objetivo:-z + 3x1 + 2x2 + 0f1 + 0f2 =

0

Page 5: 1 Pesquisa Operacional: Método Simplex – Duas Fases.

Passo 2: Montagem do quadro de cálculos.

BASE x1 x2 f1 f2 b

f1 2 1 1 0 10

f2 1 5 0 1 15

-z 3 2 0 0 0

2x1 + x2 + 1f1 + 0f2 = 10x1 + 5x2 + 0f1 + 1f2 = 15

Função objetivo:-z + 3x1 + 2x2 + 0f1 + 0f2 =

0

Page 6: 1 Pesquisa Operacional: Método Simplex – Duas Fases.

Passo 3: Escolha da solução básica viável

inicial.

– Variáveis não-básicas:

– Variáveis básicas:

– Função objetivo:

0xx 21

15

10

2

1

f

f

0 z

Page 7: 1 Pesquisa Operacional: Método Simplex – Duas Fases.

1ª IteraçãoPasso 4: Variável que deve entrar na base.

Qual é o produto que mais contribui para o lucro?

(maior valor positivo (-z) = x1

BASE x1 x2 f1 f2 b

f1 2 1 1 0 10

f2 1 5 0 1 15

-z 3 2 0 0 0

X1Maior valor positivo

Page 8: 1 Pesquisa Operacional: Método Simplex – Duas Fases.

Passo 5: Variável que deve sair da base.

Divisões:1ª linha:2ª linha:

O menor quociente ocorreu na 1ª linha. Logo, a variável que deve sair é : f1

52/10 151/15

BASE x1 x2 f1 f2 b

f1 2 1 1 0 10

f2 1 5 0 1 15

-z 3 2 0 0 0

Pivô (cruzamento) = 2

Page 9: 1 Pesquisa Operacional: Método Simplex – Duas Fases.

Passo 6: Transformação da matriz.

Deverão ser realizadas as operações com as linhas da matriz, de forma que a coluna de X1 venha a se tornar um vetor identidade, com o elemento 1 na 1ª linha.

Entra X1

no lugar de f1

Page 10: 1 Pesquisa Operacional: Método Simplex – Duas Fases.

BASE x1 x2 f1 f2 b

f1 2 1 1 0 10

f2 1 5 0 1 15

-z 3 2 0 0 0

Passo 6: Transformação da matriz.

BASE x1 x2 f1 f2 b

x1 1 1/2 1/2 0 5

f2 0 -9/2 1/2 -1 -10

-z 0 1/2 -3/2 0 -15

Matriz de cálculoanterior

L2 L2 – L1

L1 L1 / 2

L3 L3 - 3L3

Page 11: 1 Pesquisa Operacional: Método Simplex – Duas Fases.

Nova solução:

– Variáveis não-básicas:

– Variáveis básicas:

– Função objetivo:

021 xf

10

5

2

1

f

x

15 z

Page 12: 1 Pesquisa Operacional: Método Simplex – Duas Fases.

2ª IteraçãoPasso 4: Variável que deve entrar na base.

Qual é o produto que mais contribui para o lucro?

(maior valor positivo (-z) = x2)

X2Maior valor positivo

BASE x1 x2 f1 f2 b

x1 1 1/2 1/2 0 5

f2 0 -9/2 1/2 -1 -10

-z 0 1/2 -3/2 0 -15

Page 13: 1 Pesquisa Operacional: Método Simplex – Duas Fases.

Passo 5: Variável que deve sair da base.

Divisões:1ª linha:2ª linha:

O menor quociente ocorreu na 2ª linha. Logo, a variável que deve sair é : f2

10)2/1/(5 22,29/20)2/9/(10

Pivô (cruzamento) = -9/2

BASE x1 x2 f1 f2 b

x1 1 1/2 1/2 0 5

f2 0 -9/2 1/2 -1 -10

-z 0 1/2 -3/2 0 -15

Page 14: 1 Pesquisa Operacional: Método Simplex – Duas Fases.

Passo 6: Transformação da matriz.

Deverão ser realizadas as operações com as linhas da matriz, de forma que a coluna de X2 venha a se tornar um vetor identidade, com o elemento 1 na 2ª linha.

Entra X2

no lugar de f2

Page 15: 1 Pesquisa Operacional: Método Simplex – Duas Fases.

BASE x1 x2 f1 f2 b

x1 1 1/2 1/2 0 5

f2 0 -9/2 1/2 -1 -10

-z 0 1/2 -3/2 0 -15

Passo 6: Transformação da matriz.

BASE x1 x2 f1 f2 b

x1 1 0 5/9 -1/9 3,88

x2 0 1 -1/9 2/9 2,22

-z 0 0 -1,44 -0,11

-16,11

Matriz de cálculoanterior

L2 – 2L2/9

L1 L1 - L2/2

L3 L3 – L2/2

Page 16: 1 Pesquisa Operacional: Método Simplex – Duas Fases.

Assim, obtemos a solução ótima para:

x1 = 3,89 f1 = 0

x2 = 2,22 f2 = 0

-z = -16,11 z = 16,11

BASE x1 x2 f1 f2 b

x1 1 0 5/9 -1/9 3,88

x2 0 1 -1/9 2/9 2,22

-z 0 0 -1,44 -0,11

-16,11

Page 17: 1 Pesquisa Operacional: Método Simplex – Duas Fases.

Quando maximizamos ou minimizamos uma função objetivo temos:

Maximizar L = x1 + 2x2

Restrições:3x1 + 4x2 ≤ 245x1 + 2x2 ≤ 20x1 ≥ 0x2 ≥ 0

Minimizar Z = 3x1 + 2x2

Restrições:2x1 + x2 ≥ 10x1 + 5x2 ≥ 15x1 ≥ 0x2 ≥ 0

≤ delimita o maior valor possível para

as restrições

≥ delimita o menor valor possível para

as restrições

Page 18: 1 Pesquisa Operacional: Método Simplex – Duas Fases.

O método Simples Duas Fases resolve problemas das restrições conforme demonstrado abaixo:

Maximizar L = x1 + 2x2

Restrições:3x1 + 4x2 ≥ 245x1 + 2x2 = 20x1 ≥ 0x2 ≥ 0

Minimizar Z = 3x1 + 2x2

Restrições:2x1 + x2 = 10x1 + 5x2 ≤ 15x1 ≥ 0x2 ≥ 0

Solução não existe Solução não existe

Page 19: 1 Pesquisa Operacional: Método Simplex – Duas Fases.

19

Método Simplex – Duas Fases

O Método Simplex utiliza uma solução inicial viável para começar o processo iterativo, trabalhando sempre dentro da região viável.

Nos casos apresentados de maximização até o presente momento, a solução para xi = 0, para i = 1, ..., n era uma solução viável, já que todas as restrições apresentadas foram do tipo (≤).

Quando as restrições são do tipo (=) ou (≥), esta solução não existe.

Page 20: 1 Pesquisa Operacional: Método Simplex – Duas Fases.

Seja o exemplo abaixo:

minimizar z = 10 x1 + 4 x2 + 5 x3

sujeito a: 8 x1 + 3 x2 + 4 x3 104 x1 + 3 x2 8x1, x2, x3 0

Como temos uma restrição do tipo (), a variável de folga deve ter coeficiente negativo, tendo o significado de uma variável de excesso.

Page 21: 1 Pesquisa Operacional: Método Simplex – Duas Fases.

O problema transformado é:

minimizar z = 10 x1 + 4 x2 + 5 x3

sujeito a: 8 x1 + 3 x2 + 4 x3 - f1 = 10

4 x1 + 3 x2 + f2 = 8

x1, x2, x3, f1, f2 0

onde f1 é uma variável de excesso e f2 é uma variável de folga.

Page 22: 1 Pesquisa Operacional: Método Simplex – Duas Fases.

Pelo processo de solução anterior, a variável de excesso (f1) passaria a ter valor negativo na solução inicial (-10), o que não é permitido. Assim, a solução x1 = x2 = x3 = 0 é inviável.

É necessário então encontrar uma solução viável para que o método Simplex possa ser iniciado.

Page 23: 1 Pesquisa Operacional: Método Simplex – Duas Fases.

A forma de se resolver isto é inventando novas variáveis, também chamadas de variáveis artificiais, e representadas por zi.

Uma variável artificial será colocada em cada restrição do modelo, ou seja:

8 x1 + 3 x2 + 4 x3 - f1 + z1 = 10

4 x1 + 3 x2 + f2 + z2 = 8

x1, x2, x3, f1, f2, z1, z2 0

Percebe-se que o problema com as restrições acima não é o mesmo problema, a não ser que todas as variáveis zi sejam iguais

a zero.

Page 24: 1 Pesquisa Operacional: Método Simplex – Duas Fases.

Desta forma, podemos resolver o problema em duas fases:

Na primeira fase, substituímos a função objetivo original por uma função objetivo auxiliar da seguinte forma:

Soma-se as variáveis das duas restrições:

8 x1 + 3 x2 + 4 x3 - f1 + z1 = 104 x1 + 3 x2 + 0 x3 + f2 + z2 = 8

12 x1 + 6 x2 + 4 x3 - f1 + f2 + z1 + z2 = 18

Representa-se as restrições em função de z1 e z2

12 x1 + 6 x2 + 4 x3 - f1 + f2 - 18 = - z1 - z2

portanto, a função objetivo auxiliar será:

zaux = - z1 - z2 = 12 x1 + 6 x2 + 4 x3 - f1 + f2 - 18

Page 25: 1 Pesquisa Operacional: Método Simplex – Duas Fases.

Nesse momento, aplicamos o método Simplex de forma a maximizar a função objetivo auxiliar, com as restrições contendo as variáveis auxiliares. A função objetivo auxiliar será maximizada quando todas as variáveis zi forem iguais a zero, já que não podem conter valores negativos.

A primeira fase do problema então consiste na maximização da função objetivo auxiliar, que fornecerá uma solução viável para o problema original.

A segunda fase consiste em resolver o problema original tomando como solução inicial os valores obtidos pela primeira fase para as variáveis xi e fi.

Page 26: 1 Pesquisa Operacional: Método Simplex – Duas Fases.

Resolvendo o problema:

minimizar z = 10 x1 + 4 x2 + 5 x3

sujeito a: 8 x1 + 3 x2 + 4 x3 - f1 + z1 = 10

4 x1 + 3 x2 + f2 + z2 = 8

x1, x2, x3, f1, f2 0

zaux = - z1 - z2 = 12 x1 + 6 x2 + 4 x3 - f1 + f2 - 18

z’ = -z = 10 x1 + 4 x2 + 5 x3 - 0f1 + 0f2+ 0z1 + 0z2

Função objetivo:

Função objetivo auxiliar:

Page 27: 1 Pesquisa Operacional: Método Simplex – Duas Fases.

Para resolver o problema, monta-se o quadro de forma semelhante à sistemática anterior, colocando-se a função objetivo artificial na última linha.

Base x1 x2 x3 f1 f2 z1 z2 b

z1 8 3 4 -1 0 1 0 10

z2 4 3 0 0 1 0 1 8

z' = -z

10 4 5 0 0 0 0 0

zaux -12 -6 -4 1 -1 0 0 -18

Como o problema é de minimização e vamos maximizar, é necessário multiplicar a função objetivo auxiliar por (-1).

Aplica-se Simplex usando como função objetivo a última linha.

Page 28: 1 Pesquisa Operacional: Método Simplex – Duas Fases.

Quando a solução ótima for atingida, dois casos podem ocorrer:

zaux = 0: neste caso foi obtida uma solução básica do problema original e o processo de solução deve continuar, desprezando-se as variáveis artificiais e os elementos da última linha. É o início da segunda fase do processo.

zaux 0: neste caso o problema original não tem solução viável, o que significa que as restrições devem ser inconsistentes.

Page 29: 1 Pesquisa Operacional: Método Simplex – Duas Fases.

Fase 1 - Primeira iteração

Variável a entrar na base: x1 (coluna com maior valor negativo na última linha)

Variável a sair da base: z1 (o quociente 10/8 é o menor quociente entre a última coluna e a coluna da variável x1, que vai entrar na base)

Base x1 x2 x3 f1 f2 z1 z2 b

z1 8 3 4 -1 0 1 0 10

z2 4 3 0 0 1 0 1 8

z' = -z 10 4 5 0 0 0 0 0

zaux -12 -6 -4 1 -1 0 0 -18

Pivô = 8

x1

1

0

0

0

Montagem da matriz identidade

Page 30: 1 Pesquisa Operacional: Método Simplex – Duas Fases.

Base x1 x2 x3 f1 f2 z1 z2 b

x1 1 3/8 1/2 -1/8 0 1/8 0 5/4

z2 0 3/6 -2 1/2 1 -1/2 1 3

z' = -z

0 1/4 0 5/4 0 -5/4 0 -12,5

zaux 0 -3/6 2 -1/2 -1 3/2 0 -3

L1 L1 / 8

L4 L4 + 12 L1

L2 L2 - 4 L1

L3 L3 - 10 L1

Base x1 x2 x3 f1 f2 z1 z2 b

z1 8 3 4 -1 0 1 0 10

z2 4 3 0 0 1 0 1 8

z' = -z

10 4 5 0 0 0 0 0

zaux -12 -6 -4 1 -1 0 0 -18

Matriz de cálculoanterior

Page 31: 1 Pesquisa Operacional: Método Simplex – Duas Fases.

Fase 1 – Segunda iteração

Variável a entrar na base: x2 (coluna com maior valor negativo na última linha)

Variável a sair da base: z2 (o quociente 3/(3/2) é o menor quociente entre a última coluna e a coluna da variável x2, que vai entrar na base) Pivô = 3/6

X2

0

1

0

0

Montagem da matriz identidade

Base x1 x2 x3 f1 f2 z1 z2 b

x1 1 3/8 1/2 -1/8 0 1/8 0 5/4

z2 0 3/6 -2 1/2 1 -1/2 1 3

z' = -z

0 1/4 0 5/4 0 -5/4 0 -12,5

zaux 0 -3/6 2 -1/2 -1 3/2 0 -3

Page 32: 1 Pesquisa Operacional: Método Simplex – Duas Fases.

Base x1 x2 x3 f1 f2 z1 z2 b

x1 1 0 1 -1/4 -1/4 1/4 -1/4 1/2

x2 0 1 -4/3 1/3 2/3 -1/3 2/3 2

z' = -z 0 0 1/3 7/6 -1/6 -7/6 1/6 -13

zaux 0 0 0 0 1 1 1 0

Base x1 x2 x3 f1 f2 z1 z2 b

x1 1 3/8 1/2 -1/8 0 1/8 0 5/4

z2 0 3/6 -2 1/2 1 -1/2 1 3

z' = -z

0 1/4 0 5/4 0 -5/4 0 -12,5

zaux 0 -3/6 2 -1/2 -1 3/2 0 -3

Matriz de cálculoanterior

L2 2 L2 / 3

L1 L1 - 3 L2 / 8

L3 L3 - L2 / 4

L4 L4 + 3 L2 / 2

Como na última linha o valor da função objetivo artificial é zero, a primeira fase terminou e a solução encontrada é a solução básica inicial para a segunda fase.

Page 33: 1 Pesquisa Operacional: Método Simplex – Duas Fases.

Removendo a última linha e as colunas referentes às variáveis artificiais, o quadro se torna:

Base x1 x2 x3 f1 f2 z1 z2 b

x1 1 0 1 -1/4 -1/4 1/4 -1/4 1/2

x2 0 1 -4/3 1/3 2/3 -1/3 2/3 2

z' = -z 0 0 1/3 7/6 -1/6 -7/6 1/6 -13

zaux 0 0 0 0 1 1 1 0

Base x1 x2 x3 f1 f2 b

x1 1 0 1 -1/4 -1/4 1/2

x2 0 1 -4/3 1/3 2/3 2

z' = -z 0 0 1/3 7/6 -1/6 -13

Retirarzaux, z1 e z2

Matriz para 2ª fase

Page 34: 1 Pesquisa Operacional: Método Simplex – Duas Fases.

Fase 2 - Primeira iteração

Variável a entrar na base: f2 (coluna com maior valor negativo na última linha)

Variável a sair da base: x2 (o quociente 2/(2/3) é o menor quociente entre a última coluna e a coluna da variável f2, que vai entrar na base)

Pivô = 2/3

f2

0

1

0

Montagem da matriz identidade

Base x1 x2 x3 f1 f2 b

x1 1 0 1 -1/4 -1/4 1/2

x2 0 1 -4/3 1/3 2/3 2

z' = -z 0 0 1/3 7/6 -1/6 -13

Page 35: 1 Pesquisa Operacional: Método Simplex – Duas Fases.

Base x1 x2 x3 f1 f2 b

x1 1 0 1 -1/4 -1/4 1/2

x2 0 1 -4/3 1/3 2/3 2

z' = -z

0 0 1/3 7/6 -1/6 -13

Matriz de cálculoanterior

Base x1 x2 x3 f1 f2 b

x1 1 3/8 1/2 -1/8 0 5/4

f2 0 3/6 -2 1/2 1 3

z' = -z

0 1/4 0 5/4 0 -12,5L1 L1 + L2 / 4L2 3 L2 / 2L3 L3 + L2 / 6

Todos os valores da última linha (função z-transformada) são positivos ou nulos, concluímos que a solução encontrada é ótima.

Page 36: 1 Pesquisa Operacional: Método Simplex – Duas Fases.

x1 = 1,25x2 = 0z = -z' = 12,5

Base x1 x2 x3 f1 f2 b

x1 1 3/8 1/2 -1/8 0 5/4

f2 0 3/6 -2 1/2 1 3

z' = -z 0 1/4 0 5/4 0 -12,5

Resposta ao problema:

minimizar z = 10 x1 + 4 x2 + 5 x3

sujeito a: 8 x1 + 3 x2 + 4 x3 ≥ 10

4 x1 + 3 x2 ≤ 8

x1, x2, x3, f1, f2 0

Page 37: 1 Pesquisa Operacional: Método Simplex – Duas Fases.

37

Memória de aula

1. Formulação de um problema utilizando modelos matemáticos.

2. Funcionamento do método simplex.3. Maximizar uma função usando o método simplex.4. Minimizar uma função usando o método simplex.5. Funcionamento do método simplex duas Fases.6. Resolver lista de exercícios (lista 4) disponível no

site.

Page 38: 1 Pesquisa Operacional: Método Simplex – Duas Fases.

38

Bibliografia indicada

LISBOA, Erico Fagundes Anicet. Rio de Janeiro, 2002. versão digital disponível na Internet (http://www.ericolisboa.eng.br).

ANDRADE, Eduardo Leopoldino de. Introdução à Pesquisa Operacional: métodos e modelos para a análise de decisão. Rio de Janeiro: Editora LTC, 2005.

LACHTERMACHER, Gerson. Pesquisa Operacional na Tomada de Decisões: modelagem em Excel. Rio de Janeiro: Editora Elsevier, 2004.