Você está na página 1de 31

Pesquisa Operacional

na Tomada de Decises

Resolvendo Programao Linear


Em um Microcomputador

Captulo 3.1_Apendice_A

Contedos da Seo
Programao Linear

Software Lindo
Verso Windows e comandos
Formulao do problema
Soluo do problema
Reduced cost
Sintaxe modelo
Comandos opcionais
File | Log output

O Caso do Vendedor de Frutas


Captulo 3.1_Apendice_A

Programao Linear

Software Lindo

Lindo (Linear Interactive Discrete Optimizer) um


software interativo para resoluo de problemas de
programao

Linear
Quadrtica
Inteira

Utilizado para resoluo de problemas reais de mais de


10.000 variveis, dispe de caractersticas que mostram
os passos e quadros intermedirios do mtodo simplex
Captulo 3.1_Apendice_A

Software Lindo

Verso Windows

Captulo 3.1_Apendice_A

Lindo

Comandos
Comandos

MAX
Inicia um problema de maximizao
MIN
Inicia um problema de minimizao
END
Termina a entrada de um problema

Operadores

Menor
Maior
Menor ou igual
Maior ou igual

<
>
<=
>=

Captulo 3.1_Apendice_A

Lindo

Formulao de Problema
A seguinte entrada uma formulao vlida de uma problema

Max 2 x 3 y

Max 2x 3y

s.t.
4 x 3 y 10

s.t.

3x 5 y 12
x, y 0
Captulo 3.1_Apendice_A

4x 3y 10
3x 5y 12
END

Lindo

Formulao de Problema
Solve

Se a sintaxe no estiver correta, a seguinte mensagem aparecer:


An error occured during compilation on line: n
Captulo 3.1_Apendice_A

Lindo

Soluo do Problema
Se nenhum erro ocorrer
durante a compilao, a
tela ao lado aparecer.
Se a anlise de
sensibilidade for
desejada responda sim

Captulo 3.1_Apendice_A

Lindo

Soluo do Problema

Quando o problema estiver resolvido, uma janela


denominada Reports Window ou janela de relatrios
aparecer automaticamente.
Essa janela de relatrios o lugar onde todos os
resultados sero lanados.
Se dois problemas forem resolvidos e houver espao na
janela, suas resolues aparecero uma seguida da outra
Para se examinar essa janela basta clicar no menu
Windows|Reports Windows (ver slide a seguir)
Captulo 3.1_Apendice_A

Lindo

Soluo do Problema

Captulo 3.1_Apendice_A

Lindo

Soluo do Problema
Valor timo da Funo
Objetivo

Valor das Variveis Originais

Valor das Variveis de Folga


ou Excesso
Captulo 3.1_Apendice_A

Soluo do Problema

Reduced Cost

Existem duas interpretaes


para o Reduced Cost:
A quantidade que o
coeficiente da funo
objetiva de uma varivel
original deve melhorar
antes desta varivel se
tornar bsica.
A quantidade de
penalizao dever ser
paga se quisermos tornar
uma varivel bsica
Captulo 3.1_Apendice_A

Soluo do Problema

Reduced Cost

Existem duas interpretaes


para os Dual Prices:
A quantidade pela qual a
funo objetiva ser
melhorada dado um
incremento de uma
unidade na constante de
uma restrio
Quanto estaramos
dispostos a pagar por uma
unidade adicional de um
recurso
Captulo 3.1_Apendice_A

Lindo

Sintaxe Modelo

A funo objetivo deve sempre aparecer no comeo do


modelo e deve ser iniciada pelo comando MAX ou MIN.
O fim da funo objetivo definido atravs de uma das
seguintes expresses:

SUBJECT TO
S.T.
ST

Captulo 3.1_Apendice_A

Lindo

Sintaxe Modelo

O final das restries determinada pelo comando


END.
O Comando END s obrigatrio se aps as restries
aparecerem comandos do tipo GIN ou INT discutidos
mais tarde
O nome de uma varivel no LINDO pode conter at 8
caracteres

Comear por uma letra


