Unidade: Modelo Simplex e Modelo Dual Unidade I: 0
Unidade: Modelo Simplex e Modelo Dual Segundo Wikipédia (2008), em teoria da otimização matemática, o algoritmo simplex de George Dantiz é uma técnica popular para dar soluções numéricas de problemas da programação linear. Um método sem relação, mas chamado de maneira similar é o método Nelder-Mead ou método simplex de baixo custo que devido a Nelder e Mead (1965) é um método numérico para otimização de problemas livres multidimensionais, pertencentes à classe mais geral de algoritmos de busca. Em ambos os casos, o método usa o conceito de um simplex, que é um polítopo de N + 1 vértices em N dimensões: um segmento de linha sobre uma linha, um triângulo sobre um plano, um tetraedro em um espaço de três dimensões e assim sucessivamente. Estes procedimentos são válidos para problemas de maximização: 1. Introduzir as variáveis de folga, uma para cada desigualdade; 2. Montar um quadro para os cálculos, colocando os coeficientes de todas as variáveis com os respectivos sinais e, na última linha, incluir os coeficientes da função objetivo transformada; 3. Estabelecer uma solução básica inicial, usualmente atribuindo valor zero às variáveis originais e achando valores positivos para as variáveis de folga; 4. Como próxima variável a entrar na base, escolher a variável não básica que oferece, na última linha, a maior contribuição para o aumento da função objetivo (ou seja, tem o maior valor negativo). Se todas as variáveis que estão fora da base tiverem coeficientes nulos ou positivos nesta linha, a solução atual é ótima. Se alguma dessas variáveis tiver coeficiente nulo, isto significa que ela pode ser introduzida na base sem aumentar o valor da função objetivo. Isso quer dizer que temos uma solução ótima, com o mesmo valor da função objetivo; 5. Para escolher a variável que deve deixar a base, deve-se realizar o seguinte procedimento: Dividir os elementos da última coluna pelos correspondentes elementos positivos da coluna da variável que vai entrar na base. Caso não haja elemento nenhum positivo nesta coluna, 1
o processo deve parar, já que a solução seria ilimitada; O menor quociente indica a equação cuja a respectiva variável básica deverá ser anulada, tornando-se variável não básica; 6. Usando operações válidas com as linhas da matriz, transformar o quadro de cálculos de forma a encontrar a nova solução básica. A coluna da nova variável básica deverá se tornar um vetor identidade, onde o elemento 1 aparece na linha correspondente à variável que está sendo anulada; 7. Retornar ao passo 4 para iniciar outra iteração. Fonte: http://pt.wikipedia.org/wiki/algoritmo_simplex Dando continuidade as atividades da Unidade III, vamos agora enfatizar a aplicação dos conceitos do método de dualidade em programação linear. No conceito do método de dualidade em programação linear de um problema é necessário saber previamente que os resultados obtidos são em função das ações e decisões realizadas no outro problema ao qual este está associado. A conclusão de um tende a auxiliar o outro na resolução destes problemas, por este motivo recebe a denominação dual. Conseqüentemente a restrição encontrada em um problema corresponde à variável do outro. Em alguns casos, de problema dual as restrições são basicamente menores em que a busca de soluções para um determinado problema em grande parte é obtida pela solução do outro. Neste caso a melhor maneira de resolver a situação de ambos os problemas seria resolver o dual, tendo em vista que, no Método Simplex a quantidade de restrições torna-se fator preponderante na resolução do problema. Exemplo 1: No cotidiano do Modelo de Dualidade em Programação Linear: Situação abordada: Aumento salarial em uma fábrica de tijolos olaria. A fábrica de tijolos Belo Vale estando em processo de falência, situação esta em 2
decorrência do baixo movimento em suas vendas ficou impossibilitada de negociar qualquer aumento salarial aos seus empregados. Futuramente, nos próximos dois dias, há a possibilidade em reverter esta situação, alavancando sua produção em trinta vezes do normal correspondendo a um possível contrato com uma empreiteira, todavia sua área destinada ao depósito de materiais pronto, não comporta esta produção. Conclusão: Utilizando o modelo de dualidade em programação linear, a fábrica Belo Vale poderia viabilizar primeiramente uma área, provisória, destinada ao acondicionamento do produto fabricado (tijolo) o qual seria, em segundo plano, seria vendido produzindo recursos para saldar suas dívidas e possível negociação salarial aos seus empregados. A solução de um problema estaria completamente inter-relacionada com o outro em questão. Outra visão da dualidade em programação linear em determinadas situações, a quantidade de cálculos necessária para resolver um modelo linear pelo método Simplex pode ser reduzida. O modelo inicial chamado Primal, pode ser substituído por outro modelo chamado Dual, cuja solução é mais rápida. Assim, uma vez conhecida a solução do Dual, conhece-se em conseqüência a solução do Primal, o que resolve o problema. Exemplo (2): Problema - Maximizar o lucro de uma fábrica. Indústrias em geral produzem diversos tipos de itens, solicitados por diferentes clientes, com entrega em diferentes datas. Como as indústrias têm capacidade de produção limitada (máquinas, funcionários, etc.), se faz necessária a programação da produção, isto é, para cada período de tempo deve-se decidir o que e quanto fazer. O problema consiste então em atender a demanda de cada item, na data solicitada, de modo que os custos (de produção, estoque, etc.), sejam os menores possíveis. 3
Referências Adicionais Para enriquecimento e ilustração deste conteúdo sugerimos, também, uma breve pesquisa na internet a partir dos seguintes endereços eletrônicos (abaixo), como forma de abastecê-los de material de apoio necessário para o bom desempenho neste conteúdo. http://www.ime.usp.br/~pronexoc/descricao/node3.html http://www.ime.usp.br/~coelho/proglin2001/apresentacao/ Bons estudos! Grande e cordial abraço virtual! 4
5 Responsável pelo Conteúdo: Prof. Ms. Rodrigo Medina Zagni Revisão Textual: Profª Dra. Patricia Silvestre Leite Di Iorio www.cruzeirodosul.edu.br Campus Liberdade Rua Galvão Bueno, 868 01506-000 São Paulo SP Brasil Tel: (55 11) 3385-3000