EA Planejamento e Análise de Sistemas de Produção Algoritmo Simple para Programação Linear I DCA-FEEC-Unicamp
Modelo de Programação Linear ma c ( n ) s. a. A b A ( m n) b ( m ) c ( n) P ( R n A b} Poliedro -poliedros são conjuntos conveos - poliedros podem ser limitados ou ilimitados
Eemplo ma s. a. 9 5 75 8 DCA-FEEC-Unicamp
solução ótima: * (65 ) máimo local máimo global ( ) 5 ( ) 75 ( 5 ) DCA-FEEC-Unicamp 8 ( 6 ) *
9 Soluções factíveis Fronteira Interiores Etremos Solução ótima Ponto da fronteira Única ponto etremo Etremo Fronteira 5 Não factíveis 6 7 8 Interior 5 DCA-FEEC-Unicamp
6 DCA-FEEC-Unicamp Forma Padrão Modelos de PL 8 75 5 s.a. 9 ma 6 5 6 5 OBS: para restrições subtrai-se i s variáveis de ecesso 5 6 : variáveis de folga n m n R R b b A s.a R c c min (ma) Forma padrão
min (ma) c c R n s.a A b b R m Forma padrão R n P ( R n A b } Poliedro forma padrão P significa que é uma solução factível OBS: poliedros são conjuntos conveos e podem ser limitados ou ilimitados 7
pontos etremos: definidos pelas restrições que estão simultâneamente ativas nos pontos pontos etremos adjacentes: restrições ativas diferem de um elemento aresta: segmento de reta que conecta dois pontos etremos 6 5 A Aresta B C H I G J D K E L F 8 DCA-FEEC-Unicamp
9 DCA-FEEC-Unicamp 8 75 5 s.a. 9 ma 6 5 6 5 Soluções Básicas 5 65 8 75 5 Básicas Não básicas
DCA-FEEC-Unicamp ( ) 5 ( ) 75 ( 5 ) 8 ( 6 ) *
DCA-FEEC-Unicamp Eistência de Soluções Básicas 8 75 5 8 75 5 6 5 Solução básica eiste se e somente se as colunas das restrições de de igualdade correspondentes às m variáveis básicas são linearmente independentes (formam uma base)(solução não degenerada). det det
Solução básica factível: solução básica não negativa Soluções básicas factíveis: pontos etremos de D 7 8 9 5 6 6 D 5 9 ( 5 55 ) ( 5 75 ) ( 5 ) DCA-FEEC-Unicamp
Ponto etremo: definição Um ponto de um conjunto conveo C é um ponto etremo se não eistem dois pontos distintos e em C tal que para algum α < α < α ( α) C C
Resumo dos Resultados Importantes Teorema : equivalência de pontos etremos e soluções básicas Considere um poliedro não vazio P { R n A b e }. Um vetor é um ponto etremo de P se e somente se é uma solução básica factível de A b. Teorema : representação de soluções básicas factíveis Considere um modelo de PL na forma padrão e sejam.. k soluções básicas factíveis do modelo. Então qualquer ponto P pode ser escrito como k d λ i i i onde ou d ou é uma direção ilimitada e k i λ i λ i
Teorema : resultado fundamental da programação linear Dado um modelo de programação linear na forma padrão então:. se eiste uma solução factível então eiste uma solução básica factível. se eiste uma solução factível ótima então eiste uma solução básica factível ótima. (resultado fundamental da PL sob o ponto de vista algébrico) 5
Colorário : eistência de pontos etremos Se um poliedro P { R n A b e } é não vazio então P possui no mínimo um ponto etremo. Colorário : solução ótima finita é um ponto etremo Se eiste uma solução ótima finita para um modelo de PL então eiste uma solução ótima finita que é um ponto etremo de P. 6
Colorário : número de pontos etremos O poliedro P possui no máimo um número finito de pontos etremos. Colorário : representação de poliedros limitados Se o poliedro P é limitado e não vazio então P é o conjunto dos pontos que são combinações conveas de seus pontos pontos etremos. 7
Teorema : resultado fundamental da programação linear Uma função objetivo linear c atinge seu mínimo sobre um poliedro limitado P em um ponto etremo de P. Prova (Luenberger 97): Sejam... k pontos etremos de P. Como P é finito e conveo todo ponto P pode ser epresso como α α... α k k α i i...k; α α... α k Logo c α (c ) α (c )... α k (c k ) Seja z min {ci i...k}. Então c (α α... α k )z z Logo o mínimo de c sobre P é z. (resultado fundamental da PL sob o ponto de vista geométrico) 8
Algoritmo Simple -solução básica factível inicial: ponto etremo 5 6 ma c 9 A 5 75 8 N N B B B B 5 75 8 9
DCA-FEEC-Unicamp -Direções de busca (direções simple) Direções simple: são construídas aumentando-se uma única variável não básica de tal forma que as variáveis não básicas restantes não sejam modificadas e determinando as correções correspondentes para as variáveis básicas necessárias para preservar as restrições de igualdade A 6 5 6 5 [ ] [ ] aumentando aumentando
DCA-FEEC-Unicamp -Direções que melhoram objetivo e custo reduzido 9 ] 9 [ ; ] 9 [ minimização de problemas para melhora simple direção maimização de problemas para melhora simple direção aumenta que simple direção c ] [ c f() c f () j j j j j j > > < > c c c c c c c c c n n j L custo reduzido
-Passo na direção de busca j λ min : j < j t nenhuma componente de para a solução básica corrente t negativo problema ilimitado 5 6 ma c 9 A 5 75 8 N N B B B B 5 75 8 - - - /-(-) 75/-(-) 8/-(-) { 75 } λ min DCA-FEEC-Unicamp
5-Atualização da base λ 5 75 8 5 75 8 5 ( ) 8 ( 6 ) ( ) * variável entra na base variável sai da base 75 ( 5 )
Algoritmo Simple: Resumo Passo Inicialização: com solução básica factível t ; Passo Direções simple: construir associada com não básica j calcular custo reduzido c j c ; Passo Otimalidade: se nenhuma direção melhora ( c j > para ma c j < para min) então parar t é ótima; senão escolher nova direção que melhora valor função objetivo; seja p a variável que entra na base; Passo Passo: se todos componentes de forem não negativas então parar o modelo é ilimitado; senão determinar λ e escolher variável que deia a base r : λ ( r / - r ); Passo Novo ponto e base: determinar nova solução t t λ t e trocar r por p ; t t ; ir para o Passo ;
5 ( ) 5 ( ) 75 ( 5 ) 8 ( 6 )
Tableau Simple 5 6 a a b a a b a a b a a b c c -z Método de eliminação de Gauss e o algoritmo simple - Se c j > (c j < min) então coluna q ma j {c j j N } linha p min i {b i /a iq a iq > i m} Se c j < j (c j > min) então solução ótima Se a iq > então o modelo é ilimitado - Atualizar elementos do tableau 6
Atualização do Tableau Simple. q. n y y y.. yn yn y y y.. yn yn........ p yp. ypq......... y m y m y m.. yn y m n y m y m y m.. y m n y m n q y ' ij y ij y y pj pq y iq i p y pq pivô y ' pj y y pj pq i p 7
q t p 5 6 5 75 8 9 q ma j { c c } ma{ 9 } j p min i b a b a b a b a min i { 75 } 8
q t p 5 6 5-75 - 8 9 - - q ma j { c c } ma{ 9 } j p min i a b b a a b b a min i { 5 75 } 9
q t p 5 6 -.5 -.5 5 -.5 6 -.5-56 q ma j { c c } ma{ 6.5 } 6 j p min i a b b a b a b a min i { 55 5 }
t 5 6 -.5 65 -.5 -.5 5 -.5-6 -.5-77 * ( 65 5 )
Algoritmo Simple com Duas Fases Passo Modelo Artificial: se solução básica factível então ir para ; senão criar modelo artificial somando (subtraindo) variáveis artificiais; Passo Fase I: inicializar modelo artificial com solução básica artifical factível e minimizar soma das variáveis artificiais; Passo Factibilidade: se Fase I termina com soma > então parar (modelo original infactível); senão utilizar solução final como solução básica factível inicial para o modelo original; Passo Fase II: aplicar algoritmo simple inicializando-o com a solução básica factível obtida no Passo para obter ou a solução ótima ou detetar que o problema é ilimitado.
s.a. min Fase I s.a. min 5 5 5 Modelo Artificial
Tableau inicial 5 - - Primeiro tableau 5 5 7
Segundo tableau 5 - / -/ / / - / -5/ Terceiro tableau 5 -/ / -/ / 5/ -/ / / - - 5
6 s.a. min Fase II: tableau inicial -/ / 5/ / - - -
Primeiro tableau -/ / 5/ / / 7/ Segundo tableau /5 9/5 /5 /5 -/5 /5 7
Soluções degeneradas valor (ma) 5 5 5 5 5 5 iterações Solução básica factível é degenerada se restrições de não negatividade para algumas variáveis básicas estão ativas ( algumas variáveis básicas são nulas ) várias bases produzem a mesma solução básica 8
A H B I C G J D K E L F 9
Convergência e Ciclagem se a cada iteração eiste um valor λ > então o algoritmo simple pára após um número finito de iterações indicando ou a solução ótima ou concluindo que o modelo é ilimitado. com o algoritmo de duas fases pode-se também detetar infactibilidade. eistência de soluções degeneradas pode provocar que λ. sequência de soluções pode se repetir ciclagem n o máimo de bases n! m!( n m)!
Observação Este material refere-se às notas de aula do curso EA Planejamento e Análise de Sistemas de Produção da Faculdade de Engenharia Elétrica e de Computação da Unicamp. Não substitui o livro teto as referências recomendadas e nem as aulas epositivas. Este material não pode ser reproduzido sem autorização prévia dos autores. Quando autorizado seu uso é eclusivo para atividades de ensino e pesquisa em instituições sem fins lucrativos. DCA-FEEC-Unicamp