Você está na página 1de 56

MINISTÉRIO DA EDUCAÇÃO

UNIVERSIDADE ABERTA DO BRASIL

ESPECIALIZAÇÃO EM ENGENHARIA FERROVIÁRIA

ESPECIALIZAÇÃO EM
ENGENHARIA FERROVIÁRIA
Texto Didático

PESQUISA OPERACIONAL EM ENGENHARIA FERROVIÁRIA

PESQUISA OPERACIONAL
Professor: Arturo Alejandro Zavala Zavala EM
ENGENHARIA FERROVIÁRIA

Professor: Arturo Alejandro Zavala Zavala

Cuiabá
2023

2023 UNIVERSIDADE FEDERAL DE MATO GROSSO


SECRETARIA
1
DE TECNOLOGIA EDUCACIONAL
CAPÍTULO 1: INTRODUÇÃO À PESQUISA OPERACIONAL E O MÉTODO DE
SIMPLEX
Objetivo: Entender a missão da Pesquisa Operacional, assim como da utilização.

1. INTRODUÇÃO
A Pesquisa Operacional (PO) é uma disciplina que consiste na aplicação de
métodos analíticos avançados com o objetivo de apoiar o processo de tomada de
decisão, identificando os melhores cursos de ação possíveis.
Neste contexto, a Pesquisa Operacional utiliza técnicas de modelagem
matemática, análise estatística e otimização matemática, com o objetivo de
alcançar soluções ótimas ou próximas delas diante de problemas de decisão
complexos. Espera-se que as decisões tomadas através do uso de um modelo de
pesquisa operacional sejam significativamente melhores em comparação com
aquelas decisões que poderiam ser tomadas usando a simples intuição ou
experiência do tomador de decisão. O que foi dito acima é particularmente
verdadeiro nos problemas de natureza real complexa, que consideram centenas,
até milhares de variáveis de decisão e restrições.
A Pesquisa Operacional (PO) é uma arte que tem como foco modelar a realidade
dos processos e organizações através da utilização de técnicas matemáticas,
estatísticas e algoritmos para tomada de decisão. Sua origem remonta à Segunda
Guerra Mundial, quando foi utilizado para solucionar problemas de otimização
logística e planejamento de missões.
Abaixo está uma linha do tempo que destaca alguns dos principais marcos na
história da PO:
✓ 1947: O termo “Pesquisa Operacional” é usado pela primeira vez durante um
simpósio realizado no Reino Unido.
✓ Na década de 1950: São desenvolvidas técnicas de programação linear,
permitindo a otimização de problemas limitados de alocação de recursos.
✓ Na década de 1960: A PO se torna uma disciplina acadêmica reconhecida, com
a criação de programas de graduação em universidades nos Estados Unidos e
na Europa.
✓ Na década de 1970: A PO se expande para abranger áreas como teoria dos
jogos, simulação e análise de decisão.
✓ Na década de 1980: São desenvolvidas técnicas de programação não linear,
permitindo a resolução de problemas mais complexos e não lineares.
✓ Na década de 1990: A PO se estende a novas áreas, como otimização
combinatória, inteligência artificial e teoria de redes.

2
✓ Na década de 2000: A PO continua a evoluir, com um foco crescente na
tomada de decisões sob incerteza e na otimização multiobjetivo.

O foco da Pesquisa Operacional é a modelagem. Um modelo é uma ferramenta


analítica que nos ajuda a alcançar uma visão bem estruturada da realidade. Assim,
o objetivo do modelo é fornecer um meio de analisar o comportamento dos
componentes de um sistema, a fim de otimizar o seu desempenho (identificar o
melhor curso de ação possível).

1.1. EXEMPLO 1:
Imaginemos que por motivos de trabalho tenhamos que viajar a São Paulo, todas
as semanas, durante 5 semanas, mas para não deixar nossas obrigações em
Cuiabá, destinamos nossas tarefas em São Paulo de segunda até quarta-feira,
devendo sair sempre na segunda feira e voltar na quarta feira, deixando a quinta e
sexta para solucionar problemas em Cuiabá.

Viajar em avião ida-volta para São Paulo custa em média R$ 400,00. A empresa de
viagens possibilitou um desconto de 20% se as datas de viagens pegavam fins de
semana, já seja em Cuiabá ou São Paulo. Além disso, uma passagem de ida ou de
volta custava 75% do preço da viagem de ida-volta para São Paulo.

Como se poderiam comprar as passagens de forma que se possa estar em São


Paulo e Cuiabá nos dias de semana considerados, com o mínimo custo possível?

Para a solução a este problema simples o primeiro que devemos fazer é identificar
o problema e nos perguntar o seguinte:

i) Quais são as alternativas de decisão?


ii) Quais são as restrições de decisão?
iii)Qual é o objetivo para avaliar as alternativas?

Comecemos por identificar nossas alternativas de decisão de compra de


passagem, sendo estas:

Alternativa 1: Comprar 5 passagens Cuiabá – São Paulo – Cuiabá.


Alternativa 2: Comprar uma passagem Cuiabá – São Paulo, quatro passagens São
Paulo – Cuiabá – São Paulo, as quais permitam que as datas incluam
os fins de semana em Cuiabá, e uma passagem São Paulo – Cuiabá.
Alternativa 3: Comprar uma passagem Cuiabá – São Paulo – Cuiabá, que considere
a segunda feira da primeira semana e a quarta feira da última semana,
e quatro passagens São Paulo – Cuiabá – São Paulo, que considerem
os finais de semana em Cuiabá.

3
A restrição para nossa decisão será o fato que para cumprir a tarefa deve sair de
Cuiabá uma segunda feira e voltar uma quarta feira.

Uma forma óbvia de avaliação das alternativas proposta, será aquele que
apresente o menor custo possível.

Custo da Alternativa 1:

Como o custo de uma passagem ida-volta para São Paulo é de R$ 400,00. Então o
custo para as cinco semanas é de:
𝐶𝑢𝑠𝑡𝑜 1 = 5×𝑅$ 400, 00 = 𝑅$ 2. 000, 00

Custo da Alternativa 2:

Como a passagem só de ida ou só de volta corresponde a 75% do preço de ida-


volta, além disso, se as datas contemplam um final de semana teremos um
desconto de 20% do preço de ida-volta, então temos o seguinte:
𝐶𝑢𝑠𝑡𝑜 2 = 0, 75×𝑅$ 400, 00 + 4×0, 80×𝑅$ 400, 00 + 0, 75×𝑅$ 400, 00 = 𝑅$ 1. 880, 00

Custo da Alternativa 3:

Para esta última alternativa temos que as 5 passagens contemplam o final de


semana, porém um desconto de 20% do preço de ida-volta será considerado,
desta forma o custo será:

𝐶𝑢𝑠𝑡𝑜 3 = 5×0, 80×𝑅$ 400, 00 = 𝑅$ 1. 600, 00


Observa-se que a partir disto podemos indicar que a melhor alternativa a ser
considerada seria a terceira, já que ela apresenta o menor custo possível.

4
1.2. EXEMPLO 2:
Consideremos o fato de ter um arame de longitude 𝐿 cm. e se deseja configurar
esse pedaço de arame numa forma retangular, de forma que seja maximizada a
área cercada, qual deveriam ser os lados dessa forma retangular?

Para isto, podemos imaginar que a forma retangular tem a seguinte estrutura:

Então devido a necessidade de maximizar a área cercada, o modelo matemático


pode ser definido por:
𝐴 = 𝑎 ×𝑏
Sujeito a
𝐿
𝑎+ 𝑏 = 2

𝑎, 𝑏≥0
Em termos gerais um modelo matemático para um problema de decisão, estaria
dado por:

Figura 1: Estrutura de um modelo matemático

Notemos que no exemplo anterior a Função Objetivo estaria dada pela Área
definida pela letra A, e as restrições estaria dado pelas duas expressões
matemáticas.

1.3. MODELO MATEMÁTICO


Um modelo matemático se pode entender como a representação simplificada da
realidade, expressada na forma de equações matemáticas que serve para simular
a realidade. Na Pesquisa Operacional este modelo matemático tem alguns passos
a considerar:

5
Passo 1: Defina o problema: O primeiro passo é definir o problema que deseja
resolver. É importante identificar claramente qual é o objetivo e quais os
constrangimentos que devem ser cumpridos.
Passo 2: Identifique as variáveis: As variáveis são as incógnitas que você deseja
encontrar no problema. É importante identificar quais variáveis são
relevantes para o problema e atribuir-lhes um nome.
Passo 3: Formule a função objetivo: A função objetivo é uma equação matemática
que representa o objetivo do problema, seja maximizar ou minimizar
algum valor. A função objetivo deve ser em termos das variáveis
identificadas e deve ser linear.
Passo 4: Estabeleça restrições: Restrições são as limitações que devem ser
atendidas para resolver o problema. Estas restrições devem ser em termos
das variáveis identificadas e devem ser lineares. Além disso, as restrições
devem assumir a forma de desigualdades ou igualdades.
Passo 5: Represente o problema na forma de um sistema de equações lineares:
Uma vez definidas a função objetivo e as restrições, elas podem ser
representadas na forma de um sistema de equações lineares.
Passo 6: Resolva o sistema de equações lineares: Existem vários métodos para
resolver sistemas de equações lineares, um dos mais comuns é o método
simplex. Este método permite encontrar a solução ótima que atenda às
restrições e otimize a função objetivo.
Passo 7: Interpretar a solução: Uma vez encontrada a solução ótima, é importante
interpretá-la para tomar decisões informadas e avaliar a eficácia do modelo.
O modelo pode precisar ser ajustado e resolvido se os resultados não
atenderem aos objetivos esperados.
Estas são as etapas gerais para fazer programação linear. Cada problema é único e
pode exigir adaptações específicas, mas essas etapas fornecem um guia geral
para resolver problemas utilizando programação linear.

