Análise de sensibilidade Prof.: Eduardo Uchoa http://www.logis.uff.br/~uchoa/poi 1
Análise de Sensibilidade Uma vez que já se tenha resolvido um PL, existem técnicas para avaliar como pequenas alterações nesse PL podem alterar a solução ótima, sem precisar resolver o novo PL do zero. Por exemplo: Alterações no lado direito das restrições Alterações nos custos das variáveis Adição de novas variáveis ao PL
Análise de Sensibilidade Quando se resolve um PL, além da solução primal ótima x*, também se obtém a solução do dual ótima y*. Essas duas soluções geram outros dados que podem ser úteis: A folga da restrição i: O custo reduzido da variável j: n * * = i i ij j j= 1 s b a x m * j = j ij i= 1 c c a y * i O custo reduzido é a folga do dual. 3
Tela de um resolvedor Análise de sensibilidade 4
Tela de um resolvedor Análise de sensibilidade Uma restrição de igualdade sempre tem folga =0. Sua variável dual não tem limitação de sinal. 5
Tela de um resolvedor Análise de sensibilidade Uma restrição de sempre tem folga 0. Uma restrição de sempre tem folga 0 (folga negativa excesso positivo). 6
Tela de um resolvedor Análise de sensibilidade Uma desigualdade no formato canônico tem variável dual 0. Uma desigualdade contrária ao formato canônico tem variável dual 0. 7
Tela de um resolvedor Análise de sensibilidade O teorema das folgas complementares é sempre respeitado. 8
Alterando o lado direito das restrições 9
Propriedades das variáveis duais Teorema Se um PL possui solução ótima não-degenerada x* com valor z* e solução ótima dual y*, então existe um ε>0 tal que para todo vetor T=(t 1,t,...,t m ), com t i ε, a solução ótima do novo PL em que T é somado ao vetor de lados direitos b tem valor: m z + * * i i= 1 y t i 10
Interpretação do teorema As variáveis duais indicam o que acontece com a função objetivo quando se altera pouco o lado direito de uma ou mais restrições. As variáveis duais são o gradiente da função objetivo em relação ao lado direito das restrições. 11
Interpretação do teorema A partir de certo ponto, o aumento/diminuição do lado direito de uma restrição deixa de influenciar o valor da solução ótima. 1
x al 14 1 10 Max z = 4,0 x mad + 6,0 x al S. a 1,5 x mad + 4,0 x al 4 (y corte ) 3,0 x mad + 1,5 x al 1 (y montagem ) 1,0 x mad + 1,0 x al 8 (y acabamento ) 8 6 4 4 6 8 10 1 14 16 a x mad 13
x al 14 1 10 8 6 Max z = 4,0 x mad + 6,0 x al S. a 1,5 x mad + 4,0 x al 4 (y corte ) 3,0 x mad + 1,5 x al 1 (y montagem ) 1,0 x mad + 1,0 x al 8 (y acabamento ) Solução Primal Ótima: x mad = 3,; x al = 4,8 z = 41,6 4 4 6 8 10 1 14 16 a x mad 14
x al 14 1 10 8 6 Max z = 4,0 x mad + 6,0 x al S. a 1,5 x mad + 4,0 x al 4 (y corte ) 3,0 x mad + 1,5 x al 1 (y montagem ) 1,0 x mad + 1,0 x al 8 (y acabamento ) Solução Dual Ótima: y corte = 0,8; y montagem = 0; y acabamento =,8 w = 41,6 4 4 6 8 10 1 14 16 a x mad 15
Interpretação da solução dual A solução dual nos diz que: Se aumentarmos a disponibilidade do setor de corte de 4h para 5h, teremos uma acréscimo de até 0,8 no lucro da empresa. Não haverá aumento no lucro da empresa se aumentarmos o número de horas disponíveis no setor de montagem Teremos um aumento no lucro de no máximo,8 se a disponibilidade do setor de acabamento tiver 1h a mais 16
x al 14 1 10 8 Max z = 4,0 x mad + 6,0 x al S. a 1,5 x mad + 4,0 x al 4 (y corte ) 3,0 x mad + 1,5 x al 1 (y montagem ) 1,0 x mad + 1,0 x al 8 (y acabamento ) Aumentando a disponibilidade de 8h para 9h no setor de acabamento 6 4 4 6 8 10 1 14 16 a x mad 17
x al 14 1 10 8 Max z = 4,0 x mad + 6,0 x al S. a 1,5 x mad + 4,0 x al 4 (y corte ) 3,0 x mad + 1,5 x al 1 (y montagem ) 1,0 x mad + 1,0 x al 8 (y acabamento ) Aumentando a disponibilidade de 8h para 9h no setor de acabamento 6 4 4 6 8 10 1 14 16 a x mad 18
x al 14 1 10 8 6 Max z = 4,0 x mad + 6,0 x al S. a 1,5 x mad + 4,0 x al 4 (y corte ) 3,0 x mad + 1,5 x al 1 (y montagem ) 1,0 x mad + 1,0 x al 9 (y acabamento ) Nova Solução Primal Ótima: x mad = 4,8; x al = 4, z = 44,4 = 41,6 +,8 4 4 6 8 10 1 14 16 a x mad 19
x al 14 1 10 8 6 Max z = 4,0 x mad + 6,0 x al S. a 1,5 x mad + 4,0 x al 4 (y corte ) 3,0 x mad + 1,5 x al 1 (y montagem ) 1,0 x mad + 1,0 x al 9 (y acabamento ) Nova Solução Dual Ótima: y corte = 0,8; y montagem = 0; y acabamento =,8 w = 44,4 4 4 6 8 10 1 14 16 a x mad 0
x al 14 1 10 8 Max z = 4,0 x mad + 6,0 x al S. a 1,5 x mad + 4,0 x al 4 (y corte ) 3,0 x mad + 1,5 x al 1 (y montagem ) 1,0 x mad + 1,0 x al 9 (y acabamento ) Aumentando a disponibilidade de 9h para 10h no setor de acabamento 6 4 4 6 8 10 1 14 16 a x mad 1
x al 14 1 10 8 Max z = 4,0 x mad + 6,0 x al S. a 1,5 x mad + 4,0 x al 4 (y corte ) 3,0 x mad + 1,5 x al 1 (y montagem ) 1,0 x mad + 1,0 x al 9 (y acabamento ) Aumentando a disponibilidade de 9h para 10h no setor de acabamento 6 4 4 6 8 10 1 14 16 a x mad
x al 14 1 10 8 6 Max z = 4,0 x mad + 6,0 x al S. a 1,5 x mad + 4,0 x al 4 (y corte ) 3,0 x mad + 1,5 x al 1 (y montagem ) 1,0 x mad + 1,0 x al 10 (y acabamento ) Nova Solução Primal Ótima: x mad = 4,9; x al = 4,15 z = 44,61 = 44,4 + 0,1 < 44,4+,8 4 4 6 8 10 1 14 16 a x mad 3
x al 14 1 10 8 6 4 Max z = 4,0 x mad + 6,0 x al S. a 1,5 x mad + 4,0 x al 4 (y corte ) 3,0 x mad + 1,5 x al 1 (y montagem ) 1,0 x mad + 1,0 x al 10 (y acabamento ) Nova Solução Primal Ótima: x mad = 4,9; x al = 4,15 z = 44,61 = 44,4 + 0,1 < 44,4+,8 A partir de um certo ponto o aumento de horas de acabamento deixa de fazer efeito porque a solução ótima passa a ser bloqueada pelas horas de montagem. 4 6 8 10 1 14 16 a x mad 4
x al 14 1 10 8 6 Max z = 4,0 x mad + 6,0 x al S. a 1,5 x mad + 4,0 x al 4 (y corte ) 3,0 x mad + 1,5 x al 1 (y montagem ) 1,0 x mad + 1,0 x al 10 (y acabamento ) Nova Solução Dual Ótima: y corte = 1,3; y montagem = 0,718; y acabamento = 0 w = 44,61 4 4 6 8 10 1 14 16 a x mad 5
x al 14 1 10 8 6 Max z = 4,0 x mad + 6,0 x al S. a 1,5 x mad + 4,0 x al 4 (y corte ) 3,0 x mad + 1,5 x al 1 (y montagem ) 1,0 x mad + 1,0 x al 8 (y acabamento ) Voltando ao problema original, agora vamos diminuir a disponibilidade do setor de corte em 0,5h e aumentar a do acabamento em 0,5h, simultaneamente 4 4 6 8 10 1 14 16 a x mad 6
x al 14 1 10 8 6 Max z = 4,0 x mad + 6,0 x al S. a 1,5 x mad + 4,0 x al 4 (y corte ) 3,0 x mad + 1,5 x al 1 (y montagem ) 1,0 x mad + 1,0 x al 8 (y acabamento ) Voltando ao problema original, agora vamos diminuir a disponibilidade do setor de corte em 0,5h e aumentar a do acabamento em 0,5h, simultaneamente 4 4 6 8 10 1 14 16 a x mad 7
x al 14 1 10 8 6 Max z = 4,0 x mad + 6,0 x al S. a 1,5 x mad + 4,0 x al 3,5 (y corte ) 3,0 x mad + 1,5 x al 1 (y montagem ) 1,0 x mad + 1,0 x al 8,5 (y acabamento ) Voltando ao problema original, agora vamos diminuir a disponibilidade do setor de corte em 0,5h e aumentar a do acabamento em 0,5h, simultaneamente 4 4 6 8 10 1 14 16 a x mad 8
x al 14 1 10 8 6 Max z = 4,0 x mad + 6,0 x al S. a 1,5 x mad + 4,0 x al 3,5 (y corte ) 3,0 x mad + 1,5 x al 1 (y montagem ) 1,0 x mad + 1,0 x al 8,5 (y acabamento ) Nova Solução Primal Ótima: x mad = 4,; x al = 4,3 z = 4,6 = 41,6 0,5*0,8 + 0,5*,8 4 4 6 8 10 1 14 16 a x mad 9
x al 14 1 10 8 6 Max z = 4,0 x mad + 6,0 x al S. a 1,5 x mad + 4,0 x al 3,5 (y corte ) 3,0 x mad + 1,5 x al 1 (y montagem ) 1,0 x mad + 1,0 x al 8,5 (y acabamento ) Nova Solução Dual Ótima: y corte = 0,8; y montagem = 0; y acabamento =,8 w = 4,6 4 4 6 8 10 1 14 16 a x mad 30
Alterando o custo das variáveis 31
Em princípio podemos aplicar os resultados já conhecidos ao problema dual Teorema Se um PL possui solução dual ótima não-degenerada y* com valor z* e solução ótima primal x*, então existe um ε>0 tal que para todo vetor T=(t 1,t,...,t n ), com t j ε, a solução ótima do novo PL em que T é somado ao vetor de custos c tem valor: z n * + * j j= 1 x t j 3
Interpretação do teorema Esse teorema indica que uma pequena alteração no custo de uma variável tem efeito proporcional ao valor dessa variável na solução ótima atual (algo quase óbvio). Para avaliar melhor o que acontece ao se mudar o custo das variáveis não-básicas (que costumam ser a maioria) usamos os custos reduzidos. 33
Usando os custos reduzidos Imagine que resolvemos o seguinte PL pelo Simplex maximizar z = 4,0 x 1 + 6,0 x Sujeito a 1,5 x 1 + 4,0 x 4 3,0 x 1 + 1,5 x 1 1,0 x 1 + 1,0 x 8 x 1, x 0 34
Os valores na linha z do dicionário final fornecem os custos reduzidos das variáveis não-básicas (as básicas tem custo red. zero) 4 3 x = x3 + x5 5 5 5 1 3 39 x = x + x 5 5 10 16 8 x1 = + x3 x5 5 5 5 08 4 14 z = x x 5 5 5 4 3 5 3 5 35
Os custos reduzidos das variáveis de folga/excesso nos fornecem as variáveis duais das restrições correspondentes maximizar z = 4,0 x 1 + 6,0 x Sujeito a 1,5 x 1 + 4,0 x + x 3 = 4 3,0 x 1 + 1,5 x + x 4 = 1 1,0 x 1 + 1,0 x + x 5 = 8 x 1, x 0 1 c3 = 4 / 5 = 0 [ y1 y y 3] 0 y1 = 4 / 5 0 0 c4 = 0 = 0 [ y1 y y 3] 1 y = 0 0 0 c5 = 14 / 5 = 0 [ y1 y y 3] 0 y3 = 14 / 5 1 36
Um dicionário é ótimo se o custo reduzido de todas as variáveis é desfavorável ( 0 para maximização, 0 para minimização) 4 3 x = x3 + x5 5 5 5 1 3 39 x = x + x 5 5 10 16 8 x1 = + x3 x5 5 5 5 08 4 14 z = x x 5 5 5 4 3 5 3 5 37
Alterações no custo de uma variável nãobásica mudam diretamente o seu custo reduzido. 4 3 x = x3 + x5 5 5 5 1 3 39 x = x + x 5 5 10 16 8 x1 = + x3 x5 5 5 5 08 4 14 z = x x 5 5 5 4 3 5 3 5 38
Suponha que o custo de x5 aumenta de 0 para (digamos que a hora sobrando possa ser vendida) 4 3 x = x3 + x5 5 5 5 1 3 39 x = x + x 5 5 10 16 8 x1 = + x3 x5 5 5 5 08 4 4 z = x3 x5 5 5 5 4 3 5 A solução atual continua sendo ótima 39
Suponha que o custo de x5 aumenta de 0 para 4 4 3 x = x3 + x5 5 5 5 1 3 39 x = x + x 5 5 10 16 8 x1 = + x3 x5 5 5 5 08 4 6 z = x3 + x5 5 5 5 4 3 5 A solução atual não é mais ótima! ótima. Fazer iterações do simplex a partir desse ponto para achar o novo ótimo. 40
Avaliando o efeito de novas variáveis pelo custo reduzido 41
Exemplo Uma fábrica produz 50 cadeiras de um único tipo por semana. A produção não pode ser aumentada porque o suprimento de matéria-prima (madeira e tecido) são limitados. 50 lâminas/semana 75 metros/semana 4
Exemplo Para aumentar o lucro, a fábrica considera diversificar seu mix de produção. Quais outros modelos valem a pena serem produzidos? 43
Dados 150 500 400 00 1 4 3 1 1 1 1 44
Programa Linear Completo max 150 x 1 + 500 x + 400 x 3 + 00 x 4 1 x 1 + 4 x + 3 x 3 + 1 x 4 1 x 1 + 1 x + 1 x 3 + x 4 + x 5 + x 6 = 50 = 75 45
O mix atual representa a solução ótima do problema sem as variáveis x, x 3 e x 4 max 150 x 1 + 500 x + 400 x 3 + 00 x 4 1 x 1 + 4 x + 3 x 3 + 1 x 4 + x 5 = 50 π 1 = 150 x 3 1 x 1 + 1 x + 1 + x 4 + x 6 = 75 π = 0 Solução atual = ( 50, 0, 0, 0, 0, 5 ) Lucro atual = R$ 7500,00 46
Interpretação das variáveis duais max 150 x 1 + 500 x + 400 x 3 + 00 x 4 1 x 1 + 4 x + 3 x 3 + 1 x 4 + x 5 = 50 π 1 = 150 1 x 1 + 1 x + 1 x 3 + x 4 + x 6 = 75 π = 0 Com o mix atual, um aumento ou redução no suprimento de madeira afeta o lucro em R$ 150,00 por unidade. 47
Interpretação das variáveis duais max 150 x 1 + 500 x + 400 x 3 + 00 x 4 1 x 1 + 4 x + 3 x 3 + 1 x 4 + x 5 = 50 π 1 = 150 1 x 1 + 1 x + 1 x 3 + x 4 + x 6 = 75 π = 0 No mix atual existe uma sobra de tecido. Uma redução nesse suprimento (até um certo ponto ) não altera o lucro. 48
Cálculo do custo reduzido das variáveis que estão fora do mix atual max 150 x 1 + 500 x + 400 x 3 + 00 x 4 1 x 1 + 4 x + 3 x 3 + 1 x 4 + x 5 = 50 π 1 = 150 1 x 1 + 1 x + 1 x 3 + x 4 + x 6 = 75 π = 0 c =? c 3 =? c 4 =? 49
Cálculo do custo reduzido das variáveis que estão fora do mix atual max 150 x 1 + 500 x + 400 x 3 + 00 x 4 1 x 1 + 4 x + 3 + 1 x 4 x 3 + x 5 = 50 π 1 = 150 1 x 1 + 1 x + 1 x 3 + x 4 + x 6 = 75 π = 0 c = -100 c 3 =? c = 500 [ 150 0 ] 4 1 c 4 =? 50
Cálculo do custo reduzido das variáveis que estão fora do mix atual max 150 x 1 + 500 x + 400 x 3 + 00 x 4 1 x 1 + 4 x + 3 x 3 + 1 x 4 + x 5 = 50 π 1 = 150 1 x 1 + 1 x + 1 x 3 + x 4 + x 6 = 75 π = 0 c = -100 c 3 = -50 c 3 = 400 [ 150 0 ] 3 1 c 4 =? 51
Cálculo do custo reduzido das variáveis que estão fora do mix atual max 150 x 1 + 500 x + 400 x 3 + 00 x 4 1 x 1 + 4 x + 3 x 3 + 1 x 4 + x 5 = 50 π 1 = 150 1 x 1 + 1 x + 1 x 3 + x 4 + x 6 = 75 π = 0 c = -100 c 3 = -50 c 4 = 00 [ 150 0 ] 1 c 4 = 50 5
Cálculo do custo reduzido das variáveis que estão fora do mix atual max 150 x 1 + 500 x + 400 x 3 + 00 x 4 1 x 1 + 4 x + 3 x 3 + 1 x 4 + x 5 = 50 π 1 = 150 1 x 1 + 1 x + 1 x 3 + x 4 + x 6 = 75 π = 0 c = -100 c 3 = -50 c 4 = 50 Só o modelo 4 aumentaria o lucro 53
Incluindo essa variável no modelo, temos uma nova solução max 150 x 1 + 500 x + 400 x 3 + 00 x 4 1 x 1 + 4 x + 3 x 3 + 1 x 4 + x 5 = 50 π 1 = 100 1 x 1 + 1 x + 1 x 3 + x 4 + x 6 = 75 π = 50 Nova solução = ( 5, 0, 0, 5, 0, 0 ) Novo lucro = R$ 8750,00 54
Interpretação física da dualidade (curiosidade) 55
Interpretação física da dualidade Imagine uma caixa no espaço cujas paredes internas são definidas por desigualdades lineares Uma pequena bola solta em qualquer ponto dessa caixa vai descer até o canto mais baixo da caixa. O cálculo desse ponto pode ser feito resolvendo-se um PL 56
Exemplo d c 6 x 3 b 3 6 a x 1 57
Programa Linear min z = s. a x + x 7 x 1 x + 3x 0 1 3x x 0 1 x x 14 x 1, x 0 1 58
Resolvendo Graficamente d c 6 x 3 b 3 6 a x 1 59
Resolvendo Graficamente d c 6 x FO 3 b 3 6 a x 1 60
Resolvendo Graficamente d c 6 x FO 3 b 3 6 a x 1 61
Resolvendo Graficamente d c 6 x 3 b FO 3 6 a x 1 6
Resolvendo Graficamente d c 6 x Sol. Ótima x 1 = 3, x = 1 z = 1 3 b FO 3 6 a x 1 63
Dual max w = 7 y + 0y + 0y 14y 1 3 4 s. a y y + 3y y 0 1 3 4 y + 3y y y 1 1 3 4 y, y, y, y 0 1 3 4 64
Dual max w = 7 y + 0y + 0y 14y 1 3 4 s. a y y + 3y y 0 Solução dual ótima: 1 3 4 y + 3y y y 1 1 3 4 y, y, y, y 0 1 3 4 y 1 = 1/7, y = /7, y 3 = 0, y 4 = 0 w = 1 65
Interpretação física pelo dual Nesse ponto a única força sobre a bola é a gravidade. 6 x d c Isso corresponde a uma solução dual de zero O ponto não é estável, a solução dual não é ótima 3 b 3 6 a x 1 66
Interpretação física pelo dual 6 x d c 3 b 3 6 a x 1 67
Interpretação física pelo dual Nesse ponto a parede b também exerce uma força sobre a bola. 6 x d c Isso corresponde a uma solução em que a variável dual da parede b é > zero O ponto não é estável, a solução dual não é ótima 3 b 3 6 a x 1 68
Interpretação física pelo dual 6 x d c 3 b 3 6 a x 1 69
Interpretação física pelo dual 6 x d c 3 b 3 6 a x 1 70
Interpretação física pelo dual Esse ponto é estável, a bola para. 6 x d c Isso corresponde a uma solução dual em que a forças exercidas pelas paredes anula a gravidade. 3 b 3 6 a x 1 71
Interpretação física pelo dual 6 x d c 3 y a c b y 1 a 1 3 6 a x 1 7
OBSERVAÇÃO Este material refere-se às notas de aula do curso TEP117 (Pesquisa Operacional I) da Universidade Federal Fluminense (UFF) e não pode ser reproduzido sem autorização prévia do autor. Quando autorizado, seu uso é exclusivo para atividades de ensino e pesquisa em instituições sem fins lucrativos. 73