Você está na página 1de 9

1

Utilizao do SOLVER do EXCEL

Utilizao do SOLVER do EXCEL


Jos Fernando Oliveira
DEEC FACULDADE DE ENGENHARIA DA UNIVERSIDADE DO PORTO
MAIO 1998

Para ilustrar a utilizao do Solver na resoluo de problemas de Programao Linear (PL)


iremos usar como exemplo o problema de refinaria de petrleo. O modelo PL deste problema
o seguinte:
Max LUCRO = 117 x1 + 111 x2
Suj. a:

5 x1 + 3 x2 1500
7 x1 + 9 x2 1900
2 x1 + 9 x2 1000
9 x1 + 5 x2 500
7 x1 + 9 x2 300
x1, x2 0

O primeiro passo consiste em criar uma folha de clculo com a informao contida no modelo.
Nessa folha de clculo deveremos ter:

As clulas onde sero colocados os valores das variveis de deciso.

Os coeficientes da funo objectivo.

A frmula que relaciona estes coeficientes com as variveis de deciso a funo objectivo
propriamente dita.

Os coeficientes da matriz das restries.

A frmula que relaciona estes coeficientes com as variveis de deciso o lado esquerdo
das restries.

As constantes que constituem os lado direito das restries.

Na figura seguinte apresenta-se o aspecto de uma folha de clculo com esta informao, mais
texto adicional que apenas serve para nos ajudar a compreender o que est em cada stio e no
tem qualquer funo especfica para o Solver.

Investigao Operacional 1

LEEC FEUP

Utilizao do SOLVER do EXCEL

Algumas destas clulas contm frmulas, conforme se pode ver na figura seguinte:

Investigao Operacional 1

LEEC FEUP

Utilizao do SOLVER do EXCEL

Construda esta folha de clculo falta ainda definir o sentido da optimizao (maximizao ou
minimizao) e o tipo de restries (tipo de desigualdade ou igualdade) e de variveis.
Para isso j necessrio invocar a ferramenta Solver. Este suplemento do Excel no
instalado aquando da instalao do Excel em modo tpico ou mnimo. Apenas instalada em
modo completo ou personalizando a instalao.
Em termos prticos trs situaes podem ocorrer:

O comando Solver... est disponvel no menu Ferramentas o Solver est pronto a ser
utilizado.

O comando Solver... no est disponvel no menu Ferramentas. Deve-se chamar o


comando Suplementos... desse mesmo menu.

Se aparecer a opo Suplemento Solver basta seleccion-la e o comando Solver...


passar a estar disponvel no menu Ferramentas.

Se no aparecer esta opo necessrio alterar a instalao do Excel, usando o CD de


instalao.

Invocando ento o comando Solver... surge a seguinte caixa:

Como clula de destino iremos indicar a localizao da funo objectivo.

Seguidamente indicaremos o sentido da optimizao, isto , se se trata de um problema de


maximizao ou de minimizao. A opo Valor de corresponde a encontrar os valores
das variveis de deciso que tornam a funo objectivo o mais prxima possvel do valor
indicado, sendo portanto equivalente minimizao da diferena para esse valor.

No campo Por alterao das clulas indicaremos a referncia das clulas correspondentes
s variveis de deciso.

Investigao Operacional 1

LEEC FEUP

Utilizao do SOLVER do EXCEL

As restries sero introduzidas atravs do boto Adicionar que abre a seguinte caixa de
dilogo:

Na caixa Referncia da clula introduz-se a referncia da clula com o lado esquerdo


da restrio.

Na caixa Restrio introduz-se a referncia da clula com o lado direito da restrio.


No menu do meio podemos seleccionar o tipo de restrio em causa, isto , se a
restrio de , ou =. Tambm aqui que se declaram as variveis como inteiras ou
binrias, isto quando o modelo que queremos resolver assim o exige, o que no o
caso deste exemplo que estamos a usar. Introduzidos os dados referentes a uma
restrio pressionamos o boto Adicionar. No esquecer de introduzir as restries
de no negatividade das variveis (x1, x2 0).

Depois de termos adicionado sucessivamente todas as restries terminamos


pressionando o boto Cancelar.

Na figura seguinte encontra-se a tabela completamente preenchida:

Investigao Operacional 1

LEEC FEUP

Utilizao do SOLVER do EXCEL

possvel introduzir mais do que uma restrio de uma vez, usando as capacidades de range
do Excel, desde que tenham o mesmo tipo de desigualdade. Por exemplo, em vez de
introduzirmos as trs restries: $D$16 <= $E$16; $D$17 <= $E$17; $D$18 <= $E$18;
podemos introduzir uma s da forma: $D$16:$D$18 <= $E$16:$E$18.
Antes de pressionar o boto Solucionar convm dar uma vista de olhos caixa de dilogo
correspondente ao boto Opes:

Para alm da possibilidade de se guardarem modelos distintos para uma mesma folha de clculo
(um mesmo problema) nesta caixa possvel configurar vrios parmetros da resoluo dos
problemas. Para alm daqueles cujo nome bvio, as escolhas do fundo (Estimativas,
Derivadas e Procura) dizem respeito Programao no Linear, que ultrapassa o mbito
deste guio. Para os problemas de PL crucial verificar se a opo Assumir modelo linear
est verificada.
Feitas as verificaes finais pode-se passar resoluo do modelo atravs do boto
Solucionar.
Se a resoluo correr bem, isto , se no houver nenhum erro na folha de clculo nem no
modelo, surge o seguinte dilogo:

