Uma Introdução à Otimização sob Incerteza Aula 3 Bernardo Kulnig Pagnoncelli 1 e Humberto José Bortolossi 2 1 Departamento de Matemática Pontifícia Universidade Católica do Rio de Janeiro 2 Departamento de Matemática Aplicada Universidade Federal Fluminense III Bienal da SBM Universidade Federal de Goiás 6 a 10 de novembro de 2006 B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 1
Quem fez o dever de casa? (Exercício [05] do Capítulo 3) A solução está valendo um chocolate! B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 2
Quem fez o dever de casa? minimizar x 1 + x 2 + q 1 E ω1 [(ω 1 x 1 + x 2 7) ] + q 2 E ω2 [(ω 2 x 1 + x 2 4) ] sujeito a x 1 0, x 2 0, é equivalente a minimizar g(x 1, x 2 ) = x 1 + x 2 + Q(x 1, x 2 ) sujeito a x 1 0, x 2 0, onde [ { ω Q(x 1, x 2 ) = E min q 1 y 1 + q 2 y 1 x 1 + x 2 + y 1 7 2 y 1 0, y 2 0 ω 2 x 1 + x 2 + y 2 4 } ] B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 3
Otimização estocástica Espere e Veja (Wait and See) Aqui e Agora (Here and Now) 1 Eliminar incertezas 2 Incorporar riscos nas restrições (chance constraints) a Níveis de confiabilidade individuais b Nível de confiabilidade conjunto 3 Aceitar inadmissibilidade penalizando déficits B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 4
O problema da produção Minimizar do custo de produção c x sob a restrição de que a produção x atenda à demanda ω: minimizar f (x) = c x sujeito a x = ω, x 0, A demanda ω é uma variável aleatória contínua não-negativa, com B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 5
O problema da produção Minimizar do custo de produção c x sob a restrição de que a produção x atenda à demanda ω: minimizar f (x) = c x sujeito a x = ω, x 0, A demanda ω é uma variável aleatória contínua não-negativa, com 1 Média: µ = E [ω] 2 Variância: σ 2 = E [ (ω E [ω]) 2] 3 Função distribuição: F (t) = P (ω t), com t R B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 6
O problema da produção Abordagem espere e veja Se o agente de decisão pode esperar pela realização da demanda ω antes de escolher o valor da produção x, então o problema é fácil se resolver: x (ω) = ω e v (ω) = c x (ω) = c ω B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 7
O problema da produção Abordagem espere e veja Se o agente de decisão pode esperar pela realização da demanda ω antes de escolher o valor da produção x, então o problema é fácil se resolver: x (ω) = ω e v (ω) = c x (ω) = c ω Abordagem aqui e agora 1 Abolir incertezas Substituir ω por ω = µ ou ω = µ + (com = σ ou = 2 σ) Probabilidade de que a demanda seja satisfeita (nível de serviço): P (ω µ + ) = F (µ + ) B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 8
O problema da produção Abordagem aqui e agora 2 Incorporar riscos nas restrições Construir uma restrição probabilística do tipo P (x = ω) α não é conveniente B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 9
O problema da produção Abordagem aqui e agora 2 Incorporar riscos nas restrições Construir uma restrição probabilística do tipo P (x = ω) α não é conveniente Para valores adequados de α 1 e α 2, também não é conveniente construir restrições probabilísticas combinadas: P (x ω) α 1 e P (x ω) α 2 B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 10
O problema da produção Abordagem aqui e agora 2 Incorporar riscos nas restrições Construir uma restrição probabilística do tipo P (x = ω) α não é conveniente Para valores adequados de α 1 e α 2, também não é conveniente construir restrições probabilísticas combinadas: P (x ω) α 1 e P (x ω) α 2 É preciso estabelecer prioridades: escolha α (1/2, 1) e modele o problema da mistura como { min {cx P (x ω) α} = min cx x F 1 (α) } x 0 x 0 cuja solução é, evidentemente, x = F 1 (α) B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 11
O problema da produção Abordagem aqui e agora 3 Aceitar inadmissibilidade, penalizando desvios Penalizamos superávits e déficits: Q(x) = E [ h (ω x) + q (ω x) +], onde z = { 0, se z 0, z, se z < 0, e z + = { z, se z 0, 0, se z < 0, O problema original fica então assim: minimizar f (x) = c x + Q(x) sujeito a x 0, B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 12
O problema da produção Abordagem aqui e agora 3 Aceitar inadmissibilidade, penalizando desvios Como f (x) = c + Q (x) = c q + (q + h) F (x), segue-se que a solução ótima é dada por ( ) q c x = F 1 q + h B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 13
O problema da produção Abordagem aqui e agora 3 Aceitar inadmissibilidade, penalizando desvios Como f (x) = c + Q (x) = c q + (q + h) F (x), segue-se que a solução ótima é dada por ( ) q c x = F 1 q + h Se h = 0, esta solução coincide com a solução obtida por chance constraints se q c = 1 1 α B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 14
O problema da produção Abordagem aqui e agora 3 Aceitar inadmissibilidade, penalizando desvios α (nível de confiabilidade) q/c (custo de déficit/custo de produção) 0990 100 0975 40 0950 20 0900 10 0800 5 0500 2 Esta tabela é interessante: ela nos dá uma idéia de que valores escolher para o custo q em termos do nível de confiabilidade α B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 15
Modelos de Recurso B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 16
Motivação: programação linear por metas min {cx Ax = b e Tx h} x X onde X = {x R n x x x} ou X = {x R n 0 x < + }, c R n, A é m n, b R em, T é m n, h R m, cx = c 1 x 1 + c 2 x 2 + + c n x n = n i=1 c i x i, o símbolo representa uma das relações =, (componente a componente) e B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 17
Motivação: programação linear por metas min {cx Ax = b e Tx h} x X Restrições rígidas : Ax = b B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 18
Motivação: programação linear por metas min {cx Ax = b e Tx h} x X Restrições rígidas : Ax = b Restrições flexíveis: Tx h B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 19
Motivação: programação linear por metas min {cx Ax = b e Tx h} x X Restrições rígidas : Ax = b Restrições flexíveis: Tx h A idéia é penalizar os desvios de meta z = h Tx das restrições flexíveis através de uma função de penalidade z v(z) que é incorporada à função objetivo do problema de otimização original: min {cx + v(h Tx) Ax = b} x X = min {cx + v(z) Ax = b e Tx + z = h} x X B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 20
Como escolher a função de penalidade v? Notação T = t 1 t 2, h = h 1 h 2 e z = z 1 z 2 t m h m z m Tx h z = h Tx 0 t i x h i z i = h i t i x 0 i = 1,, m B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 21
Como escolher a função de penalidade v? Notação T = t 1 t 2, h = h 1 h 2 e z = z 1 z 2 t m h m z m Tx h z = h Tx 0 t i x h i z i = h i t i x 0 i = 1,, m t i x h i z i = h i t i x 0 B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 22
Como escolher a função de penalidade v? Notação T = t 1 t 2, h = h 1 h 2 e z = z 1 z 2 t m h m z m Tx h z = h Tx 0 t i x h i z i = h i t i x 0 i = 1,, m t i x h i z i = h i t i x 0 B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 23
Como escolher a função de penalidade v? Notação T = t 1 t 2, h = h 1 h 2 e z = z 1 z 2 t m h m z m Tx h z = h Tx 0 t i x h i z i = h i t i x 0 i = 1,, m t i x = h i z i = h i t i x = 0 B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 24
Função de penalidade com custos individuais v(z) = m v i (z i ) = i=1 m ( ) q i z + i + q i z i }{{} v i (z i ) i=1 Como escolher q i e q i? B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 25
Função de penalidade com custos individuais v(z) = m v i (z i ) = i=1 m ( ) q i z + i + q i z i }{{} v i (z i ) i=1 Como escolher q i e q i? Restrição do tipo t i x = h i (isto é, z i = 0): Penalizamos superávits escolhendo q i > 0 e penalizamos déficits q i > 0 A função v i é convexa como soma de funções convexas B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 26
Função de penalidade com custos individuais v(z) = m v i (z i ) = i=1 m ( ) q i z + i + q i z i }{{} v i (z i ) i=1 Como escolher q i e q i? Restrição do tipo t i x h i (isto é, z i 0): Penalizamos superávits escolhendo q i > 0 e premiamos déficits escolhendo q i < 0 A função v i é convexa se q i + q i 0 B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 27
Função de penalidade com custos individuais v(z) = m v i (z i ) = i=1 m ( ) q i z + i + q i z i }{{} v i (z i ) i=1 Como escolher q i e q i? Restrição do tipo t i x h i (isto é, z i 0): Premiamos superávits escolhendo q i < 0 e penalizamos déficits escolhendo q i > 0 A função v i é convexa se q i + q i 0 B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 28
Função de penalidade com custo conjunto Supondo que todas as restrições são da forma z i 0: v(z) = v(z 1, z 2,, z m ) = q 0 max{z 1, z 2,, z m} A função v é convexa se q 0 0 B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 29
Função de penalidade via ações de recurso Ingredientes necessários para construir a função de penalidade: 1 Uma estrutura de recurso (q, W) Aqui q R p (vetor de custos) e W é m p (matriz de recurso) 2 Um conjunto Y de variáveis de recurso Y = {y R p y y y} ou Y = {y R p 0 y + } = R p + A função de recurso v é então definida por: v(z) = min {qy Wy z} y Y B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 30
Função de penalidade via ações de recurso Escolhendo-se uma estrutura de recurso adequado, é possível recuperar a função de penalidade com custos individuais e com custo conjunto definidas anteriormente! B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 31
Função de penalidade via ações de recurso v i (z i ) = q i z + i + q i z i B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 32
Função de penalidade via ações de recurso v i (z i ) = q i z + i + q i z i q = ( q i, q i ) R R = R 2, W = [ +1 1 ] 1 2, Y = R + R + = R 2 + B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 33
Função de penalidade via ações de recurso v i (z i ) = q i z + i + q i z i q = ( q i, q i ) R R = R 2, W = [ +1 1 ] 1 2, Y = R + R + = R 2 + v i (z i ) = min y Y {qy Wy = z i} B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 34
Função de penalidade via ações de recurso v i (z i ) = q i z + i + q i z i q = ( q i, q i ) R R = R 2, W = [ +1 1 ] 1 2, Y = R + R + = R 2 + v i (z i ) = min {qy Wy = z i} y Y { [ ] [ y = min q q y 0,y 0 y ] [ +1 1 ] [ y y ] = [ z i ] } B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 35
Função de penalidade via ações de recurso v i (z i ) = q i z + i + q i z i q = ( q i, q i ) R R = R 2, W = [ +1 1 ] 1 2, Y = R + R + = R 2 + v i (z i ) = min {qy Wy = z i} y Y { [ ] [ y = min q q y 0,y 0 y = min { } qy + qy y y = zi y 0,y 0 ] [ +1 1 ] [ y y ] = [ z i ] } B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 36
Função de penalidade via ações de recurso v i (z i ) = q i z + i + q i z i q = ( q i, q i ) R R = R 2, W = [ +1 1 ] 1 2, Y = R + R + = R 2 + v i (z i ) = min {qy Wy = z i} y Y { [ ] [ y = min q q y 0,y 0 y = min { } qy + qy y y = zi y 0,y 0 ] [ +1 1 ] [ y y ] = [ z i ] } = q i z + i + q i z i B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 37
Função de penalidade via ações de recurso v(z) = v(z 1, z 2,, z m ) = q 0 max{z 1, z 2,, z m} B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 38
Função de penalidade via ações de recurso v(z) = v(z 1, z 2,, z m ) = q 0 max{z 1, z 2,, z m} q = ( q 0 ) R, W = 1 1 m 1, Y = R + B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 39
Função de penalidade via ações de recurso v(z) = v(z 1, z 2,, z m ) = q 0 max{z 1, z 2,, z m} q = ( q 0 ) R, W = 1 1 m 1, Y = R + v(z) = min {qy Wy z} y Y B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 40
Função de penalidade via ações de recurso v(z) = v(z 1, z 2,, z m ) = q 0 max{z 1, z 2,, z m} q = ( q 0 ) R, W = 1 1 m 1, Y = R + v(z) = min y Y = min y 0 {qy Wy z} [ ] [ ] 1 q0 y 1 [ y ] z 1 z m B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 41
Função de penalidade via ações de recurso v(z) = v(z 1, z 2,, z m ) = q 0 max{z 1, z 2,, z m} q = ( q 0 ) R, W = 1 1 m 1, Y = R + v(z) = min y Y = min y 0 {qy Wy z} [ ] [ ] 1 q0 y 1 [ y ] = min y 0 {qy y z 1,, y z m } z 1 z m B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 42
Função de penalidade via ações de recurso v(z) = v(z 1, z 2,, z m ) = q 0 max{z 1, z 2,, z m} q = ( q 0 ) R, W = 1 1 m 1, Y = R + v(z) = min y Y = min y 0 {qy Wy z} [ ] [ ] 1 q0 y 1 [ y ] = min y 0 {qy y z 1,, y z m } = q 0 max{z 1, z 2,, z m}, z 1 z m B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 43
Modelos de recurso em otimização estocástica min {cx Ax = b e T(ω)x h(ω)} x X B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 44
Modelos de recurso em otimização estocástica min {cx Ax = b e T(ω)x h(ω)} x X ESTÁGIO 1 ESTÁGIO 2 decisão em x ocorre ω ação corretiva y B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 45
Modelos de recurso em otimização estocástica min {cx Ax = b e T(ω)x h(ω)} x X ESTÁGIO 1 ESTÁGIO 2 decisão em x ocorre ω ação corretiva y onde min {cx + E [v(z, ω)] Ax = b} x X v(z, ω) = min {q(ω)y W(ω)y h(ω) T(ω)x} y Y B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 46
Modelos de recurso em otimização estocástica min {cx + Q(x) Ax = b} x X onde [ ] Q(x) = E [v(z, ω)] = E min {q(ω)y W(ω)y h(ω) T(ω)x} y Y }{{} LP de segundo estágio B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 47
Modelos de recurso em otimização estocástica min {cx + Q(x) Ax = b} x X onde [ ] Q(x) = E [v(z, ω)] = E min {q(ω)y W(ω)y h(ω) T(ω)x} y Y }{{} LP de segundo estágio Perguntas: O problema de segundo estágio sempre está bem definido? A esperança (uma integral!) sempre é finita? Q é uma função simpática? B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 48
Modelos de recurso em otimização estocástica Perguntas: O problema de segundo estágio sempre está bem definido? A esperança (uma integral!) sempre é finita? Q é uma função simpática? B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 49
Modelos de recurso em otimização estocástica Perguntas: O problema de segundo estágio sempre está bem definido? Resposta: Sim, se W é de recurso completo ou de recurso simples, isto é, se z R m, y 0 Wy = z (recurso completo) ou W = [ +I I ] (recurso simples) A esperança (uma integral!) sempre é finita? Q é uma função simpática? B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 50
Modelos de recurso em otimização estocástica Perguntas: O problema de segundo estágio sempre está bem definido? Resposta: Sim, se W é de recurso completo ou de recurso simples, isto é, se z R m, y 0 Wy = z (recurso completo) ou W = [ +I I ] (recurso simples) A esperança (uma integral!) sempre é finita? Resposta: Sim, se ω tem segundos momentos finitos Q é uma função simpática? B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 51
Modelos de recurso em otimização estocástica Perguntas: O problema de segundo estágio sempre está bem definido? Resposta: Sim, se W é de recurso completo ou de recurso simples, isto é, se z R m, y 0 Wy = z (recurso completo) ou W = [ +I I ] (recurso simples) A esperança (uma integral!) sempre é finita? Resposta: Sim, se ω tem segundos momentos finitos Q é uma função simpática? Resposta: Sim! Q é convexa e diferenciável de ω tem distribuição contínua B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 52
A forma extensa { [ ] min cx + E min {q(ω)y W(ω)y = h(ω) T(ω)x} Ax = b} x X y Y B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 53
A forma extensa { [ ] min cx + E min {q(ω)y W(ω)y = h(ω) T(ω)x} Ax = b} x X y Y minimizar x X y 1,y 2,,y S Y cx + p 1 q 1 y 1 + p 2 q 2 y 2 + + p S q S y S sujeito a Ax = b, T 1 x + Wy 1 h 1, T 1 x + Wy 2 h 2, T S x + Wy S h S, p s = P ( ω = ω S), q s = q(ω s ), y s = y(ω s ), T s = T(ω s ), h s = h(ω s ), W(ω) = W (recurso fixo) B K Pagnoncelli, H J Bortolossi Uma Introdução à Otimização sob Incerteza 54