Programação Linear
Introdução
Prof. Antonio Carlos Coelho
1
Por Que Modelos de
Programação Matemática
Constatação básica:
Recursos limitados e escassos
exemplos: tempo, dinheiro, recursos naturais, capacidade
instalada
Necessidades ilimitadas e crescentes
princípios de eficiência e eficácia
Objetivo do modelo:
Possibilitar aos agentes econômicos decidir sobre o
melhor uso dos recursos limitados
Proporcionar a otimização da alocação de recursos
escassos de modo a maximizar lucros e minimizar
custos
2
Alocação de recursos com
restrição única
Uma indústria automobilística fabrica 2 modelos de
veículos com as seguintes características:
Preço de Custo MC unitária
venda variável
Modelo 4 portas $ 260.000 $ 205.000 $ 55.000
Modelo 2 portas $ 258.000 $ 204.000 $ 54.000
Cada porta possui uma maçaneta, que é igual para todas as
portas.
Num determinado mês, há uma restrição de 8.000 maçanetas.
Quanto devo produzir de cada modelo para maximizar a
Margem de Contribuição para a empresa no período?
3
Alocação de recursos com
restrição única
Princípio geral:
fabricar o produto que proporciona maior MC
por fator limitativo:
4 portas: $ 55.000/4 maçanetas = $ 13.750/ maçaneta
2 portas: $ 54.000/2 maçanetas = $ 27.000/ maçaneta
4
Alocação de recursos com
restrição única
Solução:
produzir modelo de 2 portas
4.000 veículos (8.000 maçanetas / 2 portas)
• MC total: 4.000u X $ 54.000 = $ 216.000.000
Se produzir modelo de 4 portas
2.000 veículos (8.000 maçanetas / 4 portas)
• MC total: 2.000u X $ 55.000 = $ 110.000.000
5
E quando há mais restrições?
Aplicam-se modelos de Programação:
Linear
Linear Inteira
Multiobjetiva (goal programming)
Não Linear
Outros modelos:
Simulação
Análise da Decisão
6
Programação Linear
É uma técnica matemática que auxilia na
determinação da melhor utilização dos
recursos limitados de uma organização
em problemas com relações lineares
7
Programação Linear
APLICAÇÕES USUAIS
Planejamento Operacional
Determinar o mix de produtos que maximiza
o lucro da empresa
Determinar logística e rotas que minimizam
o custo de transporte
Planejamento Financeiro:
Determinar a alocação de recursos em
carteiras de investimento que maximizem o
retorno e/ou minimizem o risco
8
Desenvolvendo o Modelo
Características
Envolve uma decisão a ser tomada
Existem restrições a serem consideradas
nas alternativas de decisão
Existe uma meta ou objetivo a ser
maximizado ou minimizado
9
Desenvolvendo o Modelo
1) Análise e Compreensão do problema
2) Montagem do Modelo
1) identificação das variáveis de decisão
2) definição das restrições
3) formulação da função objetivo
3) Solução do Modelo
10
Expressando Matematicamente
A decisão é representada pelas variáveis de
decisão
• X1, X2, ... , Xn
O objetivo é representado por uma função-
objetivo do tipo
• MAX (MIN) V = f (X1, X2, ... , Xn)
11
Expressando Matematicamente
As restrições são representadas pelo parâmetro b,
expressas de 3 maneiras possíveis:
menor ou igual
• f (X1, X2, ... , Xn) b
maior ou igual
• f (X1, X2, ... , Xn) b
igual
• f (X1, X2, ... , Xn) = b
12
Fórmula Geral
MAX (MIN) V = c1X1 + c2X2 + ... + cnXn
Sujeito a:
a11X1 + a12X2 + ... + a1nXn b1
ak1X1 + ak2X2 + .... + aknXn bk
..
am1X1 + am2X2 + ... + amnXn = bm
...
Onde:
c1, c2, ... , cn = margem de contribuição; medida de custo;
taxa de retorno, etc.
aij = quantidade do fator de restrição consumido em cada
unidade produzida ou disponível para utilizar, etc.
bi = valor máximo ou mínimo do recurso escasso 13
Resolvendo o Modelo
Solução Gráfica
Solução Matricial
Método Simplex
Solução Computacional
14
Exemplo
Variáveis de decisão
Dois tipos de banheira
Margens diferentes de Contribuição
Restrições
Disponibilidade de Mão de Obra
Disponibilidade de Canos
Disponibilidade de Bombas
15
Exemplo
Função Objetivo
MAX: 350x1 + 300x2
Sujeito a:
Fatores de Produção → Limitação
Bombas 1x1 + 1x2 200
Horas de Mão de Obra 9x1 + 6x2 1.566
Canos (metros) 12x1 + 16x2 2.880
16
Exemplo
Função Objetivo
MAX: 350x1 + 300x2
Sujeito a:
1x1 + 1x2 200
9x1 + 6x2 1.566
12x1 + 16x2 2.880
x1 ≥ 0
x2 ≥ 0
17
Solução Gráfica
Função
x2 Objetivo
Solução ótima
Restrição de trabalho
Restrição de bombas
Restrição de tubos
x1 18
Solução Gráfica
Como determinar a solução ótima?
A) A partir da visualização do encontro das
curvas de nível com as retas de restrição
B) A partir da comparação dos diversos
pontos extremos, para escolher o maior
(menor) valor
19
Solução Gráfica
Sumário da Solução Gráfica
• Desenhe a reta de cada restrição no gráfico
• Identifique a área de soluções factíveis, isto
é, a área do gráfico que simultaneamente
satisfaz a todas as restrições
• Encontre a solução ótima por um dos
métodos a seguir descritos
20
Métodos Gráficos
a) Desenhe uma ou mais curvas de nível da função objetivo
e determine a direção na qual curvas paralelas resultam
em aumentos no valor da função objetivo
b) Desenhe curvas paralelas na direção do crescimento até
que a curva toque a área de soluções em um único ponto
c) Encontre às coordenadas deste ponto
a) Identifique as coordenadas de todos os pontos extremos
da área de soluções factíveis e calcule os respectivos
valores da função objetivo.
b) O ponto com o maior valor da função-objetivo é a solução
ótima
21
Solução Matricial
A resolução de um problema de
programação linear consiste em
resolver sistemas algébricos lineares e
calcular o valor da função-objetivo
Escolher dentre os diversos resultados
obtidos para a função-objetivo, aquele
que fornece o maior (menor) valor
22
Método Simplex
Baseia-se nas variáveis de FOLGA
Base para os relatórios de Sensibilidade
do software SOLVER
Sistema com n variáveis e m equações
Seleciona m variáveis (BÁSICAS)
As demais assumem valor = 0 (NÃO BÁSICAS)
Calcula Função Objetivo para cada rodada
Escolhe a de maior valor
23
Solução Computacional
Para Problemas mais Complexos
Solução via Excel
Ferramenta Solver
24
Condições Especiais
1. Alternância de Soluções Ótimas
2. Restrições Redundantes
3. Soluções Ilimitadas
4. Soluções de Impossibilidade
As duas primeiras não impossibilitam o modelo
As duas últimas impossibilitam o uso do modelo
25
Condições Especiais
Alternância de Soluções Ótimas:
Ocorre quando há mais de um ponto que maximiza (ou
minimiza) o valor da função objetivo
A existência de mais de uma solução possível não
inviabiliza o uso da ferramenta Programação Linear
Restrições Redundantes:
Ocorre quando uma restrição não faz diferença na
determinação da área de soluções factíveis
26
Soluções Ilimitadas
Ocorre quando são encontradas soluções nas quais a
função objetivo é infinitamente grande (maximização) ou
infinitamente pequena (minimização)
Exemplo:
MAX: x1 + x2
Sujeito a:
x1 + x2 400
- x1 + 2x2 400
x1 0
x2 0
27
Soluções Ilimitadas
x2
x1
28
Solução Impossível
Exemplo:
MAX: x1 + x2
Sujeito a:
x1 + x2 150
x1 + 2x2 200
x1 0
x2 0
29