1.4. EXEMPLO 3:
Para entender o modelo matemático consideremos o seguinte exemplo,
imaginemos que exista a empresa de tintas “Bela” que produz tintas para
interiores e exteriores, ela utiliza para a produção dos dois tipos de tintas, dois
tipos de matérias primas, digamos T1 e T2. A tabela a seguir proporciona a
disponibilidade de Matéria Prima e sua utilidade por cada tipo de tinta.

Toneladas de Materia Disponibilidade


Prima Máxima diaria
por Tonelada de (em Toneladas)

6
Pintura
Para Para
Exteriores Interiores
Materia Prima T1 6 4 24
Materia Prima T2 1 2 6
Utilidade por
5 4
Tonelada
(US$ 1.000,00)

Uma pesquisa de mercado restringe a demanda máxima diária de pintura para


interiores a 2 toneladas. Além disso, a demanda diária de pintura para interiores
não pode exceder a de pintura para exteriores por mais de uma tonelada. A
empresa de tintas “Belas” quer determinar a mistura de produto ótima para
interiores e exteriores de forma que produza a máxima utilidade possível
diariamente.

Para a solução do presente exercício, precisamos seguir com os passos seguintes:


Passo 1: Defina o problema
Se deseja maximizar a utilidade da empresa de tintas “Belas”

Passo 2: Identifique as variáveis


Neste caso estamos frente a duas variáveis. Como a empresa precisa determinar
as quantidades que se vão a produzir de pinturas para interiores e exteriores, as
variáveis que se deverão definir são:
𝑋1:={Quantidade de Tintas para Exteriores}

𝑋2:={Quantidade de Tintas para Interiores}

Passo 3: Formule a função objetivo:


Neste caso nossa meta é maximizar a utilidade diária por toneladas de pintura, se
definimos a Z como a utilidade diária por venda de pinturas para interiores ou para
exteriores, nosso objetivo, então, pode ser reduzido a:
𝑀á𝑥𝑖𝑚𝑖𝑧𝑎𝑟 𝑍 = 5𝑋1 + 4𝑋2

7
Passo 4: Estabeleça restrições
Para as restrições considerarmos todas aquelas que apresentam alguma
limitação, neste caso a limitação é de disponibilidade máxima de matéria prima.
Desta forma as restrições são:
Matéria Prima 𝑇1: 6𝑋1 + 4𝑋2≤24

Matéria Prima 𝑇2: 𝑋1 + 2𝑋2≤6

Demanda Diária de Pintura para Interiores: 𝑋2≤2

Demanda diária de pintura para interiores não pode exceder a de pintura para
exteriores por mais de uma tonelada: 𝑋2 ≤ 𝑋1 + 1

Restrições de não negatividade: 𝑋1, 𝑋2≥0

Passo 5: Represente o problema na forma de um sistema de equações lineares:


Desta forma:
𝑀á𝑥𝑖𝑚𝑖𝑧𝑎𝑟 𝑍 = 5𝑋1 + 4𝑋2

Sujeito a
6𝑋1 + 4𝑋2≤24

𝑋1 + 2𝑋2≤6

𝑋2≤2

𝑋2 ≤ 𝑋1 + 1

𝑋1, 𝑋2≥0

8
Passo 6: Resolva o sistema de equações lineares:

Gráfico 1: Polígono de interseção de restrições do Problema de Produção

Como o polígono formado é OABCDE, tendo neste caso 5 vértices possíveis de


solução, então:
No Ponto A: temos que 𝑋1 = 0 e 𝑋2 = 1, desta forma o valor que toma a função
objetivo é:
𝑍𝐴 = 5(0) + 4(1) = 4

No ponto B: temos que 𝑋2 = 2 e a reta 𝑋2 − 𝑋1 = 1, desta forma 𝑋1 = 1, então estes


valores permitem obter uma função objetivo igual a:
𝑍𝐵 = 5(1) + 4(2) = 13

No ponto C: temos que 𝑋2 = 2 e a reta 𝑋1 + 2𝑋2 = 6, desta forma 𝑋1 = 2, então estes


valores permitem obter uma função objetivo igual a:
ZC = 5 (2) + 4 (2) = 18

No ponto D: temos a interseção das retas 6𝑋1 + 4𝑋2 = 24 e 𝑋1 + 2𝑋2 = 6, resolvendo


o sistema de equações formada, temos que 𝑋1 = 3 e 𝑋2 = 3/2, então na função
objetivo:
𝑍𝐷 = 5(3) + 4(3/2) = 21

9
No ponto E: temos que 𝑋1 = 4 e 𝑋2 = 0, na função objetivo temos:

𝑍𝐸 = 5(4) + 4(0) = 20

Passo 7: Interpretar a solução:


Como nosso interesse é escolher o valor maior dentre os obtidos, podemos
concluir que a melhor solução se encontra no ponto D, oferecendo está uma
utilidade de US$ 21.000,00 dólares pela produção diária de 3 toneladas de pintura
para exteriores e de 1,5 toneladas diárias de pintura para interiores.

1.5. EXEMPLO 4:
Poderíamos considerar, por exemplo, a empresa “Completa”, que utiliza
diariamente pelo menos 800 Kg. de alimento especial. Este alimento especial é
uma mistura de milho e semente de soja com a composição seguinte:

Quantidade de quilos de
Alimento composto por quilo de
Especial alimento especial
Proteina Fibras Custo/K
s g
Milho 0,09 0,02 0,30
Semente de 0,60 0,06 0,90
Soja

Os requerimentos dietéticos diários de alimento especial consideram que pelo


menos um 30% de proteínas e quanto muito 5% de fibras, devem ser considerados
na mistura. A empresa “Completa” deseja determinar o custo mínimo diário de
mistura de alimentos.
Para a solução do presente exercício, precisamos seguir com os passos seguintes:
Passo 1: Defina o problema
Se deseja minimizar os custos diário de mistura de alimentos

Passo 2: Identifique as variáveis


Neste caso estamos frente a dois tipos de variáveis, estas são as que conformam o
alimento especial, sendo estas:
𝑋1:={Quantidade de quilogramas de milho}

10
𝑋2:={Quantidade de quilogramas de semente de soja}

Passo 3: Formule a função objetivo:


Já que nosso interesse é minimizar o custo diário de mistura de alimentos, esta
pode ser escrita por:
𝑀𝑖𝑛𝑖𝑚𝑖𝑧𝑎𝑟 𝑍 = 0, 30 𝑋1 + 0, 90 𝑋2

Passo 4: Estabeleça restrições


Conter 800 Kg de alimento especial: 𝑋1 + 𝑋2 = 800

Disponibilidade da proteína na mistura: 0, 09𝑋1 + 0, 60𝑋2≥30%(𝑋1 + 𝑋2)

ou seja − 0, 21𝑋1 + 0, 06𝑋2≥0

Disponibilidade de fibra na mistura: 0, 02𝑋1 + 0, 06𝑋2≤5%(𝑋1 + 𝑋2)

ou seja 0, 03𝑋1–0, 01𝑋2≥0

Restrição de não negatividade: 𝑋1, 𝑋2≥0

Passo 5: Represente o problema na forma de um sistema de equações lineares:


Em resumo o modelo pode ser definido por:
𝑀𝑖𝑛𝑖𝑚𝑖𝑧𝑎𝑟 𝑍 = 0, 30𝑋1 + 0, 90𝑋1

Sujeito a
𝑋1 + 𝑋2 = 800

− 0, 21𝑋1 + 0, 06𝑋2≥0

0, 03𝑋1–0, 01𝑋2≥0

𝑋1, 𝑋2≥0

11
Passo 6: Resolva o sistema de equações lineares:

Gráfico 2: Polígono de interseção de restrições do Problema de Mistura para Rações

A solução ótima se encontra na região sombreada, como desejamos minimizar


devemos encontrar o menor valor nos vértices do polinômio assim formado.

No ponto A: Os valores de 𝑋1 e 𝑋2 se encontram na fronteira da interseção das retas


𝑋1 + 𝑋2 = 800 e 0, 03𝑋1 − 0, 01𝑋2 = 0, desta forma 𝑋1 = 200 e 𝑋2 = 600, desta forma o
valor da função objetivo é:
𝑍𝐴 = 0, 30(200) + 0, 90(600) = 600

No ponto B: Os valores de 𝑋1 e 𝑋2 se encontram na fronteira da interseção das retas


X1+X2=800 e − 0, 21𝑋1 + 0, 30𝑋2 = 0, desta forma 𝑋1 = 470, 59 e 𝑋2 = 329, 41, desta
forma o valor da função objetivo é:
𝑍𝐵 = 0, 30(470, 59) + 0, 90(329, 41) = 437, 65

Passo 7: Interpretar a solução:


Destas duas soluções encontramos que no ponto B, encontram-se o menor valor
observado, pelo que podemos dizer que produzir alimento especial será
necessário de 470,59 Kg de Milho, assim como de 329,41 Kg de sementes de soja,
tendo desta forma um custo de R$ 437,65 por quilograma produzido de mistura.

