1 / 31

Resolvendo Programação Linear Em um Microcomputador

Resolvendo Programação Linear Em um Microcomputador. Conteúdos da Seção. Programação Linear Software Lindo Versão Windows e comandos Formulação do problema Solução do problema Reduced cost Sintaxe modelo Comandos opcionais File | Log output O Caso do Vendedor de Frutas.

hovan
Download Presentation

Resolvendo Programação Linear Em um Microcomputador

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Resolvendo Programação Linear Em um Microcomputador

  2. Conteúdos da Seção • Programação Linear • Software Lindo • Versão Windows e comandos • Formulação do problema • Solução do problema • Reduced cost • Sintaxe modelo • Comandos opcionais • File | Log output • O Caso do Vendedor de Frutas

  3. Programação LinearSoftware Lindo • Lindo (Linear Interactive Discrete Optimizer) é um software interativo para resolução de problemas de programação • Linear • Quadrática • Inteira • Utilizado para resolução de problemas reais de mais de 10.000 variáveis, dispõe de características que mostram os passos e quadros intermediários do método simplex

  4. Software LindoVersão Windows

  5. LindoComandos • Comandos • MAX • Inicia um problema de maximização • MIN • Inicia um problema de minimização • END • Termina a entrada de um problema • Operadores • Menor < • Maior > • Menor ou igual <= • Maior ou igual >=

  6. + Max 2 x 3 y + Max 2x 3y s.t. s.t. + < 4x 3y 10 + < 4 x 3 y 10 + < 3x 5y 12 + < 3 x 5 y 12 END ³ x , y 0 LindoFormulação de Problema • A seguinte entrada é uma formulação válida de uma problema

  7. LindoFormulação de Problema • Solve • Se a sintaxe não estiver correta, a seguinte mensagem aparecerá: • An error occured during compilation on line: n

  8. LindoSolução do Problema • Se nenhum erro ocorrer durante a compilação, a tela ao lado aparecerá. • Se a análise de sensibilidade for desejada responda sim

  9. LindoSolução do Problema • Quando o problema estiver resolvido, uma janela denominada Reports Window ou janela de relatórios aparecerá automaticamente. • Essa janela de relatórios é o lugar onde todos os resultados serão lançados. • Se dois problemas forem resolvidos e houver espaço na janela, suas resoluções aparecerão uma seguida da outra • Para se examinar essa janela basta clicar no menu Windows|Reports Windows (ver slide a seguir)

  10. LindoSolução do Problema

  11. LindoSolução do Problema • Valor Ótimo da Função Objetivo • Valor das Variáveis Originais • Valor das Variáveis de Folga ou Excesso

  12. Existem duas interpretações para o Reduced Cost: A quantidade que o coeficiente da função objetiva de uma variável original deve melhorar antes desta variável se tornar básica. A quantidade de penalização deverá ser paga se quisermos tornar uma variável básica Solução do ProblemaReduced Cost

  13. Existem duas interpretações para os Dual Prices: A quantidade pela qual a função objetiva será melhorada dado um incremento de uma unidade na constante de uma restrição Quanto estaríamos dispostos a pagar por uma unidade adicional de um recurso Solução do ProblemaReduced Cost

  14. LindoSintaxe Modelo • A função objetivo deve sempre aparecer no começo do modelo e deve ser iniciada pelo comando MAX ou MIN. • O fim da função objetivo é definido através de uma das seguintes expressões: • SUBJECT TO • S.T. • ST

  15. LindoSintaxe Modelo • O final das restrições é determinada pelo comando END. • O Comando END só é obrigatório se após as restrições aparecerem comandos do tipo GIN ou INT discutidos mais tarde • O nome de uma variável no LINDO pode conter até 8 caracteres • Começar por uma letra • Não conter um dos seguintes caracteres: • ! )+ - = < >

  16. LindoSintaxe Modelo • Opcionalmente podemos nomear as restrições de um modelo. O nome das restrições seguem as mesmas convenções dos nomes das variáveis • Para nomear uma restrição, inclua o nome, um parêntese, e a própria restrição em seguida • Exemplo: NOME) 2x + 4y <= 10

  17. LindoSintaxe Modelo • O LINDO não aceita parêntesis ( ) como indicadores de preferência de ordem de precedência. Todas as operações são executadas da esquerda para a direita. • Somente constantes (não variáveis) são permitidas do lado direito das restrições. • Somente variáveis e seus coeficientes (não constantes) podem ser colocados do lado esquerdo das restrições.

  18. LindoComandos Opcionais • Os comandos adicionais abaixo são colocados após o comando END ao final das restrições. • FREE <Variável> - Remove os limites de não negatividade imposta a todas as variáveis por default. • GIN <Variável> - Faz a <Variável> uma variável inteira geral. • INT <Variável> - Faz a <Variável> uma variável inteira binária.

  19. LindoFile|Log Output • Esse comando serve para se criar um arquivo contendo todos os resultados colocados na tela de resultados. • O comando é do tipo liga/desliga, isto é, a primeira vez, abre um arquivo (ativa o comando) e a segunda fecha este arquivo. • Um símbolo de check é colocado ao lado do menu do comando enquanto este estiver ativado

  20. O Caso do Vendedor de Frutas • Um vendedor de frutas pode transportar 800 caixas de frutas para sua região de vendas. Ele necessita transportar pelo menos 200 caixas de laranja e pelo menos 100 caixas de pêssegos e no máximo 200 caixas de tangerinas O vendedor obtêm um lucro por caixa de 20, 10 e 30 reais para laranjas, pêssegos e tangerina, respectivamente. De que forma ele deverá carregar o caminhão para obter o lucro máximo?

  21. O Caso do Vendedor de Frutas • Hipóteses • Tudo o que o vendedor levar será vendido. • Nada estragará no caminho • Função-Objetiva • Maximizar o lucro • Max 20x1 + 10x2 + 30x3

  22. O Caso do Vendedor de Frutas • Restrições de venda • Laranjas: x1> 200 • Pêssegos: x2> 100 • Tangerinas: x3< 200 • Restrição de Transporte • x1 + x2 + x3< 800

  23. + + Max 20 x 10 x 30 x 1 2 3 s.r. + + £ x x x 800 1 2 3 ³ 200 x 1 ³ x 100 2 £ x 200 3 ³ , x , x 0 x 1 2 3 O Caso do Vendedor de Frutas • Este problema está visivelmente em forma não padrão. Resolveremos usando o Lindo.

  24. O Caso do Vendedor de FrutasResolvendo Usando o Lindo

  25. O Caso do Vendedor de FrutasResolvendo Usando o Lindo

  26. O Caso do Vendedor de FrutasResolvendo Usando o Lindo

  27. O Caso do Vendedor de FrutasResolvendo Usando o Lindo

  28. O Caso do Vendedor de FrutasResolvendo Usando o Lindo

  29. Vamos verificar a solução do problema abaixo com a ajuda do Lindo, como já fizemos com o Excel na seção anterior:

  30. O Problema no Lindo • Variáveis sem restrições de sinal

  31. Solução

More Related