Académique Documents
Professionnel Documents
Culture Documents
Alexandre Rojas
Departamento de Informtica e Cincia da Computao-UERJ
Mestrando PET/COPPE/UFRJ
rojas@ime.uerj.br
Abstract
O uso de programas computacionais para soluo
de Problemas de Programao Linear PPL, vem
sendo largamente empregado pelas empresas. Alguns
destes softwares, de uso mais limitado, so
disponibilizados na Internet como forma de alavancar
as vendas da verso full.Um exemplo de software
encontrado na Internet e bastante utilizado o
WhatsBest que implementado como macro do MS
Excel e que
vem se apresentando como uma
alternativa de fcil uso a baixo custo. Entretanto,
restries deste software com as verses do Sistema
Operacional Windows em Portugus limitam sua
aplicabilidade.
O MS Solver, um suplemento (add in) do Excel,
sendo fornecido junto com o pacote Office e pouco
conhecido dos usurios de Pesquisa Operacional,
porm apresenta boa performance na soluo dos
problemas sem acrscimos de custo (para os usurios
do Excel) ou incompatibilidade com o Sistema
Operacional Windows em Portugus.
O presente artigo, baseado no Manual do MS Excel,
tem por objetivo apresentar o MS Solver como uma
ferramenta prtica e de fcil utilizao servindo como
alternativa ao ensino da Programao Linear e
utilizao nas empresas de pequeno e mdio porte que
objetivem resolver aspectos de otimizao etc.
utilizando uma ferramenta computacional.
Figura 1
Obs: A disposio das clulas no exemplo abaixo foram
colocadas com objetivo didtico, no representado
obrigatoriedade do programa.
Exemplo:
O exemplo utilizado a seguir ser empregado para
explicar a utilizao dos recursos do Solver:
Considere o seguinte PPL:
Max Z= 4x1+3x2+6x3 s.a.
R1 3x1+x2+3x3d 30
R2 2x1+2x2+3x3 d 40
Introduo
Este artigo apresenta informaes sobre o uso do Solver
do Microsoft Excel para soluo de Problemas de
Programao Linear, descrevendo como:
x
x
x
x
Definindo um problema
Para definir um problema usando o Solver, voc cria
primeiro um modelo de planilha, exatamente como faria
com o Microsoft Excel. Em seguida, voc escolhe
Solver no menu Ferramentas e especifica as clulas e
restries do problema na caixa de dilogo Parmetros
do Solver, mostrada na Figura 1, a seguir.
Figura 2
Onde:
As clulas C5,C6,C7,D5,D6,D7,E5,E6,E7,H5 e H6
contm os parmetros das equaes de soluo do PPL;
As clulas C8,D8,E8 e F8 contero a soluo do PPL;
As clulas F5,F6 e F7 contem, respectivamente, as
frmulas:
Figura 3
x
Especificar
problema
as
restries
do
Significado
Valor contido na clula Cl3
deve ser menor ou igual a 800
$C$13<=$D$13+$E$13
$C$13:$C$17>=0
$C$13:$C$17>=$DSl3:$D
$17
$C$10:$E$10 numero
$C$10:$E$10 bin
Significado
O valor contido na clula C13
deve ser maior ou igual ao valor
contido na clula D13.
O valor contido na clula C13
deve ser menor ou igual suma
dos valores contidos nas clulas
D13 e E13.
Os valores contidos nas clulas
C13, C 14, C15, C16 e C17
devem ser maiores que ou
iguais a zero.
o valor contido na clula Cl3
deve ser maior
ou igual ao valor contido na
clula D13; a clula C14 deve
ser maior ou igual a clula D14,
e assim por diante.
A soluo do problema deve ser
um nmero inteiro. Somente as
clulas variveis podem ser do
tipo nmero
A soluo do problema deve ser
binria. Somente as clulas
variveis podem ser do tipo bin
ou
exclua
restries
conforme
Figura 4
Na caixa "Referncia da clula", digite a referncia
nome da clula ou intervalo de clulas cujo valor voc
deseja restringir.
Voc pode digitar a referncia ou nome, selecionar a
clula ou intervalo das clulas na planilha.
Na caixa entre a caixa "Referncia da clula" e a caixa
"Restrio", selecione a relao (=,<=,>= ,num ou bin)
que voc deseja entre a clula referida e a restrio que
voc inserir na caixa "Restrio".
Se voc no selecionar relao, <=(menor ou igual a)
ser usada. Se voc selecionar num, "numero (equivale
a Inteiro nas verses anteriores do Excel) aparecer na
caixa "Submeter s Restries"
Na caixa "Restrio", digite um nmero, uma referncia
de clula, um nome, ou uma frmula.
Se voc inserir uma referncia de clula, poder digitar
a referncia ou selecionar a clula ou intervalo de clula
na planilha.
Somente clulas ajustveis podem ser selecionadas com
nmero ou bin.
Resolvendo um problema
O processo de soluo do Solver do Microsoft Excel
envolve sucessivas tentativas ou interaes. Durante
cada iterao um novo conjunto de valores das clulas
ajustveis usado para recalcular a planilha, e as
restries e valores ideais de clulas so examinados. O
processo termina quando uma soluo encontrada
com preciso aceitvel, quando no h possibilidade de
prosseguir, ou quando o tempo mximo permitido ou o
nmero mximo de iteraes forem atingidos.
O boto "Resolver", na caixa de dilogo Parmetros do
Solver, inicia o processo de soluo do problema. Ao
escolher o boto "Resolver" voc deve ter definido
anteriormente um problema especificando, uma clula
na caixa "Clulas variveis", uma ou mais restries, ou
ambas. Na primeira vez que voc definir um
determinado problema, siga as orientaes descritas em
"Definindo um problema", anteriormente. Aps ter
definido o problema uma vez, voc pode salv-lo e
carreg-lo da prxima vez que quiser us-lo.
Quando voc escolhe o boto "Resolver", exibida
uma mensagem na barra de status, informando que o
Microsoft Excel est definindo o problema. Em
seguida, uma mensagem exibida na barra de status
informando quantas tentativas de soluo foram
exploradas at o momento.
Figura 5
Para alterar a referncia de clula, digite a nova
referncia ou selecione a nova clula ou intervalo de
clulas na planilha.
Para modificar a relao entre as clulas e a restrio,
selecione a nova relao contida na caixa entre a caixa
"Referncia de clula" e a caixa "Restrio".
Para modificar a restrio, digite um nmero referncia
ou nome de clula, ou formula na caixa "Restrio".
Escolha o boto "0K" e suas restries sero refletidas
na caixa de dilogo Parmetros do Solver. Se voc
escolher o boto "Cancelar", a restrio permanece
inalterada e a caixa de dilogo Parmetros do Solver
reaparecer.
Figura 6
1.
Figura 7
Cada uma das opes contidas na caixa de dilogo
Opes do Solver tem uma configurao padro
apropriada para a maioria dos problemas, de modo que
voc no precisa alterar a configurao, exceto em
situaes especiais. Usando a caixa de dilogo Opes
do Solver, voc pode definir as opes abaixo.
x
Tempo de soluo e nmero de iteraes Tempo de soluo do problema
x
Escalonamento automtico - Voc pode usar o
escalonamento automtico para procurar uma soluo
para um problema envolvendo clulas de entrada com
diferentes ordens de magnitude. Por exemplo, voc
seleciona a caixa de verificao "Usar escala
automtica" se estiver planejando investir R$
100.000,00 em cinco diferentes aes da bolsa, e estiver
procurando o melhor retorno para o investimento. As
clulas variveis estariam em milhares, ao passo que a
clula de destino seria um valor em porcentagem, seis
ou sete ordens de magnitude menor que as clulas
variveis.
Se voc selecionar a caixa de verificao "Usar escala
automtica" certifique-se de que os primeiros valores
das clulas variveis sejam representativos dos valores
finais que voc espera, antes de selecionar o boto
"Resolver",
x
Mostrar resultados de iterao -Se voc quer
que o Solver faa uma pausa a cada tentativa de
soluo, de modo que voc possa examinar os valores
intermedirios da planilha, selecione a caixa de
verificao "Mostrar resultado de iterao".
x
O relatrio Resposta apresenta a clula
nomeada na caixa "Definir clula" e as clulas
ajustveis, com seus valores originais e finais. Ela
tambm mostra as restries e as informaes sobre as
restries.
x
Figura 8
x
O relatrio Sensibilidade exibe informaes
de uma anlise de sensibilidade sobre a soluo ideal. A
anlise de sensibilidade indica o grau de sensibilidade
que uma soluo ideal apresenta s mudanas nas
frmulas usadas para calcular a clula meta, e o lado
direito da equao de restrio.
Esta verso do relatrio Sensibilidade apresenta uma
lista das clulas ajustveis em ordem de referncia e
nome de clula, o valor final da clula e o gradiente
reduzido para a clula. O gradiente reduzido mede o
crescimento do aumento objetivo por unidade na clula
ajustvel.
Figura 10
O Microsoft Excel cria cada relatrio em uma planilha
separada. Para imprimir o relatrio, ative o documento
do relatrio e escolha o comando Imprimir no menu
Arquivo.
Figura 9
Esta verso do relatrio Sensibilidade inclui o seguinte
para cada clula ajustvel: referncia e nome da clula,
seu valor final, o custo reduzido, o coeficiente da
funo objetiva para a clula, a quantidade do aumento
deste coeficiente antes que haja uma alterao ,o valor
ideal de qualquer uma das clulas ajustveis, e a
quantidade de diminuio antes que uma alterao
ocorra. O custo reduzido mede o crescimento do
aumento objetivo por unidade na clula altervel.
Para cada clula de restrio, o relatrio de
sensibilidade inclui a referncia da clula, o nome da
clula, o valor final da clula, o "shadow price"(Preo
Sombra ) da restrio, o valor para o lado direito da
equao de restrio, a medida do crescimento daquele
valor antes que haja uma alterao no valor ideal de
qualquer uma das clulas ajustveis, e a medida da
diminuio antes que uma alterao ocorra. O "shadow
price" mede o crescimento do aumento objetivo por
unidade no lado direito da equao de restrio.
x
O relatrio Limites apresenta uma lista
contendo a clula meta e as clulas ajustveis, com seus
valores, limite inferior e superior e resultados meta. O
limite inferior o menor valor que a clula ajustvel
pode assumir enquanto todas as clulas ajustveis so
mantidas fixas e ainda satisfazem as restries. O limite
superior o maior de tais valores. O Resultado Meta o
valor da clula meta quando a clula altervel est em
seu limite inferior ou superior.
Figura 11
1.
No menu Ferramentas, escolha Solver.
2.
Se voc ainda no fez isso, defina o problema
que deseja salvar~
3.
Escolha o boto "Opes".
4.
Selecione e insira as opes que voc deseja
salvar, se existir alguma.
5.
Escolha o boto "Salvar modelo"
6.
Na caixa "Selecionar rea do modelo", digite a
referncia ou nome da clula ou intervalo de clulas no
qual voc deseja salvar o problema modelo.
Voc pode digitar a referncia ou selecionar a clula na
planilha.
Cuidado
O Microsoft Excel sugere um intervalo de clulas
comeando na clula atual, grande o suficiente para
abrigar todas as especificaes e opes do problema.
Figura 12
Cuidado Qualquer parmetro ou opo do Solver que
no tenha sido salvo e que esteja exibido nas caixas de
dilogo Parmetros do Solver e Opes do Solver ser
permanentemente excludo quando voc carregar uma
nova especificao de problema. Se voc no quiser
que as selees atuais sejam apagadas, salve os
parmetros e opes atuais usando o boto "Salvar
Modelo" na caixa de dilogo Opes do Solver.
1.
No menu Ferramentas, escolha Solver.
2.
Escolha o boto "Opes".
3.
Escolha o boto "Carregar modelo".
Se a caixa de dilogo Parmetros do Solver contiver
selees, voc ser avisado de que as selees
existentes sero apagadas.
4.
Na caixa "Selecionar rea do modelo", digite a
referncia ao intervalo de clulas que contm as
especificaes do problema.
5.