12
1.6. EXEMPLO 5:
Uma transportadora utiliza burros e jumentos para transportar cargas entre duas
cidades. A capacidade de carga de um burro é de até 100 Kg, enquanto a do
jumento é de até 50 Kg. Durante a viagem, um burro consome 3 montes de capim
e 100 litros de água. Um jumento consome 2 montes de capim e 30 litros de água.
A empresa possui várias estações de alimentação intermediárias entre as duas
cidades. Estas estações dispõem, no momento, de 900 litros de água e 300 montes
de capim. Os burros e jumentos utilizados pela firma são alugados e o preço do
aluguel é de R$ 30,00 por burro e R$ 20,00 por jumento. Existe no momento uma
necessidade de transporte de 1.000 Kg. Quantos burros e jumentos devem ser
utilizados de modo a minimizar o custo do aluguel pago?
Para a solução do presente exercício, precisamos seguir com os passos seguintes:
Passo 1: Defina o problema
Se deseja minimizar os custos de aluguel

Passo 2: Identifique as variáveis


Neste caso estamos frente a dois tipos de variáveis, estas são as que conformam o
alimento especial, sendo estas:
𝑋1:={Quantidade de burros para o transporte}
𝑋2:={Quantidade de Jumentos para o transporte}

Passo 3: Formule a função objetivo:


Já que nosso interesse é minimizar o custo diário de mistura de alimentos, esta
pode ser escrita por:
𝑀𝑖𝑛𝑖𝑚𝑖𝑧𝑎𝑟 𝑍 = 30 𝑋1 + 20 𝑋2

Passo 4: Estabeleça restrições


Consumo de Capim na viagem: 3 𝑋1 + 2 𝑋2≤300
Consumo de Água na viagem: 100 𝑋1 + 30 𝑋2≤900
Necessidade de Transporte: 100 𝑋1 + 50 𝑋2 = 1000

Não Negatividade: 𝑋1, 𝑋2≥0

13
Passo 5: Represente o problema na forma de um sistema de equações lineares:
𝑚𝑖𝑛𝑖𝑚𝑖𝑧𝑎𝑟 𝑍 = 30 𝑋1 + 20 𝑋2

Sujeito a
3 𝑋1 + 2 𝑋2≤300

100 𝑋1 + 30 𝑋2≤900

100 𝑋1 + 50 𝑋2 = 1000

𝑋1, 𝑋2≥0

Passo 6: Resolva o sistema de equações lineares:

Gráfico 3: Polígono de interseção de restrições do Problema de Transporte

Dadas às restrições colocadas o único ponto com solução possível é o ponto A,


este ponto tem como pontos a interseção das retas 100 𝑋1 + 30 𝑋2 = 900 e 100 X1 +
50 X2 = 1000, sendo seus valores X1 = 7,5 e X2 = 5, obtendo a função objetivo
seguinte:
𝑍𝐴 = 30(7, 5) + 20(5) = 325

14
Passo 7: Interpretar a solução:
Pelo que podemos dizer que com um mínimo de 8 burros e 5 jumentos
poderemos ter um lucro de 340 unidades monetárias.

1.7. O MÉTODO SIMPLEX


Desenvolvido por George B. Dantzig em 1947, o algoritmo simplex, conhecido
como método simplex, é usado para calcular uma função objetivo (a operação a
ser executada) de programação linear. Este método é um procedimento
matemático iterativo realizado sistematicamente para determinar a solução ótima
a partir do conjunto de soluções viáveis.
Ou seja, partindo do valor da função objetivo em qualquer ponto, o procedimento
consiste em procurar outro ponto que melhore o valor anterior através da
avaliação de cada variável.
Ao contrário do método gráfico, pode processar mais de 3 variáveis, permitindo a
execução de exercícios complexos através de suas duas modalidades, o método
algébrico e a tabela simplex, que permite ordenar claramente os valores através
de linhas e colunas.
O método simplex funciona em um espaço geométrico denominado espaço de
soluções viáveis. Cada ponto neste espaço representa uma combinação das
quantidades de produtos A e B que você pode fabricar dentro das restrições
fornecidas. O algoritmo se move de um ponto a outro, melhorando
gradativamente a solução, até encontrar o ponto ótimo que maximiza seus lucros
ou minimiza seus custos.

1.7.1. Requisitos do método simplex


As condições que devem ser atendidas antes de aplicar o método simplex, seja ele
algébrico ou tabela simplex, são as seguintes:
✔ Todas as limitações devem ser estabelecidas como equações (igualdades).
Isso implica que não pode haver valores negativos dentro do método
simplex e, se for esse o caso, a igualdade deve ser equilibrada por meio de
processos algébricos.
✔ O segundo membro de uma limitação não pode ser negativo. Quando
falamos do segundo membro de uma equação ou desigualdade,
geralmente nos referimos ao da direita, que normalmente é numérico.
✔ Qualquer desigualdade pode ser transformada em uma equação se uma
quantidade negativa for adicionada ao lado com o menor valor dela. Esta
variável é chamada de variável de folga e deve ser introduzida na função
objetivo com coeficiente zero para não afetar a operação.

15
O método conclui quando não é possível continuar melhorando esse valor, ou o
que dá no mesmo: uma solução ótima foi alcançada dependendo do objetivo a ser
alcançado, porém são apresentados dois casos: maximização e minimização que,
dependendo do seu contexto, permitir a realização de pesquisas operacionais
relevantes.

Em termos simples, eles são executados a partir da abordagem dada ao que é o


método simplex.
✔ Se procuramos obter o maior valor ideal em termos de produtividade da
cadeia de abastecimento com base na velocidade de entrega, então falamos
de maximização através do método simplex.
✔ Se o objetivo é encontrar o menor valor ótimo nos custos de fabricação do
produto, então o objetivo é minimizá-los através do método simplex.

1.7.2. Algoritmo SIMPLEX Geral

Em termos gerais o algoritmo SIMPLEX segue a seguinte estrutura:


A) INÍCIO: Identificar uma solução básica admissível inicial
Nesta parte se procura levar as inequações a equações, conformando-se
desta forma a solução básica do modelo matemático proposto.
B) ITERAÇÃO: Passar a uma solução básica admissível melhor Para isto será
necessário fazer as seguintes perguntas:
✓ Que variável deve de entrar como solução do sistema?
✓ Que variável deve de sair da solução do sistema?
A ideia é melhorar a função objetivo com a saída e entrada de variáveis na solução
do sistema de equações.

C) PARAGEM: O algoritmo para quando não houver mais variáveis que possam
entrar como solução ao sistema de equações.

1.7.3. O Método do SIMPLEX com o Solver do Excel


EXEMPLO 1
Considere a seguinte Programação Linear:

16
Para utilizar o Solver do Excel, o primeiro passo consiste em criar uma folha de
cálculo com a informação contida no modelo. Nessa folha de cálculo se deve ter:
✔ As células onde serão colocados os valores das variáveis de decisão;
✔ A equação que constituíram a função objetivo;
✔ Os coeficientes da matriz de restrições;
✔ As fórmulas que relacionam as variáveis de decisão com a matriz de
restrições;
✔ O valor das restrições.

Da forma a seguir:

Para ativar o SOLVER no EXCEL se faz o seguinte procedimento:


1. Fazer Click em Arquivo no Excel
2. Fazer click em Opções

17
3. Logo fazer um click em Suplementos, obtendo:

4. Logo fazer um click em ir:


5. Aparece a seguinte janela:

6. Fazer um click em OK, aí se ativa o SOLVER em Excel


Uso do SOLVER no Excel:
Passo 1: Apresentar as condições iniciais no Excel

18
Passo 2: No Excel fazer um Click em Dados e logo em Solver,
Após aparece a seguinte janela:
1. Incluir a Função Objetivo, definir o tipo de otimização e identificar as variáveis de
decisão

2. Para incluir as restrições, se deve fazer um click em Adicionar, obtendo a


seguinte janela

19
3. Após a inclusão das restrições fazemos um click em tornar variáveis Irrestritas
Não Negativas e logo fazer click em selecionar um método de seleção e
escolher LP Simples, como se amostra abaixo:

4. Fazer click a Resolver, obtendo:

Neste caso, se observa que


𝑋1 = 271, 4286; 𝑋2 = 0; 𝑍 = 31. 757, 14

No que diz as restrições que dos 1500, só se utilizou 1357,143. Dos 1900 se utilizou os
1900, dos 1000 foi utilizado 542,8571. Também se como mínimo deveu se usar 500,
o programa utilizou 2442,857 e como mínimo se precisa utilizar 300, foi utilizado
1900.

20
EXEMPLO 2:
O Sr. A. Galo, diretor-técnico de um aviário, pretende determinar a composição da
alimentação que deverá ser fornecida diariamente aos animais misturando rações,
de forma a conseguir certa qualidade nutritiva a um custo mínimo. Os dados
relativos ao custo e às propriedades nutritivas de cada tipo de ração constam da
tabela abaixo.

Proprieda Raç Quantidade


Unidade
des ão Minima
s
Nutritivas Super Extra Milh Requerida
Galo Galo o
Energia Calorias/K 500 400 300 15
g 0
Vitaminas u.i./Kg 300 500 200 15
0
Proteinas gr/Kg 60 70 30 20
Custo U.M./Kg 250 300 100
Ração

Definição das variáveis:


𝑋1:={Quantidade de Ração Super Galo}

𝑋2:={Quantidade de Ração Extra Galo}

𝑋3:={Quantidade de Ração de Milho}

Definição das restrições do modelo:


Quantidade de Calorias/Kg necessária para produzir a ração:
500 𝑋1 + 400 𝑋2 + 300 𝑋3≥150

Quantidade de Vitaminas por Kg necessária para produzir a razão:


300 𝑋1 + 500 𝑋2 + 200 𝑋3≥150

Quantidade de Proteínas por Kg necessária para produzir a razão:


