Programação inteira Decomposição de Benders
Decomposição de Benders Benders, J. F. Partitioning Procedures for Solving Mixed Variables Programming Problems Numerische Mathematik, 1962, 4, 238-252
Parágrafo 1 - Problema
Parágrafo 2 - Contexto
Parágrafo 3 - Aplicação
Decomposição de Benders (estrutura em blocos) Restrições de acoplamento
Nas palavras de Geoffrion volta
Decomposição de Benders complicating variables
Benders decomposition - aplicação imediata x - variáveis reais y - variáveis inteiras
Benders decomposition - desenvolvimento =
Benders decomposition - desenvolvimento dual Interessante: o espaço factível do problema dual independe de y!
Espaço factível do dual
Espaço factível do dual + função objetivo dual ilimitado F
Dual ilimitado ? O que significa isso ? Primal infactível! Problema original infactível!
Queremos que o dual seja limitado
A solução é um dos pontos extremos. Qual ? Aquele que dá o maior valor!
Reformulação de Benders! Problema reescrito unicamente em função das variáveis y e de uma variável real, z. definição do Geoffrion
Reformulação de Benders! Problema ? Número muito grande de restrições, uma vez que o número de pontos e raios extremos é geralmente muito grande!
estratégia de resolução O que nos dá uma relaxação ? (em um problema de minimização) Limitante inferior Além disso: uma solução "tentativa" y.
Benders - Visão geral y
Benders - Término! Master Problem Subproblem LP y UB LP UB Por que ?
Algoritmo 1. Resolva o problema MASTER (Atualize LP - Pare se UB-LB · ) 2. Use a solução tentativa y no SUBPROBLEMA 3. Se a solução do SUBPROBLEMA é infactível: Gere um corte de infactibilidade e volte para 1. Se a solução do SUBPROBLEMA é factível: (Atualize UB - Pare se UB-LB · ) Gere um corte de optimalidade e volte para 1.
Benders. Exemplo Master subproblem
Retirado de: http://lyle.smu.edu/emis/8371/f07/conversion.pdf
Benders. Exemplo subproblem dual subproblem
Master subproblema primal subproblema dual
Exemplo: solução Sol: y = (0 3 1) x = (0 0 0) y1 y2 y3 b1 b2 u1 u2 fact LP UB 5 -62 -30
Exemplo: solução Sol: y = (0 3 1) x = (0 0 0) y1 y2 y3 b1 b2 u1 u2 fact LP UB 5 -62 -30 1 n 7 -inf
Exemplo: solução Sol: y = (0 3 1) x = (0 0 0) y1 y2 y3 b1 b2 u1 u2 fact LP UB 5 -62 -30 1 n 7 -inf -4 4
Exemplo: solução Sol: y = (0 3 1) x = (0 0 0) y1 y2 y3 b1 b2 u1 u2 fact LP UB 5 -62 -30 1 n 7 -inf -4 4 3
Exemplo: solução Sol: y = (0 3 1) x = (0 0 0) y1 y2 y3 b1 b2 u1 u2 fact LP UB 5 -62 -30 1 n 7 -inf -4 4 3
Exemplo: solução Sol: y = (0 3 1) x = (0 0 0) y1 y2 y3 b1 b2 u1 u2 fact LP UB 5 -62 -30 1 n 7 -inf -4 4 3 0.5 1/3 s
Benders. Exemplo y1 y2 y3 b1 b2 u1 u2 fact LP UB 5 -62 -30 1 n 7 -inf -62 -30 1 n 7 -inf -4 4 3 0.5 1/3 s 2 1 u1 1 2
Observações Há maneiras de fazer com que o cplex nos forneça um raio quando a solução do dual é infactível. Este raio não necessariamente é extremo! (Isso pode ser uma boa coisa!)
Um clássico: Geoffrion and Graves, 1974 Geoffrion, A. M. & Graves, G. W. Multicommodity Distribution System Design By Benders Decomposition Management Science, 1974, 20, 822-844
O problema Cap. 110 Fixed: $ 100 Unitary: $2 Demand: 50 Demand: 20 $0 $4 $3 Demand: 50 Demand: 20 $3 $2 Cap. 60 $4 Cap. 50 $3 $5 $5 $3 $2 $3 Demand: 100 Demand: 30 $4 $1 $2 $2 $3 $2 Cap. 350 Fixed: $ 500 Unitary: $1 Demand: 50 Demand: 60 Cap. 200 $4 Cap. 110 $2
Formulação
Formulação decomposição
Decomposição Master problem Subproblem formulação original
Re-otimização $3050 Solução ótima do exemplo: -e se o custo unitário do primeiro depósito baixasse de uma unidade ? - e se os custos de transporte aumentassem ? - e se... Demand: 50 Demand: 20 50 20 100 30 Demand: 100 Demand: 30 50 60 200 110 Demand: 50 Demand: 60 Cap. 200 $4 Cap. 110 $2 $3050
Re-otimização um aumento em c mantém e factíveis. Os cortes continuam válidos e a re-otimização pode ter um "hot start".
Seminal... Geoffrion e Graves previram diversas dificuldades da decomposição de Benders: Grande número de iterações necessárias!
Duas extensões clássicas McDaniel e Devine Magnanti e Wong
McDaniel e Devine McDaniel, D. & Devine, M. A modified Benders' partitioning algorithm for mixed integer programming Management Science, 1977, 24, 312-319 Master problem Subproblem
McDaniel e Devine Qual a etapa mais demorada ? Master problem Subproblem
McDaniel e Devine Cortes gerados para o problema linear também são válidos para o problema inteiro!
McDaniel e Devine Tradicional McDaniels e Devine
Mais extensões! Cortes de Pareto Magnanti, T. L. & Wong, R. T. Accelerating Benders Decomposition: Algorithmic Enhacement and Model Selection Criteria Operations Research, 1981, 23, 464-484
Pareto-Optimal Cuts "Melhor corte" a cada iteração! Dual 1
Keep the maximum cut for the current y Pareto-Optimal Cuts Dual Dual Keep the maximum cut for the current y
Outras extensões Muitas especializações podem ser feitas segundo o problema.
Especialização para projeto de redes Costa, A. M.; Cordeau, J. & Gendron, B. Benders, metric and cutset inequalities for multicommodity capacitated network design Computational Optimization and Applications, 2008 (previsto)
Especialização para projeto de redes Multicommodity network flow
Especialização para projeto de redes Multicommodity network flow
Especialização para projeto de redes Multicommodity network flow subproblem dual m
Shortest path problem Quando o problema Z(w) é limitado ?
Desigualdades validas
Shortest path problem 3 1 2 3 1 1 dual
Metric inequalities
Cutset inequalities d2 d1 u46 y46 + u47 y47 + u58 y58 ¸ d1 + d2 y46 Antes de mais nada gostaria de apresentar o roteiro da apresentação. Primeiramente, vamos fazer uma breve introdução do problema, destacando os motivos que nos levaram a dedicar uma dissertação de mestrado ao tema. Em seguida, apresentamos o problema formalmente. Como vocês terão a oportunidade de perceber, trata-se de um problema de fácil definição. Assim como outros problemas da pesquisa operacional, exemplo maior o problema do caixeiro viajante, é muito fácil descrever o problema em palavras, embora a obtenção de uma solução possa ser muito complicada. Na seqüência, apresentamos duas formulações matemáticas. Quem está pouco acostumado com formulações pode se assustar um pouco com o tamanho das equações, mas não é muito difícil entender a idéia geral. Finalmente, apresentamos quatro abordagens de resolução, destacando as suas qualidades e as suas deficiências. A abordagem exata, que nada mais é do que a solução a partir das formulações matemáticas. Uma abordagem heurística, resultado da extensão de uma parte do trabalho de doutorado do Marcos Carneiro, membro desta banca. Há também uma abordagem híbrida, que tenta unificar as boas características das duas abordagens anteriores e, finalmente, uma abordagem alternativa, desenvolvida quase que por hobby. Por fim, apresentamos os resultados comparativos destas quatro abordagens quando testadas tanto em alguns exemplos de teste como em redes reais, além de breves conclusões.
Cutset inequalities
Resumo
Resultados Costa, A. M.; Cordeau, J. & Gendron, B. Benders, metric and cutset inequalities for multicommodity capacitated network design Computational Optimization and Applications (forthcoming), 2008
Resumo
Aproveitando a fase linear Costa, A. M. Models and algorithms for two network design problems HEC - Université de Montréal, 2006
Aproveitando a fase linear
Aproveitando a fase linear ... ...
Number of IP Iterations Without Extra cuts With Extra Cuts Resultados Instance N/A/K Number of IP Iterations Without Extra cuts With Extra Cuts 10/35/10 19 8 10/35/25 7 6 10/35/50 3 10/60/10 10 5 10/60/25 341 11 10/82/10 101 13 10/83/25 98
Extra Cuts – (N=10/A=83/K=25) Resultados Extra Cuts – (N=10/A=83/K=25)
Resultados Generalizável!