Prof. Ricardo Villarroel Dávalos, Dr. Eng. E-mail: rdavalos@unisul.br GSCI - GSIG 2 Programação Linear Prof. Ricardo Villarroel Dávalos, Dr. Eng. E-mail: rdavalos@unisul.br Palhoça, Outubro de 2006
2.4 Modelagem do Problema
Exemplo de Roteirização
2.5 Análise de Sensibilidade A “Análise de sensibilidade” (Sensivity Analysis) é a interpretação dos resultados; Mediante ela podem ser realizadas modificações de soluções; Utilizada para realizar planejamento dos modelos aplicados e apoiar decisões gerencias; A seguir será aplicado esta análise numa pequena empresa.
2.6 Método Simplex O Método Simplex é um procedimento matricial para resolver um modelo de Programação Linear; Antes de aplicar o algoritmo é definido o problema conforme o modelo canônico ou original (MINIMIZAR); Para as restrições “<=“ são consideradas variáveis de folga e o algoritmo é apresentado a seguir; Para as restrições “>=“ e/ou “=“ são consideradas variáveis de folga e artificiais. O algoritmo é utilizado duas vezes.
2.6.1 Algoritmo Simplificado i) Localize o número mais negativo da última linha do quadro Simplex (coluna de trabalho); ii) Forme quocientes de divisão da última coluna por cada número positivo da coluna de trabalho. Designe por “pivô” o elemento da coluna de trabalho que conduz ao menor quociente ; iii) Use operações elementares sobre as linhas a fim de converter o elemento pivô em 1 e, em seguida reduzir a zero todos os outros elementos da coluna de trabalho; Iv) Substitua a variável “x” existente na linha pivô, pela variável “x” da coluna de trabalho; v) Repita os passos (i) a (iv) até a inexistência de números negativos na última linha; vi) A solução ótima é obtida atribuindo-se a cada variável da primeira coluna o valor da linha.
2.6.2 Exemplo 1 Resolva através do Método Simplex (manualmente) o Problema de Programação Linear a seguir: Maximizar Z = x1 + 9x2 + x3 Sujeita a: x1 + 2x2 + 3x3 <= 9 3x1 + 2x2 + 2x3 <= 15 com: x1 >= 0 x2 >= 0 x3 >= 0
2.6.2 Exemplo 1 A forma canônica ou original: Minimizar Z = - x1 - 9x2 - x3 Sujeita a: x1 + 2x2 + 3x3 + x4 = 9 3x1 + 2x2 + 2x3 + x5 = 15 com: x1 >= 0 x2 >= 0 x3 >= 0 x4 >= 0 x5 >= 0 x4 e x5 Variáveis de folga
2.6.2 Exemplo 1 VB X1 X2 X3 X4 X5 bi 1 2 3 9 15 Z -1 -9
2.6.2 Exemplo 1 VB X1 X2 X3 X4 X5 bi 1/2 1 3/2 9/2 2 -1 6 Z 7/2 25/2 9/2 2 -1 6 Z 7/2 25/2 81/2 Z = 81/2 X1 = 0 X2 = 9/2 X3 = 0 X4 = 0 X5 = 6
2.6.3 Exemplo 2 Resolva através do Método Simplex (manualmente) o Problema de Programação Linear a seguir: Maximizar Z = 2x1 + x2 Sujeita a: -10x1 + 15x2 <= 45 -x1 + 5x2 <= 20 x1 + x2 <= 10 x1 <= 8 com: x1 e x2 >= 0
2.6.3 Exemplo 2 A forma canônica ou original: Minimizar Z = 2x1 + x2 Minimizar Z = 2x1 + x2 Sujeita a: -10x1 + 15x2 + x4 = 45 -x1 + 5x2 + x5 = 20 x1 + x2 + x6 = 10 x1 + x7 = 8 com: x1 e x2 >= 0 x4 ; x5 ; x6 e x7 Variáveis de folga
2.6.3 Exemplo 2 VB X1 X2 X3 X4 X5 X6 bi -10 15 1 45 -1 5 20 2 10 8 Z 45 -1 5 20 2 10 8 Z -2
2.6.3 Exemplo 2 VB X1 X2 X3 X4 X5 X6 bi 15 1 10 125 5 28 -1 2 8 Z 16
2.6.3 Exemplo 2 VB X1 X2 X3 X4 X5 X6 bi 1 -15 25 95 -5 6 18 -1 2 8 Z
2.6.3 Exemplo 2 Zmax = 18 X1 = 8 X2 = 2 X3 = 95 X4 = 18 X5 = 0 X6 = 0
2.6.4 Programa em Delphi aplicando o Simplex
2.6.5 Programação Inteira, Binária e Mista Programação Inteira: Resultados inteiros (Lindo GIN X1); Programação Binária: Resultados binários 0/1 (Lindo INT X1); Programação Mista: Resultados inteiros e binários (Lindo GIN X1 e INT X2).
2.6.5 Programação Inteira, Binária e Mixta
2.7 Problemas especiais de Programação Linear Para as restrições “>=“ e/ou “=“ são consideradas variáveis de folga e artificiais. O algoritmo é utilizado duas vezes. Para as restrições “<=“ são consideradas variáveis de folga e o algoritmo é apresentado a seguir; Antes de aplicar o algoritmo é definido o problema conforme o modelo canônico ou original (MINIMIZAR) e é resolvido em duas fases.
2.7.1 Exemplo 1 Resolva através do Método Simplex (manualmente) o Problema de Programação Linear a seguir: Maximizar Z = 6x1 - x2 Sujeita a: 4x1 + x2 <= 21 2x1 + 3x2 >= 13 -x1 + x2 = 1 com: x1 >= 0 x2 >= 0
2.7.1 Exemplo 1 A forma canônica ou original: Minimizar Z = -6x1 + x2 Sujeita a: 4x1 + x2 + x3 = 21 2x1 + 3x2 - x4 + x1a = 13 -x1 + x2 + x2a = 1 com: x1 >= 0 x2 >= 0 Variáveis de Folga x3 >= 0 x4 >= 0 Variáveis Artificiais x1a >= 0 x2a >= 0
2.7.1 Exemplo 1 – Fase W VB X1 X2 X3 X4 X1a X2a bi 4 1 21 2 3 -1 13 Z 21 2 3 -1 13 Z -6 W -4 -14
2.7.1 Exemplo 1 – Fase W VB X1 X2 X3 X4 X1a X2a bi 5 1 -1 20 -3 10 Z 1 -1 20 -3 10 Z -5 W 4 -10
2.7.1 Exemplo 1 – Fase W VB X1 X2 X3 X4 X1a X2a bi 1 -1 2 10 -1/5 1/5 1 -1 2 10 -1/5 1/5 -3/5 2/5 3 Z -4 9 W
2.7.1 Exemplo 1 – Fase Z VB X1 X2 X3 X4 bi 1 10 -1/5 2 3 Z -1 9
2.7.1 Exemplo 1 – Fase Z VB X1 X2 X3 X4 bi 1 10 1/5 4 5 Z 19
2.7.1 Exemplo 1 Solução: Z = 19 X1 = 4 X2 = 5 X3 = 0 X4 = 10
2.7.1 Exemplo 1 – Lindo
2.8 Aplicativo “Solver” Empresa de Decoração Lancaster Maximizar Z = 90p + 75u Sujeita a: p + u <= 12000 (Restrição devido à maquina de estampagem) 3p +2u <= 30000 (Restrição devido à maquina de empacotamento) p <= 10000 (Restrição devido à maquina de aplicação de adesivo) p >= 3000 (mínimo papel autocolante produzido) u >= 3000 (mínimo papel sem cola produzido) com: p >= 0 u >= 0 p --> Metros de papel autocolante u --> Metros de papel sem cola Solução: p = 6000 u = 6000 Z = 99000
2.8 Aplicativo “Solver”
2.8 Aplicativo “Solver”