60 𝑋1 + 70 𝑋2 + 30 𝑋3≥20

Definição da Função Objetivo


Nosso objetivo é conseguir certa qualidade nutritiva a um custo mínimo, desta
forma:
𝑀𝑖𝑛𝑖𝑚𝑖𝑧𝑎𝑟 𝑍 = 250 𝑋1 + 300 𝑋2 + 100 𝑋3

21
Desta forma o modelo matemático é definido por:
𝑀𝑖𝑛𝑖𝑚𝑖𝑧𝑎𝑟 𝑍 = 250 𝑋1 + 300 𝑋2 + 100 𝑋3

Sujeito a
500 𝑋1 + 400 𝑋2 + 300 𝑋3≥150

300 𝑋1 + 500 𝑋2 + 200 𝑋3≥150

60 𝑋1 + 70 𝑋2 + 30 𝑋3≥20

𝑋1, 𝑋2, 𝑋3≥0

No Excel devemos criar um espaço que define as variáveis em estudo, neste caso:

Uma vez composto a estrutura, devemos utilizar o SOLVER para encontrar a


solução, da maneira seguinte, primeiro no Excel fazer um click em Dados e logo
em Solver, como se indica abaixo.

Uma vez feito o passo anterior se abre a janela parâmetros do Solver, aqui em
princípio devemos definir Objetivo e as Células Variáveis, como se amostra a
continuação:

22
Após temos que introduzir as restrições, neste caso se deve clicar no ícone
Adicionar, da forma seguinte:

Agora só falta a inclusão da disponibilidade Mínima na janela de restrição, da


maneira seguinte:

23
Após fazer OK, voltamos a janela inicial de Parâmetros do Solver, tendo que fazer o
seguinte:

Para nossa solução devemos assegurar que esses dois elementos em círculo
estejam ativados, após fazer um click em Resolver, obtendo a resposta seguinte:

Observemos que:
𝑋1 = 0; 𝑋2 = 0; 𝑋3 = 0, 75; 𝑍 = 75

De Calorias se precisou 225; De Vitaminas se precisou 150; De Proteínas se


precisou 22,5

24
CAPÍTULO 2: ANÁLISE DA DUALIDADE E SENSIBILIDADE
Objetivo: Neste tópico veremos que cada problema de programação linear está
associado a outro problema de programação linear, denominado “Problema Dual”.
E entender a análise de sensibilidade na pesquisa operacional o qual permite
compreender os efeitos que ocorrem em uma solução ótima

2.1. ANÁLISE DA DUALIDADE NA PROGRAMAÇÃO LINEAR


A dualidade constitui um tema de grande importância para a programação linear,
pois fornece as bases teóricas para entender como a solução ótima de qualquer
problema muda quando as constantes do modelo matemático mudam, o que é
conhecido como análise de sensibilidade ou análise pós-ótima. Todo problema de
programação linear tem outro problema de programação linear especialmente
relacionado. O problema originalmente formulado é conhecido como primal,
enquanto sua contraparte intimamente relacionada é conhecida como dual. As
relações são tais que cada uma é dual da outra e encontrar a solução ótima para
um envolve encontrar imediatamente a solução ótima para o outro.
Associado a cada problema linear está outro problema de programação linear
denominado problema dual (PD), que possui propriedades importantes e relações
notáveis em relação ao problema linear original, um problema que, ao contrário
do problema dual, é então chamado de problema primal (PP).
Como foi visto a programação linear pode ser usada para resolver muitos
problemas de negócios, seja para maximizar lucros ou para minimizar custos.
Nesses casos, a solução ótima nos explicou como os recursos deveriam ser
alocados para atingir um objetivo estabelecido.
A solução ótima de um problema Dual fornece as seguintes informações a
respeito do problema original:
A solução ótima para o problema Dual fornece os preços de mercado, ou lucros,
dos escassos recursos alocados no problema Primal. Além disso, a solução ótima
do problema Dual também nos dá a solução ótima do problema Primal e
vice-versa.
Relações entre um problema Primal e um problema Dual
Estas relações surgem do intercâmbio entre variáveis e restrições, entre custos ou
lucros e disponibilidades, e Maximização e Minimização de maneira geral entre
um problema primal e um problema dual.

25
Para entender este intercambio, consideremos a seguinte estrutura de um
problema primal:
𝑀𝑖𝑛𝑖𝑚𝑖𝑧𝑎𝑟 𝑍 = 𝑐1𝑋1 + 𝑐2𝑋2 + ⋯ + 𝑐𝑛𝑋𝑛

𝑆𝑢𝑗𝑒𝑖𝑡𝑜 𝑎 (𝑆. 𝐴.)

( )
Restrição 1 𝑌1 : 𝑎11𝑋1 + 𝑎12𝑋2 + ⋯ + 𝑎1𝑛𝑋𝑛 ≥ 𝑏1

( )
Restrição 2 𝑌2 : 𝑎21𝑋1 + 𝑎22𝑋2 + ⋯ + 𝑎2𝑛𝑋𝑛 ≥ 𝑏2

( )
Restrição 𝑚 𝑌𝑚 : 𝑎𝑚1𝑋1 + 𝑎𝑚2𝑋2 + ⋯ + 𝑎𝑚𝑛𝑋𝑛 ≥ 𝑏𝑚

Sendo que 𝑋𝑖≥0 ∀ 𝑖 = 1, 2, ⋯, 𝑛

Para obter o problema dual, devemos definir cada restrição como uma variável e
as constantes de disponibilidade como função de custo da nova função objetivo.
Desta forma podemos definir 𝑚 variáveis, definidas com a simbologia 𝑌, se nosso
interesse na função objetivo do primal era de minimizar, no dual será de
maximizar, desta forma o problema dual estará definido por:
𝑀𝑎𝑥𝑖𝑚𝑖𝑧𝑎𝑟 𝑊 = 𝑏1𝑌1 + 𝑏2𝑌2 + ⋯ + 𝑏𝑚𝑌𝑚

𝑆𝑢𝑗𝑒𝑖𝑡𝑜 𝑎 (𝑆. 𝐴.)

( )
Variável 1 𝑋1 : 𝑎11𝑌1 + 𝑎21𝑌2 + ⋯ + 𝑎𝑚1𝑌𝑚 ≤ 𝑐1

( )
Variável 2 𝑋2 : 𝑎12𝑌1 + 𝑎22𝑌2 + ⋯ + 𝑎𝑚2𝑌𝑚 ≤ 𝑐2

( )
Variável 𝑛 𝑋𝑛 : 𝑎1𝑛𝑌1 + 𝑎2𝑛𝑌2 + ⋯ + 𝑎𝑚𝑛𝑌𝑚 ≤ 𝑐𝑚

Sendo que 𝑌𝑖≥0 ∀ 𝑖 = 1, 2, ⋯, 𝑚

Tabela 1: Relação entre soluções ótimas primal e dual


Problema de Problema de
Maximização Minimização
Restrições Variáveis:
: ¼ 0

≤ ¼ ≥0

26
= ¼ Irrestrita
Variáveis Restrições:
0 ¼
≥0 ¼ ≥
Irrestrita ¼ =

Para entender em que consiste a programação dupla, vejamos o seguinte


exemplo:

EXEMPLO 1: Considere o seguinte problema primal


𝑀𝑎𝑥𝑖𝑚𝑖𝑧𝑎𝑟 𝑍 = 2 𝑋1 + 𝑋2

Sujeito a
− 𝑋1 + 𝑋2≤1

𝑋1 + 𝑋2≤3

𝑋1 − 2 𝑋2≤4

𝑋1, 𝑋2≥0

Obter a formulação do problema dual.


Neste exemplo temos 3 restrições, cada restrição é definida como uma nova
( )
variável 𝑌, ou seja, teremos as variáveis 𝑌1, 𝑌2, 𝑌3 , no problema Primal temos
duas variáveis, no dual cada variável se converte em restrição, como as variáveis
( )
𝑋𝑖≥0 , então as 2 restrições no dual serão de tipo (≥), no problema Primal as
( )
restrições são de tipo (≤), então no problema Dual as variáveis serão de tipo 𝑌𝑖≥0 ,
como se observa na tabela 1, observa-se que no problema Primal se deseja
Maximizar, então no problema Dual se fará a Minimização, desta forma o
problema Dual é definido por:
𝑀𝑖𝑛𝑖𝑚𝑖𝑧𝑎𝑟 𝑊 = 𝑌1 + 3 𝑌2 + 4 𝑌3

Sujeito a
− 𝑌1 + 𝑌2 + 𝑌3≥2

𝑌1 + 𝑌2 − 2 𝑌3≥1

𝑌1, 𝑌2, 𝑌3≥0

27
EXEMPLO 2: Considere o seguinte problema primal
𝑀𝑎𝑥𝑖𝑚𝑖𝑧𝑎𝑟 𝑍 = 𝑋1 + 2 𝑋2

Sujeito a
3 𝑋1 + 𝑋2≤6

2 𝑋1 + 𝑋2 = 3

𝑋1, 𝑋2≥0

Obter a formulação do problema dual.