Investigao Operacional 1

LEEC FEUP

Utilizao do SOLVER do EXCEL

muito importante ler a mensagem que surge no cimo da janela. Neste caso -nos dito que o
Solver encontrou uma soluo que, como verifica todas as restries e as condies de
optimimalidade, a soluo ptima. O Solver pode ainda gerar relatrios que analisam a
soluo encontrada. Eles so criados como folhas do mesmo livro onde estamos a trabalhar.
Particularmente interessantes so os relatrios Resposta e Sensibilidade. Vamos ento
seleccionar esses dois relatrios e analisar o seu contedo.

Investigao Operacional 1

LEEC FEUP

Utilizao do SOLVER do EXCEL

Neste relatrio dada informao sobre a soluo ptima (clulas ajustveis) e o valor ptimo
da funo objectivo (Clula de destino). Neste caso x1 = 271,4285714 e x2 = 0, com
F.O. = 31757,14286. Note-se que, como tivemos o cuidado de colocar nomes imediatamente
por cima das clulas que continham as variveis de deciso e a funo objectivo, estas etiquetas
surgem agora no relatrio, tornando-o bastante mais legvel.
No que diz respeito s restries de salientar a informao sobre a distncia a que, na soluo
ptima, estamos do limite da restrio. Por exemplo, apenas temos 1500 barris de crude A
disponveis. No entanto estamos a gastar apenas 1357,142857 o que d uma folga de
142,8571429. Isso significa que esta restrio no est activa, isto , o vrtice correspondente
soluo ptima no se encontra sobre esta restrio (o mal traduzido No arquivar da coluna
Estado). O mesmo no se pode dizer da restrio respeitante ao crude B que totalmente
gasto. Uma anlise semelhante se pode fazer relativamente s restries de . O no estarem
activas significa que as quantidades associadas a essas restries esto acima daquilo que era
exigido.
O segundo relatrio faz anlise de sensibilidade soluo ptima, isto , analisa como podem
variar as constantes do problema, nomeadamente os coeficientes da funo objectivo e os lados
direitos das restries, sem que a soluo ptima sofra alteraes substanciais. Esta anlise
baseia-se na teoria do mtodo simplex, pelo que se as variveis forem inteiras (o problema no
pode ser resolvido directamente pelo mtodo simplex) este relatrio no est disponvel pois
no tem qualquer significado.

Investigao Operacional 1

LEEC FEUP

Utilizao do SOLVER do EXCEL

No primeiro quadro (Clulas ajustveis) analisam-se os coeficientes da funo objectivo. A


seguir repetio do valor das variveis na soluo ptima apresentam-se os custos marginais
(na coluna Reduzido Custo) das variveis. Como estamos na soluo ptima de um problema
de maximizao eles apenas poderiam ser negativos ou nulos. Em seguida apresenta-se o valor
do coeficiente da varivel na funo objectivo e o mximo aumento e mxima diminuio
admissveis. Admissveis em que sentido? Sem que x1 = 271,4285714 e x2 = 0 deixem de ser a
soluo ptima. evidente que ao alterar um coeficiente na funo objectivo o valor desta se
altera, mesmo mantendo o valor das variveis. Mas o que se est aqui a analisar , no fundo,
como podemos variar a inclinao do plano que representa a funo objectivo sem que a
soluo ptima salte para outro vrtice. Tomando como exemplo a varivel x1, o coeficiente
pode variar entre 117 30,6667 e 117 + sem que haja alterao da soluo ptima.
No segundo quadro (Restries) feita uma anlise de sensibilidade ao valor do lado direito
das restries. Ao alterar um destes valores estamos a alterar uma restrio e consequentemente
a regio admissvel do problema. Isso poder ter como consequncia que a soluo ptima deixe
de estar num dado vrtice e salte para outro vrtice diferente. Os valores dados nas colunas
Permissvel Aumentar e Permissvel Diminuir so os valores que se podem somar e subtrair
ao valor inicial (coluna Restrio Lado direito) sem que a soluo ptima mude de vrtice.
Note-se que se essa restrio contiver o vrtice ptimo ento, mesmo sem mudar de vrtice, a
soluo ptima, e consequentemente o seu valor ptimo, alteram-se. No entanto so alteraes
em torno de uma soluo com a mesma estrutura pois no h mudanas no conjunto de
variveis que formam a base da soluo ptima do problema.
Finalmente a coluna Preo Sombra. J tnhamos visto que se estava a gastar todo o crude B
disponvel (1900 barris). Ento, provavelmente, se tivssemos mais crude B poderamos ter um
lucro maior (pelo menos enquanto no fossem os outros tipos de crude a restringir a produo).
O preo sombra d exactamente o acrscimo no lucro por cada unidade de recurso (barril de
crude B) adicional. Neste caso se tivssemos 1901 barris de crude B teramos mais 16,71428571
unidades de lucro, e se tivssemos 1902 barris de crude B teramos mais 2 16,71428571

Investigao Operacional 1

LEEC FEUP

Utilizao do SOLVER do EXCEL

unidades de lucro, etc. Esta relao acrscimo de recurso / acrscimo de lucro mantm-se
enquanto o vrtice ptimo no se alterar, isto , dentro dos valores dados pelo aumento e
diminuio permissveis. Note-se que no caso do crude A este valor zero. De facto, se no
gastarmos todo o recurso disponvel no era comprando mais que aumentvamos o lucro!

Investigao Operacional 1

LEEC FEUP