No conter um dos seguintes caracteres:
! )+ - = < >

Captulo 3.1_Apendice_A

Lindo

Sintaxe Modelo

Opcionalmente podemos nomear as restries de um


modelo. O nome das restries seguem as mesmas
convenes dos nomes das variveis
Para nomear uma restrio, inclua o nome, um
parntese, e a prpria restrio em seguida

Exemplo: NOME) 2x + 4y <= 10

Captulo 3.1_Apendice_A

Lindo

Sintaxe Modelo

O LINDO no aceita parntesis ( ) como indicadores de


preferncia de ordem de precedncia. Todas as
operaes so executadas da esquerda para a direita.
Somente constantes (no variveis) so permitidas do
lado direito das restries.
Somente variveis e seus coeficientes (no constantes)
podem ser colocados do lado esquerdo das restries.

Captulo 3.1_Apendice_A

Lindo

Comandos Opcionais

Os comandos adicionais abaixo so colocados aps o


comando END ao final das restries.
FREE <Varivel> - Remove os limites de no
negatividade imposta a todas as variveis por default.
GIN <Varivel> - Faz a <Varivel> uma varivel
inteira geral.
INT <Varivel> - Faz a <Varivel> uma varivel inteira
binria.
Captulo 3.1_Apendice_A

Lindo

File|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 smbolo de check colocado ao lado do menu do
comando enquanto este estiver ativado
Captulo 3.1_Apendice_A

O Caso do Vendedor de Frutas


Um vendedor de frutas pode transportar 800 caixas de
frutas para sua regio de vendas. Ele necessita
transportar pelo menos 200 caixas de laranja e pelo
menos 100 caixas de pssegos e no mximo 200 caixas
de tangerinas O vendedor obtm um lucro por caixa de
20, 10 e 30 reais para laranjas, pssegos e tangerina,
respectivamente. De que forma ele dever carregar o
caminho para obter o lucro mximo?
Captulo 3.1_Apendice_A

O Caso do Vendedor de Frutas


Hipteses

Tudo o que o vendedor levar ser vendido.

Nada estragar no caminho

Funo-Objetiva

Maximizar o lucro

Max 20x1 + 10x2 + 30x3

Captulo 3.1_Apendice_A

O Caso do Vendedor de Frutas


Restries de venda

Laranjas: x1 > 200

Pssegos: x2 > 100

Tangerinas: x3 < 200

Restrio de Transporte

x1 + x2 + x3 < 800

Captulo 3.1_Apendice_A

O Caso do Vendedor de Frutas


Max20 x1 10 x2 30 x3
s.r.
x1 x2 x3 800
x1 200
x2 100
x3 200
x1 , x2 , x3 0
Este problema est visivelmente em forma no
padro. Resolveremos usando o Lindo.
Captulo 3.1_Apendice_A

O Caso do Vendedor de Frutas

Resolvendo Usando o Lindo

Captulo 3.1_Apendice_A

O Caso do Vendedor de Frutas

Resolvendo Usando o Lindo

Captulo 3.1_Apendice_A

O Caso do Vendedor de Frutas

Resolvendo Usando o Lindo

Captulo 3.1_Apendice_A

O Caso do Vendedor de Frutas

Resolvendo Usando o Lindo

Captulo 3.1_Apendice_A

O Caso do Vendedor de Frutas

Resolvendo Usando o Lindo

Captulo 3.1_Apendice_A

Vamos verificar a soluo do problema abaixo com a ajuda do


Lindo, como j fizemos com o Excel na seo anterior:

Max Z 3 x1 2 x2 x3 6 x4 5 x5 4 x6
s.r. x1 x2 x3 10
x4 x5 x6 15
3 x1 2 x2 x4 3 x5 20
x2 x3 2 x4 x6 30
x1 , x2 , x3 0
x4 , x5 , x6 sem restries de sinal
Captulo 3.1_Apendice_A

O Problema no Lindo

Variveis sem restries de sinal


Captulo 3.1_Apendice_A

Soluo

Captulo 3.1_Apendice_A

Você também pode gostar