Neste exemplo temos 2 restrições, cada restrição é definida como uma nova
( )
variável 𝑌, ou seja, teremos as variáveis 𝑌1, 𝑌2 , no problema Primal temos duas
( )
variáveis, no dual cada variável se converte em restrição, como as variáveis 𝑋𝑖≥0 ,
então as 2 restrições no dual serão de tipo (≥), no problema Primal existe uma
( ) ( )
restrição de tipo (≤), então a variável Dual 1 𝑌1 , será do tipo 𝑌1≥0 , no problema
Primal a outra restrição é do tipo (=), então a variável Dual 2 (𝑌2), será do tipo
(𝑌2 𝐼𝑟𝑟𝑒𝑠𝑡𝑟𝑖𝑡𝑜), como se observa na tabela 1, observa-se que no problema Primal se
deseja Maximizar, então no problema Dual se fará a Minimização, desta forma o
problema Dual é definido por:
𝑀𝑖𝑛𝑖𝑚𝑖𝑧𝑎𝑟 𝑊 = 6 𝑌1 + 3 𝑌2

Sujeito a
3 𝑌1 + 2 𝑌2≥6

𝑌1 + 𝑌2≥2

𝑌1≥0, 𝑌2 𝐼𝑟𝑟𝑒𝑠𝑡𝑟𝑖𝑡𝑜

EXEMPLO 3: Considere o problema primal seguinte:


𝑀𝑎𝑥𝑖𝑚𝑖𝑧𝑎𝑟 𝑍 = 5 𝑋1 + 2 𝑋2

Sujeito a
𝑋1≤3

𝑋2 = 4

𝑋1 + 2 𝑋2≥9

𝑋1≥0, 𝑋2 𝐼𝑟𝑟𝑒𝑠𝑡𝑟𝑖𝑡𝑎

28
Obter a formulação do problema dual.
Desta forma:
𝑀𝑎𝑥𝑖𝑚𝑖𝑧𝑎𝑟 𝑊 = 3 𝑌1 + 4 𝑌2 + 9 𝑌3

Sujeito a
𝑌1 + 𝑌3≥5

𝑌2 + 2 𝑌3 = 2

𝑌1≥0, 𝑌2 𝐼𝑟𝑟𝑒𝑠𝑡𝑟𝑖𝑡𝑜, 𝑌3≤0

Interpretação Econômica do Problema Dual


As variáveis num problema dual são chamadas de diversas formas, dentre elas
temos: Preço Sombra (Shadow Price), Preços Duais, Multiplicadores SIMPLEX,
Valor Implícito, entre outros.
Estes representam o valor marginal do recurso da restrição i-ésima em relação ao
valor da função objetivo.
Matematicamente se pode entender como:
(𝑘) (0)
𝑍 −𝑍
𝑃𝑟𝑒ç𝑜 𝑆𝑜𝑚𝑏𝑟𝑎 𝑑𝑎 𝑖 − é𝑠𝑖𝑚𝑎 𝑟𝑒𝑠𝑡𝑟𝑖çã𝑜 = (𝑘) (0)
𝑏𝑖 −𝑏𝑖

Onde (k) representa o estado final da variável e (0) representa o estado inicial da
variável
Para entender consideremos o seguinte exemplo:

EXEMPLO 4:
A Daicast Ind. e Com. é uma empresa metalúrgica que fabrica peças de Alumínio
e Zamak para os mercados de autopeças, de telecomunicações e de eletrônica,
dentre outros. Ela tem uma linha de produtos que atende a mercados com
demandas dependentes (como as autopeças para montadoras) e uma outra linha
com demandas independentes (como o mercado de reposição de autopeças).
Como é uma empresa pequena comparativamente ao tamanho do mercado de
reposição de autopeças, ela consegue escoar toda a sua produção de produtos
com demanda independente sem grandes problemas.
A tabela seguir oferece uma visão geral do problema enfrentando por eles
mensalmente: definir as quantidades a serem produzidas considerando os
recursos disponíveis, os recursos necessários para a produção dos itens e as
margens deles.

29
Recurso Disponibilida Unidade Recursos Necessários peça
de s Tampa Suporte Plaqueta
Materia - 10.000 Kg 0,300 0,200 0,100
Prima
Injetora 1.600 h 0,003 0,005 0,007
Furadeira 800 h 0,007 0,008 0,010
Afinação 600 h 0,033 0,005 0,002
Margem Liquida (R$) 5,00 7,00 8,00

O Problema Primal é:
𝑀𝑎𝑥𝑖𝑚𝑖𝑧𝑎𝑟 𝑍 = 5 𝑋1 + 7 𝑋2 + 8 𝑋3

𝑆𝑢𝑗𝑒𝑖𝑡𝑜 𝑎:
Restrição por Matéria Prima: 0, 3 𝑋1 + 0, 2 𝑋2 + 0, 1 𝑋3≤10. 000

Restrição por Capacidade de Injeção: 0, 003 𝑋1 + 0, 005 𝑋2 + 0, 007 𝑋3≤1. 600

Restrição por Capacidade de Furação: 0, 007 𝑋1 + 0, 008 𝑋2 + 0, 010 𝑋3≤800

Restrição por Capacidade de Injeção: 0, 033 𝑋1 + 0, 005 𝑋2 + 0, 002 𝑋3≤600

Restrições por Não Negatividade: 𝑋𝑖≥0 (𝑖 = 1, 2, 3)

O Problema Dual é:
𝑀𝑖𝑛𝑖𝑚𝑖𝑧𝑎𝑟 𝑊 = 10. 000 𝑌1 + 1. 600 𝑌2 + 800 𝑌3 + 600 𝑌4

𝑆𝑢𝑗𝑒𝑖𝑡𝑜 𝑎:
Restrição devido a Tampa: 0, 3 𝑌1 + 0, 003 𝑌2 + 0, 007 𝑌3 + 0, 003 𝑌4≥5

Restrição devido ao Suporte: 0, 2 𝑌1 + 0, 005 𝑌2 + 0, 008 𝑌3 + 0, 005 𝑌4≥7

Restrição devido a Plaqueta: 0, 1 𝑌1 + 0, 007 𝑌2 + 0, 010 𝑌3 + 0, 002 𝑌4≥8

Restrições por Não Negatividade: 𝑌𝑖≥0 (𝑖 = 1, 2, 3)

30
Note que com o Solver identificamos o Preço Sombra dos Recursos, isto é, Matéria
– Prima teve um preço sombra de 5 o que quer dizer que por cada unidade
adicional acrescentado ou diminuído da Restrição da Matéria Prima, esta terá um
efeito sobre a função objetivo de ± 5 unidades, para efeitos práticos
incrementaremos em uma unidade os Recursos da Matéria – Prima, para ver o
efeito sobre a função objetivo.

Outra restrição que teve Preço Sombra é a Furadeira, sendo está de 750, isto quer
dizer que qualquer movimento na restrição do tempo na Furadeira esta terá um
efeito positivo ou negativo na função objetivo em 750 unidades.

31
Agora se rodamos com o Solver o problema Dual, encontraremos o seguinte:

Observe-se que o valor final no Solver de um problema Dual produz o Preço


Sombra de um problema Primal e o Preço Sombra do problema Dual é o Valor
final do problema primal.
Nesta saída observa-se que mudanças unitárias no suporte provocariam
mudanças na função objetivo em 16.666,67.

2.2. ANÁLISE DE SENSIBILIDADE


A análise de Sensibilidade é uma análise que busca determinar os efeitos
produzidos na solução ótima por uma alteração em qualquer parâmetro de um
modelo de programação linear. Investiga-se como uma modificação nos
coeficientes das variáveis básicas e não básicas afetará os recursos disponíveis ou
se uma nova restrição é introduzida.
O objetivo é determinar até que ponto a solução ótima é confiável de acordo com
as alterações que possam ocorrer. Deve-se levar em conta que a solução é
baseada na permanência dos dados iniciais constantes, o que só ocorre em curtos
períodos de tempo. Portanto, ao utilizar essa análise, você poderá prever como ele
se comportará diante das mudanças que possam surgir.
Também ajuda a determinar quais parâmetros ou variáveis podem flutuar sem
afetar a solução ideal. Alguns têm intervalos mais longos sem causar alterações,
mas outros serão muito mais sensíveis. Ao detectá-los, é possível mantê-los sob
supervisão para solucionar os problemas que podem causar. Dependendo do seu
comportamento, serão feitos os ajustes apropriados para evitar que a solução
falhe.
No mundo real, quase nunca temos certeza destes valores, desta forma, devemos
saber o quanto a solução otimizada esta dependente de uma determinada
constante ou coeficiente.

32
Em uma análise de sensibilidade deve-se responder basicamente a dois
perguntas:
a) Qual é o efeito de uma mudança num coeficiente da função objetivo.
b) Qual é o efeito de uma mudança numa constante de uma restrição.

a) Alteração em um dos coeficientes da função objetivo


Considerando o problema da Daicast indica que a produção deveria ser apenas de
suportes e plaquetas, enquanto tampas foi nula, observe a imagem abaixo:

Este resultado exige que não deva ser feita tampas pelo baixo margem de lucro
que pode ser obtida pela produção de tampas. Podemos supor que se aumenta o
preço de ventas das tampas, esta situação possivelmente poderia apresentar
maior lucratividade a empresa.
Neste caso observe-se que se o preço da tampa aumenta de 5 para 6,75, isto é, um
aumento de 1,75 como se indica na coluna de custo reduzido, na solução (Final
Valor) do modelo aparecerá tampas como elemento da solução, mantendo
constante a solução obtida na função objetivo, como se amostra a continuação:

Observando o gráfico anterior, a variável tampa entra na função objetivo enquanto


a variável suporte sai, observe também que a função objetivo se mantem
inalterada.

33
b) Alteração em um dos coeficientes de uma restrição
Com o uso do computador é fácil introduzir ou retirar variáveis ou restrições, com
muita facilidade, mas o importante deve ser a construção de um modelo que
facilite a introdução ou retirada de variáveis ou restrições, em modelos medianos e
grandes, isso é uma necessidade.
Esta introdução de variáveis ou restrição afetam diretamente a função objetivo, a
continuação apresentamos uma tabela da situação da função objetivo pela
entrada ou retirada de variáveis ou restrições.
Tabela 2: Introdução e retirada de variáveis ou restrições

