Aula 07: Análise de sensibilidade (2) Otimização Linear e Inteira Túlio A. M. Toffolo http://www.toffolo.com.br BCC464/PCC174 2018/2 Departamento de Computação UFOP
Previously Aulas anteriores: Dualidade Análise de Sensibilidade (ou Interpretação Econômica) Revisão do Método de Duas Fases Hoje: Exercícios Análise de sensibilidade Exemplos 2 // 12 29 Túlio Toffolo Otimização Linear e Inteira Aula 07: Análise de sensibilidade (Parte 2)
Exercício (conferir resultados)
Exercício Exercício 1 Resolva o PL abaixo e seu dual utilizando o método Simplex: min. x 1 + x 2 s.a. 2x 1 + 5x 2 10 5x 1 + 3x 2 4 x 1, x 2 0 Utilize o gurobi para conferir o tableau ótimo do Simplex 4 // 12 29 Túlio Toffolo Otimização Linear e Inteira Aula 07: Análise de sensibilidade (Parte 2)
Revisão de Conceitos
Transformação Primal x Dual Restrição = qq. Variável MIN MAX Variável qq. = Restrição 6 // 12 29 Túlio Toffolo Otimização Linear e Inteira Aula 07: Análise de sensibilidade (Parte 2)
Formas canônica e padrão Forma Canônica Forma Padrão Primal Min z = cx sujeito a: Ax b x 0 Min z = cx sujeito a: Ax = b x 0 Dual Max w = ub sujeito a: ua c u 0 Max w = ub sujeito a: ua c u R!7/ / 127 Túlio Toffolo Otimização Linear e Inteira Aula 09: Revisão
Formas canônica e padrão Forma Canônica Forma Padrão Primal Min z = cx sujeito a: Ax b x 0 Min z = cx sujeito a: Ax = b x 0 Dual Max w = ub sujeito a: ua c u 0 Max w = ub sujeito a: ua c u R!8/ / 127 Túlio Toffolo Otimização Linear e Inteira Aula 09: Revisão
Dualidade Relações entre o primal e o dual: Ótimo Ilimitado Inviável Ótimo Possível Nunca Nunca Ilimitado Nunca Nunca Possível Inviável Nunca Possível Possível 9 // 12 29 Túlio Toffolo Otimização Linear e Inteira Aula 07: Análise de sensibilidade (Parte 2)
Shadow Price Também conhecido como custo dual O shadow price de uma restrição é o valor que a variável dual referente à restrição assume. Indica o ganho na função objetivo por unidade aumentada no RHS da restrição. O ganho é válido dentro dos limites estabelecidos pelo RHS da restrição. 10 // 12 29 Túlio Toffolo Otimização Linear e Inteira Aula 07: Análise de sensibilidade (Parte 2)
Custo Reduzido 0: 5x 2 + 10x 5 + 10x 6 = 280 z = 280 1: 2x 2 + x 4 + 2x 5 8x 6 = 24 x 4 = 24 2: 2x 2 + x 3 + 2x 5 4x 6 = 8 x 3 = 8 O custo reduzido de uma variável é o custo (coeficiente) dela na 3: x 1 + 1, 25x 2 + 0, 5x 5 + 1, 5x 6 = 4 x 1 = 4 linha da função objetivo no tableau do Simplex 4: x 2 + x 7 = 5 x 7 = 5 O custo reduzido é também o shadow price das restrições de não-negatividade 11 // 12 29 Túlio Toffolo Otimização Linear e Inteira Aula 07: Análise de sensibilidade (Parte 2)
Variáveis de Folga 0: 5x 2 + 10x 5 + 10x 6 = 280 z = 280 1: 2x 2 + x 4 + 2x 5 8x 6 = 24 x 4 = 24 2: 2x 2 + x 3 + 2x 5 4x 6 = 8 x 3 = 8 As variáveis de folga indicam restrições ativas e inativas 3: x 1 + 1, 25x 2 + 0, 5x 5 + 1, 5x 6 = 4 x 1 = 4 4: x 2 + x 7 = 5 x 7 = 5 As restrições ativas (com variáveis de folga iguais a zero) são as únicas limitando o lucro. 12 // 12 29 Túlio Toffolo Otimização Linear e Inteira Aula 07: Análise de sensibilidade (Parte 2)
Allowable increase/decrease Indica o aumento/redução permitidos em coeficientes da função objetivo ou no RHS de uma restrição sem que a base deixe de ser ótima! O cálculo é feito tomando como base o custo reduzido (de variáveis primais e duais). Regra geral: Pequenas modificações nos dados geralmente não alteram o conjunto de variáveis básicas. 13 // 12 29 Túlio Toffolo Otimização Linear e Inteira Aula 07: Análise de sensibilidade (Parte 2)
Shadow price e limites
Exercício da aula passada: PL Primal PL Dual min. 3x 1 +2, 5x 2 max. 32u 1 +36u 2 s.a. 8x 1 + 4x 2 32 s.a. 8u 1 + 6u 2 apple 3 6x 1 + 6x 2 36 4u 1 + 6u 2 apple 2, 5 x 1 0 u 1 0 x 2 0 u 2 0 15 // 12 29 Túlio Toffolo Otimização Linear e Inteira Aula 07: Análise de sensibilidade (Parte 2)
Shadow price Suponha que a formulação está na forma padrão e que nós vamos alterar o RHS da primeira restrição: 8x 1 + 4x 2 x 2 = 32 8x 1 + 4x 2 x 2 = 31 Resolver o problema todo de novo dá muito trabalho Podemos calcular o impacto usando o shadow price 16 // 12 29 Túlio Toffolo Otimização Linear e Inteira Aula 07: Análise de sensibilidade (Parte 2)
Shadow price Reduzir o RHS em uma unidade equivale a permitir que a variável de folga assuma valor -1 no problema original O que ocorre com a função objetivo quando a variável de folga assume este valor? Para descobrir olhamos para a base ótima! (ou alternativamente, para o valor dual) 17 // 12 29 Túlio Toffolo Otimização Linear e Inteira Aula 07: Análise de sensibilidade (Parte 2)
Resolvendo o PL Primal Tableau ótimo do problema primal: Base X1 X2 X3 X4 Z 0 0 1 / 8 1 / 3-16 X1 1 0-1 / 4 1 / 6 2 X2 0 1 1 / 4-1 / 3 4 Note que as variáveis de folga são não básicas: Mas se fizermos diminui em 1 / 3 x 4 = 1 x 3 = x 4 = 0 então o valor da função objetivo 18 // 12 29 Túlio Toffolo Otimização Linear e Inteira Aula 07: Análise de sensibilidade (Parte 2)
Resolvendo o PL Primal Logo, onde encontrar o shadow price? No tableau ótimo do problema (para uma solução básica): Base X1 X2 X3 X4 Z 0 0 1 / 8 1 / 3-16 X1 1 0-1 / 4 1 / 6 2 X2 0 1 1 / 4-1 / 3 4 19 // 12 29 Túlio Toffolo Otimização Linear e Inteira Aula 07: Análise de sensibilidade (Parte 2)
Relação entre shadow price, custo reduzido e o problema Lembrem que a cada iteração do simplex nós transformamos o tableau por meio de operações de soma/subtração de múltiplos das outras linhas Logo, a forma final da função objetivo pode ser obtida subtraindo múltiplos das restrições originais do problema! Como as variáveis de folga aparecem só uma vez (e com coeficiente 1) em uma restrição Podemos dizer que: c n +i = 0 π i c n +i = π i = y i portanto: Os custo reduzidos são Iguais aos multiplicadores!!! 20 // 12 29 Túlio Toffolo Otimização Linear e Inteira Aula 07: Análise de sensibilidade (Parte 2)
Relação entre shadow price, custo reduzido e o problema Os multiplicadores podem ser utilizados para obtermos os coeficientes do tableau ótimo rapidamente 21 // 12 29 Túlio Toffolo Otimização Linear e Inteira Aula 07: Análise de sensibilidade (Parte 2)
Variações nos coeficientes da função objetivo Quanto podemos mudar os coeficientes da função objetivo sem modificar os valores das variáveis de uma solução ótima? Podemos fazer a mudança uma de cada vez Mas até quanto podemos mudar? 22 // 12 29 Túlio Toffolo Otimização Linear e Inteira Aula 07: Análise de sensibilidade (Parte 2)
Variações nos coeficientes da função objetivo Quanto podemos mudar os coeficientes da função objetivo sem modificar os valores das variáveis de uma solução ótima? Faremos a mudança uma de cada vez, mantendo os coeficientes do RHS como constantes Até quando podemos variar? Base X1 X2 X3 X4 Z 0 0 1 / 8 - Δ 1 / 3-16 X1 1 0-1 / 4 1 / 6 2 X2 0 1 1 / 4-1 / 3 4 23 // 12 29 Túlio Toffolo Otimização Linear e Inteira Aula 07: Análise de sensibilidade (Parte 2)
Variações no RHS das restrições Até quanto podemos variar o RHS e o shadow price continua válido??? Simples: enquanto a solução básica for viável ;) É simples porque não alteramos os custos reduzidos Base X1 X2 X3 X4 Z 0 0 1 / 8 1 / 3-16 X1 1 0-1 / 4 1 / 6 2 X2 0 1 1 / 4-1 / 3 4 24 // 12 29 Túlio Toffolo Otimização Linear e Inteira Aula 07: Análise de sensibilidade (Parte 2)
Exemplo: Exemplo: ganha-se 4 unidades por aumento na segunda restrição do problema abaixo, já que x 2 = 4 no seu dual Minimizar: 32u 1 +36u 2 Sujeito a: 8u 1 + 6u 2 apple 3 4u 1 + 6u 2 apple 2, 5 u 1 0 u 2 0 Até que valor de RHS este shadow price permanece válido? 25 // 12 29 Túlio Toffolo Otimização Linear e Inteira Aula 07: Análise de sensibilidade (Parte 2)
Exemplo: Sabemos que a função objetivo melhora 4 unidades por unidade aumentada (valor de delta) na restrição 4u 1 + 6u 2 2,5 + Δb 2 Na forma padrão: 4u 1 + 6u 2 + u 4 = 2,5 + Δb 2 Isto equivale a reduzir o valor da variável u 4 = u 4 Δb 2 u 4, isto é, fazer: Temos, portanto, que fazer estas substituições no tableau da solução ótima Isto é: 26 // 12 29 Túlio Toffolo Otimização Linear e Inteira Aula 07: Análise de sensibilidade (Parte 2)
Exemplo: Tableau ótimo do problema: Base U1 U2 U3 U4 Z 0 0 2 4-16 U1 1 0 1 / 4-1 / 4 1 / 8 U2 0 1-1 / 6 1 / 3 1 / 3 u 1 + 1 4 Δb 2 = 1 8 u 2 1 3 Δb 2 = 1 3 logo, Δb 2 1 2 27 // 12 29 Túlio Toffolo Otimização Linear e Inteira Aula 07: Análise de sensibilidade (Parte 2)
Exercício
Observando o modelo e o tableau ótimo, responda: min. s.a. 3x 1 +2, 5x 2 8x 1 + 4x 2 32 6x 1 + 6x 2 36 x 1 0 x 2 0 Base X1 X2 X3 X4 Z 0 0 1 / 8 1 / 3-16 X1 1 0-1 / 4 1 / 6 2 X2 0 1 1 / 4-1 / 3 4 Qual o ganho de se reduzir em uma unidade o RHS da restrição 1? E da restrição 2? Até qual limite podemos flexibilizar estas restrições mantendo o shadow price válido? 29 // 12 29 Túlio Toffolo Otimização Linear e Inteira Aula 07: Análise de sensibilidade (Parte 2)
/ 12 Perguntas?