Pesquisa Operacional
Max Vinicius Bedeschi – CRE 6849
Pesquisa Operacional é um método
científico de tomada de decisões.
Sistema Organizado com o auxílio de
um modelo.
Experimentação modelar com fins de
otimização da operação do sistema.
Fases de um Estudo em P.O.
•
•
•
•
•
•
Formulação do problema
Construção do modelo do sistema
Cálculo da solução através do modelo
Teste do modelo e da solução
Estabelecimento de controles da solução
Implantação e acompanhamento
Formulação do Problema
Nesta fase, o administrador do sistema e o responsável
pelo estudo em P.O. deverão discutir, no sentido de colocar
o problema de maneira clara e coerente, definindo os
objetivos a alcançar e quais os possíveis caminhos
alternativos para que isso ocorra.
Além disso, serão levantadas as limitações técnicas do
sistema e as relações desse sistema com outros da
empresa ou do ambiente externo, com a finalidade de
criticar a validade de possíveis soluções em face destes
obstáculos.
Deverá ainda ser acordada uma medida de eficiência para
o sistema que permita ao administrador ordenar as
soluções encontradas, concluindo o processo decisório.
Construção do Modelo do Sistema
Os modelos que interessam em Pesquisa Operacional são
os modelos matemáticos, isto é, modelos formados por um
conjunto de equações e inequações.
Uma das equações do conjunto serve para medir a
eficiência do sistema para cada solução proposta. É a
função objetivo ou função de eficiência. As outras
equações geralmente descrevem as limitações ou
restrições técnicas do sistema. As variáveis que compõem
as equações são de dois tipos:
-Variáveis controladas ou de decisão.
-Variáveis não controladas.
Variáveis controladas ou de decisão
são variáveis cujo valor está sob controle do administrador.
Decidir, neste caso, é atribuir um particular valor a cada
uma dessas variáveis. Numa programação de produção,
por exemplo, a variável de decisão é a quantidade a ser
produzida num período, o que compete ao administrador
controlar.
Variáveis não controladas
são as variáveis cujos valores são arbitrados por sistemas
fora do controle do administrador. Custos de produção,
demanda de produtos, preço de mercado são variáveis
não controladas.
Um bom modelo é aquele que tem desempenho
suficientemente próximo do desempenho da realidade e
é de fácil experimentação. Essa proximidade desejada é
variável, dependendo do objetivo proposto. Um bom
modelo para um objetivo pode ser péssimo para outro. A
fidelidade de um modelo é aumentada à medida que ele
incorpora características da realidade, com a adição de
novas variáveis. Isso aumenta sua complexidade,
dificultando a experimentação, o que nos leva a
considerar o fator custo-benefício quando pensamos em
melhorar o desempenho de um modelo.
Cálculo da solução através do modelo
É feito através de técnicas matemáticas específicas. A
construção do modelo deve levar em consideração a
disponibilidade de uma técnica para o cálculo da solução.
Teste do modelo e da solução
Esse teste é realizado com dados empíricos do
sistema. Se houver dados históricos, eles serão
aplicados no modelo, gerando um desempenho que
pode ser comparado ao desempenho observado no
sistema. Se o desvio verificado não for aceitável, a
reformulação ou mesmo o abandono do modelo será
inevitável. Caso não haja dados históricos, os dados
empíricos serão anotados com o sistema
funcionando sem interferência, até que o teste possa
ser realizado.
Estabelecimento de controles da solução
A construção e experimentação com o modelo
identificam parâmetros fundamentais para solução do
problema. Qualquer mudança nesses parâmetros
deverá ser controlada para garantir a validade da
solução adotada. Caso alguns desses parâmetros
sofra desvio além do permitido, o cálculo de nova
solução ou mesmo a reformulação do modelo poderá
ser necessária.
Implementação e acompanhamento
Nesta fase, a solução será apresentada ao administrador,
evitando-se o uso da linguagem técnica do modelo. O uso
da linguagem do sistema em estudo facilita a
compreensão e gera boa vontade para a implantação que
está sendo sugerida. Essa implantação deve ser
acompanhada para se observar o comportamento do
sistema com a solução adotada. Algum ajuste pode ser
requerido.
Modelo em Programação Linear
O modelo matemático é composto de uma função
objetiva linear; e de restrições técnicas representadas
por um grupo de inequações também lineares.
Exemplo:
Função objetivo a ser maximizada:
Lucro = 2 x  3 x
1
2
Restrições técnicas:
4 x1  3 x 2  10
6 x1  x 2  20
Restrições de não
negatividade:
x1  0
x2  0
As variáveis controladas ou variáveis de decisão são X1 e X2
A função objetivo ou função eficiência mede o desempenho
do sistema, no caso a capacidade de gerar lucro, para cada
solução apresentada.
O objetivo é maximizar o lucro.
As restrições garantem que essas soluções estão de acordo
com as limitações técnicas impostas pelo sistema.
As duas últimas restrições exigem a não negatividade das
variáveis de decisão, o que deverá acontecer sempre que a
técnica de abordagem for a de programação linear.
Roteirização
• Variáveis de decisão?
• Objetivo?
• Restrições?
Quais as variáveis de decisão?
Problema
Variáveis de decisão
Programação
de produção
Quantidades a
produzir no período
Programação de
investimento
Decisões de
investimento
Nas descrições sumárias de sistemas, isso
fica claro quando lemos a questão proposta,
isto é, a pergunta do problema.
Quais o objetivo?
Identificar o objetivo da tomada de decisão.
Eles aparecem geralmente na forma da
maximização de lucros ou receitas, minimização de
custos, perdas, etc.
A função objetivo é a expressão que calcula o
valor do objetivo (lucro, custo receita, perda, etc.),
em função das variáveis de decisão.
Quais as restrições?
Cada restrição imposta na descrição do sistema
deve ser expressa como uma relação linear
(igualdade ou desigualdade), montadas com as
variáveis de decisão.
Exemplo 1:
Certa empresa fabrica dois produtos P1 e P2. O lucro
unitário do produto P1 é de 1.000 unidades monetárias e o
lucro unitário de P2 é de 1.800 unidades monetárias. A
empresa precisa de 20 horas para fabricar uma unidade
de P1 e de 30 horas para fabricar uma unidade de P2. O
tempo anual de produção disponível para isso é de 1.200
horas. A demanda esperada para cada produto é de 40
unidades anuais para P1 e 30 unidades anuais para P2.
Qual é o plano de produção para que a empresa
maximize seu lucro nesses itens?
Construa o modelo de programação linear para esse
caso.
Solução:
a) Quais as variáveis de decisão?
O que deve ser decidido é o plano de produção, isto
é, quais as quantidades anuais que devem ser
produzidas de P1 e P2.
Portanto, as variáveis de decisão serão X1 e X2
X1  quantidade anual a produzir de P1
X2  quantidade anual a produzir de P2
b) Qual o objetivo?
O objetivo é maximizar o lucro, que pode ser
calculado:
Lucro devido a P1: 1000 . X1 (lucro por unidade de
P1 x quantidade produzida de P1)
Lucro devido a P2: 1800 . X2 (lucro por unidade de
P2 x quantidade produzida de P2)
Lucro total: L = 1000X1 + 1800X2
Objetivo: maximizar L = 1000X1 + 1800X2
c) Quais as restrições?
As restrições impostas pelo sistema são:
Disponibilidade de horas para a produção: 1200 horas.
Horas ocupadas com P1: 20X1 (uso por unidade x
quantidade produzida)
Horas ocupadas com P2: 30X2 (uso por unidade x
quantidade produzida)
Total em horas ocupadas na produção:20X1 + 30X2
Disponibilidade: 1200 horas.
Restrição descritiva da situação: 20X1 + 30X2 ≤ 1200
Disponibilidade de mercado para os produtos (demanda)
Disponibilidade para P1: 40 unidades
Quantidade a produzir de P1: X1
Restrição descritiva da situação X1 ≤ 40
Disponibilidade para P2: 30 unidades
Quantidade a produzir de P2: X2
Restrição descritiva da situação: X2 ≤ 30
Resumo do modelo: max L = 1000X1 + 1800X2
Sujeito a:
Restrições técnicas:
20 x1  30 x 2  1200
x1  40
x 2  30
Restrições de não
negatividade:
x1  0
x2  0
Exemplo 2:
Para uma boa alimentação, o corpo necessita de
vitaminas e proteínas. A necessidade mínima de vitaminas
é de 32 unidades por dia e a de proteínas de 36 unidades
por dia. Uma pessoa tem disponível carne e ovos para se
alimentar. Cada unidade de carne contém 4 unidades de
vitaminas e 6 unidades de proteínas. Cada unidade de
ovo contém 8 unidades de vitaminas e 6 unidades de
proteínas.
Qual a quantidade diária de carne e ovos que deve ser
consumida para suprir as necessidades de vitaminas e
proteínas com o menor custo possível? Cada unidade de
carne custa 3 unidades monetárias e cada unidade de ovo
custa 2,5 unidades monetárias.
Solução:
a. Quais as variáveis de decisão?
Devemos decidir quais as quantidades de carne e ovos
a pessoa deve consumir no dia. As variáveis de decisão
serão, portanto:
X1  quantidade de carne a consumir no dia
X2  quantidade de ovos a consumir no dia
b. Qual o objetivo?
O objetivo é minimizar o custo, que pode ser calculado:
Custo devido à carne: 3 . X1 (custo por unidade x
quantidade a consumir de carne)
Custo devido aos ovos: 2,5 . X2 (custo por unidade x
quantidade a consumir de ovos)
Custo Total: C = 3X1 + 2,5X2
Objetivo:minimiza C = 3X1 + 2,5X2
c. Quais as restrições?
As restrições impostas pelo sistema são:
Necessidade mínima de vitamina: 32 unidades
Vitaminas de carne: 4 . X1 (quantidade por unidade x
unidades de carne a consumir)
Vitamina de ovos: 8 . X2 (quantidade por unidade x
unidades de ovos a consumir)
Total de vitaminas: 4X1 + 8X2
Necessidade mínima: 32
Restrição descritiva da situação: 4X1 + 8X2 ≥ 32
Necessidade mínima de proteína: 36 unidades
Proteína de carne: 6 . X1 (quantidade por unidade x
unidades de carne a consumir)
Proteína de ovos: 6 . X2 (quantidade por unidade x
unidades de ovos a consumir)
Total de proteínas: 6X1 + 6X2
Necessidade mínima: 36
Restrição descritiva da situação: 6X1 + 6X2 ≥ 36
Resumo do modelo: min C = 3X1 + 2,5 X2
Sujeito a:
Restrições técnicas:
4 x1  8 x 2  32
6 x1  6 x 2  36
Restrições de não
negatividade:
x1  0
x2  0
FUNÇÃO OBJETIVO:
Problema de
MAXIMIZAÇÃO
Max Vinicius Bedeschi
CRE 6859
EXEMPLO
Uma fábrica produz dois produtos, A e B. Cada um deles deve
ser processado por duas máquinas, M1 e M2. Devido à
programação de outros produtos, que também utilizam essas
máquinas, a máquina M1 tem 24 horas de tempo disponível
para os produtos A e B, enquanto a máquina M2 tem 16 horas
de tempo disponível. Para produzir uma unidade do produto A,
gastam-se 4 horas em cada uma das máquinas M1e M2. Para
produzir uma unidade do produto B, gastam-se 6 horas na
máquina M1 e 2 horas na máquina Ms. Cada unidade vendida
do produto A gera um lucro de R$80 e cada unidade do
produto B, um lucro de R$60. Existe uma previsão máxima de
demanda para o produto B de 3 unidades, não havendo
restrições quanto à demanda do produto A. Deseja-se saber
quantas unidades de A e de B devem ser produzidas, de forma
a maximizar o lucro e, ao mesmo tempo, obedecer a todas as
restrições desse enunciado.
Variáveis de decisão
AeB
Os dois produtos a serem fabricados
X1 (quantidades do produto A)
X2 (quantidades do produto B)
§ Hipótese: toda a produção será vendida
Produto
Horas gastas Horas gastas
em M1
em M2
Demanda
máxima
Lucro unitário
(R$)
A
4
4
ilimitada
80
B
6
2
3
60
Horas disponíveis
24
16
Função objetivo
Vamos chamar de x e y, respectivamente, às quantidades
dos produtos A e B que devemos fabricar (as quais serão
vendidas integralmente). Portanto, x e y são os valores
procurados, que darão a solução ao nosso problema de
programação linear.
Queremos maximizar o lucro na venda de x unidades de A
e y unidades de B, ou seja, queremos maximizar o
resultado numérico da seguinte expressão:
80x + 60y
Restrições
As restrições dizem respeito à escassez de recursos, por
um lado, e a limites impostos sobre nossas ações na
tentativa de maximiza a função objetivo. Quais são os
nossos recursos escassos?
Horas consumidas na máquina M1 ≤ 24
Horas consumidas na máquina M2 ≤ 16
Horas consumidas na máquina M1 = 4x + 6y
Horas consumidas na máquina M2 = 4x + 2y
Reescrevendo, temos:
4x + 6y ≤ 24
4x + 2y ≤ 16
Restrições
Não se pode fabricar mais de 3 unidades do produto B,
pois sua demanda máxima é essa:
Restrições de não-negatividade
X ≥ 0; Y ≥ 0
y≤3
Formulação completa
Maximizar 80x + 60y
Sujeito a:
4x + 6y ≤ 24
4x + 2y ≤ 16
y≤3
X ≥ 0; Y ≥ 0
A solução do problema nos dá: x=3 e y=2
O valor da função objetivo é máximo e igual a
80(3) + 60(2) = 240 + 120 = R$360,00
Repare o leitor que os recursos disponíveis são totalmente
consumidos, pois:
4(3) + 6(2) = 12 + 12 = 24 (horas consumidas da máquina M1)
4(3) + 2(2) = 12 + 4 = 16 (horas consumidas da máquina M2)
FUNÇÃO OBJETIVO:
Problema de
MINIMIZAÇÃO
Max Vinicius Bedeschi
CRE 6859
EXEMPLO
A Granja Cocoró quer misturar dois tipos de alimentos para criar
um tipo especial de ração para suas galinhas poedeiras. A
primeira característica a ser atingida com a nova raçção e o
menor preço possível por unidade de peso. Cada um dos
alimentos contém os nutrientes necessários à ração final (aqui
chamados de nutrientes X, Y e Z), porém em proporções
variáveis. Cada 100g do alimento 1, por exemplo, possuem 10g
do nutriente X, 50g do nutriente Y e 40g do nutriente Z. O
alimento 2, por sua vez, para cada 100g, possui 20g do nutriente
X, 60g do nutriente Y e 20g do nutriente Z. Cada 100g do
alimento 1 custam, para a Granja Cocoró, R$0,60 e cada 100g do
alimento 2 custam R$0,60. Sabe-se que a ração final deve conter,
no mínimo, 2g do nutriente X, 64g do nutriente Y e 34g do
nutriente Z. É preciso obedecer a essa composição, minimizando
ao mesmo tempo o custo por peso da nova ração.
O objetivo é misturar dois alimentos, Alimento 1 e
Alimento 2, de forma a obter uma nova ração, com
uma certa composição de nutrientes X, Y e Z. Os
nutrientes estão presentes nos dois alimentos.
Nossa ração final será uma mistura dos dois alimentos
– digamos, x gramas do Alimento 1 e y gramas do
Alimento 2.
Portanto: X e Y são nossas variáveis de decisão.
Composição por 100 g
Composição de nutrientes
(mínima em gramas)
Alimento 1
Alimento 2
Nutriente X
10
20
2
Nutriente Y
40
60
64
Nutriente Z
50
20
34
Custo por 100 g
R$0,60
R$0,80
Função objetivo
Nosso problema é de minimização, ou seja, devemos usar
x gramas do Alimento 1 e y gramas do Alimento 2 para
compor (x + y) gramas da nova ração, e x e y devem ser
tais que seu custo total seja mínimo. Ora, cada 100
gramas do Alimento 1 custam R$0,60; um só grama
custaria 0,60/100 e x gramas custariam 0,60x/100, ou
0,006x. Usando o mesmo raciocínio para o Alimento 2, y
gramas custariam 0,008y. Logo, quer-se minimizar
0,006x + 0,008y
Restrições
• A quantidade total do nutriente X, em x gramas
do Alimento 1 e y gramas do Alimento 2, deve
ser pelo menos igual a 2 gramas;
• A quantidade total do nutriente Y, em x gramas
do Alimento 1 e y gramas do Alimento 2, deve
ser pelo menos igual a 64 gramas;
• A quantidade total do nutriente Z, em x gramas
do Alimento 1 e y gramas do Alimento 2, deve
ser pelo menos igual a 34 gramas.
x gramas do Alimento 1 contêm, respectivamente,
10x/100 gramas do nutriente X, ou 0,1x gramas do nutriente X
40x/100 gramas do nutriente Y, ou 0,4x gramas do nutriente Y
50x/100 gramas do nutriente Z, ou 0,5x gramas do nutriente Z
Enquanto y gramas do Alimento 2 contêm
20y/100 gramas do nutriente X, ou 0,2y gramas do nutriente X
60y/100 gramas do nutriente Y, ou 0,6y gramas do nutriente Y
20y/100 gramas do nutriente Z, ou 0,2y gramas do nutriente Z
Reescrevendo, temos:
Quantidade total do nutriente X:
0,1x + 0,2y ≥ 2
Quantidade total do nutriente Y:
0,4x + 0,6y ≥ 64
Quantidade total do nutriente Z:
0,5x + 0,2y ≥ 34
Formulação completa
Maximizar 0,006x + 0,008y
Sujeito a:
0,1x + 0,2y ≥ 2
0,4x + 0,6y ≥ 64
0,5x + 0,2y ≥ 34
X ≥ 0; Y ≥ 0
A solução do problema nos dá:
x=34,5 gramas
y=83,6 gramas
Essas quantidades, correspondem a exatamente 64
gramas do nutriente Y e 34 gramas do nutriente Z e, com
folga, a 20,1 gramas do nutriente X. A soma (x + y) é igual
a 118,1 gramas, formados por 20,1g do nutriente X, 64g
do nutriente Y e 34g do nutriente Z. Corresponde a um
custo de R$0,88. Na verdade, as quantidades de x e de y
correspondem a uma proporção, que pode ser escrita de
inúmeras formas, tais como:
34,5g do alimento 1 para 83,6g do Alimento 2
1g do Alimento 1 para 2,4g do Alimento 2
100g do Alimento 1 para 240g do Alimento 2 etc.
Duas variáveis de Decisão
Técnica de solução numa
Programação Linear
§
Uma revisão gráfica
Max Vinicius Bedeschi
CRE 6859
O desempenho do modelo á avaliado através
da representação gráfica da função objetivo
As soluções são classificadas de acordo com
sua posição no gráfico.
A representação gráfica de uma equação
linear com duas variáveis é uma reta.
Exemplo
Representar graficamente a inequação: X1
+ 2X2 ≥ 10
Exemplo
Representar graficamente a solução do sistema:
X1 + 3X2 ≤ 12
2X1 + X2 ≥ 16
X1 ≥ 0
X2 ≥ 0
Avaliação do objetivo
Maximizar L =
gráfico abaixo.
2X1 + 5X2 na região de soluções do
Verificamos do gráfico que:
1. À medida que atribuirmos valores a L, obtemos retas
paralelas.
2. À medida que o valor de L aumenta, a reta se afasta da
origem do sistema de eixos.
Podemos concluir que pelo ponto P do gráfico teremos a
paralela de maior valor que ainda apresenta um ponto na
região de soluções. Portanto, o ponto P é a solução que
maximiza L na região de soluções dadas.
Como P = (0,6) e L = 2X1 + 5X2, teremos:
L = 2.0 + 5.6 ou Lmáximo = 30
Método Gráfico
Exemplo: Resolver o problema de programação linear:
Minimizar
Z = 2X1 + 3X2
Sujeitos às restrições:
X1 + X2 ≥ 5
5X1 + X2 ≥ 10
X1 ≤ 8
X1 ≥ 0 ;
X2 ≥ 0
Programação Linear:
Formulação e Método Gráfico
com duas variáveis de decisão
Max Vinicius Bedeschi
CRE 6859
Solução Gráfica
Problema de MAXIMIZAÇÃO
Uma fábrica produz dois produtos, A e B, cada qual
processado por duas máquinas M1 e M2. Há restrição
do tempo disponível para a produção em cada uma
das máquinas, e cada um dos produtos consumia um
certo tempo de produção em cada uma das máquinas.
Cada unidade vendida do produto A gerava um lucro
de R$80 e cada unidade do produto B, um lucro de
R$60. Há uma previsão máxima de demanda do
produto B de 3 unidades. O problema está em saber
quantas unidades de A e B devem ser produzidos, de
forma a maximizar o lucro. Na sua formulação final, o
problema havia ficado assim:
Formulação completa
Maximizar 80x + 60y
Sujeito a:
4x + 6y ≤ 24
4x + 2y ≤ 16
0x + 1y ≤ 3
X ≥ 0; Y ≥ 0
4x + 6y ≤ 24
4x + 6y = 24
Y=0  x=6
X=0  y=4
Restrições: horas disponíveis na máquina M1
4x + 2y ≤ 16
4x + 2y = 16
Y=0  x=4
X=0  y=8
Restrição: horas disponíveis na
máquina M2
Temos ainda uma última restrição, que diz respeito à
máxima demanda do produto B, isto é, ao valor
máximo de Y:
0x + 1y ≤ 3
Dessa vez, a região permissível é relativamente simples
de ser encontrada, pois está no espaço abaixo da reta
paralela ao eixo x, passando pelo ponto Y = 3, conforme
o próximo slide.
Restrição: demanda máxima – Produto B
As representações gráficas das três restrições
podem agora ser colocadas em um só gráfico.
Gráfico das restrições: maximização
As três restrições delimitam agora uma região comum,
que é o polígono PQRST; todos os pontos internos a
essa região, ou sobre as retas que a formam, obedecem
simultaneamente a todas as restrições. Os pontos
PQRST são chamados de pontos extremos da região
permissível.
P (x=0; y=0) é o origem dos eixos
Q (x=4; y=0)
T (x=0; y=3)
S (y=3; x=3/2)
R(y=2; x=3)
A solução ótima ao problema está em um dos pontos
extremos da região permissível.
Ponto extremo
Valor de x
Valor de y
Função objetivo
80x + 60y
P
Q
0
4
0
0
0
320
R
S
T
3
3/2
0
2
3
3
360
300
180
O ponto extremo R é, portanto, a solução do nosso
problema de maximização, com x = 3 e y = 2
Movendo a reta paralelamente a si mesma para a direita,
o último ponto a ser encontrado é o p0onto R (ou seja, R é
o ponto extremo mais “extremo”), a nossa solução, com a
reta 80x + 60y assumindo o valor 360.
Retas paralelas à função objetivo:
MAXIMIZAÇÃO
Solução Gráfica
Problema de MINIMIZAÇÃO
A granja Cocoró queria misturar dois tipos de alimentos
(Alimento 1 e Alimento 2) para criar um tipo especial de
ração para suas galinhas poedeiras. Cada 100g do
Alimento 1 possuíam 10g do nutriente X, 50g do
nutriente Y e 40g do nutriente Z. O Alimento 2, por sua
vez, para cada 100g, possuía 20g do nutriente X, 60g
do nutriente Y e 20g do nutriente Z. Cada 100g do
Alimento 1 custavam, para a Granja Cocoró, R$0,60 e
cada 100g do Alimento 2 custavam R$0,80. A ração final
deveria conter, no mínimo, 2 g do nutriente X, 64 g do
nutriente Y e 34 g do nutriente Z. Queríamos obedecer a
essa composição, minimizando ao mesmo tempo o
custo por peso da nova ração.
Formulação completa
Minimizar 0,006x + 0,008y
Sujeito a:
0,1x + 0,2y ≥ 2
0,5x + 0,6y ≥ 64
0,4x + 0,2y ≥ 34
X ≥ 0; Y ≥ 0
Restrição: quantidade mínima do nutriente X na mistura
Restrição: quantidade mínima do nutriente Y na mistura
Restrição: quantidade
mínima do nutriente Y na
mistura
As três restrições delimitam uma região permissível,
aberta à direita, delimitada à esquerda pelos pontos
MNL, pelo eixo y, para valores maiores que M, e pelo
eixo x, para valores maiores que L. Todos os pontos
internos a essa região, ou sobre as retas MN e ML,
obedecem simultaneamente a todas as restrições.
Determinemos as coordenadas dos pontos extremos M,
N e L. Inicialmente, temos, sem dificuldades, as
coordenadas dos pontos M e L:
Gráfico das restrições:
MINIMIZAÇÃO
M (x = 0; y = 170)
L (x = 160; y = 0)
O ponto N é o encontro das retas 0,4x + 0,6y = 64 e
0,5x + 0,2y = 34, que representam os limites mínimos dos
nutrientes Y e Z na mistura. Uma cominação linear entre
as duas equações fornecerá os valor de x e y:
X = 34,5g
Y = 83,6g
Temos três pontos extremos, qual deles dará a
solução ótima?
O ponto extremo N é, portanto, a solução do nosso
problema de minimização, com x = 34,5g e y = 83,6g.
Ponto extremo
Valor de x
M
N
L
0
34,5
160
Função objetivo
Valor de y
0,006x + 0,008y
170
83,6
0
1,36
0,88
0,96
Para identificar graficamente que o ponto N seria o de
melhor solução (mínimo custo da mistura), teria
bastado traçar retas paralelas à função objetivo.
Retas paralelas à função objetivo:
MINIMIZAÇÃO
Movendo a reta paralelamente a si mesma para a
direita, o primeiro ponto a ser encontrado é o ponto N,
com a reta 0,006x + 0,008y assumindo o valor R$0,88.
Programação Linear
Solução Computacional
Max Vinicius Bedeschi
CRE 6859
A Indústria Maximóveis fabrica dois tipos de produtos:
cadeiras e mesas.
Os produtos apresentam as seguintes margens de
contribuição por unidade:
Produto
Margem de Contribuição
por Unidade ($)
Cadeiras
10
Mesas
8
Os produtos são processados por dois departamentos:
montagem e acabamento. Ao passar por esses
departamentos, cada unidade do produto consome
determinado número de horas, conforme indicado na
tabela abaixo:
Consumo de horas pelos
Departamento produtos (em um.)
Cadeiras
Mesas
Montagem
3
3
Acabamento
6
3
Os departamentos apresentam, contudo, limitação em
sua capacidade produtiva, como mostra a tabela abaixo:
Departamento
Capacidade máxima
disponível em horas
Montagem
30
Acabamento
48
Desejamos saber qual é a melhor combinação possível
de cadeiras e mesas a serem produzidas, de forma a
obter a maior margem de contribuição total.
Modelo Completo do problema Indústria Maximóveis
Encontrar os valores para as variáveis de decisão C e M,
de forma a maximizar a função-objetivo:
MCT = 10.C + 8.M
Respeitadas as seguintes
restrições:
3C + 3M ≤ 30
6C + 3M ≤ 48
C ≥ 0; M ≥ 0
Áreas de soluções viáveis definidas pelas restrições
Interseção das áreas de soluções viáveis
Linhas de isossolução
Ponto de solução ótima do problema
Pontos
(0,0)
(0,10)
(8,0)
Função-objetivo
(10.0) + (8.0) =
(10.0) + (8.10) =
(10.8) + (8.0) =
MCT
0
80
80
(6,4)
(10.6) + (8.4) =
92 (melhor solução)
Excel 2003
FERRAMENTAS
SUPLEMENTOS
SOLVER
OK
Excel 2007
Botão do Excel 2007
Opções do Excel
Suplementos
Gerenciar
Suplementos do Excel
Ir para
Suplementos disponíveis  SOLVER
Os dados do problema são informados nas seguintes células:
B5 e C5 – margens de contribuição unitárias dos produtos;
B8 a C9 – tempo gasto pelos produtos em cada departamento;
E8 e E9 – capacidade produtiva dos departamentos.
Parâmetros do Solver
Inclusão das restrições
Representação das restrições do problema
Opções do Solver
Tempo máximo: limita o tempo usado pelo processo de
solução.
Iterações: refere-se ao montante de erro que admitimos entre
o resultado a ser obtido pelo Solver e as metas antes fixadas
nas células de restrição. Quanto maior a precisão exigida
(maior número de casas decimais), maior o tempo gasto pela
ferramenta computacional para solucionar o problema.
Tolerância: essa opção é aplicável apenas aos problemas
com restrições de número inteiro, situação que discutiremos
em um exemplo seguinte deste capítulo.
Convergência: opção aplicável somente nos casos de
problemas não lineares.
Presumir modelo linear: é fundamental que esta opção
seja selecionada nos casos de problemas de Programação
Linear. Indica que todas as relações do modelo do problema
são lineares. Também é selecionada nas situações em que
se deseja uma aproximação linear para um problema não
linear.
Presumir não negativos: a seleção desta opção instrui o
Solver a presumir um limite mínimo de zero para as células
ajustáveis. Esse procedimento dispensa a necessidade de
incluir as restrições do tipo “≥”, uma a uma.
Usar escala automática: esta opção deve ser selecionada,
necessariamente, quando a diferença de grandezas entre os
valores de entradas e os valores de saídas do problema for
muito expressiva. Por exemplo, quando se busca a
maximização da porcentagem da margem de contribuição
(entrada) e o resultado envolve valores de montantes
bastante altos (saídas). Uma sugestão é sempre selecionar
essa alternativa para a solução dos diversos problemas de
PL, procedimento que dispensará a preocupação com um
tipo de situação específica.
Mostrar resultados de iteração: se selecionada, instrui o
Solver a exibir o resultado de cada tentativa de solução do
problema.
Campos “Estimativas”, “Derivadas” e “Pesquisar”:
referem-se a recursos avançados, cuja explicação depende
de conceitos que fogem ao escopo deste livro. No exemplo,
mantivemos para esses campos as definições padrão do
Solver.
Resultados do Solver
Planilha final
As células variáveis indicam a quantidade de itens a
serem produzidos na solução ótima: seis cadeiras e
quatro mesas. Margem de contribuição ótima é de $92.
Relatórios de respostas
Não há sobras
Relatórios de limites
Relatórios de sensibilidade
Análise de sensibilidade. Análise que permite avaliar os
reflexos sobre a solução ótima de eventuais alterações nos
dados e condições do problema, dentro de intervalos
definidos.
Função-objetivo. Expressão matemática por meio da qual se
relacionam as variáveis de decisão e o objetivo a ser atingido.
Linhas de isossolução. Retas nas quais, em todos os seus
pontos, é obtido o mesmo valor para a função-objetivo.
Método Simples. Método matemático que combina conceitos
de álgebra matricial com um conjunto de regras básicas que
levam à solução dos problemas de Programação Linear.
Pesquisa Operacional. Área do conhecimento que fornece um
conjunto de procedimentos voltados para tratar, de forma sistêmica,
problemas que envolvem a utilização de recursos escassos.
Preço sombra (ou sombra preço). Campo do relatório de
sensibilidade do Solver que indica quanto se deixa de ganhar por
não se dispor de mais uma unidade de determinada variável
restritiva.
Programação Linear. Técnica matemática destinada a determinar a
melhor utilização de recursos ilimitados, de forma que uma funçãoobjetivo seja otimizada e sejam satisfeitas determinadas condições
estabelecidas.
Reduzido custo. Informação contida no relatório de sensibilidade
emitido pelo Solver, que pode ser entendida como um “custo de
oportunidade”, indicando quanto se deixa de ganhar (ou perder) por
adotar alternativa diferente da indicada pela solução ótima.
Restrições. Limitações impostas sobre os possíveis valores que
podem ser assumidos pelas variáveis de decisão.
Solver. Ferramenta do software Microsoft Excel que, para
solução dos problemas lineares, utiliza o método simplex com
limites sobre as variáveis e o método de desvio e limite.
Variáveis de decisão. Variáveis que correspondem às decisões
a serem tomadas visando encontrar a solução para o problema
em análise.
Variáveis de folga. Variáveis que representam eventuais folgas
entre limites fixados pelas restrições e o montante efetivamente
definido na solução do problema; introduzidas nas inequações
representativas das restrições, transformam-nas em equações.
Análise dos Relatórios
Max Vinicius Bedeschi
CRE 6859
Relatório de Respostas
Subdividido em três partes:
• Célula de Destino
• Células Ajustáveis
• Restrições
O campo Valor final das células ajustáveis mostra a
solução ótima encontrada pelo Solver: produção de seis
cadeiras e de quatro mesas. O resultado da célula de
destino indica que esse mix de produtos gera uma
margem de contribuição de $92.
O campo Valor original aponta que essas células foram
inicialmente preenchidas com zeros.
O campo Valor da célula aponta o total de horas
utilizadas pelos produtos em cada departamento.
O campo Fórmula contém a expressão representativa de
cada restrição.
O campo Status exibe uma das duas seguintes
mensagens: (1) Agrupar, que significa que não há sobras,
e (2) Não agrupar, indicativa da existência de sobras.
Relatório de Limites
Na primeira parte do relatório, é indicado o valor da
Margem de Contribuição na solução ótima.
Na segunda parte do relatório, destinada às celulas
ajustáveis, mostram-se no campo Valor, as margens
de contribuição unitárias dos produtos. Os campos
Limite inferior e Resultado de destino devem ser
analisados em conjunto.
Considere a linha do relatório correspondente à
Quantidade a produzir de cadeiras. A análise dos campos
correspondentes indica que, mantidas as demais
condições do problema, se reduzirmos a produção de
cadeiras a seu Limite inferior (zero), o Resultado destino
(margem de contribuição) será de $32. Com efeito, na
solução ótima, se deixarmos de produzir cadeiras, a
margem de contribuição total se referirá apenas à
produção de quatro mesas, que têm margem de
contribuição unitária de $8, resultando em $32.
Raciocínio similar deve ser empregado para interpretar a
linha correspondente à Quantidade a produzir de mesas:
quando não são produzidas mesas, a margem de
contribuição total é de $60, relativa à fabricação de seis
cadeiras, com MCU de $10.
A análise do campo Limite superior segue a mesma
lógica. Consideremos, primeiro, a linha referente à
Quantidade a produzir de cadeiras. Os valores dos
campos correspondentes indicam que, na solução ótima,
se produzida a quantidade máxima de 6 unidades de
cadeiras, o Resultado destino será de $92. Ver que esse
é o valor da MCT na solução ótima. Desde que se
mantenha fixa a quantidade de um dos produtos na
solução ótima, não será possível aumentas a quantidade
do outro produto. Verificar que o valor encontrado para a
linha da Quantidade a produzir de mesas também é o
mesmo. Podemos generalizar esses resultados para
todos os problemas de maximização: nos problemas
dessa natureza, o Resultado destino do Limite superior
sempre coincidirá com a solução ótima.
As informações fornecidas pelo relatório de limites
ganham importância à medida que aumentamos o
número de variáveis do problema. Imaginar, por
exemplo, o caso de uma empresa que fabrica 30
diferentes produtos e deseja saber qual seria o valor da
margem de contribuição total caso se decidisse pela
descontinuidade da produção de um desses itens.
Relatório de Sensibilidade
O Relatório de Sensibilidade amplia a solução estática
da programação linear. A análise de sensibilidade
permite incorporar à resposta considerações sobre
eventuais alterações nas condições do problema,
dentro de intervalos definidos.
O Relatório de Sensibilidade é subdividido em duas
partes: uma destinada às celulas ajustáveis e outra, às
restrições.
Análise 1: Quanto às células ajustáveis
O campo Valor final indica as quantidades dos produtos a
serem produzidas na solução ótima. Essa é uma
informação pontual, que, a princípio, depende da
manutenção das condições consideradas na resolução
do problema. Ocorre que os dados do problema estão
sujeitos a alterações em seus valores. No âmbito das
empresas, essas variações ocorrem com certa
freqüência.
A análise de sensibilidade revela que, dentro de
intervalos determinados, a quantidade de produtos a
serem fabricados na solução ótima é mantida, ainda
que se alterem suas MCU. Os intervalos são definidos
com informações dos campos Permissível decréscimo
e Permissível acréscimo. Por exemplo, a MCU das
cadeiras é de $10. É possível afirmar que essa margem
de contribuição unitária pode variar de $8 ($10 –
permissível decréscimo de $2) a $16 ($10 + permissível
acréscimo de $6) que a quantidade de cadeiras
prevista na solução ótima não se altera.
A mesma afirmação pode ser feita quanto à variação da
margem de contribuição das mesas: a quantidade de
quatro mesas a serem produzidas, conforme indicado
na solução ótima, mantém-se desde que a MCU do
produto varie dentro do intervalo de $5 ($8 –
permissível decréscimo de $3) a $10 ($8 + permissível
acréscimo de $2).
A referida análise é válida desde que consideremos
apenas a margem de contribuição de um dos produtos
que varia dentro do intervalo correspondente, enquanto
mantemos constante a margem do outro produto.
Outra situação em que a solução ótima não se altera
refere-se aos casos de aumentos ou diminuições
simultâneas nas margens de contribuição unitárias dos
produtos, desde que essas alterações se verifiquem
dentro dos intervalos antes definidos.
Os valores contidos no campo Reduzido Custo indicam
qual o reflexo provocado no “objetivo coeficiente” (MCT,
em nosso caso) pela opção por alternativas diferentes
da indicada na solução ótima. Pode ser entendido como
um “custo de oportunidade”; mostra quanto se está
deixando de ganhar (ou perder) por desprezar
determinada alternativa.
O “reduzido custo” é zero para as variáveis que fazem
parte da solução ótima.
Análise 2: Quanto às restrições
O campo Sombra preço (ou Preço sombra) indica quanto
se deixa de ganhar por não se dispor de mais uma
unidade de determinada variável restritiva.
Por exempLO, O SOBRE PREÇO DO Departamento de
Montagem é de $2. Isso significa que, caso o
departamento dispusesse de 31 horas, aos invés das 30
atuais, a margem de contribuição da empresa passaria
de $92 para $94. Esse tipo de análise é válido,
logicamente, desde que se mantenham as demais
condições do problema.
O preço sombra indica qual a perda provocada pela diminuição
de uma unidade em uma restrição específica. Por exemplo, a
MCT diminuiria dos atuais $92 para $90, caso a capacidade do
Departamento de Montagem fosse diminuída em uma hora. O
mesmo raciocínio é válido para a análise do Departamento de
Acabamento.
Os valores do preço sombra são válidos para determinados
intervalos. O raciocínio para definição desses intervalos é similar
ao utilizado para o Objetivo coeficiente, considerando-se os
campos Permissível acréscimo e Permissível decréscimo. Assim,
podemos afirmar que o preço-sombra de $2 é mantido nas
variações na quantidade de horas do Departamento de
Montagem que se processarem no intervalo que vai de 24 horas
(30 horas menos permissível decréscimo de 6 horas) a 48 horas
(30 horas + permissível acréscimo de 18 horas)
O preço sombra possui importante conteúdo
informacional, à medida que permite a comparação dos
ganhos que advêm da ampliação da capacidade restritiva
da empresa com os eventuais custos envolvidos. A
Indústria Maximóveis poderia comparar, por exemplo, o
ganho de $40 em sua MCT, proporcionado pelo aumento
de 20 horas na capacidade produtiva do Departamento
de Montagem, com os custos que adviriam dessa
ampliação.
Download

Pesquisa Operacional - Slides - Introdução e Programação