Variável Restrição
Flexibilidade do Introdução Aumenta Diminui
Modelo
Retirada Diminui Aumenta
Valor da Função Introdução Se mantem ou Se mantem ou piora
Objetivo melhora
Retirada Se mantem ou Se mantem ou melhora
piora

Esta tabela oferece um resumo dos efeitos da introdução e retirada de variáveis e


restrições em modelos de programação linear.
Como no modelo inicial a variável tampa é pouco relevante para a solução ótima,
podemos sugerir a retirada dessa variável do modelo.

Note-se, que a retirada da variável tampa traz a diminuição da Flexibilidade do


Modelo, em relação a função objetivo que esta retirada produz que a solução da
função objetivo se mantenha.

34
CAPÍTULO 3: MODELO DE TRANSPORTE
Objetivo: Nesta seção é considerado o modelo de transporte através do qual um
administrador deve determinar a melhor forma de levar os produtos de seus
diversos armazéns até seus consumidores, de forma a satisfazer os clientes e com
o mínimo custo.

3.1. INTRODUÇÃO
Este modelo é um caso especial de programação linear, se baseia em procurar o
menor custo que se pode gerar a partir do envio de bens de um ponto de origem
(exemplo fabricas) a ponto de destino (exemplo armazém). Este modelo
pressupõe que o custo de envio numa rota específica é diretamente proporcional
ao número de unidades enviadas nessa rota.
Alguns exemplos de transporte se encontram em controle de inventários, horários
de emprego e distribuição do pessoal.

3.2. O MODELO
Para entender o modelo, deve-se considerar que neste modelo podemos ter “𝑚”
pontos de origem e “𝑛” pontos de destino, cada uma representada por um nó. As
rotas poderão ser representadas pela seta de união de nós, como se apresenta a

continuação:

Matematicamente pode-se representar por:


𝑚 𝑛
𝑀𝑖𝑛𝑖𝑚𝑖𝑧𝑎𝑟 𝑍 = ∑ ∑ 𝐶𝑖𝑗 𝑋𝑖𝑗
𝑖=1 𝑗=1

Sendo as restrições:
𝑛
∑ 𝑋𝑖𝑗 = 𝑓𝑖 (𝑖 = 1, 2, ⋯, 𝑚)
𝑗=1

𝑚
∑ 𝑋𝑖𝑗 = 𝑑𝑗 (𝑗 = 1, 2, ⋯, 𝑛)
𝑖=1

35
Onde
𝑋𝑖𝑗: É a quantidade de bens transportados do ponto de origem "𝑖" ao ponto de
destino "𝑗";
𝐶𝑖𝑗: É o custo de bens transportados do ponto de origem “𝑖” ao ponto de destino “𝑗”;

𝑓𝑖: É a quantidade total ofertado pelo ponto de origem “𝑖”;

𝑑𝑗: É a quantidade total demandado pelo ponto de destino “𝑗”.

Para encontrar a solução neste modelo, uma condição necessária e suficiente é


que:
𝑚 𝑛
∑ 𝑓𝑖 = ∑ 𝑑𝑗
𝑖=1 𝑗=1

OBSERVAÇÕES
i) No caso de que a oferta seja maior que a demanda, se deve introduzir um ponto
de destino fantasma (dummy) que tenha os custos unitários de todos os pontos
de origem aos pontos de destino iguais a zero.
ii) No caso da demanda seja maior a oferta se deve introduzir um ponto de origem
fantasma (dummy) que tenha os custos unitários de todos os pontos de origem
aos pontos de destino iguais a zero.

Outra forma de programar as restrições é:


a) No caso de oferta total maior que a demanda total, a restrição seria:
𝑛
∑ 𝑋𝑖𝑗 ≤ 𝑓𝑖 (𝑖 = 1, 2, ⋯, 𝑚)
𝑗=1

𝑚
∑ 𝑋𝑖𝑗 = 𝑑𝑗 (𝑗 = 1, 2, ⋯, 𝑛)
𝑖=1

b) No caso da demanda total seja maior que a oferta total, a restrição seria:
𝑛
∑ 𝑋𝑖𝑗 = 𝑓𝑖 (𝑖 = 1, 2, ⋯, 𝑚)
𝑗=1

𝑚
∑ 𝑋𝑖𝑗 ≤ 𝑑𝑗 (𝑗 = 1, 2, ⋯, 𝑛)
𝑖=1

36
Em ambas as situações se cria uma variável para equilibrar a demanda total e a
demanda total e logo se faz a solução do sistema.

3.3. EXEMPLO 1
Deseja-se transportar arroz de três armazéns (1, 2 e 3) a três centros consumidores
distintos (A, B e C). Cada armazém apresentou os seguintes níveis de estoque de
arroz em determinado mês:

Os custos unitários de transporte ($/Kg) envolvidos são os seguintes:

Qual será a quantidade de arroz a ser transportado entre armazém e cada centro
consumidor, de tal forma que as demandas de cada centro sejam supridas e que o
custo total de transporte seja mínimo?
Para a solução deste problema seguimos as seguintes etapas:
Objetivo: Minimização do custo de transporte
Variáveis:
𝑋11 = {transportar arroz do armazém 1 ao centro consumidor 1};
𝑋12 = {transportar arroz do armazém 1 ao centro consumidor 2};
𝑋13 = {transportar arroz do armazém 1 ao centro consumidor 3};
𝑋21 = {transportar arroz do armazém 2 ao centro consumidor 1};
𝑋22 = {transportar arroz do armazém 2 ao centro consumidor 2};
𝑋23 = {transportar arroz do armazém 2 ao centro consumidor 3};
𝑋31 = {transportar arroz do armazém 3 ao centro consumidor 1};
𝑋32 = {transportar arroz do armazém 3 ao centro consumidor 2};
𝑋33 = {transportar arroz do armazém 3 ao centro consumidor 3}

Restrições:
✔ Estoques disponíveis nos armazéns 1, 2 e 3
✔ Quantidades demandadas nos centros consumidores A, B e C

37
Desta forma:
𝑀𝑖𝑛 𝑍 = 10 𝑋11 + 5 𝑋12 + 12 𝑋13 + 4 𝑋21 + 9 𝑋22 + 15 𝑋23 + 15 𝑋31 + 8 𝑋32 + 6 𝑋33

Sujeito a:
𝑋11 + 𝑋12 + 𝑋31≤200

𝑋21 + 𝑋22 + 𝑋23≤150

𝑋31 + 𝑋32 + 𝑋33≤300

𝑋11 + 𝑋12 + 𝑋13≥100

𝑋12 + 𝑋22 + 𝑋32≥300

𝑋13 + 𝑋32 + 𝑋33≥250

𝑋11, 𝑋12, 𝑋13, 𝑋21, 𝑋22, 𝑋23, 𝑋31, 𝑋32, 𝑋33 ≥0

Considerando o solver teríamos:

Com Excel, ativar o Solver, temos

Para as restrições fazemos:

38
Obtendo

Após isso o resultado foi:

39
Daqui pode-se concluir que:
✓ Se deve transportar 0 Kg de Arroz do armazém 1 ao centro consumidor 1.
✓ Se deve transportar 200 Kg de Arroz do armazém 1 ao centro consumidor 2.
✓ Se deve transportar 0 Kg de Arroz do armazém 1 ao centro consumidor 3.
✓ Se deve transportar 100 Kg de Arroz do armazém 2 ao centro consumidor 1.
✓ Se deve transportar 50 Kg de Arroz do armazém 2 ao centro consumidor 2.
✓ Se deve transportar 0 Kg de Arroz do armazém 2 ao centro consumidor 3.
✓ Se deve transportar 0 Kg de Arroz do armazém 3 ao centro consumidor 1.
✓ Se deve transportar 50 Kg de Arroz do armazém 3 ao centro consumidor 2.
✓ Se deve transportar 250 Kg de Arroz do armazém 3 ao centro consumidor 3.

Observa-se desta forma que o custo pelo transporte é de 3.750,00.


Note-se também que tudo o que é demandado é consumido.

3.4. EXEMPLO 2
Suponha que Inglaterra, França e Espanha produziam todo o trigo, cevada e aveia
do mundo. A demanda mundial de trigo requer que 50 milhões de hectares de
terra sejam dedicados à produção de trigo. Similarmente, 24 milhões de hectares
de terra são requeridos para cevada e 30 milhões de hectares de terra para aveia.
As quantidades totais de terra disponível para esses propósitos na Inglaterra, na
França e na Espanha são 28 milhões de hectares, 44 milhões de hectares e 32
milhões de hectares, respectivamente.
O número de horas de trabalho necessária na Inglaterra, na França e na Espanha
para produzir um hectare de trigo é 45 horas, 32h30min e 40 horas,
respectivamente. O número de horas de trabalho necessária na Inglaterra, na
França e na Espanha para produzir um hectare de aveia é 30 horas, 25 horas e 40
horas, respectivamente. O número de horas de trabalho necessária na Inglaterra,
na França e na Espanha para produzir um hectare de cevada é 37h30min, 30 horas
e 30 horas, respectivamente. O custo de mão-de-obra por hora para a produção de

