Apostila PO 2016
Apostila PO 2016
Operacional
Professor José Arnaldo Barra Montevechi
[email protected]
http://www.iepg.unifei.edu.br/arnaldo/
2016
Curso de Pesquisa Operacional 2
1.1 Introdução
O objetivo do curso é apresentar alguns MÉTODOS MATEMÁTICOS essenciais à Pesquisa
Operacional (PO). Este capítulo pretende dar a origem e as idéias fundamentais da PO.
Infelizmente, um curso introdutório de PO não pode responder completamente as perguntas:
a) O que deve (o aluno) aprender sobre PO se pretende ser um economista (dirigente,
gerente, administrador) mais que um especialista?
b) O que deve (o aluno) aprender sobre PO tendo em vista que deseja aplicá-la a problemas
reais?
1.3 Conceitos
Conceito 1: PO é a aplicação do método científico, por equipes interdisciplinares, a problemas
que dizem respeito ao controle de sistemas organizados (homem-máquina) com a finalidade de
obter as soluções que melhor satisfazem aos objetivos da organização, como UM TODO.
Conceito 2: A PO se esforça ao máximo para compensar a incerteza, mas não a pode eliminar.
(Pois é importante assinalar que como estão implicados fatores humanos e máquinas, é
fornecida uma estimativa da incerteza no resultado previsto e nos valores, nas eficiências e nos
custos da ação proposta).
Conceito 3: A PO firmou-se como uma atividade que pode colocar a serviço da gerência - e
realmente o faz - novas atitudes, novos conceitos e novas técnicas; ajudando-a a resolver
problemas complexos e tomar decisões importantes.
estatísticos e/ou matemáticos cuja aplicação exige na maioria das vezes o emprego de
computadores.
2.1 Introdução
Um estudo de PO consiste em construir um modelo da situação física. Um modelo de PO é
definido como uma representação idealizada de um sistema organizacional. Este sistema pode
já ser existente ou pode ainda ser uma idéia a espera de execução.
No primeiro caso, o objetivo do modelo é analisar as operações do sistema para verificar sua
performance. No segundo, o objetivo e identificar a melhor estrutura do futuro sistema.
A complexidade de um sistema real resulta do grande número de variáveis que comandam as
operações do sistema, embora um sistema real possa envolver um número substancial de
variáveis, geralmente uma pequena fração destas variáveis domina as operações do sistema.
Então, a simplificação do sistema real em termos de um modelo condensado, identificando
apenas as variáveis dominantes e as relações entre elas, é o empregado.
Cada uma das variáveis acima afeta (direta ou indiretamente) o nível da produção. É uma tarefa
ingrata tentar estabelecer relações explicitas entre estas variáveis e o nível de produção.
Definindo o sistema em função de suas variáveis dominantes, ele pode ser representado por
duas variáveis:
1a - Uma, representando a taxa de produção do item;
2a - Uma, representando sua razão de consumo.
Para se determinar a taxa de produção, variáveis tais como avaliação máquina - hora, homem-
hora, sequenciamento e avaliação do material devem ser consideradas no cálculo da taxa de
produção.
A razão de consumo é determinada em termos das variáveis associadas com o Departamento
de Marketing.
É fácil agora pensar em termos do sistema real adotado. Para a taxa de produção e consumo,
podem-se estabelecer medidas para o excesso ou falta em estoque para um dado nível de
produção.
Um modelo abstrato do sistema pode então ser construído para balancear os custos do excesso
ou falta de estoque. Por exemplo, pode-se estar interessado em determinar o nível de produção
para um máximo de itens em estoque abaixo de certo limite.
Em geral, não há regras fixas para determinar o nível de abstração citado. A validade do modelo
representando o sistema depende principalmente da criatividade, insight, e imaginação dos
analistas de PO e a equipe de trabalho no projeto.
Embora não seja possível fixar regras acerca de como um modelo é construído, pode-se socorrer
das presentes idéias sob os possíveis tipos de modelos de PO, suas estruturas e características
gerais.
Os modelos simulados e heurísticos não têm nenhuma estrutura fixada, um modelo matemático
incluiu três conjuntos fundamentais de elementos, sendo eles:
c) FUNÇÃO OBJETIVO (FO): Define a medida de efetividade do sistema como uma função
matemática de suas variáveis de decisão. Por exemplo, se o objetivo do sistema é maximizar
Curso de Pesquisa Operacional 10
o lucro total, a função objetiva deve especificar o lucro em termos das variáveis de decisão.
Em geral, a solução ótima do modelo é obtida quando os melhores valores correspondentes
das variáveis de decisão são substituídos na PO, enquanto satisfazem as restrições. Os
modelos matemáticos, em PO, podem ser especificados, geralmente, como determinar os
valores das variáveis de decisão xj, j = 1, 2,..., n a qual otimiza z = f (x1, x2,..., xn) sujeito a
uma série de restrições. Na maioria dos sistemas reais, as restrições de não negatividade
aparece como condição natural.
Por exemplo, na determinação da política do nível ótimo de estoque, o verdadeiro objetivo deve
incluir os objetivos (metas) conflitantes dos departamentos de produção, material, vendas e
finanças.
Quando o critério objetivo do modelo representa algum, mas não todos os aspectos conflitantes,
chamam de uma solução sub ótima, e que pode não ser a melhor para a organização como um
todo.
Após o modelo matemático ser construído, pode ser necessário simplificá-lo para ser tratado
analiticamente. Algumas simplificações comuns incluem:
a) Transformar variáveis discretas em contínuas;
b) Linearizar funções não lineares;
c) Eliminar algumas das restrições.
alguns desses erros. Outra verificação muito usada consiste em verificar se todas as expressões
matemáticas estão dimensionalmente corretas.
Finalmente, ou a equipe de PO, ou o pessoal que deverá tomar decisões podem observar
detalhes na solução obtida que surgiram particulares omissões ou erros no modelo. Outros
procedimentos mais sistemáticos podem ainda ser empregados.
2.8 Conclusão
Os problemas de PO têm as seguintes características:
1) Compilação de dados anteriores, relativos a operações de produção, vendas ou outros
setores da empresa;
2) Análise dos dados colhidos através de técnicas estatísticas;
3) Criação do modelo matemático destinado a previsão e decisão no tocante as mesmas
operações no futuro.
Curso de Pesquisa Operacional 13
O curso baseia-se na aplicação da PO a uma grande variedade de problemas que podem ser
representados por um pequeno número de problemas típicos.
O computador mostra a saída de resultados que (poderiam) teriam sido obtidos se o critério de
decisão tivesse sido usado. Números aleatórios são usados para simular chegadas e tempo de
serviços.
dispõe de 30.000 horas para a montagem destes produtos (750 montadores trabalhando 40
horas por semana) e de 20.000 horas para decoração (500 decoradores trabalhando 40 horas
por semana). Quanto de cada um dos modelos deve ser produzido durante esta última semana
a fim de maximizar o lucro? Admita que todas as unidades possam ser vendidas.
Definindo o objetivo
Sabendo que a matéria prima
necessária é obtida sem problemas,
Giapetto tem como objetivo maximizar
o lucro semanal (receitas - custos).
Vamos então formular
matematicamente a situação de
Giapetto com o objetivo de maximizar
o lucro semanal.
Curso de Pesquisa Operacional 21
Primeiro ponto
importante: Variáveis de
decisão
Em qualquer modelo de PL, as variáveis
de decisão devem descrever
completamente as decisões a serem
feitas.
Caso de Giapetto: quantos soldados e
trens devem ser feitos na semana?
Variáveis de decisão
Segundo ponto
importante:
Função objetivo
Em qualquer modelo de PL, o decisor
quer maximizar ou minimizar alguma
função das variáveis de decisão.
Caso de Giapetto: custos fixos (aluguel,
seguro) não depende dos valores de X1
e X2, assim ele pode se concentrar em
maximizar a venda da semana.
Curso de Pesquisa Operacional 22
Função objetivo
Receitas e custos: podem ser expressos em termos
das variáveis X1 e X2.
Seria tolice Giapetto produzir mais soldados que ele
possa vender, assim assumimos que todos
brinquedos produzidos podem ser vendidos.
Receita da semana = receita dos soldados + receita
dos trens
Função objetivo
Variável
usualmente
utilizada
Curso de Pesquisa Operacional 23
Restrições
M.P. ilimitada, portanto não há
restrições.
Como, próximo passo, é necessário
expressar as restrições 1, 2 e 3, em
termo das variáveis de decisão: X1 e X2.
Restrição 1
não mais de 100 h de acabamento
Restrição 2
não mais de 80 h de carpintaria
Restrição 2: X1 + X2 80
Restrição 3
venda máxima de soldados: 40
Restrição 3: X1 40
Coeficientes Usualmente
tecnológicos: representam a
refletem a quantia quantidade de
usada para recursos
diferentes produtos. disponíveis.
Curso de Pesquisa Operacional 25
• X1 0
• X2 0
Significa que
X1 e X2
precisam satisfazer Resumindo
todas as restrições
P.L. - todos os
termos X são de
max Z = 3X1 + 2X2 expoente 1 e as
sujeito a: restrições são
inequações
2X1 + X2 100 lineares
X1 + X2 80
X1 40 O problema de Giapetto
é típico de muitos outros,
X1 0 onde precisa-se
maximizar lucros
X2 0 sujeitos a recursos
limitados
2) Uma empresa fabrica carros e caminhonetes. Cada veículo precisa ser trabalhado nas
seções de pintura e montagem. Se a seção de pintura trabalhar só com caminhonetes, 40
por dia podem ser pintados. Se estiver trabalhando somente com carros, 60 por dia é sua
capacidade. Se a seção de montagem estiver trabalhando somente com caminhonetes,
50 podem ser montados por dia. O mesmo número é possível para carros se este for o
único produto na linha. Cada caminhonete contribui $300 para o lucro, e cada carro
$200. Obter a formulação matemática que determinará a programação de produção que
maximizará o lucro da empresa.
3) Supondo que a empresa do exemplo anterior, por necessidades dos vendedores, tem de
produzir pelo menos 30 caminhonetes e 20 carros diariamente, qual será a nova
formulação do problema?
Implicações implícitas da FO
em PL
max Z = 3X1 + 2X2
Definição
Região de solução para um problema de
PL: é o conjunto de todos os pontos que
satisfazem todas as restrições do
problema.
Região de solução
Restrições:
2X1 + X2 100 ok 2*40+20 100
X1 + X2 80 ok 40+20 80
X1 40 ok 40 40
X1 0 ok 40 0
X2 0 ok 20 0
Curso de Pesquisa Operacional 28
Região de solução
Restrições:
2X1 + X2 100 ok 2*15+70 100
X1 + X2 80 não 15+70 80
X1 40 ok 15 40
X1 0 ok 15 0
X2 0 ok 70 0
Região de solução
região de solução
Solução ótima
Solução ótima
A maioria dos problemas de PL, tem
somente uma solução ótima;
Alguns não tem solução ótima;
Alguns tem infinitas soluções.
2X1+3X2 6 (1)
3X2 6 - 2X1
6
X2 = 2 - 2/3X1
5
4 Região onde:
3 2X1+3X2 6
2
1
X1
Região onde:
1 2 3 4 5 6
2X1+3X2 6
Curso de Pesquisa Operacional 30
X1 40 pertencer a região de
solução é preciso
X1 0
satisfazer todas
X2 0
estas inequações.
X2
(2) (4)
120
B Polígono DGFEH - região de solução
100
D
80
G Região convexa simplex
60
40
F (3)
20
E A C
X1
H 20 40 60 80 100 120
Encontrando a solução
ótima
Após a identificação da região de solução,
nós devemos procurar a solução ótima, que
será o ponto da região que leva ao maior
valor de:
Z = 3X1+2X2
Curso de Pesquisa Operacional 31
Encontrando a solução
ótima
Para encontrar a solução ótima, nós
precisamos desenhar uma linha sobre a
qual todos os pontos levem ao mesmo valor
de Z.
Escolhe-se qualquer ponto da região de
solução:
(20, 0): Z = 3X1+2X2 = 60
Assim (20, 0) cai sobre a reta:
Z = 3X1 + 2X2 = 60
X2 = 30 - 3/2X1
Encontrando a solução
ótima
3X1 + 2X2 = 60
tem coeficiente angular = -3/2
Assim todas as retas 3X1+2X2 = constante
terão o mesmo coeficiente angular.
X2
(2) (4)
120
B Retas iso-lucro
100
D 80
G
Indica o ponto ótimo - G (20, 60)
60
40
F (3)
20
E A C
X1
H 20 40 60 80 100 120
X2 = 30 - 3/2 X1
Curso de Pesquisa Operacional 32
Lucro de Giapetto
4.4.1 Exemplos
Resolver graficamente os exercícios 1, 2 e 3, formulados anteriormente no item 4.3, e as
seguintes formulações:
1) max z = 5x1 + 2x2
sujeito a:
x1 3
x2 4
x1 + 2x2 9
x1 0
x2 0
2) max z = 2x1 -1x2
sujeito a:
x1 – x2 1
2x1 + x2 6
x1 0
x2 0
E qualquer outra formulação, com maior número de variáveis, também sempre se enquadrará
em um destes casos.
A empresa tem no momento $ 40 milhões para investir; e estima-se que no primeiro ano estarão
disponíveis $ 20 milhões para investimento. A empresa pode comprar qualquer fração de cada
investimento. Neste caso, o fluxo de caixa e valor presente é ajustado de acordo com a
proporção do investimento realizado. Por exemplo, se a empresa comprar 1/5 do investimento
3, então o pagamento necessário será de 1/5 ($5) = $1 nos tempos 0 e 1. O valor presente do
investimento 3 será de 1/5 (16) = $3,2 milhões. A empresa quer maximizar o valor presente
liquido que pode ser obtido pelos investimentos realizados entre as opções 1 a 5. Formular o
problema para atingir este objetivo. Assumir que qualquer fundo não usado no instante 0 não
poderá ser usado no primeiro ano (instante 1).
Uma empresa eletrônica que fabrica gravador e rádio têm seus custos de mão de obra, matéria
prima e preço de venda de cada produto discriminado na tabela a seguir.
Curso de Pesquisa Operacional 35
Gravador Rádio
Preço de venda 100 90
Mão de obra 50 35
Custo matéria prima 30 40
Em primeiro de dezembro do ano 01, a empresa terá matéria prima que é suficiente para fabricar
100 gravadores e 100 rádios. Na mesma data, o balancete previsto da empresa é o mostrado a
seguir, e a razão entre ativo circulante e as suas obrigações (dívida com banco) será 2
(20.000/10.000).
Ativo circulante Obrigações
Caixa 10.000
Contas a receber 3.000
Estoques 7.000
Dívidas em bancos 10.000
A refinaria pode comprar até 5000 barris de cada tipo de petróleo por dia. Os três tipos de
gasolina se diferem na octanagem e no enxofre presente. O petróleo misturado para fabricar a
gasolina 1 precisa ter uma octanagem média de pelo menos 10 e conter quando muito 1% de
enxofre. O petróleo misturado para fabricar a gasolina 2 precisa ter uma octanagem média de
pelo menos 8 e conter quando muito 2% de enxofre. O petróleo misturado para fabricar a
gasolina 3 precisa ter uma octanagem média de pelo menos 6 e conter quando muito 1% de
enxofre. A taxa de octanagem e de enxofre que contém os três tipos de petróleo são as seguintes:
Octanagem Enxofre
Petróleo 1 12 0.5%
Petróleo 2 6 2%
Petróleo 3 8 3%
Custa $4 para transformar 1 barril de petróleo em 1 barril de gasolina, e a refinaria pode produzir
até 14000 barris por dia. Os clientes da refinaria necessitam das seguintes quantias de cada tipo
de gasolina: gasolina 1 – 3000 barris por dia; gasolina 2 – 2000 barris por dia; gasolina 3 – 1000
barris por dia. A empresa considera sua obrigação atender a estas demandas. A empresa também
tem a opção de propagandas para estimular a demanda por seus produtos. Cada 1$ gasto
diariamente em propaganda de um tipo particular de gasolina incrementa a demanda diária desta
gasolina em 10 barris. Por exemplo, se a refinaria decide gastar $20 diariamente para divulgar
a gasolina 2, o aumento da demanda diária desta gasolina será de 200 barris. Formular o
problema para que a refinaria maximize seu lucro diário.
0 1 2 3
A -$1 $0,50 $1 $0
B $0 -$1 $0,50 $1
C -$1 $1.2 $0 $0
D -$1 $0 $0 $1,9
E $0 $0 -$1 $1,5
investimentos A-E, a empresa pode obter taxas de 8% ao ano mantendo o dinheiro não investido
em fundos do mercado. Ganhos dos investimentos podem ser imediatamente reinvestidos. Por
exemplo, o dinheiro recebido no ano 1 do investimento C pode ser imediatamente reinvestido
na opção B. A empresa tem como diretriz não emprestar dinheiro de fundos, assim o dinheiro
disponível para investimento a qualquer tempo é limitado ao disponível. Formular a
programação linear que maximiza o dinheiro em mãos no ano 3.
No início de Janeiro, 50 técnicos farão parte do quadro de funcionários da CLS. Cada técnico
pode trabalhar até 160 horas por mês. Para atender futuras demandas, novos técnicos precisam
ser treinados. É necessário um mês para se treinar um novo técnico. Durante o mês de
treinamento, o novo funcionário precisa ser supervisionado por um técnico experiente por 50
horas. Cada técnico com experiência recebe $ 2.000 por mês (mesmo se ele não trabalhar às
160 horas). Durante o mês de treinamento, o novo funcionário recebe $ 1.000 por mês. No final
de cada mês, 5% dos técnicos experientes saem para se juntar a outra empresa de computadores.
Formular o problema de tal modo que sua solução permitirá a CLS minimizar os custos relativos
a pagamento de salários atendendo a programação prevista para os próximos cinco meses.
Nome % % % % % % Custo
Gord SLNG TSL Açúcar TS Água
1 Creme 40% 40 5,4 45,4 45,4 54,6 27
2 Creme 38% 38 5,6 43,6 43,6 56,4 26
3 Leite 3,2% 3,2 8,7 11,9 11,9 88,1 3
4 Leite 4,0% 4,0 8,6 12,6 12,6 87,4 3
5 Leite condensado gordo 8 20 28 28 72 7
6 Leite condensado 28 28 28 72 3
magro
7 Manteiga 5 92 97 97 3 15
8 Sólidos secos Whey 95 95 95 5 10
9 Sacarose 100 100 10
10 Garapa 67 67 33 9
11 Estabilizador 80 20 55
12 Emulsificador 78
13 Água 100 0
Obter a formulação que permita ao fabricante obter um bom produto ao mínimo custo.
x2 Z
ZC = 24
D (1, 4)
E (0, 4)
ZB = 15
ZD = 13
C (3, 3)
ZE = 8
Pontos extremos
X1
A (0, 0)
B (3, 0) A B C D E
Sabe-se que a solução ótima do modelo é uma solução compatível básica do sistema, ou seja,
um ponto extremo do polígono ABCDE.
Curso de Pesquisa Operacional 41
O método Simplex, para ser iniciado, necessita conhecer uma solução compatível básica
(solução inicial) do sistema, isto é, um dos pontos A, B, C, D ou E do trapézio. Suponha-se que
essa solução seja o ponto A.
O método Simplex verifica se a presente solução é ótima. Se for o processo está encerrado. Se
não for ótima, é porque um dos pontos adjacentes fornece um valor maior que o ponto A.
Neste caso, o método Simplex faz então à mudança do ponto A para o ponto extremo adjacente
que mais aumente o valor da função objetivo. No caso o ponto B.
Agora, tudo que foi feito para o ponto extremo A é feito para o ponto extremo B. O processo
finaliza quando se obtém um ponto extremo onde todos os pontos extremos a ele adjacentes,
fornecem valores menores que a função objetivo.
Como fazer, algebricamente, a mudança de um ponto extremo para outro, a ele adjacente?
Achar, portanto, a próxima solução básica (ponto extremo adjacente) exige a escolha de uma
variável básica para deixar a base atual, tornando-se não básica, e a escolha de uma variável
não básica para entrar na base em sua substituição.
O método Simplex compreenderá, portanto, os seguintes passos:
1. Achar uma solução compatível básica inicial.
2. Verificar se a solução atual é ótima. Se for, pare. Caso contrário siga para o passo III.
3. Determinar a variável não básica que deve entrar na base.
4. Determinar a variável básica que deve sair da base.
5. Achar a nova solução compatível básica, e voltar ao passo II.
Quando uma dessas condições não é atendida estamos em presença de um caso particular.
O Método Simplex será estudado, acompanhando a seguinte formulação:
Maximizar z = 3x1 + 2x2 + 5x3
Sujeito a
x1+ 2x2 + x3 430
3x1 + 2x3 460
xl + 4x2 420
x1, x2, x3 0
Pode ser demonstrado que a solução ótima de um problema de programação linear é uma
solução básica. Uma solução básica para um sistema de M equações e N incógnitas.
Possui M variáveis diferentes de O (zero) e (N - M) variáveis iguais a 0 (zero). As variáveis
diferentes de 0 (zero) são chamadas "Variáveis Básicas" e aquelas iguais a 0 (zero) são as
"Variáveis Não Básicas".
No Método Simplex escolhem-se como variáveis básicas aquelas em cuja coluna aparece um
valor igual a 1 e os demais iguais a 0 (zero).
Marcar na matriz a linha de xs. O quinto e sexto passos podem ser vistos nesta tabela:
entra
sai Pivô
Como na primeira linha da coluna de x2 aparece um número negativo, a solução ainda não é a
ótima.
Oitavo passo: Repetir todos os passos, do 40 ao 70, tantas vezes quanto forem necessárias, até
que a solução ótima seja encontrada. O resultado final da tabela anterior aparece na próxima
iteração, e como não existem mais números negativos na primeira linha a solução é ótima. O
resultado é mostrado a seguir.
Base z X1 X2 X3 X4 X5 X6 b bi/aie equac.
Z 1 4 0 0 1 2 0 1350 0
X2 0 -0.25 1 0 0.5 -0.25 0 100 1
X3 0 1.5 0 1 0 0.5 0 230 2
X6 0 2 0 0 -2 1 1 20 3
Curso de Pesquisa Operacional 45
Resolvendo o problema de
Giapetto pelo simplex
Max Z = 3X1 + 2X2
sujeito a:
2X1 + X2 100
X1 + X2 80
X1 40
X1 0
X2 0
Converter o problema de PL na
forma canônica
Z X1 X2 X3 X4 X5 b Razão
Base 1 -3 -2 0 0 0 0
X3 0 2 1 1 0 0 100 100/2=50
X4 0 1 1 0 1 0 80 80/1=80
X5 0 1 0 0 0 1 40 40/1=40
Pivo
Segunda iteração
Ainda não é a
Pivo solução ótima
Z X1 X2 X3 X4 X5 b Razão
Base 1 0 -2 0 0 3 120
X3 0 0 1 1 0 -2 20 20/1=20
X4 0 0 1 0 1 -1 40 40/1=40
X1 0 1 0 0 0 1 40 40/0
Terceira iteração
Ainda não é a Pivo
solução ótima
Z X1 X2 X3 X4 X5 b Razão
Base 1 0 0 2 0 -1 160
X2 0 0 1 1 0 -2 20 -10
X4 0 0 0 -1 1 1 20 20
X1 0 1 0 0 0 1 40 40
Quarta iteração
Valor máximo possível
para a função objetivo
solução é ótima
Z X1 X2 X3 X4 X5 b Razão
Base 1 0 0 1 1 0 180
X2 0 0 1 -1 2 0 60
X5 0 0 0 -1 1 1 20
X1 0 1 0 1 -1 0 20
Solução do problema de
Giapetto pelo simplex
Max Z = 3X1 + 2X2
sujeito a:
2X1 + X2 + X3 = 100
X1 + X2 + X4 = 80
X1 + X5 = 40
X1, X2, X3, X4 e X5 0
4.6.6 Exercícios
Resolver pelo Simplex as seguintes formulações:
1) max z = 5x1 +2x2
sujeito a:
x1 3
x2 4
x1 + 2x2 9
x1 0
x2 0
2) min z = 2x1 - 3x2
sujeito a:
x1 + x2 4
x1 - x2 6
x1 0
x2 0
3) min z = 4x1 - x2
sujeito a:
2x1 + x2 8
x2 5
x1 - x2 4
x1 0
x2 0
Curso de Pesquisa Operacional 49
Quando uma dessas condições não é satisfeita estamos em presença de um caso particular.
Quando as restrições são () ou (=) a bi, não temos uma base, isto é, uma solução inicial,
conforme mostrado Simplex. Neste caso, usam-se as técnicas (ou métodos):
a) Método "Big M" ou "Método das penalidades";
b) Método das duas fases ou Método da função objetivo artificial.
4.7.2 O procedimento do método “Big M”
Para empregar o método “Big M”, procede-se da seguinte maneira:
1. Acrescentam-se as variáveis de folga as restrições do tipo () ou () para torná-las equações.
No caso () soma-se, no () subtraí-se a variável de folga.
2. No caso de restrições () ou (=) a bi, bi 0; adiciona-se às restrições mais uma variável não
negativa, chamada variável de artificial (X1a), uma para cada restrição que for necessária.
A adição das variáveis artificiais às equações causa uma violação das respectivas restrições.
Esta violação é contornada, assegurando-se que estas variáveis artificiais sejam iguais à
zero na solução final. Isto é feito atribuindo-se uma penalidade muito grande para estas
variáveis artificiais na função objetivo. Tal penalidade será designada por (-M) para os
problemas de maximização, sendo M > 0.
3. Substituem-se as variáveis artificiais da FO, pelo seu valor tirado das equações restritivas
onde aparecem.
4. Procede-se da maneira usual do Simplex.
Curso de Pesquisa Operacional 50
Obs: Se a variável artificial for diferente de zero na solução final, o problema não tem solução.
Resolver as formulações do item anterior, e a proposta a seguir pelo método das duas fases.
5. SOFTWARES
A utilização de programação linear é recomendada para problemas de maior porte, em que
muitas variáveis e restrições devem ser consideradas. Por isso, o desenvolvimento de algoritmos
computacionais eficientes e precisos tem sido a maior preocupação entre os pesquisadores.
Programas adequados existem, virtualmente, para cada sistema computacional comercial
desenvolvido nos últimos 20 anos.
Problemas de grande porte requerem sistemas computacionais potentes e, portanto, sistemas
paralelos têm sido utilizados nos últimos anos. Entretanto, problemas menores podem ser
resolvidos em um computador pessoal utilizando um dos softwares desenvolvidos para
resolução de problemas de programação linear, como por exemplo, XPress-MP LINDO e
MINOS.
Para problemas considerados médios, é recomendável a utilização de planilhas eletrônicas com
recursos para resolução de problemas. Exemplos destas planilhas são o "What's Best?" (LINDO
Systems) para Lotus 1-2-3, o Microsoft Excel e Borland Quattro e ainda o Solver para Microsoft
Excel. Todos eles são ferramentas poderosas, apesar de sua aparência simples. O Solver do
Excel será utilizado em alguns exemplos apresentados. Outro programa que também será visto
é o LINDO.
O instituto de pesquisa operacional e ciências administrativas (INFOR-MS) publicam,
eventualmente, pesquisas sobre os softwares de programação matemática em seu periódico
OR/MS Today. O relatório de 1995 apresenta softwares que rodam em computadores pessoais
e destaca softwares capazes de atacar problemas maiores tanto quanto extensões de planilhas
eletrônicas.
O programa executável tem o nome LINDO, apesar de ele ser originalmente desenvolvido para
o ambiente DOS, pode-se executá-lo pelo Windows em suas versões mais novas.
O programa assume que todas as variáveis precisam ser não negativas. Assim, usando o
programa não é necessário digitar as variáveis de não negatividade. Para entrar com ou ,
basta digitar > ou <. O problema de Giapetto no programa fica da maneira ilustrada na figura
abaixo.
Para resolver o problema de otimização, basta “clicar” no botão assinalado na figura a seguir.
Clicar
X1 = número X2 = número de
de soldados trens
maximizar 3 2
Sujeito às restrições limite
2 1 100
1 1 80
1 0 40
Lucro bruto
Solução 0 0 0
Com exceção da última linha, denominada solução, as demais restrições expostas nas matrizes
já eram conhecidas. A linha de solução representa os valores atribuídos a x1 e x2 antes de
qualquer otimização. No estado atual, ambos x1 e x2 são definidos como zero o que resulta em
um lucro bruto de zero unidade.
O primeiro estágio de uso Solver é escrever esta matriz na planilha, como apresentado na Figura
5.1. Como em qualquer planilha, é muito importante observar que algumas células contêm
valores constantes, mas outras contêm fórmulas as quais assumem os valores que são exibidos
nas mesmas. Neste exemplo, as células D4, D5, D6 e E8 contêm fórmulas. As demais contêm
textos, que são utilizados para deixar o exemplo mais claro, ou contêm valores.
Curso de Pesquisa Operacional 56
= $B$8*$B4 + $C$8*$C4
Observe que as referências às células B10 e C10 são ambas absolutas. Assim, esta fórmula
estendida da célula D4 a D6 é dada por:
D4 = $B$8*$B4 + $C$8*$C4
D5 = $B$8*$B5 + $C$8*$C5
D6 = $B$8*$B6 + $C$8*$C6
Curso de Pesquisa Operacional 57
A coluna E foi utilizada para que os limites máximos e mínimos das restrições fossem
observados, a qual é frequentemente conhecida como right-hand-sides (abreviada como RHS
por muitas pessoas). Assim, existe um limite de 100 horas para acabamento, de 80 horas para
carpintaria e venda máxima de 40 soldados. A coluna D, como mencionado anteriormente, é
usada para armazenar a utilização atual dos recursos. Assim, a célula D4 representa a
quantidade da restrição horas de acabamento que foi utilizada e seu valor é zero, uma vez que
as células B8 e C8 contêm valor zero antes de qualquer otimização.
Finalmente, uma célula da planilha deve ser utilizada para armazenar o resultado da otimização
(neste caso, o valor do lucro semanal obtido); nesta planilha, este valor está contido na célula
E8.
Para chegarmos à solução ótima do exemplo, o Solver precisa das seguintes informações:
1. Onde o valor da função objetivo será armazenado? Este valor representa o resultado da
otimização dado pela combinação de valores de x1 e x2 determinada. Neste caso, o resultado
será armazenado na célula E8. Isto significa que a célula E8 deve conter a fórmula
apropriada para a otimização, a qual, neste caso, é dada por: = $B$2*$B$8 + $C$2*$C$8.
Curso de Pesquisa Operacional 58
Observe que as células de referência são absolutas - o que é recomendável, porém não é
necessário.
2. Quais são as restrições e que forma as mesmas possuem? Para fornecer estas informações
para o Solver, clique no botão adicionar da sub janela de restrições da janela dos parâmetros
do Solver. Uma caixa de diálogo, como a apresentada na Figura 5.3, irá aparecer. Neste
caso, a caixa de diálogo corresponde à primeira restrição, a restrição das horas de
acabamento, a qual possui seus coeficientes nas células B4 e C4 e sua expressão está contida
na célula D4. Assim, a célula $D$4 deve ser digitada na caixa referência de célula, uma vez
que a mesma contém a expressão da restrição. Esta restrição é do tipo menor ou igual a,
assim devemos selecionar este símbolo da caixa central da janela. Finalmente, o valor
máximo para esta restrição encontra-se na célula $E$4 e esta célula deve ser indicada na
caixa à esquerda da janela. Aperte o botão OK e a caixa de diálogo irá fechar-se retornando
à janela de parâmetros do Solver. Cada uma das restrições deve ser descrita do mesmo modo
como a anterior.
3. Quais células irão conter os valores de x1 e x2, os quais serão modificados até que se otimize
a função objetivo, e qual tipo de otimização deve-se procurar? Esta informação deve ser
fornecida pelo usuário através da janela de parâmetros do Solver. As células cujos valores
serão variados são a B8 e a C8 e, como mostra a Figura 5.4, devem ser descritas como
células de referência na caixa células variáveis. Como se busca a maximização destas
variáveis, a opção Max deve ser selecionada.
Curso de Pesquisa Operacional 59
Figura 5.4 - Entrada das células que irão variar para que a solução ótima seja encontrada
(células variáveis).
Antes de executar a otimização, é interessante informar ao Solver que todas as restrições são
expressões lineares, assim como a função objetivo. Estas informações devem ser fornecidas,
pois estamos tratando de um problema de programação linear. Para entrar com esta informação,
clique o botão opções da janela dos parâmetros do Solver. Uma nova janela irá aparecer onde
a opção presume modelo linear deve ser selecionada. Isto irá aumentar a velocidade da
otimização e, também, fará com que os relatórios fornecidos sejam adaptados para o formato
de problemas de programação linear (veja a seguir).
Para executar a otimização, retorne à janela de parâmetros do Solver e aperte o botão resolver.
A Figura 5.5 apresenta o resultado da otimização.
É importante observar que muitas outras informações, além do valor ótimo das variáveis
estudadas, podem ser obtidas a partir da solução fornecida para um problema de programação
linear. Um bom pacote computacional como o Solver fornece relatórios que ajudam o usuário
a entender muito mais sobre a solução apresentada. O Solver fornece três relatórios padrão e
permite que sua solução seja exportada para outro pacote se uma análise mais detalhada for
necessária.
ser diferente. Assim, é importante conhecer quais são os efeitos que as mudanças nos
coeficientes podem gerar na solução ótima.
Mogno 8 m2 6 m2 1 m2
Z X1 X2 X3 X4 X5 X6 X7 b razão
base 1 -60 -35 -20 0 0 0 0 0
X4 0 8 6 1 1 0 0 0 48 6
X5 0 4 2 1,5 0 1 0 0 20 5
X6 0 2 1,5 0,5 0 0 1 0 8 4
X7 0 0 1 0 0 0 0 1 5 não
Z X1 X2 X3 X4 X5 X6 X7 b razão
base 1 0 -10 -5 0 0 30 0 240
X4 0 0 0 -1 1 0 -4 0 16 não
X5 0 0 -1 0,5 0 1 -2 0 4 8
X1 0 1 0,75 0,25 0 0 0,5 0 4 16
X7 0 0 1 0 0 0 0 1 5 não
Z X1 X2 X3 X4 X5 X6 X7 b razão
base 1 0 0 0 0 10 10 0 280
X4 0 0 -2 0 1 2 -8 0 24
X3 0 0 -2 1 0 2 -4 0 8
X1 0 1 1,25 0 0 -0,5 1,5 0 2
X7 0 0 1 0 0 0 0 1 5
Lembra-se que todas as variáveis básicas precisam ter coeficiente 0 (zero) na primeira linha (de
outra forma elas não seriam básicas). Entretanto na última tabela (ótima), existe uma variável
não básica, x2, que tem o coeficiente na primeira linha igual à zero. Vejamos o que ocorre se x2
entrar na base. O teste de razão mostra que x2 deveria entrar no lugar de x1. A tabela com o
resultado é mostrada o a seguir.
Z X1 X2 X3 X4 X5 X6 X7 b razão
base 1 0 0 0 0 10 10 0 280
X4 0 1,6 0 0 1 1,2 -5,6 0 27,2
X3 0 1,6 0 1 0 1,2 -1,6 0 11,2
X2 0 0,8 1 0 0 -0,4 1,2 0 1,6
X7 0 -0,8 0 0 0 0,4 -1,2 1 3,4
Uma importante observação é que devido a x2 ter coeficiente 0 (zero) na primeira linha da tabela
de resultado ótimo, o fato de x2 entrar na base não muda a primeira linha. Isto significa que
Curso de Pesquisa Operacional 64
todas as variáveis na nova primeira linha continuam com coeficientes positivos. Assim, a nova
tabela também é ótima. Uma vez que o pivô não mudou o valor de z, uma solução alternativa
para o exemplo é z = 280, x4 = 27,2, x3 = 11,2, x2 = 1,6 e x1 = x5 = x6 = 0.
Em resumo, a empresa pode obter um lucro de $280 fabricando 2 armários e 8 cadeiras ou
fabricando 1,6 mesas e 11,2 cadeiras. Assim, o problema tem mais de um ponto ótimo extremo.
Cada ponto entre a linha que liga estes pontos é também solução.
Quando a formulação tem apenas 2 variáveis, como a formulação abaixo, esta situação é
facilmente identificada na solução gráfica, como mostra a figura do QM for Windows a seguir.
max z = 3x1 + 2x2
sujeito a:
1/40x1 + 1/60x2 ≤ 1
1/50x1 + 1/50x2 ≤ 1
x1 , x2 ≥ 0
max z = 2x1 – x2
Sujeito a:
x1 – x2 ≤ 1
2x1 + x2 ≥ 6
x1 , x2 ≥ 0
7. ANÁLISE ECONÔMICA
A análise econômica baseia-se nos coeficientes das variáveis, na função objetivo final. Este
tópico será explicado através da análise dos coeficientes do problema de Giapetto.
Reconsiderando o problema de Giapetto.
Onde:
x1 = número de soldados
x2 = número de trens
Onde:
x3 = sobra de horas de acabamento;
x4 = sobra de horas de carpintaria;
x5 = sobra de demanda.
Curso de Pesquisa Operacional 68
Z X1 X2 X3 X4 X5 b
Base 1 0 0 1 1 0 180
X2 0 0 1 -1 2 0 60
X5 0 0 0 -1 1 1 20
X1 0 1 0 1 1 0 20
7.2 Exercício
Fazer análise semelhante para o problema a seguir.
No programa de produção do próximo período, uma determinada empresa escolheu 3 produtos
P1, P2 e P3. O quadro abaixo mostra os montantes solicitados por unidade na produção.
Os preços de venda foram fixados por decisão política e as demandas foram estimadas tendo
em vista estes preços. A empresa pode obter um suprimento de 4.800 horas de trabalho durante
o período de processamento e pressupõe-se usar três máquinas que podem prover 7.200 horas
de trabalho. Estabelecer um programa ótimo de produção para o período. Analisar os
coeficientes das variáveis de folga da solução final.
Curso de Pesquisa Operacional 70
8. DUALIDADE
8.1 Fundamento da dualidade
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. Será mostrado que uma vez
conhecida à solução do Dual, conhece-se em consequência a solução do Primal, o que resolve
o problema.
Seja o seguinte problema, que será chamado de Primal:
max z = 2x1 + 3x2 + x3
sujeito a:
3x1 + 4x2 + 2x3 ≤ 10
2x1 + 6x2 + x3 ≤ 20
x1 – x2 – x3 ≤ 30
x1, x2, x3 ≥ 0
A obtenção do Dual se processa da seguinte maneira: para cada restrição será atribuída uma
variável de decisão (yi). A função objetivo do Dual será de minimização e cada uma de suas
parcelas será o produto da variável yi pelo termo da direita da restrição correspondente. Cada
variável de decisão do Primal gera uma restrição no Dual. Neste caso o sinal será ≥, e o termo
da direita será o coeficiente da variável Primal na função objetivo. Todas as variáveis do Dual
serão não negativas. O quadro a seguir sintetiza as regras básicas para obtenção do Dual.
Curso de Pesquisa Operacional 71
Primal:
min z = 10x1 + 20x2 + 30x3
Sujeito a:
Variável Dual
3x1 + 2x2 + x3 ≥ 2 y1
4x1 + 6x2 - x3 ≥ 3 y2
2x1 + x2 – x3 ≥ 1 y3
x1, x2, x3 ≥ 0
Dual:
max w = 2y1 + 3y2 + y3
sujeito a:
Termos da direita
3y1 + 4y2 + 2y3 ≤ 10 coeficiente de x1
2y1 + 6y2 + y3 ≤ 20 coeficiente de x2
y1 - y2 - y3 ≤ 30 coeficiente de x3
y1, y2, y3 ≥ 0
A solução ótima Primal corresponde à solução ótima Dual com Z = W. O coeficiente da variável
de decisão na função objetivo Primal é o valor da variável de folga correspondente na solução
Dual. O coeficiente da variável de folga da função objetivo Primal é o valor da variável de
Curso de Pesquisa Operacional 72
decisão correspondente na solução Dual. Como o Primal é o Dual do próprio Dual, vale o
raciocínio no sentido Dual para o Primal.
Primal:
max z = 3x1 + 2x2
sujeito a:
Variável
Dual
2x1 + x2 ≤ 100 y1
x1 + x2 ≤ 80 y2
x1 ≤ 40 y3
x1 , x2 ≥ 0
Curso de Pesquisa Operacional 73
Dual:
min w = 100y1 + 80y2 + 40y3
Sujeito a:
Termos da direita
2y1 + y2 + y3 ≥ 3 coeficiente de x1
y1 + y2 ≥ 2 coeficiente de x2
y1, y2, y3 ≥ 0
Correspondência:
8.4 Exercício
Suponha que um problema de produção tenha como modelo:
max L = x1 + 0,3x2 + 3x3
sujeito a:
x1 + x2 + x3 ≤ 10
2x1 + x2 + 4x3 ≤ 12
x1 – 3x2 – x3 ≤ 9
x1 , x2 e x3 ≥ 0
Onde xi são as decisões de fabricação dos produtos Pi e xfi as sobras dos recursos Ri no
programa. O objetivo é maximizar o lucro devido à produção e comercialização dos produtos.
Responder as seguintes perguntas:
1. Qual a solução mostrada no quadro?
2. Quais os recursos escassos?
3. O que ocorreria se por um motivo de força maior tivesse que fabricar uma unidade de
P1?
4. Se alguém quisesse adquirir uma unidade do recurso R1, você estaria disposto a vender?
Qual o preço que compensa a venda?
Curso de Pesquisa Operacional 75
5. Se alguém insistir em comprar uma unidade do recurso R2, que preço de venda
compensaria o fato dele ser escasso?
6. Construa o modelo Dual do problema?
7. Obter a solução do Dual.
8. O que significa a variável dual Y1?
9. O que mede a função objetivo Dual?
10. O que mede o lado esquerdo da Segunda restrição Dual? E o lado direito?
11. Em termos de valores interno e externo, como podemos justificar a não fabricação de
P2 no programa?
12. Em termos de valores interno e externo, como podemos justificar a fabricação de P3?
13. Quanto você pagaria por uma unidade adicional do recurso R2? Por quê?
14. Quanto você pagaria por uma unidade adicional do recurso R3? Por quê?
Curso de Pesquisa Operacional 76
9. ANÁLISE DE SENSIBILIDADE
Análise de sensibilidade se refere a como mudança na formulação de um problema de
programação linear, afeta a solução ótima. Reconsiderando o problema de Giapetto.
max z = 3x1 + 2x2
sujeito a:
2x1 + x2 ≤ 100 (restrição de acabamento)
x1 + x2 ≤ 80 (restrição de carpintaria)
x1 ≤ 40 (restrição de demanda)
x1 , x2 ≥ 0
Onde:
x1 = Número de soldados
x2 = Número de trens
Solução ótima é z = 180, x1 = 20, x2 = 60, ponto identificado no gráfico abaixo. As variáveis
básicas são x1, x2 e x5 (variável de folga da restrição de demanda). A questão que se coloca em
análise de sensibilidade é como alterações nos coeficientes da função objetivo e no lado direito
das inequações que representam as restrições afetam a solução ótima.
básica). Será mostrado a seguir como o valor de contribuição para o lucro pode variar e a
solução ótima ainda permanecer.
Seja C1 a contribuição para o lucro de cada soldado. Para quais valores de C1 a corrente solução
permanece ótima?
Na formulação C1 = 3 e cada linha reta que representa a função objetivo igual a uma constante
tem a seguinte equação: 3x1 + 2x2 = constante, ou x2 = -3/2 x1 + constante/2. Cada linha paralela
tem o coeficiente angular igual a –3/2. Da figura anterior pode-se ver que uma mudança em C1
causa uma mudança na inclinação desta linha. Se esta inclinação for menor que a da restrição
de carpintaria, a solução ótima passará a ser a do ponto A. Se a contribuição para o lucro de
cada soldado é C1, o coeficiente angular da reta será - C1/2. Uma vez que o coeficiente angular
da restrição de carpintaria é –1, a reta que representa a função objetivo será menos inclinada
que a d restrição de carpintaria se – C1/2> -1, ou C1 < 2, e a nova solução ótima será (0, 80),
ponto A da figura anterior.
Se a inclinação da reta for maior que a da restrição de acabamento a solução ira do ponto B para
o ponto C. O coeficiente angular da restrição de acabamento é –2. Se – C1/2 < -2, ou C1 > 4, a
solução corrente deixa de ser ótima e o ponto C (40, 20) passará a ser ótimo.
Em resumo, foi mostrado que (se todos outros parâmetros permanecerem inalterados) a solução
corrente permanece ótima para 2 < C1 < 4, e Giapetto deveria continuar fabricando 20 soldados
e 60 trens. É claro que com a alteração a função objetivo tem seu valor modificado.
Como exemplo, o coeficiente de x1 na função objetivo pode alterar entre 2 e 4, que a solução
continuaria sendo x1 = 20, x2 = 60 e x5 = 20. Já x2 pode variar entre 1, 5 e 3. Já os valores de bi,
por exemplo, b2, pode variar entre 60 e 100, que a base continuaria sendo x1, x2 e x5.
Na figura a seguir encontram-se os resultados destas variações possíveis apresentadas pelo
programa QM for Windows. Esta janela é acessada no menu WINDOW opção Ranging.
Na figura a seguir esta o relatório que se obtém através do Excel, selecionando quando utilizado
o Solver a emissão do relatório de sensibilidade.
Curso de Pesquisa Operacional 80
9.3 Exercício
Suponha que um problema de produção tenha como modelo:
max z = 2.100x1 +1.200x2 + 600x3
sujeito a:
1) 6x1 + 4x2 + 6x3 ≤ 4.800
2) 12x1 + 16x2 + 2x3 ≤ 7.200
3) x1 ≤ 800
4) x2 ≤ 600
5) x3 ≤ 600
x1, x2 e x3 ≥0
Onde: xi são as decisões de produção dos bens Pi. O objetivo é maximizar o lucro pela venda
desses produtos.
Restrições:
1. Horas de máquina para a produção dos bens;
2. Horas de mão de obra para a produção;
3. Demanda de P1;
4. Demanda de P2;
5. Demanda de P3.
Questões:
1. Qual o coeficiente de estabilidade para o coeficiente de x1? O que isto significa?
2. Qual o coeficiente de estabilidade para o coeficiente de x3? O que isto significa?
3. Qual o coeficiente de estabilidade para o coeficiente de xf3? O que isto significa?
Curso de Pesquisa Operacional 81
x1 = 2,48 (10.2)
x2 = 5,60
z = 105,60
A solução deste problema também pode ser vista na análise do gráfico da figura 10.1.
A Programação Inteira possui uma técnica particular de solução, chamada de “Método Branch
and Bound”, que se baseia na montagem de um diagrama tipo árvore, em que cada ramo é uma
opção de solução inteira. Apenas alguns ramos são testados e para cada tentativa, o Método
Simplex é utilizado. O computador é indispensável!
O que acontece é a busca nos pontos identificados na figura 10.3
Curso de Pesquisa Operacional 84
x1 x2 x3 x4 x5 x6 3 (10.3)
Min c = 6x11 + 5x12 + 8x13 + 13x21 + 12x22 + 1x23 + 7x31+ 9x32 + 5x33 + 10x41 + 6x42 + 4x43
Resumindo
min c = 6x11 + 5x12 + 8x13+ 13x21 + 12x22 + 1x23+ 7x31+ 9x32 + 5x33+ 10x41 + 6x42 + 4x43
Sujeito a:
x11 + x12 + x13 = 10
x21 + x22 + x23 = 20
x31 + x32 + x33 = 12
x41 + x42 + x43 = 13
x11 + x21 + x31 + x41 = 8
x12 + x22 + x32 + x42 = 32
x13 + x23 + x33 + x43 = 15
xij >= 0
Curso de Pesquisa Operacional 88
A solução do problema de transporte como todo problema de programação linear, pode ser
obtida pelo método Simplex. Entretanto, devido a suas características especiais, podemos
descrever um método que, embora mantenha fases e critérios do Simplex, tem os cálculos
simplificados. Este exemplo será mais bem trabalhado em sala de aula, mostrando como usar o
Excel para a sua solução.
11.3 Exercícios
Exercício 1
Determinar a melhor programação de transporte de maneira a se ter o menor custo.
Exercício 2
Determinar a melhor programação de transporte. Os lucros unitários e as disponibilidades e
necessidades do produto estão no quadro abaixo.
Curso de Pesquisa Operacional 89
Exercício 3
Determinar a melhor programação de transporte de maneira a se ter o menor custo. Não é
possível abastecer D3 a partir de O1.
Curso de Pesquisa Operacional 90
12. REDES
Problemas de rede
• Casos especiais de problemas de programação
linear que são mais bem analisados através de
uma representação gráfica.
• Importantes problemas de otimização, tais como
problemas de logística e de energia, produção e
outros, são eficientemente resolvidos e
modelados como problemas de rede.
Problemas de rede
• Modelos de rede facilitam a visualização das
relações entre os componentes do sistema,
aumentando o entendimento do problema e de
seus possíveis resultados.
• É uma modelagem muita usada.
Terminologia
• Redes, nós e arcos:
Nós
Arcos
4
Curso de Pesquisa Operacional 91
Problemas de rede
(Classificação usual)
Problemas de
Distribuição
• Problemas que consideram múltiplas fontes,
centros consumidores e locais intermediários
por onde os produtos simplesmente passam são
denominados problemas de distribuição.
• O problema de transporte já estudado é uma
simplificação do problema de rede de
distribuição.
6
Curso de Pesquisa Operacional 92
Problemas de
Distribuição – exemplo
• Uma montadora de carros esta iniciando as
suas operações no Brasil, construindo 2
fábricas: uma na Bahia e outra em São Paulo. A
montadora esta estudando a forma de
distribuição de seus carros para as diversas
revendas, localizadas nos estados: Goiás, Rio de
Janeiro, Minas Gerais, Paraná, Santa Catarina e
Rio Grande do Sul, que minimize o custo total
de distribuição.
7
Problemas de
Distribuição – exemplo
• As capacidades instaladas de cada uma das
fábricas, as demandas das revendas, bem como
os custos unitários de transporte entre fábricas
e revendas estão evidenciados no diagrama a
seguir.
Problemas de
Distribuição – exemplo
BA 40 GO
-500 1 5 150
25 20
MG
3
30
200
20
20 Demandas
SP 15 RJ
(1400)
-600 2 4
350
20
PR
35 6 300
50
SC
7 150
Oferta (capacidade das fábricas)
20
(1100) RS
8 250
9
Curso de Pesquisa Operacional 93
Problemas de
Distribuição
• Existem 2 maneiras básicas de resolver este
problema. A primeira consiste em inserir uma
unidade dummy que iguale a oferta a demanda.
• A segunda forma de resolver é seguir a Regra do
Fluxo Balanceado para cada nó da rede. Este
método dispensa o uso de unidades dummys. O
desequilíbrio entre oferta e demanda total é
tratado através de restrições maior ou igual ou
de menor ou igual.
10
Problemas de
Distribuição
• Regra do fluxo balanceado:
11
Quantidades 30
3
200
de veículos 20
20
enviados de SP 15 RJ
4
cada fábrica
-600 2
350
20
para cada 35
PR
6 300
distribuidor 50
SC
7 150
20
RS
8 250
12
Curso de Pesquisa Operacional 94
de SP para PR. 20
350
de MG para GO. RS
8 250
• X78 – número de carros enviados
de SC para RS.
13
20
RS
• min Z = 25X13 + 30X14 + 40X15 + 20X23 + 15X24 + 20X26 + 8 250
• Restrição 01 – nó 01
3
30
200
SP 15 RJ
-600 2 4
350
20
PR
35 6 300
50
SC
7 150
Hipótese: Tipo de Restrição:
20
Oferta > Demanda Entradas – Saídas ≥ Oferta ou Demanda do Nó RS
Situação do 8 250
exemplo Oferta < Demanda Entradas – Saídas ≤ Oferta ou Demanda do Nó
20
20
SP 15 RJ
-600 2 4
350
20
PR
35 6 300
50
SC
150
• Restrição 02 – nó 02
7
20
16
20
20
SP 15 RJ
-600 2 4
350
20
PR
35 6 300
50
SC
150
• Restrição 03 – nó 03
7
20
17
20
20
SP 15 RJ
-600 2 4
350
20
PR
35 6 300
50
SC
150
• Restrição 04 – nó 04
7
20
18
Curso de Pesquisa Operacional 96
20
20
SP 15 RJ
-600 2 4
350
20
PR
35 6 300
50
SC
150
• Restrição 05 – nó 05
7
20
19
20
20
SP 15 RJ
-600 2 4
350
20
PR
35 6 300
50
SC
150
• Restrição 06 – nó 06
7
20
• X26 ≤ 300 RS
8 250
20
20
20
SP 15 RJ
-600 2 4
350
20
PR
35 6 300
50
SC
150
• Restrição 07 – nó 07
7
20
21
Curso de Pesquisa Operacional 97
20
20
SP 15 RJ
-600 2 4
350
20
PR
35 6 300
50
SC
150
• Restrição 08 – nó 08
7
20
22
23
Variáveis de 20
20
decisão
SP 15 RJ
-600 2 4
350
Problemas de rede de distribuição 20
PR
Distribuição de carros 6 300
35
20
20
SP 15 RJ
-600 2 4
Problemas de rede de distribuição
350
20
Distribuição de carros
PR
35 6 300
De Para Custo Unidades Nó Fluxo liquido Oferta/Demanda
1 3 25 0 1 0 -500
1 4 30 0 2 0 -600
50
1 5 40 0 3 0 200
2 3 20 0 4 0 350 SC
7 150
2 4 15 0 5 0 150
2 6 20 0 6 0 300
20
2 7 35 0 7 0 150
2 8 50 0 8 0 250 RS
3 4 20 0 8 250
3 5 20 0
7 8 20 0
26
• Restrição 01 – nó 01
30
200
SP 15 RJ
-600 2 4
350
20
PR
35 6 300
50
SC
7 150
20
RS
8 250
27
Curso de Pesquisa Operacional 99
• Restrição 01 – nó 01
200
20
20
• - X13 - X14 - X15 ≤ - 500
SP 15 RJ
-600 2 4
350
20
PR
35 6 300
Entradas Saídas 50
SC
7 150
20
RS
8 250
28
29
BA 40 GO
-500 1 5 150
Solução pelo
25 20
MG
3
30
Solver
200
20
20
(Solução) RJ
SP 15
-600 2 4
350
20
PR
35 6 300
50
SC
7 150
20
RS
8 250
30
Curso de Pesquisa Operacional 100
Problema do Menor
Caminho
• Problema que representa um outro caso
especial de problemas de redes, em que
os arcos significam a distância entre 2
pontos (nós).
• Quando deseja-se achar a rota que une
estes pontos com a distância mínima
possível, tem-se um problema de menor
caminho.
31
Problema do Menor
Caminho
• Nestes problema existem sempre 2 nós
especiais chamados de origem e destino.
Entre um nó de origem e um nó de
destino geralmente existem nós
intermediários, que podem representar
cidades que conectam rodovias,
subestações em problemas de
distribuição de energia, etc...
32
Problema do Menor
Caminho - Exemplo
• Um fabrica de artigos de decoração,
localizada em Lambari, deve entregar
uma grande quantidade de peças na
cidade de Baependi. A empresa quer
saber qual o caminho que seu caminhão
deve fazer para minimizar a distância
percorrida.
33
Curso de Pesquisa Operacional 101
Problemas de Menor
Caminho – exemplo
Três Corações S. Thomé das Letras
37
Km
2 4
41 45
Km Km
Lambari Baependi
50 4
Km Km
1 5 6
44 27
Km Km
Caxambu
São Lourenço
34
Problemas de Menor
Caminho
• A modelagem do problema terá variáveis
binárias do tipo Xij, indicando o sentido
da cidade i para a cidade j. Se o valor da
variável for igual a 1 significa que aquele
trecho deve ser percorrido. De forma
inversa, se o valor da variável for igual a
zero, significa que aquele trecho não deve
ser percorrido.
35
50 4
Km Km
1 5 6
44 27
Km Km
Caxambu
São Lourenço
50 4
Km Km
1 5 6
44 27
Km Km
Caxambu • X12 –Lambari – Três
Corações.
3 • X13 –Lambari – São
Lourenço.
São Lourenço • X15 –Lambari – Caxambu.
• X24 –Três Corações – São
Thomé das Letras.
• X35 –São Lourenço –
Caxambu.
• Min Z = 41X12 + 44X13 + 50X15 + 37X24 + • X46 –São Thomé das Letras –
Baependi.
27X35 + 45X46 + 4X56 37
• X56 –Caxambu – Baependi.
50 4
Km Km
1 5 6
44 27
Km Km
Caxambu
Oferta = -1 Demanda = 1
3
São Lourenço
50 4
Km Km
1 5 6
44 27
Km Km
Caxambu
3
• Restrição 01:
São Lourenço • - X12 - X13 - X15 = - 1
50 4
Km Km
1 5 6
44 27
Km Km
Caxambu
3
• Restrição 02:
São Lourenço • X12 – X24 = 0
50 4
Km Km
1 5 6
44 27
Km Km
Caxambu
São Lourenço
• Restrição 03:
• X13 – X35 = 0
41
50 4
Km Km
1 5 6
44 27
Km Km
Caxambu
São Lourenço
• Restrição 04:
• X24 – X46 = 0
42
Curso de Pesquisa Operacional 104
50 4
Km Km
1 5 6
44 27
Km Km
Caxambu
São Lourenço
• Restrição 05:
• X15 + X35 – X56 = 0
43
50 4
Km Km
1 5 6
44 27
Km Km
Caxambu
São Lourenço
• Restrição 06:
• X46 + X56 = 1
44
45
Curso de Pesquisa Operacional 105
37
Km
2 4
41 45
Km Km
Lambari Baependi
50 4
Km Km
1 5 6
44 27
Km Km
Caxambu
Variáveis de 3
decisão
São Lourenço
46
Informações conhecidas
50 4
Km Km
1 5 6
44 27
Km Km
Caxambu
São Lourenço
Fórmula 47
37
Km
2 4
41 45
Km Km
Lambari Baependi
50 4
Km Km
1 5 6
44 27
Km Km
Caxambu
São Lourenço
Fórmula
*
48
Curso de Pesquisa Operacional 106
• Restrição 01:
• - X12 - X13 - X15 = - 1
49
Entradas Saídas
50
51
Curso de Pesquisa Operacional 107
50 4
Km Km
1 5 6
44 27
Km Km
Caxambu
São Lourenço
52
Problema do Fluxo
Máximo
• Quando se quer maximizar a quantidade de um
fluxo de um ponto de origem para um ponto de
destino e estamos sujeitos a restrições de
capacidade de fluxo nos arcos.
• Estes problemas geralmente envolvem fluxo de
materiais como água, óleo, gás, energia através
de uma rede de tubos ou canos. Podem
representar fluxo de carros em malhas viárias,
produtos em linha de produção, etc....
53
Curso de Pesquisa Operacional 108
Problema do Fluxo
Máximo - Exemplo
• Uma empresa distribuidora de gás deseja
determinar a quantidade máxima de metros
cúbicos por segundo de gás que pode bombear
da estação de Campos para o centro
consumidor do Rio de Janeiro, através da rede
de gasodutos existentes. A figura a seguir
ilustra o caso.
54
Problema do Fluxo
Máximo - Exemplo
30 m3/s
1 3 20 m3/s
40 m3/s
Campos ,
Rio de Janeiro
20 m3/s
A B
30 m3/s 40 m3/s
2 4
30 m3/s
55
Problema do Fluxo
Máximo
• Para resolvermos este problema, utilizaremos
um pequeno artifício: adicionaremos um arco
virtual ligando o nó B ao nó A.
• A FO será portanto a maximização do fluxo de
gás que passa de B para A.
• Como o fluxo do Rio de Janeiro para Campus
não existe, o valor do fluxo no arco artificial
representará o total de gás que pode chegar ao
Rio de Janeiro vindo de Campus por mais de
um caminho simultaneamente.
56
Curso de Pesquisa Operacional 109
Problema do Fluxo
Máximo - Exemplo
30 m3/s
1 3 20 m3/s
40 m3/s
20 m3/s
A B
30 m3/s 40 m3/s
2 4
30 m3/s
57
1 3 20 m3/s
40 m3/s
Campos Rio de Janeiro
20 m3/s
A B
30 m3/s 40 m3/s
2 4
30 m3/s
58
40 m3/s 1 3 20 m3/s
20 m3/s
A B
30 m3/s 40 m3/s
2 4
30 m3/s
Max Z = XBA
59
Curso de Pesquisa Operacional 110
40 m3/s 1 3 20 m3/s
20 m3/s
A B
30 m3/s 40 m3/s
2 4
30 m3/s
• Restrições:
• O fluxo de cada arco deverá ser maior ou igual a zero;
• O fluxo de cada arco deverá ser menor ou igual a capacidade
do arco;
• O fluxo que chega em cada nó deverá ser igual ao fluxo do
que sai do mesmo;
• O fluxo do arco artificial (desconhecido) deve ser grande o
bastante para assumir qualquer valor possível, já que este
será maximizado. 60
40 m3/s 1 3 20 m3/s
20 m3/s
A B
30 m3/s 40 m3/s
2 4
30 m3/s
• Restrições de capacidade:
• XA1 ≤ 40; XA2 ≤ 30;
• X13 ≤ 30; X14 ≤ 20;
• X24 ≤ 30; X3B ≤ 20;
• X4B ≤ 40; XBA ≤ 9999;
61
40 m3/s 1 3 20 m3/s
20 m3/s
A B
30 m3/s 40 m3/s
2 4
30 m3/s
• Restrições de fluxo:
• XBA – (XA1 + XA2) = 0
• XA1 – (X13 + X14) = 0
• XA2 – X24 = 0 Hipótese: Tipo de Restrição:
• X13 – X3B = 0 Oferta > Demanda Entradas – Saídas ≥ Oferta ou Demanda do Nó
Oferta < Demanda Entradas – Saídas ≤ Oferta ou Demanda do Nó
• X14 + X24 – X4B = 0 Oferta = Demanda Entradas – Saídas = Oferta ou Demanda do Nó
• X3B + X4B – XBA = 0
Situação do 62
exemplo
Curso de Pesquisa Operacional 111
63
20
A m3/s B
30 40
m3/s m3/s
2 4
30
m3/s
Variáveis de
decisão
64
Informações conhecidas
Fórmula 65
Curso de Pesquisa Operacional 112
Entradas Saídas
66
67
1 3 20 m3/s
40 m3/s
Campos Rio de Janeiro
20 m3/s
A B
30 m3/s 40 m3/s
2 4
30 m3/s
68
Curso de Pesquisa Operacional 113
Um modelo só será útil e adequado caso represente, de maneira mais fiel possível, o
comportamento das variáveis selecionadas.
Muitas vezes este comportamento não se mostra tão simples de ser trabalhado como os modelos
de PL.
Na realidade, a maioria dos modelos que trata problemas reais apresenta algum grau de não
linearidade.
Alguns exemplos corriqueiros nos qual o comportamento das variáveis é não linear:
Problemas de mix de produtos, em que a margem de lucro por produto varia conforme
a quantidade vendida;
Problemas de transporte, com custos variáveis dependendo da quantidade enviada.
Problemas de otimização em que a função-objetivo e/ou pelo menos uma das restrições
envolvidas não são funções lineares das variáveis de decisão são denominados Problemas de
Programação Não-Linear (PNL ou NPL em inglês).
Vamos ver as principais características destes modelos e o uso de planilhas em alguns casos.
13.2 Convexidade
Resultado apresentado pelo Solver em casos de PL pode-se afirmar que se encontrou a solução
ótima.
Problemas de PLN, resolvidos por qualquer software não há condições a princípio, de afirmar
que a solução ótima foi encontrada.
Para afirmar que a solução é ótima para PNL é necessário identificar as características de
concavidade e convexidade das funções que compõem o modelo.
Curso de Pesquisa Operacional 114
De uma forma geral, podem-se classificar as funções não lineares em côncavas e convexas.
Vamos ver como identificar isto.
13.3.1 Exemplos
a f x x 2 x
b f x x 3 2 x 8
c f x x 2 x
2 f x1 , x2 2 f x1 , x2
x 2 x1x2
H 2 1
f x1 , x2 f x1 , x2
2
2 f x1 , x2 2 f x1 , x2 2 f x1 , x2
2
D
x12 x22 x1x2
2. Regras:
2 f x1 , x2 2 f x1 , x2
Convexa se D ≥ 0 e 0 e 0 para todos os valores possíveis
x12 x22
2 f x1 , x2 2 f x1 , x2
Estritamente Convexa se D > 0 e 0 e 0 para todos os
x12 x22
2 f x1 , x2 2 f x1 , x2
Côncava se D ≥ 0 e 0 e 0 para todos os valores possíveis
x12 x22
2 f x1 , x2 2 f x1 , x2
Estritamente Côncava se D > 0 e 0 e 0 para todos os
x12 x22
Ressalta-se:
2 f x1 , x2
Se a função é linear do tipo f x1 , x2 0 1 x1 2 x2 , então D = 0; 0 e
x12
2 f x1 , x2
0 para todos os valores possíveis de x1 e x 2 e como tal, é definida como
x22
côncava e convexa simultaneamente;
Curso de Pesquisa Operacional 116
13.4.1 Exemplo 01
f ( x1 , x 2 ) x12 x1 x2 x22 3x1 2
f x1 , x2
2 x1 x2 3
x1
f x1 , x2
x1 2 x2
x2
2 f x1 , x2
2
x12
2 f x1 , x2
2
x22
2 f x1 , x2 2 f x1 , x2
1
x1x2 x2 x1
2 1
H
1 2
D 2 2 1 1 3
2 f x1 , x2
0
x12
2 f x1 , x2
0
x22
Logo a função é estritamente convexa.
13.4.2 Exemplo 02
f ( x1 , x 2 ) x12 x22
Curso de Pesquisa Operacional 117
13.4.3 Exemplo 03
f ( x1 , x 2 ) x13 x22
2 f
D1
x12
2 f 2 f
x 2 x1x2
D2 2 1
f 2 f
x2 x1 x22
2 f 2 f 2 f
x12 x1x2 x1x3
2 f 2 f 2 f
D3
x2 x1 x22 x2 x3
2 f 2 f 2 f
x3x1 x3x2 x32
2 f 2 f
x12 x1xn
Dn
f
2
f
2
xn x1 xn2
Curso de Pesquisa Operacional 118
Estes determinantes são chamados dos menores principais da matriz hessiana e serão em
número igual ao número de variáveis da função.
Então, dizemos que f x1 , x2 , x3 x4 é:
13.5.1 Exemplo 01
f ( x1 , x 2 , x3 ) x1 x3 x22
Derivadas parciais de primeira ordem:
f x1 , x2 , x3
x3
x1
f x1 , x2 , x3
2 x 2
x2
f x1 , x2 , x3
x1
x3
Derivadas parciais de segunda ordem:
2 f x1 , x2 , x3
0
x12
2 f x1 , x2 , x3
0
x1x2
2 f x1 , x2 , x3
1
x1x3
2 f x1 , x2 , x3
0
x2 x1
Curso de Pesquisa Operacional 119
2 f x1 , x2 , x3
2
x22
2 f x1 , x2 , x3
0
x2 x3
2 f x1 , x2 , x3
1
x3 x1
2 f x1 , x2 , x3
0
x3 x2
2 f x1 , x2 , x3
0
x32
0 0 1
H 0 2 0
1 0 0
0 0
D2 0
0 2
0 0 1
D3 0 2 0
1 0 0
0 0 1 0 0
D3 0 2 0 0 2 0 2 0 0 0 1 1 0 0 1 2 1 0 0 0 0 0 0 2
1 0 0 1 0
13.5.2 Exemplo 02
f ( x1 , x 2 , x3 ) x12 x22 x32 x1 x2 2 x1 x3 x2 x3
Curso de Pesquisa Operacional 120
Considere um investidor que tenha certa quantia em dinheiro que quer investir em ações. É
frequentemente assumido o desejo de o investidor maximizar o retorno esperado de seus
investimentos (carteira) que ao mesmo tempo espera-se que o risco desta carteira seja pequeno
(medido pela variância do retorno). Infelizmente, o retorno de ações com alta expectativa de
retorno possui usualmente uma grande variação. Assim, uma abordagem do problema frequente
é adotar um valor mínimo de retorno esperado com um mínimo de variância desta carteira. Por
exemplo, um investidor pode procurar uma carteira de mínima variância que garanta um retorno
de pelo menos 12%. Pela variação do retorno mínimo aceitável, o investidor pode obter e
comparar as diversas carteiras possíveis.
Fórmulas importantes: Dadas variáveis aleatórias x1, x2,...., xn, e as constantes: a, b e k.
Retorno esperado da carteira:
E E ( x1 ) E ( x2 ) E ( xn )
Variância da carteira:
Var ( x1 x2 xn ) var x1 var x2 var xn cov( xi , x j )
i j
Relações importantes:
E (kxi ) kE( xi )
var(kxi ) k 2 var(xi )
cov(axi , bx j ) ab cov(axi , bx j )
Problema:
O investidor tem $1000 para aplicar em três tipos diferentes de ações. Seja Si a rentabilidade
esperada de retorno de $1 investido na ação i. Assim, se Si = 0,12, $1 investido na ação i no
inicio do ano deverá valer $1,12 no final do ano. São conhecidas as seguintes informações:
Ação S1 S2 S3
Retorno esperado 0,14 0,11 0,10
E(Si)
Variância Si 0,2 0,08 0,18
Curso de Pesquisa Operacional 121
Função objetivo:
Restrições:
Primeira: assegurar o retorno de pelo menos 12%
x1 E (s1 ) x2 E (s 2 ) x3 E (s 3 )
E 0,12
1000
0,14 x1 0,11x2 0,10 x3
0,12
1000
0,14 x1 0,11x2 0,10 x3 120
x1 x2 x3 1000
Restrições adicionais:
x1 , x2 , x3 0
Resumindo:
x1 x2 x3 1000
x1 , x2 , x3 0
2 f x1 , x2 , x3
0,1
x1x2
2 f x1 , x2 , x3
0,04
x1x3
2 f x1 , x2 , x3
0,1
x2 x1
2 f x1 , x2 , x3
0,16
x22
2 f x1 , x2 , x3
0,06
x2 x3
Curso de Pesquisa Operacional 123
2 f x1 , x2 , x3
0,04
x3x1
2 f x1 , x2 , x3
0,06
x3x2
2 f x1 , x2 , x3
0,36
x32
0,4 0,1
D2 0,4 0,16 0,1 0,1 0,055
0,1 0,16
Exemplo
Na área de negócios é muito comum a identificação de problemas de localização de fábricas,
armazéns, centros de distribuição, torres de transmissão telefônica, entre outros. Em problemas
Curso de Pesquisa Operacional 124
deste tipo, um dos métodos utilizados de resolução é o de minimizar a distância total entre os
centros consumidores e o centro de distribuição, reduzindo assim, teoricamente o custo de
transporte ou as perdas de sinal de em transmissão.
Para trabalhar com as distâncias, usualmente coloca-se um eixo cartesiano sobre o mapa da
região e determina-se a posição dos centros consumidores em relação a uma origem aleatória.
Veremos este tipo de aplicação no exemplo a seguir.
O gerente de uma empresa de telefonia celular precisa localizar uma antena de transmissão para
atender a 3 localidades da Baixada Fluminense no estado do Rio de Janeiro. Devido a problemas
técnicos, a torre não pode estar a mais de 10 km do centro de cada cidade. Considerando as
localizações relativas abaixo, o gerente deve tomar a decisão de melhor posicionamento para a
antena.
Localidade x y
Nova Iguaçu -5 10
Queimados 2 1
Duque de Caxias 10 5
Curso de Pesquisa Operacional 125
ESTUDOS DE CASOS
Curso de Pesquisa Operacional 126
Uma empresa do setor elétrico esta considerando sua participação em seis novas possibilidades
de investimento. Estes projetos estão sendo elaborados através de Project Finance. Como os
acionistas da empresa querem participar de novos investimentos no setor, buscando melhorar
seus dividendos e permitir o crescimento da empresa, eles pediram ao Diretor Financeiro uma
avaliação e sugestões de quais projetos deveriam investir e com qual participação. O Diretor
Financeiro montou uma equipe de analistas para lhe ajudar.
As informações preliminares, de cada alternativa de investimento, foram às apresentadas na
tabela a seguir.
Ano $
0 45
1 30
A TMA da empresa é de 15% ao ano. O Diretor Financeiro fez aos seus analistas uma série de
perguntas, para que na próxima reunião de acionistas pudesse informar e esclarecer melhor
sobre o assunto. As perguntas foram:
1. Os investimentos são atrativos? Sendo vocês a equipe de analistas de investimentos,
qual seria a opinião quanto a cada um dos investimentos?
2. Qual o melhor investimento?
Curso de Pesquisa Operacional 127
3. Para que fosse possível maximizar a rentabilidade destes investimentos, qual a sugestão
de quanto investir em cada uma das alternativas? Qual o VPL desta combinação de
investimentos? Observação: O VPL, investimentos e receitas são ajustados de acordo
com a participação em cada um dos investimentos.
4. Vai sobrar algum recurso que os acionistas alocaram para as datas 0 e 1?
5. Depois do resultado obtido na carteira que maximiza o VPL (item 3), se a houver a
decisão de não investir na alternativa 03 (retirá-la da carteira e manter os outros
investimentos nos níveis obtidos na resposta do item 3), qual o valor esperado do VPL
do conjunto de investimentos realizados? Qual recurso do Solver ajuda a responder a
esta pergunta?
6. Se os acionistas estiverem dispostos a aumentar o valor reservado para os
investimentos, mas em apenas uma das datas, qual é melhor para incrementar a
rentabilidade? Qual recurso do Solver ajuda a responder a esta pergunta?
7. Qual o valor máximo que você recomenda ser acrescido no orçamento para a data do
item anterior que mantém o investimento na carteira determinada no item 02? Por quê?
Qual recurso do Solver ajuda a responder a esta pergunta?
8. Se os acionistas alocarem o recurso máximo permitido, qual o VPL esperado do
conjunto de investimentos?
9. Qual a quantidade mínima de recursos que pode ser alocada a esta data que mantém na
carteira de investimentos as mesmas alternativas encontradas no item 2? Qual recurso
do Solver ajuda a responder a esta pergunta?
10. Se os acionistas resolverem que desejam investir 10% a menos do que o calculado como
ideal para o investimento 4, que comentário poderia ser feito sobre o VPL esperado da
carteira? Qual recurso do Solver ajuda a responder a esta pergunta?
11. Qual investimento contribui mais para a maximização do VPL?
12. Qual valor de VPL faria o investimento que não estava previsto inicialmente no item
03, fazer parte da carteira?
13. Se for realizado o investimento 1, que observação poderia ser feita?
14. Se o desejo dos acionistas é selecionar alternativas que o orçamento permita investir,
mas que para estes investimentos à empresa tenha propriedade de 100% deles, quais
são os investimentos que deveriam ser adquiridos?
15. Qual o VPL esperado para esta nova carteira?
16. Com esta carteira sobrarão recursos previstos para investimento? Quais são estes
valores?
Curso de Pesquisa Operacional 128
Um empreendedor esta iniciando sua vida profissional, mas como empreendedor que é esta
planejando o que fazer para que sua aposentadoria seja tranquila. Ele planeja no inicio deste
ano e nos próximos 39 anos fazer um depósito em uma conta destinada a este objetivo. Cada
ano ele planeja aumentar em R$500,00 a sua contribuição anual. Quando aposentar em 40 anos,
ele pretende retirar no inicio de cada ano R$100.000,00 por 20 anos. Olhando o mercado
financeiro ele fez a seguintes suposições:
1. Durante os primeiros 20 anos de investimento, a taxa de remuneração será de 10% ao
ano.
2. Durante todos os outros anos, os investimentos serão remunerados a uma taxa de 5% ao
ano.
Qual a menor quantia que ele precisa contribuir neste ano e poder realizar as retiradas para sua
aposentadoria?
Curso de Pesquisa Operacional 129
Assunto: Otimização
Um estado brasileiro esta pensado em uma concessão para um túnel que poderá providenciar
uma economia de tempo significativa no deslocamento de veículos em um determinado
município.
Os dados iniciais estimados pela equipe responsável em analisar este projeto são os seguintes:
Valor Unidade/observação
Investimento = 400 milhões de Reais
Período de concessão = 50 anos
Pedágio carros = 5,00 R$
Pedágio caminhões = 9,00 R$
Movimento anual de carros = 4 milhões
Movimento anual de caminhões = 3 milhões
Custo anual manutenção = 4 milhões
Pagamento da concessão = 15% da receita bruta
Depreciação = 4%
IRPJ = 34%
Impostos proporcionais = 16%
WACC = 8%
Análise 01
Os valores dos pedágios foram estimados e com a intenção de evitar maiores valores para os
usuários do futuro túnel.
Com bases nestes dados previamente levantados, pergunta-se: este empreendimento é viável?
Qual o valor de negócio, VPL e TIR? (preencher a planilha e responder a estas perguntas).
Criar na ferramenta cenários do Excel um chamado de provável com os valores da planilha dos
dados deste projeto.
Questões para discussão:
1. Se o maior valor a ser cobrado do pedágio para carros for de R$6,00 e caminhões
R$10,00, o projeto se viabiliza?
Curso de Pesquisa Operacional 130
2. Se os valores dos pedágios puderem ser aumentados, que valores viabilizam este
projeto?
3. Se o preço do pedágio dos caminhões tiver que ser entre 180% e 210% dos carros como
fica estes novos preços para viabilizarem o empreendimento? Quais restrições devem
ser acrescentadas na formulação?
4. E se para manter os preços de pedágio nos valores iniciais, para não se comprometer
com a opinião pública, que valores de IRPF e os impostos proporcionais viabilizariam
o empreendimento?
5. E se for possível pensar na alteração além do IRPF e os impostos proporcionais, mas
também no pagamento da concessão e depreciação, quais valores viabilizam o
empreendimento?
6. Se incluir também como possível variação o WACC, quais valores viabilizam o
empreendimento?
7. Se o WACC mínimo possível for de 7%, mantendo as variações possíveis nos
parâmetros do item anterior, quais valores viabilizam o empreendimento?
Análise 02
Para os dados originais, outra possibilidade pensada pela equipe é um financiamento de parte
do valor necessário para o investimento. Inicialmente esta se pensando em um financiamento
de 50% do valor do investimento a uma taxa de 6% ao ano.
Pergunta-se:
1. O financiamento viabiliza o empreendimento?
2. Que valores de liberação do financiamento e taxa de juros viabilizam o
empreendimento?
3. Se a taxa de juros não pode ser menor que 6% e nem a quantidade financiada maior que
50%, mas o IRPF e impostos proporcionais podem ser discutidos, que valores
viabilizam o empreendimento?
4. E se for possível pensar na alteração além do IRPF e os impostos proporcionais, mas
também no pagamento da concessão e depreciação, quais valores viabilizam o
empreendimento?
5. Se incluir também como possível variação o WACC, quais valores viabilizam o
empreendimento?
Curso de Pesquisa Operacional 131
ANEXOS
Curso de Pesquisa Operacional 132
Tabela:
Z X1 X2 X3 X4 X5 b razão
Base
Variáveis básicas:
Variáveis não básicas:
Função Z:
Tabela:
Z X1 X2 X3 X4 X5 b razão
Base
Variáveis básicas:
Variáveis não básicas:
Função Z:
Tabela:
Z X1 X2 X3 X4 X5 b razão
Base
Variáveis básicas:
Variáveis não básicas:
Função Z:
Tabela:
Z X1 X2 X3 X4 X5 b razão
Base
Variáveis básicas:
Variáveis não básicas:
Função Z:
Tabela:
Z X1 X2 X3 X4 X5 b razão
Base
Variáveis básicas:
Variáveis não básicas:
Função Z:
Curso de Pesquisa Operacional 133
Tabela:
Z X1 X2 X3 X4 X5 b razão
Base
Variáveis básicas:
Variáveis não básicas:
Função Z:
Tabela:
Z X1 X2 X3 X4 X5 b razão
Base
Variáveis básicas:
Variáveis não básicas:
Função Z:
Tabela:
Z X1 X2 X3 X4 X5 b razão
Base
Variáveis básicas:
Variáveis não básicas:
Função Z:
Tabela:
Z X1 X2 X3 X4 X5 b razão
Base
Variáveis básicas:
Variáveis não básicas:
Função Z:
Tabela:
Z X1 X2 X3 X4 X5 b razão
Base
Variáveis básicas:
Variáveis não básicas:
Função Z:
Curso de Pesquisa Operacional 134
Tabela:
Z X1 X2 X3 X4 X5 b razão
Base
Variáveis básicas:
Variáveis não básicas:
Função Z:
Tabela:
Z X1 X2 X3 X4 X5 b razão
Base
Variáveis básicas:
Variáveis não básicas:
Função Z:
Tabela:
Z X1 X2 X3 X4 X5 b razão
Base
Variáveis básicas:
Variáveis não básicas:
Função Z:
Tabela:
Z X1 X2 X3 X4 X5 b razão
Base
Variáveis básicas:
Variáveis não básicas:
Função Z:
Tabela:
Z X1 X2 X3 X4 X5 b razão
Base
Variáveis básicas:
Variáveis não básicas:
Função Z:
Curso de Pesquisa Operacional 135
Formulação:
max z = 2100x1 + 1200x2 + 600x3
sujeito a:
6x1 + 4x2 + 6x3 4800
12x1 + 6x2 + 2x3 7200
x1 800
x2 600
x3 600
x1; x2; x3 0.
Última tabela:
Z X1 X2 X3 XF1 XF2 XF3 XF4 XF5 b
1 0 0 0 50 150 0 100 0 1380000
0 0 0 1 0,2 -0,1 0 -0,2 0 120
0 1 0 0 -0,03 0,1 0 -0,47 0 280
0 0 0 0 0,03 -0,1 1 0,47 0 520
0 0 1 0 0 0 0 1 0 600
0 0 0 0 0,2 0,1 0 0,2 1 480
Curso de Pesquisa Operacional 136