40
trigo é $ 3,00; $ 2,40 e $ 3,30 na Inglaterra, na França e na Espanha,
respectivamente. O custo de mão-de-obra por hora para a produção de cevada é $
2,70; $ 3,00 e $ 2,80 na Inglaterra, na França e na Espanha, respectivamente. O
custo de mão-de-obra por hora para a produção de aveia é $ 2,30; $ 2,50 e $ 2,10 na
Inglaterra, na França e na Espanha, respectivamente. Solucione o problema de
modo a atender a demanda por alimento em nível mundial, minimizando o custo
total de mão-de-obra.
A representação prática é dada em:

Objetivo: Minimização do custo total de mão-de-obra


Variáveis:
𝑋11 = {produção de trigo na Inglaterra};
𝑋12 = {produção de trigo na França};
𝑋13 = {produção de trigo na Espanha};
𝑋21 = {produção de cevada na Inglaterra};
𝑋22 = {produção de cevada na França};
𝑋23 = {produção de cevada na Espanha};
𝑋31 = {produção de aveia na Inglaterra};
𝑋32 = {produção de aveia na França};
𝑋33 = {produção de aveia na Espanha}.

Restrições:
✔ Demanda mundial de trigo, cevada e aveia (em milhões de ha)
✔ Disponibilidade total de terra para os Três produtos na Inglaterra, França e
Espanha

O Modelo:
𝑀𝑖𝑛 𝑍 = 135 𝑋11 + 78 𝑋12 + 132 𝑋13 + 101, 25 𝑋21 + 90 𝑋22 + 84 𝑋23 + 69 𝑋31 + 62, 5 𝑋32 + 84 𝑋33

Sujeito a:
𝑋11 + 𝑋12 + 𝑋13≥50

𝑋21 + 𝑋22 + 𝑋23≥24

41
𝑋31 + 𝑋32 + 𝑋33≥30

𝑋11 + 𝑋21 + 𝑋31≤28

𝑋12 + 𝑋22 + 𝑋32≤44

𝑋13 + 𝑋32 + 𝑋33≥32

𝑋11, 𝑋12, 𝑋13, 𝑋21, 𝑋22, 𝑋23, 𝑋31, 𝑋32, 𝑋33 ≥0

Utilizando o Solver, temos:

Daqui pode-se concluir que:


✓ Se deve produzir 0 bilhões de Toneladas de Trigo na Inglaterra.
✓ Se deve produzir 44 bilhões de Toneladas de Trigo na França.
✓ Se deve produzir 6 bilhões de Toneladas de Trigo na Espanha.
✓ Se deve produzir 0 bilhões de Toneladas de Cevada na Inglaterra.
✓ Se deve produzir 0 bilhões de Toneladas de Cevada na França.
✓ Se deve produzir 24 bilhões de Toneladas de Cevada na Espanha.
✓ Se deve produzir 28 bilhões de Toneladas de Aveia na Inglaterra.
✓ Se deve produzir 0 bilhões de Toneladas de Aveia na França.
✓ Se deve produzir 2 bilhões de Toneladas de Aveia na Espanha.

Observa-se desta forma que o custo de produção é de 8.340,00.


Note-se também que tudo o que é demandado

42
3.5. EXEMPLO 3
Um avião tem três compartimentos para transportar carga: frente, centro e
traseira. Esses compartimentos têm limites de capacidade tanto em peso quanto
em volume, conforme tabela abaixo:

Além disso, o peso da carga nos respectivos compartimentos tem que observar a
mesma proporção das capacidades de peso dos compartimentos, para manter o
equilíbrio do avião. As quatro cargas seguintes aguardam remessas nos próximos
voos, à medida que haja espaço disponível
O objetivo é determinar quanto de carga deve ser aceito e como distribuí-las pelos
compartimentos a fim de maximizar o lucro total do voo.
Objetivo: Maximizar o lucro total do voo

Variáveis:
𝑋11 = {transportar a carga 1 no compartimento da frente};
𝑋12 = {transportar a carga 1 no compartimento do centro};
𝑋13 = {transportar a carga 1 no compartimento traseiro};
𝑋21 = {transportar a carga 2 no compartimento da frente};
𝑋22 = {transportar a carga 2 no compartimento do centro};
𝑋23 = {transportar a carga 2 no compartimento traseiro};
𝑋31 = {transportar a carga 3 no compartimento da frente};
𝑋32 = {transportar a carga 3 no compartimento do centro};
𝑋33 = {transportar a carga 3 no compartimento traseiro};
𝑋41 = {transportar a carga 4 no compartimento da frente};
𝑋42 = {transportar a carga 4 no compartimento do centro};
𝑋43 = {transportar a carga 4 no compartimento traseiro}

43
Restrições:
✔ Capacidade em peso de cada compartimento;
✔ Capacidade em volume de cada compartimento;
✔ Peso da Carga;
✔ Proporcionalidade entre os compartimentos.
O Modelo:
𝑀𝑎𝑥 𝑍 = 220 𝑋11 + 220 𝑋12 + 220 𝑋13 + 280 𝑋21 + 280 𝑋22 + 280 𝑋23 + 250 𝑋31 + 250 𝑋32 + 250 𝑋33

Sujeito a:
𝑋11 + 𝑋12 + 𝑋13≤20

𝑋21 + 𝑋22 + 𝑋23≤16

𝑋31 + 𝑋32 + 𝑋33≤25

𝑋41 + 𝑋42 + 𝑋43≤13

13, 5 𝑋11 + 18, 9 𝑋21 + 16, 2 𝑋31 + 10, 8 𝑋41≤189

13, 5 𝑋12 + 18, 9 𝑋22 + 16, 2 𝑋32 + 10, 8 𝑋42≤243

13, 5 𝑋13 + 18, 9 𝑋32 + 16, 2 𝑋33 + 10, 8 𝑋43≤135

𝑋11 + 𝑋21 + 𝑋31 + 𝑋41≤12

𝑋12 + 𝑋22 + 𝑋32 + 𝑋42≤18

𝑋13 + 𝑋32 + 𝑋33 + 𝑋43≤10

18 (𝑋11 + 𝑋21 + 𝑋31 + 𝑋41) – 12 (𝑋12 + 𝑋22 + 𝑋32 + 𝑋42) = 0

10 (𝑋12 + 𝑋22 + 𝑋32 + 𝑋42) – 18 (𝑋13 + 𝑋32 + 𝑋33 + 𝑋43) = 0

𝑋11, 𝑋12, 𝑋13, 𝑋21, 𝑋22, 𝑋23, 𝑋31, 𝑋32, 𝑋33, 𝑋41, 𝑋42, 𝑋43≥0

44
Após rodar com o Solver temos:

Daqui pode-se concluir que:


✓ Se deve transportar 0 Toneladas da carga 1 no comportamento da frente.
✓ Se deve transportar 15,5 Toneladas da carga 1 no comportamento do centro.
✓ Se deve transportar 0 Toneladas da carga 1 no comportamento traseiro.
✓ Se deve transportar 7,33 Toneladas da carga 2 no comportamento da
frente.
✓ Se deve transportar 0,83 Toneladas da carga 2 no comportamento do
centro.
✓ Se deve transportar 3,33 Toneladas da carga 2 no comportamento traseiro.
✓ Se deve transportar 0 Toneladas da carga 3 no comportamento da frente.
✓ Se deve transportar 0 Toneladas da carga 3 no comportamento do centro.
✓ Se deve transportar 0 Toneladas da carga 3 no comportamento traseiro.
✓ Se deve transportar 4,67 Toneladas da carga 4 no comportamento da
frente.
✓ Se deve transportar 1,67 Toneladas da carga 4 no comportamento do
centro.
✓ Se deve transportar 6,67 Toneladas de carga 4 no comportamento traseiro.

Observa-se desta forma que o custo de produção é de 9.230,00.


Não foi utilizado todos os recursos disponíveis.

45
CAPÍTULO 4: PROGRAMAÇÃO LINEAR INTEIRA
Objetivo: Apresentar algoritmos que proporcionam mediante a incorporação de
novas restrições ou planos de corte, variáveis de decisão ótimas que são expressos
como números inteiros.

4.1. INTRODUÇÃO
Este tipo de programação se caracteriza por ter em suas resoluções variáveis que
assumem somente valores inteiros.
Existem neste tipo de problemas dois tipos básicos:
a) A programação linear inteira total (ILP), onde todas as variáveis de decisão são
de tipo inteiro;
b) A programação inteira mista (MILP), onde apenas uma parte das variáveis são
de tipo inteiro, enquanto as outras são de tipo real.

As principais dificuldades que podem surgir ao realizar um modelo de


programação linear com variáveis inteiras:
✓ Após arredondamento a solução pode não ser admissível para o problema PI.
✓ Falta de garantia de que uma solução (convenientemente) arredondada seja
solução óptima para o problema PI. Aliás, pode mesmo estar bem longe do
óptimo.

Então a solução a este tipo de problemas é desenvolver algum algoritmo que


possa entregar solução para variáveis inteiras.

4.2. ALGORITMO BRANCH-BOUND (RAMIFICA-E-LIMITA)


A abordagem mais amplamente adotada para resolver problemas de
Programação Inteira utiliza um método de busca em árvore, também referido
como um Algoritmo de Retrocesso (Backtracking).
O método pode ser aplicado em Problemas de Programação Inteira Pura ou Mista.

46
Admitindo que o problema de Programação Inteira seja modelo por (modelo
misto):
𝑛
𝑀𝑎𝑥𝑖𝑚𝑖𝑧𝑎𝑟 𝑍 = ∑ 𝐶𝑖 𝑋𝑖
𝑖=1

Sujeito a:
𝑛
∑ 𝑎𝑖𝑗 𝑋𝑖 ≤ 𝑏𝑗 (𝑗 = 1, 2, ⋯, 𝑚)
𝑖=1

𝑋𝑖 ∈ 𝐼 ∀ 𝑖 = 1, 2, ⋯, 𝑝 (𝑝 ≤ 𝑛)

𝑋𝑖≥0 ∀ 𝑖 = 𝑝 + 1, 𝑝 + 2, ⋯, 𝑛 (𝑝 ≤ 𝑛)

Supondo que para cada variável inteira seja possível fornecer limites inferiores 𝐿𝑖 e
superiores 𝑈𝑖 que seguramente incluam os valores ótimos.

𝐿𝑖 ≤ 𝑋𝑖 ≤ 𝑈𝑖 ∀ 𝑖 = 1, 2, ⋯, 𝑝 (𝑝 ≤ 𝑛)

A ideia principal do algoritmo Branch-Bound é oriunda de que um valor inteiro 𝑇


qualquer contido no intervalo 𝐿𝑖 ≤ 𝑇 ≤ 𝑈𝑖−1 e 𝑋𝑖 uma solução ótima também
satisfará:
𝑋𝑖 ≥ 𝑇 + 1 𝑜𝑢 𝑋𝑖 ≤ 𝑇

4.3. EXEMPLO 1
As praias usualmente são vigiadas no verão por salva-vidas. Uma programação
numa praia deseja ser considerada, onde sete dias por semana estarão disponíveis
vários nadadores(as)-salvadores. Por regulamento nenhum poderá trabalhar mais
do que 5 dias por semana, tendo 2 dias consecutivos de repouso. Ao contrário da
maior parte dos trabalhadores estes terão mais sobrecarga ao fim de semana.
Atendendo especialmente ao nº de frequentadores das praias, à experiência de
anos anteriores e à promoção de mais segurança, foi aprovada a seguinte tabela
com a segurança necessária.

47
Quantos nadadores(as)-salvadores deverão entrar ao serviço em cada dia da
semana, procurando empregar o menor nº (N), mas satisfazendo as exigências?

Este é um problema clássico de Programação Inteira Total (ILP), consideremos as


variáveis seguintes:
𝑋1:= Número de Salva-vidas que trabalham no dia domingo

𝑋2:= Número de Salva-vidas que trabalham na segunda;

𝑋3:= Número de Salva-vidas que trabalham na terça;

𝑋4:= Número de Salva-vidas que trabalham na quarta;

𝑋5:= Número de Salva-vidas que trabalham na quinta;

𝑋6:= Número de Salva-vidas que trabalham na sexta;

𝑋7:= Número de Salva-vidas que trabalham no dia sábado.

Como nenhum salva-vidas pode trabalhar mais de 5 dias, devendo descansar dois
dias consecutivos, então, no dia domingo teremos aqueles que trabalharam todos
os dias menos os de segunda e terça, para os outros dias acontece a mesma coisa,
desta forma temos:
Desta forma o modelo de programação linear fica dado por:
𝑀𝑖𝑛𝑖𝑚𝑖𝑧𝑎𝑟 𝑍 = 𝑋1 + 𝑋2 + 𝑋3 + 𝑋4 + 𝑋5 + 𝑋6 + 𝑋7

Sujeito a
𝑋1 + 𝑋4 + 𝑋5 + 𝑋6 + 𝑋7≥14 (𝐷𝑜𝑚)

𝑋1 + 𝑋2 + 𝑋5 + 𝑋6 + 𝑋7≥7 (𝑆𝑒𝑔)

𝑋1 + 𝑋 2 + 𝑋 3 + 𝑋6 + 𝑋7≥8 (𝑇𝑒𝑟)

𝑋1 + 𝑋2 + 𝑋3 + 𝑋4 + 𝑋7≥8 (𝑄𝑢𝑎)

𝑋1 + 𝑋2 + 𝑋3 + 𝑋4 + 𝑋5 + 𝑋6 ≥9 (𝑄𝑢𝑖)

𝑋2 + 𝑋3 + 𝑋4 + 𝑋5 + 𝑋6 + 𝑋7≥10 (𝑆𝑒𝑥)

𝑋3 + 𝑋4 + 𝑋5 + 𝑋6 + 𝑋7≥13 (𝑆𝑎𝑏)

𝑋1, 𝑋2, 𝑋3, 𝑋4, 𝑋5, 𝑋6, 𝑋7≥0 𝑒 𝐼𝑛𝑡𝑒𝑖𝑟𝑜𝑠

48
As variáveis são introduzidas no Excel para encontrar a solução, o Solver já tem
incluído o algoritmo Branch and Bounds em seu sistema, os passos para encontrar
a solução são:
1° Introduzir os dados no Excel

2° Introduzir os parâmetros no Solver

3° Introduzir as restrições

49
4° Definir as variáveis inteiras como restrição do modelo, da forma seguinte:

Obtendo os seguintes parâmetros

5° Apresentação da solução no Excel

50
Isto quer dizer, que para o dia domingo serão necessários 2 salva-vidas, para
segunda feira não haverá salva-vidas, para terça feira será necessário de 1
salva-vidas, na quarta feira são necessários de 7 salva-vidas, na quinta feira não
haverá salva-vidas, na sexta feira haverá 5 salva-vidas e no sábado não haverá
salva-vidas. Desta forma serão necessários 15 salva-vidas para uma semana.

4.4. EXEMPLO 2
Se estão avaliando cinco projetos ao longo de um horizonte de planejamento de
três anos. A tabela a seguir proporciona as utilidades esperadas para cada projeto
e os egressos anuais associadas.

Determine os projetos que se iriam a executar ao longo do horizonte de três anos.


Este problema é reduzido a uma decisão de “sim-não” para cada projeto. As
variáveis podem ser definidas como:

O modelo é definido por:


𝑀𝑎𝑥𝑖𝑚𝑖𝑧𝑎𝑟 𝑍 = 20 𝑋1 + 40 𝑋2 + 20 𝑋3 + 15 𝑋4 + 30 𝑋5

Sujeito a
5 𝑋1 + 4 𝑋2 + 3 𝑋3 + 7 𝑋4 + 8 𝑋5≤25

𝑋1 + 7 𝑋2 + 9 𝑋3 + 4 𝑋4 + 6 𝑋5≤25

8 𝑋1 + 10 𝑋2 + 2 𝑋3 + 𝑋4 + 10 𝑋5≤25

𝑋1, 𝑋2, 𝑋3, 𝑋4, 𝑋5 𝐵𝑖𝑛á𝑟𝑖𝑜𝑠

51
Para a solução deve-se fazer os seguintes passos:
1° Introduzir dados

2° Introduzir parâmetros no Solver


a) Introduzir Função objetivo e variáveis

b) Introduzir Restrições

52
3° O resultado

Os projetos selecionados foram do 1 a 4, o quinto projeto não foi selecionado, estes


produziram uma lucratividade de 95 milhões de dólares, observe-se que não é
consumido todos os fundos disponíveis em cada um dos três anos.

53
4.5. EXEMPLO 3
Uma pessoa foi consultada por três companhias de Telefone para subscrever-se a
seu serviço de Longa Distância nos Estados Unidos. MaBell cobrará uma tarifa fixa
de 16 dólares por mês, mais 0,25 centavos por minuto. PaBell cobrará 25 dólares
por mês, mas reduzirá o custo por minuto a 0,21 centavos. Enquanto a BabyBell, a
tarifa mensal fixa é de 18 dólares e o custo por minuto é de 0,22 centavos.
Geralmente a pessoa consultada faz uma média de 200 minutos de chamada a
longa distância ao mês. Supondo que não pague a tarifa fixa, a menos de fazer as
chamadas e de que possa dividir mais chamadas entre as três companhias,
segundo ele ache conveniente, como a pessoa pode usar os serviços das três
companhias para minimizar a conta mensal de telefone?

Observe-se que neste caso existem dois tipos de variáveis, estas são:
X1:= Minutos de longa distância ao mês com a MaBell.
X2:= Minutos de longa distância ao mês com a PaBell.
X3:= Minutos de longa distância ao mês com a BabyBell.
Y1:= 1, se X1 > 0 e Y1:=0, se X1 = 0
Y2:= 1, se X2 > 0 e Y2:=0, se X2 = 0
Y3:= 1, se X3 > 0 e Y3:=0, se X3 = 0

Esta última definição exige que se 𝑌𝑖: = 1, 𝑋𝑖 é positiva, desta forma:

𝑋𝑖 ≤ 𝑀 𝑌𝑖 𝑌𝑖 ∈ (0, 1) 𝑖 = 1, 2, 3

Desta forma o modelo é definido por:


𝑀𝑎𝑥𝑖𝑚𝑖𝑧𝑎𝑟 𝑍 = 0, 25 𝑋1 + 0, 21 𝑋2 + 0, 22 𝑋3 + 16 𝑌1 + 25 𝑌2 + 18 𝑌3

Sujeito a
𝑋1 + 𝑋2 + 𝑋3≤200

𝑋1≤200 𝑌1

𝑋2≤200 𝑌2

𝑋3≤200 𝑌3

𝑋1, 𝑋2, 𝑋3≥0 𝑒 𝑌1, 𝑌2, 𝑌3 ∈ (0, 1)

54
Para a solução deste problema recorremos ao Solver do Excel, os passos são os
seguintes:

1° Inclusão de dados

2° Inclusão de Parâmetros

3° Resultados

Observe-se que segundo esta saída se deve considerar a empresa telefônica


BabyBell como a empresa adequada para ligações a longa distância, desta forma
ele teria um gasto mensal de 62 dólares.

55
56

Você também pode gostar