Title: Faculdade de Engenharia - Campus de Guaratinguet
1Faculdade de Engenharia - Campus de Guaratinguetá
Pesquisa Operacional Livro Introdução à
Pesquisa Operacional Capítulo 2 - Programação
Linear Fernando Marins fmarins_at_feg.unesp.br De
partamento de Produção
2- Modelagem e limitações da Programação Linear.
- Resolução Gráfica.
- Forma padrão de um modelo de Programação Linear.
- Definições e Teoremas.
- Forma canônica de um sistema de equações
lineares. - Método Simplex.
-
- Exercícios
3Programação Linear
- Programação Linear
- Preocupação em encontrar a melhor solução para
problemas associados com modelos lineares. - Modelo de Programação Linear
- Maximização (ou minimização) de uma função
objetivo linear com relação as variáveis de
decisão do modelo. - Respeitando-se as limitações (restrições) do
problema expressas por um sistema de equações e
inequações associadas com as variáveis de decisão
do modelo.
4- Modelagem em Programação Linear
- Razões para o uso da Programação Linear
- Grande variedade de situações podem ser
aproximadas por modelos lineares. - Existência de técnicas (algoritmos) eficientes
para a solução de modelos lineares. - Possibilidade de realização de análise de
sensibilidade nos dados do modelo. - Estágio de desenvolvimento da tecnologia
computacional.
5- Modelagem em Programação Linear
- Passos básicos na obtenção de modelos de PL
- Identificar as variáveis de decisão,
representá-las em simbologia algébrica. - Identificar as restrições do problema,
expressá-las como equações ou inequações lineares
em termos das variáveis de decisão. - Identificar o objetivo de interesse no problema,
representá-lo como função linear em termos das
variáveis de decisão, que deverá ser maximizada
ou minimizada.
6- Modelagem em Programação Linear
- Construção de modelos não é uma ciência, mas uma
arte, podendo ser melhorada com a prática. - Exemplos a serem trabalhados
- Determinação do mix de produção
- Seleção de mídia para propaganda
- Um problema de treinamento
- Uma indústria química
- Uma oficina mecânica
- Dimensionamento de equipes de inspeção
7- Modelagem em Programação Linear
Determinação do mix de produção Uma companhia
deseja programar a produção de um utensílio de
cozinha que requer o uso de dois tipos de
recursos mão-de-obra e material. A companhia
está considerando a fabricação de três modelos e
o seu departamento de engenharia forneceu os
dados a seguir
O suprimento de material é de 200 kg por dia. A
disponibilidade diária de mão-de-obra é 150
horas. Formule um modelo de Programação Linear
para determinar a produção diária de cada um dos
modelos de modo a maximizar o lucro total da
companhia.
Modelo Modelo Modelo
A B C
Mão-de-obra (horas por unidade) 7 3 6
Material (kg por unidade) 4 4 5
Lucro ( por unidade) 4 2 3
8- Modelagem em Programação Linear
- Formulação do modelo
- Identificação das variáveis de decisão
XA produção diária do modelo A
XB produção diária do modelo B
XC produção diária do modelo C
- Identificação das restrições
- Identificação do objetivo maximização do lucro
total
Lucro Total L 4XA 2XB 3XC
Max L 4XA 2XB 3XC
9- Modelagem em Programação Linear
Modelo
Encontrar números XA, XB, XC tais que Max L
4XA 2XB 3XC Sujeito as restrições 7XA
3XB 6XC ? 150
4XA 4XB 5XC ? 200 XA ? 0,
XB? 0, XC ? 0
10- Modelagem em Programação Linear
Seleção de mídia para propaganda Uma companhia
de propaganda deseja planejar uma campanha em 03
diferentes meios TV, rádio e revistas.
Pretende-se alcançar o maior número de clientes
possível. Um estudo de mercado resultou em
TV horário TV horário Rádio Revistas
normal nobre
Custo 40.000 75.000 30.000 15.000
Clientes Atingidos 400.000 900.000 500.000 200.000
Mulheres Atingidas 300.000 400.000 200.000 100.000
0bs valores válidos para cada veiculação da
propaganda.
11- Modelagem em Programação Linear
A companhia não quer gastar mais de
800.000 e, adicionalmente, deseja (1) Que no
mínimo 2 milhões de mulheres sejam atingidas (2)
Gastar no máximo 500.000 com TV (3) Que no
mínimo 03 veiculações ocorram no horário
normal TV (4) Que no mínimo 02 veiculações
ocorram no horário nobre TV (5) Que o nº. de
veiculações no rádio e revistas fiquem entre 05 e
10, para cada meio de divulgação.
Formular um modelo de PL que trate
este problema, determinando o nº. de
veiculações a serem feitas em cada meio de
comunicação, de modo a atingir o máximo possível
de clientes.
12- Modelagem em Programação Linear
Resolução do exemplo seleção de mídia para
propaganda
Variáveis de decisão
X1 nº. de exposições em horário normal na tv.
X2 nº. de exposições em horário nobre na tv.
X3 nº. de exposições feitas utilizando
rádio
X4 nº. de exposições feitas utilizando revistas.
Função-objetivo
Maximizar nº. de clientes atingidos
Max Z 400.000X1 900.000X2 500.000X3
200.000X4
13- Modelagem em Programação Linear
Restrições
Orçamento 40.000X1 75.000X2 30.000X3
15.000X4 ? 800.000
Mulheres atingidas 300.000X1 400.000X2
200.000X3 100.000X4 ? 2.000.000
Gasto com TV 40.000X1 75.000X2 ? 500.000
Nº. de veiculações em TV, rádio e revistas X1 ?
3, X2 ? 2, 5 ? X3 ? 10, 5 ? X4 ? 10
Não-negatividade X1, X2, X3, X4 ? 0.
14- Modelagem em Programação Linear
Um problema de treinamento Uma empresa de
máquinas ferramentas tem um programa de
treinamento para operadores de máquinas. Alguns
operadores já treinados podem trabalhar como
instrutores neste programa ficando responsáveis
por 10 trainees cada. A empresa pretende
aproveitar apenas 07 trainees de cada turma de
10. Estes operadores treinados também são
necessários na linha de fabricação, e sabe-se que
serão necessários para os próximos meses 100
operadores em janeiro, 150 em fevereiro, 200 em
março, e 250 em abril. Atualmente há 130
operadores treinados disponíveis na empresa.
15- Modelagem em Programação Linear
Os custos associados a cada situação
são Trainees ...................................
........................................
400. Operador treinado trabalhando
........................................
700. Operador treinado ocioso.....................
............................. 500.
Encontrar um modelo de PL que forneça um programa
de treinamento de custo mínimo e satisfaça os
requisitos da empresa em termos de nº. de
operadores treinados disponíveis a cada
mês. Observação acordo firmado com o sindicato
proíbe demissões de operadores treinados no
período.
16- Modelagem em Programação Linear
Resolução do exemplo Um problema de
treinamento Observe que a cada mês um operador
treinado está operando máquina, trabalhando como
instrutor, ou está ocioso. Além disto, o nº. de
operadores treinados trabalhando nas máquinas é
fixo e conhecido 100 em janeiro, 150 em
fevereiro, 200 em março e 250 em abril.
Variáveis de decisão
X1 operadores trabalhando como instrutores em
janeiro
X2 operadores ociosos em janeiro
X3 operadores trabalhando como instrutores em
fevereiro
X4 operadores ociosos em fevereiro
X5 operadores trabalhando como instrutores em
março
X6 operadores ociosos em março
17- Modelagem em Programação Linear
Função-objetivo
Custo total custo trainees custo instrutores
custo ociosos custo operadores trabalhando em
máquinas.
Min C 400?(10X1 10X3 10X5) 700?(X1 X3
X5) 500?(X2 X4 X6) 700?(100 150
200) Min C 4700X1 500X2 4700X3 500X4
4700X5 500X6 315.000
18- Modelagem em Programação Linear
Restrições X1, X2, X3, X4, X5, X6 ? 0
(não-negatividade)
Equação de balanço mensal
operadores treinados no início do mês
operadores nas máquinas instrutores
operadores ociosos.
Janeiro 130 100 X1 X2 ? X1 X2 30
Fevereiro 130 7X1 150 X3 X4 ? 7X1 -
X3 - X4 20
Março 130 7X1 7X3 200 X5 X6 ? 7X1
7X3 - X5 - X6 70
Abril 250 130 7X1 7X3 7X5 ? 7X1 7X3
7X5 120.
19- Modelagem em Programação Linear
Uma indústria química Dois produtos, A e B, são
feitos a partir de duas operações químicas. Cada
unidade do produto A requer 02 horas da operação
1 e 03 horas da operação 2. Cada unidade do
produto B requer 03 horas da operação 1 e 04
horas da operação 2. O tempo total disponível
para a realização da operação 1 é de 16 horas, e
o tempo total para a operação 2 é de 24
horas. A produção do produto B resulta, também,
num subproduto C sem custos adicionais. Sabe-se
que parte do produto C pode ser vendido com
lucro, mas o restante deve ser destruído.
Previsões mostram que no máximo 05 unidades do
produto C serão vendidas, e sabe-se que cada
unidade do produto B fabricada gera 02 unidades
do produto C.
20- Modelagem em Programação Linear
Sabe-se que Produto A gera um lucro de 4 por
unidade. Produto B gera um lucro de 10 por
unidade. Produto C gera um lucro de 3 por
unidade se for vendido. Produto C gera um custo
de 2 por unidade se for destruído
Determinar um modelo de PL para tratar este
problema, e encontrar quanto produzir de cada
produto, de modo a maximizar o lucro da indústria
química.
21- Modelagem em Programação Linear
Resolução do exemplo Uma indústria química -
produto A
Observe que o lucro da venda do produto A é uma
função linear, mas com respeito ao produto C isto
não ocorre.
22- Modelagem em Programação Linear
Artifício considerar as variáveis de decisão
como sendo X1 quantidade produto A produzida X2
quantidade produto B produzida X3 quantidade
produto C vendida X4 quantidade produto C
destruída
Função-objetivo Max Z 4 X1 10 X2 3 X3 2
X4
Restrições
2 X1 3 X2 ? 16 (disponibilidade de tempo
para operação 1) 3 X1 4 X2 ? 24
(disponibilidade de tempo para operação 2) X3
X4 2 X2 (produção do produto C a partir do
produto B) X3 ? 5 (previsão de produto C que
pode ser vendido) X1, X2, X3, X4 ? 0
(não-negatividade)
23- Modelagem em Programação Linear
Oficina mecânica Uma oficina mecânica tem 01
furadeira vertical e 05 fresas, que são usadas
para a produção de conjuntos formados de 2
partes. Sabe-se qual é a produtividade de cada
máquina na fabricação destas partes do conjunto
Furadeira Fresa
Parte 1 03 20
Parte 2 05 15
Obs tempo para produzir as partes dado em
minutos.
24- Modelagem em Programação Linear
O encarregado pela oficina deseja manter uma
carga balanceada nas máquinas de modo que nenhuma
delas seja usada mais que 30 minutos por dia que
qualquer outra, sendo o carregamento de
fresamento dividido igualmente entre as 05
fresas. Achar um modelo de PL para dividir o
tempo de trabalho entre as máquinas de modo a
obter o máximo de conjuntos completos ao final de
um dia, num total de 08 horas de trabalho.
25- Modelagem em Programação Linear
Resolução do exemplo Oficina mecânica
Variáveis de decisão X1 número de partes 1
produzidas por dia X2 número de partes 2
produzidas por dia
Restrições 3X1 5X2 ? 480 (minutos por dia
disponíveis para a furadeira) (20X1 15X2)/5
4X1 3X2 ? 480 (minutos por dia disponíveis
para cada fresa)
26- Modelagem em Programação Linear
(4X1 3X2) - (3X1 5X2) X1 -2X2 ? 30
(Balanceamento de carga entre as máquinas)
Observe que esta última restrição não é linear,
mas é equivalente a duas equações lineares que
podem substituí-la X1 - 2X2 ? 30 e -X1
2X2 ? 30 X1, X2 ? 0 (não-negatividade).
27- Modelagem em Programação Linear
Função-objetivo
maximização do número de conjuntos completos por
dia Max Z min (X1, X2) Observe que esta
função não é linear, mas pode ser linearizada
utilizando-se uma nova variável, da forma Seja
Y min (X1, X2), Y ? 0, naturalmente tem-se duas
novas restrições Dadas por Y ? X1 e Y ?
X2. A função-objetivo linear fica sendo Max Z
Y
28- Modelagem em Programação Linear
- Problema de dimensionamento de equipes de
inspeção - Uma companhia deseja determinar quantos
inspetores alocar à uma dada tarefa do controle
da qualidade. As informações disponíveis são - Há 08 inspetores do nível 1 que podem checar as
peças a uma taxa de 25 peças por hora, com uma
acuracidade de 98, sendo o custo de cada
inspetor deste nível 4 por hora - Há 10 inspetores do nível 2 que podem checar as
peças a uma taxa de 15 peças por hora, com uma
acuracidade de 95, sendo o custo de cada
inspetor deste nível 3 por hora.
29- Modelagem em Programação Linear
- A companhia deseja que no mínimo 1800 peças sejam
inspecionadas por dia ( 08 horas). - Sabe-se, ainda, que cada erro cometido por
inspetores no controle da qualidade das peças
acarreta um prejuízo à companhia de 2 por peça
mal inspecionada.
Formular um modelo de PL para possibilitar a
designação ótima do nº. de inspetores de cada
nível de modo a otimizar o custo da inspeção
diária da companhia.
30- Modelagem em Programação Linear
Resolução do exemplo Dimensionamento de equipes
de inspeção
Variáveis de decisão Xi nº. de inspetores do
nível i ( 1, 2) alocados à inspeção.
Função objetivo Minimizar C custo total
diário de inspeção (/dia) onde custo total
custo do salário dos inspetores custo dos
erros Min C 8 (4X1 3X2) 2 (250,02X1
150,05X2) Min C 40X1 36X2
31- Modelagem em Programação Linear
Restrições
- Quanto ao nº. de inspetores disponíveis
- X1 ? 8 (inspetores do nível 1)
- X2 ? 10 (inspetores do nível 2)
2. Quanto ao nº. de peças inspecionadas por
dia 8 (25X1 15X2) ? 1800 ?
5X1 3X2 ? 45
3. Restrições implícitas de não
negatividade X1 ? 0 X2 ? 0.
32- Resolução gráfica de modelos de PL
- Aplicável para modelos com 02 variáveis de
decisão - Útil para a ilustração de alguns conceitos
básicos utilizados na resolução de modelos de
maior porte.
Etapas a serem seguidas na resolução gráfica 1º
Passo identificar a região viável do modelo,
isto é, quais são os pares (X1, X2) que
satisfazem a todas as restrições. 2º Passo
achar a melhor solução viável, denominada Solução
Ótima e denotada por (X1, X2), que leva ao
valor ótimo da função-objetivo Z.
33- Resolução gráfica de modelos de PL
- Problema de mix de Produção
- Fabricação de dois modelos de brinquedos B1 e
B2. -
- Lucros unitários/dúzia 8 para B1 e 5 para B2
- Recursos disponíveis
- 1000 kg de plástico especial.
- 40 horas para produção semanal.
- Requisitos do Departamento de Marketing
- Produção total não pode exceder 700 dúzias
- A quantidade de dúzias de B1 não pode exceder
em 350 a quantidade de dúzias de B2. - Dados técnicos
- B1 requer 2 kg de plástico e 3 minutos por
dúzia. - B2 requer 1 kg de plástico e 4 minutos por
dúzia.
34- Resolução gráfica de modelos de PL
A Gerência está procurando um programa de
produção que aumente o lucro da Companhia.
35- Resolução gráfica de modelos de PL
Variáveis de decisão
X1 produção semanal de B1 (em dúzias).
X2 produção semanal de B2 (em dúzias).
Função Objetivo Maximizar o Lucro semanal
36- Resolução gráfica de modelos de PL
Max 8X1 5X2 (Lucro semanal) sujeito
a 2X1 1X2 1000 (Plástico - Kg) 3X1 4X2
2400 (Tempo de produção - minutos) X1
X2 700 (Produção total) X1 - X2 350
(mix) Xj ? 0, j 1,2 (Não
negatividade)
37- Resolução gráfica de modelos de PL
Conceitos importantes Os pontos (X1, X2) que
satisfazem todas as restrições do modelo formam a
Região Viável. Esses pontos são chamados de
Soluções Viáveis. Usando a resolução gráfica
pode-se representar todos as restrições
(semi-planos), a função objetivo (reta) e os três
tipos de pontos viáveis.
38- Resolução gráfica de modelos de PL
1º Passo Traçar eixos cartesianos, associando
a cada um deles uma variável de decisão. No
exemplo de fabricação de brinquedos X1 para o
eixo das abscissas e X2 para o eixo das
ordenadas. As restrições de não-negatividade,
X1 ? 0 e X2 ? 0, implicam que os pares (X1, X2)
viáveis estão no 1º quadrante dos eixos
considerados.
39- Resolução gráfica de modelos de PL
2º Passo Observar que a função-objetivo, ao
se fixar um valor para Z, representa uma reta.
Alterações neste valor de Z gera uma família de
retas paralelas. No exemplo dos brinquedos
considere a reta obtida fazendo Z 2000, isto
é , a reta dada por 8X1 5X2 2000. Percebe-se
que ao se traçar retas paralelas no sentido de
ficar mais afastado da origem (0, 0), o valor de
Z aumenta. De fato pode-se verificar que a
reta paralela, que contém algum ponto da região
viável, no caso o ponto ótimo X (320, 360), e
está mais afastada da origem, corresponde a um
valor ótimo da função objetivo Z 4360.
40- Resolução gráfica de modelos de PL
Representando as condições de não negatividade
X2
X1
41- Resolução gráfica de modelos de PL
Observar que no exemplo dos brinquedos, as
restrições correspondem a semi-planos associados,
respectivamente, às retas suportes dadas por
2X1 1X2 1000 3X1 4X2 2400 X1
X2 700 X1 - X2 350 Xj ? 0,
j 1,2 Notar que cada reta suporte define
dois semi-planos no espaço (X1, X2). Para
identificar qual destes semi-planos é de
interesse no caso, ou seja, contém os pontos que
satisfazem a desigualdade da restrição, basta
testar algum ponto à esquerda ou à direita (acima
ou abaixo) da reta suporte da desigualdade. Um
ponto que torna isto fácil é a origem (0, 0), mas
poderia ser qualquer outro.
Pesquisa Operacional - UNESP / Campus de
Guaratinguetá
42- Resolução gráfica de modelos de PL
X2
1000
700
Restrição da produção total X1X2 700
(redundante)
500
Inviável
Viável
Tempo de produção 3X14X2 2400
X1
500
700
43- Resolução gráfica de modelos de PL
X2
1000
Restrição do plástico 2X1X2 1000
700
Restrição da produção total X1X2 700
(redundante)
500
Inviável
Restrição do mix da produção X1-X2 350
Viável
Tempo de Produção 3X14X2 2400
X1
44- Resolução gráfica de modelos de PL
X2
1000
700
500
Inviável
Viável
X1
500
700
Pontos extremos.
Pontos na fronteira.
Pontos interiores.
Há três tipos de pontos viáveis.
45A busca por uma Solução Ótima
- Resolução gráfica de modelos de PL
Começar com algum valor de lucro arbitrário, Por
exemplo 2000...
X2
1000
Depois aumentar o lucro, se possível...
...e continuar até que seja inviável
700
X (320, 360) com Z 4.360
600
X1
500
46Pontos extremos e Soluções Ótimas
- Resolução gráfica de modelos de PL
Se o problema de Programação Linear tem uma
Solução Ótima, um ponto extremo é Solução Ótima.
47- Resolução gráfica de modelos de PL
Visualização de situações possíveis
X2
48Soluções Ótimas Múltiplas
- Resolução gráfica de modelos de PL
Quando a função objetivo é paralela a alguma
restrição.
Todos os pontos do segmento de reta serão
Soluções Ótimas.
X ?X1 (1 - ?)X2, com 0 ? ? ? 1
49- Resolução gráfica de modelos de PL
X
X1
Múltiplas Soluções Ótimas 1 Segmento de Reta
Ótimo
50- Resolução gráfica de modelos de PL
O conjunto viável é vazio. Há restrições
incompatíveis.
Problema inviável
51- Forma padrão de modelo de PL
- Um modelo de PL com m restrições e n variáveis
está na forma padrão se possuir as
características abaixo - A função-objetivo é de minimização ou
maximização - Todas as restrições estão na forma de igualdade
- Todas as variáveis são não-negativas
- As constantes de cada restrição são não-negativas.
52- Forma padrão de modelo de PL
Modelo na forma padrão Minimizar (ou maximizar)
Z C1 X1 C2 X2 ... Cn Xn
Sujeito a
53- Forma padrão de modelo de PL
Notação matricial para um modelo na forma
padrão Minimizar (ou maximizar) Z C
X Sujeito a Onde A (m
x n) ? matriz de coeficientes tecnológicos
X (n x 1) ? vetor das variáveis de
decisão b (m x 1) ? vetor de
demandas C (1 x n)
? vetor de custos (lucros)
54- Forma padrão de modelo de PL
Redução de um modelo geral para a forma padrão O
Método Simplex exige que o modelo esteja na forma
padrão. Tratando com restrições na forma de
inequações Estas restrições são transformadas
em equações através da introdução de novas
variáveis (não-negativas), chamadas de variáveis
de folga.
55- Forma padrão de modelo de PL
Tratando com variáveis não-positivas Suponha
que num determinado modelo há uma variável X1 ?
0. Basta substituí-la no modelo por uma nova
variável não-negativa X1 ? 0, dada por X1
X1.
56- Forma padrão de modelo de PL
Exemplo Considere o problema de dimensionamento
de equipes de inspeção X1 ? 8 ? X1 X3
8, X3 ? 0 é uma variável de folga. X2 ? 10 ?
X2 X4 10, X4 ? 0 é uma variável de
folga. 5 X1 3 X2 ? 45 ? 5 X1 3 X2 X5
45, X5 ? 0 é uma variável de folga.
57- Forma padrão de modelo de PL
Interpretação das variáveis de folga no
exemplo X3 número de inspetores do nível 1
não utilizados. X4 número de inspetores do
nível 2 não utilizados. X5 número (extra) de
peças inspecionadas por dia, acima da quantidade
mínima (1800) especificada pela
empresa Variáveis de folga fornecem
informações úteis sobre o problema.
58- Forma padrão de modelo de PL
Tratando com variáveis livres (irrestritas em
sinal) Em algumas situações exige-se o uso de
variáveis que podem assumir tanto valores
positivos, nulos, e negativos. Estas variáveis
são chamadas de livres (free) ou irrestritas em
sinal. Exemplo Modelo de Planejamento
Macroeconômico Uma das Variáveis de Decisão é a
Taxa de Inflação que pode assumir qualquer valor
positivo, nulo ou negativo (neste caso é
conhecida como Deflação).
59- Tratando com variáveis livres (irrestritas em
sinal)
Estas variáveis devem ser eliminadas do modelo na
forma padrão. Há, pelo menos, duas maneiras de se
fazer isto 1. Por substituição utilizando
uma das restrições do modelo, já na forma padrão
(igualdade), procura-se expressar a variável
livre como função das demais variáveis (não
negativas) do modelo. A seguir eliminar a
variável livre do modelo substituindo-a pela
função escolhida na etapa anterior. A equação
utilizada para expressar a variável livre como
função das demais variáveis também será eliminada
do modelo. 2. Por transformação Suponha que a
variável livre é S. Basta substituir em todas as
restrições, e na função objetivo, a variável S
por S S S, com S ? 0 e S ? 0 sendo duas
novas variáveis (auxiliares) no modelo.
60- Forma padrão de modelo de PL
Exemplo Completo Obtenha a forma padrão do
modelo abaixo Maximizar Z X1 2X2
3X3 Sujeito a
61- Forma padrão de modelo de PL
- 1. Introduzir variáveis de folga nas restrições
(1) e (2) - X1 X2 X3 X4 7 (1) com X4 ? 0.
- X1 X2 X3 X5 2 (2) com X5 ? 0.
- 2. Multiplicar a restrição (3) por ( 1) para
eliminar b3 5 lt 0 - 3X1 X2 2X3 5 (3)
- 3. Substituir X2? 0 por X2 ? 0 através de X2
X2 - Max Z X1 2 X2 3 X3
- Sujeito a
62- Forma padrão de modelo de PL
4. Eliminar X3 4.1. Substituição ou
4.2. Transformação Max Z -2X1 5X2 -
3X4 21 ou Max Z X1 2X2 3X3 -
3X3 s. a
s. a
Usando De (1) X3 7 X1 X2 X4
ou X3 X3 X3
63- Definições e Teoremas em PL
Ponto central na resolução de modelos de PL é a
solução de sistemas de equações lineares.
Apresenta-se a seguir o Método de Eliminação de
Gauss Jordan. Considere o sistema de equações
abaixo (S1) (
nº variáveis gtgt nº equações)
64- Definições e Teoremas em PL
- Conjunto solução de (S1) é a coleção de todos os
valores de (X1, X2, X3, X4, X5) que satisfazem as
equações (1) e (2) conjuntamente. - Dois sistemas são equivalentes se possuem o mesmo
conjunto solução. - Sistemas equivalentes podem ser obtidos por meio
de operações elementares sobre as linhas do
sistema - 1. Multiplicar (dividir) qualquer equação por
um nº. - 2. Adicionar à qualquer equação uma Combinação
Linear das demais equações.
65 Um sistema (S2) equivalente a (S1) pode ser
obtido multiplicando-se a equação (1) por 1 e
adicionando-se o resultado à equação
(2) (S2) Um sistema (S3) equivalente a (S1)
pode ser obtido multiplicando-se equação (4) por
2 e adicionando-se o resultado à equação
(3) (S3) (S3) é denominado uma forma
canônica do sistema original (S1).
66- Considere uma forma canônica de um sistema de
equações lineares (como (S3) anteriormente
obtido) - Uma variável é dita ser variável básica para uma
dada equação do sistema se ela possuir
coeficiente 1 nesta equação e coeficientes nulos
nas demais equações do sistema. - Exemplo em (S3) X1 e X2 são variáveis básicas
- Variáveis que não satisfazem a condição acima
são chamadas de variáveis não-básicas. - Exemplo em (S3) X3, X4, X5 são variáveis
não-básicas.
67A solução de um sistema na forma canônica, obtida
fazendo-se as variáveis não-básicas iguais a
zero, é chamada de uma solução básica (SB). Nº
máximo de soluções básicas Exemplo
Em (S3) fazendo-se X3 X4 X5 0 ? X1 6 e
X2 2 formam uma solução básica. Nº de
soluções básicas 10 Uma Solução
Básica Viável (SBV) de um sistema é uma solução
básica onde todas as variáveis assumem valores
não-negativos. Exemplo a solução básica do
exemplo anterior é uma SBV.
68Operações de Pivoteamento são as operações
elementares aplicadas à um sistema para
transformar uma dada variável em variável básica.
São usadas pelo método de eliminação de Gauss
Jordan. Deve-se identificar o elemento Pivô que
deve ser transformado em 1 e os demais elementos
da sua coluna que devem ser transformados em
0. Para obter uma forma canônica de um sistema
basta aplicar uma sequência de operações de
pivoteamento (método de Gauss Jordan) de modo se
conseguir uma variável básica associada com cada
equação.
69- Método de Eliminação de Gauss Jordan
Artifício para a realização de operações de
pivoteamento Considere o sistema (S)
abaixo (S)
Achar (S) uma forma canônica de (S) de modo que
X1 seja a variável básica associada com a equação
(1), e X3 seja a variável básica associada com a
equação (2).
70- Método de Eliminação de Gauss Jordan
VB X1 X2 X3 b
Operações Elementares Feitas X1
2 -2 6 4
(1) - Pivô em azul X3 -1
4 -1 2
(2)
X1 1 -11/2 0
-4 (1) (1) - 3(2) X3 0
3/2 1 2
(2) (2)/2 Equação do Pivô
(S) Solução básica (não é viável) X1 4
(Variável básica) X3 2 (Variável básica)
X2 0 (Variável não básica)
71Teorema 1 Dado um modelo já na forma padrão, as
soluções básicas viáveis do sistema de equações,
correspondente às restrições do modelo, estão
associadas a pontos extremos do conjunto de
soluções viáveis do modelo original. Teorema
2 Se um modelo de Programação Linear possui
Solução Ótima então pelo menos um ponto extremo,
do conjunto de soluções viáveis do modelo
original, corresponde a uma Solução Ótima.
72- Procedimento simplista para resolver um modelo de
PL - Gerar todas as possíveis soluções básicas
viáveis. - Determinar qual das soluções básicas viáveis
corresponde ao melhor valor da função-objetivo. - Problemas
- 1. Nº de soluções básicas viáveis pode ser
excessivo. - 2. Modelo pode apresentar solução ilimitada ou
ainda ser inviável. - Observe que problemas de médio porte, que
aparecem na prática, costumam envolver centenas
de variáveis (valor de n) e milhares de
restrições (valor de m).
73- Linhas de Pesquisa
- Algoritmos de pontos interiores e suas
derivações. - Implementações de algoritmos para processamento
em paralelo. - Linguagens de modelagem ajudar no
desenvolvimento e aplicação de modelos de
Pesquisa Operacional. - Exemplos
- AMPL - Modeling Language for Mathematical
Programming - R. Fourer, D. M. Gay, and B. W.
Kerningham, 1993. - GAMS - General Algebraic Modeling System - J.
Bisschop and A. Meeraus, 1982. - Whats best - The ABC of Optimization - S. L.
Savage, 1992.
74- Procedimento iterativo que resolve qualquer
modelo de PL num número finito de iterações.
Indica a ocorrência de múltiplas Soluções Ótimas,
solução ilimitada, e problema inviável. - Etapas de aplicação do Método Simplex
- Considere um modelo de PL que esteja na forma
padrão, e uma Solução Básica Viável inicial. - O Método Simplex consiste basicamente da
aplicação sucessiva de duas etapas - Etapa A Identificação de uma Solução Ótima.
- Etapa B Melhoria de uma Solução Básica Viável.
75- Etapa A Identificação de uma Solução Ótima.
- Verificar se a Solução Básica Viável atual
satisfaz o critério de otimalidade do algoritmo - Se o critério for satisfeito termina a aplicação
do método - Caso contrário deve-se aplicar a etapa B.
- Etapa B Melhoria de uma Solução Básica Viável.
-
- Procurar obter uma Solução Básica Viável melhor
que a atual - Determinação da variável não-básica que deve
entrar - Determinação da variável básica que será
substituída - Obtenção da nova Solução Básica Viável - através
de operações de pivoteamento.
76- Método Simplex - Minimização
Desenvolvimento do Método Simplex Seja um modelo
de PL (minimização) colocado na forma padrão Min
Z C1 X1 C2 X2 ... Cn Xn s.
a
77- Método Simplex - Minimização
Considere o sistema (S) abaixo s.
a Obter, aplicando o método de eliminação de
Gauss-Jordan, o sistema equivalente (S) uma
forma canônica de (S) onde X1 seja a variável
básica referente a equação (1), X2 seja a
variável básica referente a equação (2), ... Xm
seja a variável básica referente a equação
(m), Z seja a variável básica referente a
equação (m1).
78- Método Simplex - Minimização
O sistema (S), que é uma forma canônica de (S),
foi obtido pelas operações de pivoteamento
aplicadas às variáveis X1, X2, ..., Xm, e Z, é
dado por
79- Método Simplex - Minimização
- Em (S)
- são respectivamente os
novos coeficientes das variáveis nas equações de
(S), as novas constantes nestas mesmas equações,
e os novos coeficientes das variáveis na função
objetivo (expressão (I)), obtidos pelas operações
de pivoteamento no sistema (S). - (2) Os coeficientes são denominados
coeficientes de custo relativo (ou reduzido) das
variáveis não-básicas da solução atual. - (3) Há uma Solução Básica Viável explícita em
(S), onde - Variáveis básicas
- Variáveis não-básicas
- Valor da função objetivo
80- Método Simplex - Minimização
Visualização da etapa A do Método Simplex
Teste de otimalidade da Solução Básica Viável
atual. Min Z 4X1 X2 X3 s.
a (S)
81- Método Simplex - Minimização
- Aplicando o método de eliminação de Gauss Jordan
para obter uma forma canônica (S) associando X3
como variável básica para a equação (1), X1 para
a equação (2) e Z para a equação (3), tem-se - (S)
- Solução básica viável atual
- Variáveis básicas X1 1/2, X3 3/2
- Variáveis não-básicas X2 0
- Função objetivo Z Z0 7/2
82- Método Simplex - Minimização
De (I) Z 7/2 13/4 X2 Análise de
otimalidade da Solução Básica Viável (SBV)
atual X2 0 é variável não básica Se X2 se
tornar VB o valor de X2 Se X2 o valor de Z
o que é desejável pois a função objetivo é de
minimização Conclusão A SBV atual não é
ótima e X2 deve se tornar VB numa próxima SBV
melhor que a atual. Assim X2 deve Entrar. Ir a
etapa (B).
83- Método Simplex - Minimização
Etapa (A) do Método Simplex Questão Como
verificar se a Solução Básica Viável explicitada
em (S) é ótima para o modelo em
estudo? Resposta Considere a expressão (I) em
(S), dada por
84- Método Simplex - Minimização
- Analisando (I) há duas possibilidades
- Se não há então a solução atual é
ótima. Não haverá a aplicação da etapa (B). Fim
da aplicação do Método Simplex. - Se há a solução atual não é
ótima. - Uma variável não-básica XS, associada com um
coeficiente de custo relativo negativo, deve
ser transformada em variável básica numa
próxima solução básica viável . Esta nova
Solução Básica Viável terá um valor para a função
objetivo melhor (no caso do modelo de
minimização, menor) que o valor da função
objetivo atual Z0. - Aplicar a etapa (B).
85- Método Simplex - Minimização
Visualização da etapa B do Método Simplex (PL de
Minimização) Seja uma Solução Básica Viável
disponível dada por, X1 5, X2 6, X3 X4 0,
Z 4, Associada ao sistema (S) abaixo (S)
Aplicando a etapa (A) tem-se Como Desta
maneira X3 deve Entrar e seu valor deverá
aumentar. Observe-se que X4 não deve Entrar pois
piorará o valor da F. O.
86- Método Simplex (minimização)
Problema Até quanto aumentar o valor de
X3? Análise como X4 0 (permanece variável
não-básica), tem-se De (1) X1 5 2X3
ou seja se De (2) X2 6
2X3 ou seja se Sabe-se
que X1 ? 0 ? X3 ? 5/2 Sabe-se que X2 ? 0
? X3 ? 6/2 Portanto X3 substituirá X1 no
conjunto das variáveis básicas da nova Solução
Básica Viável dada por X3 5/2, X2 1, X1
X4 0, Z 4 - 4X3 -6
87- Método Simplex - Minimização
Etapa (B) do Método Simplex Hipótese Há um
coeficiente de custo relativo
deve-se achar uma nova Solução Básica Viável onde
XS seja variável básica. Problema Qual das
atuais variáveis básicas será substituída por XS
na próxima Solução Básica Viável?
88- Método Simplex - Minimização
- Solução
- Sejam i,s os coeficientes de XS nas equações
do sistema de restrições, onde i 1, ..., m. - Procurar a equação r do sistema de restrições
onde ocorra - A variável básica da Solução Básica Viável atual
associada com a equação r acima será substituída
por XS.
89- Método Simplex - Minimização
Artifício para aplicar as etapas (A) e (B) do
Método Simplex. Considere o exemplo de
minimização usado na visualização da etapa (B),
já colocado numa forma canônica
90- Método Simplex - Minimização
Operacionalização da aplicação das etapas (A) e
(B)
?
VB X1 X2 X3
X4 b X1 1 0
2 3 5 X2 0
1 2 -2 6
?
(5/2) ? menor quociente X1 sai (6/2)
-Z 0 0 -4
5 -4
? X3 entra
X3 1/2 0 1
3/2 5/2 X2 -1 1
0 -5 1 -Z 2
0 0 11 6
Não há , assim a solução atual é ótima.
Z - 6
91- Método Simplex - Maximização
Modelo de Programação Linear com função objetivo
de maximização. Etapa (A) Solução básica
viável atual será ótima Etapa (B) A variável
XS que entra terá gt 0, para possibilitar
uma melhoria (aumento) no valor da função
objetivo associado com a Solução Básica Viável
atual. Importante as operações de pivoteamento
não se alteram.
92- Método Simplex (maximização)
Exemplo de modelo de maximização resolvido pelo
Método Simplex. Modelo original
? Modelo na forma padrão
Max Z 3X1 5X2 ?
Max Z 3X1 5X2 s. a
s. a
93VB X1 X2 X3
X4 X5 b X3
1 0 1
0 0 4 X4 0
1 0 1
0 6 X5 3
2 0 0
1 18 -Z 3 5
0 0 0 0
Entra X2, Sai X4
X3 1 0
1 0 0 4 X2
0 1 0
1 0 6 X5
3 0 0
-2 1 6 -Z 3
0 0 -5
0 -30
Entra X1, Sai X5
X3 0 0
1 2/3 -1/3 2 X2
0 1 0
1 0 6 X1 1
0 0 -2/3
1/3 2 -Z 0
0 0 -3
-1 -36
Solução Ótima X1 2, X2 6, X3 2, X4
X5 0, Z 36
94Comentários Gerais Considere um modelo de
Programação Linear na forma padrão que seja de
minimização. (1) Ocorrência de Empate na
Entrada Escolher para entrar a variável
não-básica Xs associada ao menor valor de
coeficiente de custo relativo lt 0.
(Regra de
entrada de Dantzig)
95(2) Identificação de Solução Ilimitada Pode
ser feita a identificação de solução ilimitada
durante a aplicação da etapa (B). Se houver
alguma variável não-básica Xs para entrar que
tenha coeficientes ? 0, em todas as
equações i ( 1,..., m) do sistema de restrições.
96Exemplo de Modelo com Solução Ilimitada Seja a
Solução Básica Viável abaixo, associada a forma
canônica (S) X1 5, X2 6, X3 X4 0, Z
4 (S)
Observar que 4 lt 0 ? X3 deve entrar.
Quem vai sair? De (1) X1 5 2X3
quando X3 ?
? X1? , X2? e Z? De (2) X2 6 2X3 Assim o
modelo apresenta solução ilimitada com Z ? ?.
97(3) Interpretação geométrica do Método
Simplex Em cada iteração do Método Simplex
(Etapa (A) Etapa (B)) há um deslocamento de uma
Solução Básica Viável para outra que apresenta um
valor para a função objetivo melhor. Em
termos da resolução gráfica numa iteração há a
locomoção de um ponto extremo para outro ponto
extremo adjacente na região viável do modelo em
questão.
98 Exemplo Modelo original Min Z 3X1
5X2 s. a
99 Exemplo Modelo original
? Modelo na forma padrão Min Z 3X1
5X2 ? Min Z 3X1
5X2
s. a
s. a
100Resolução do exemplo para interpretação
geométrica do Método Simplex
VB X1 X2 X3
X4 X5 b X3 1
0 1 0 0
4 X4 0 1
0 1 0 6
X5 3 2
0 0 1 18 -Z
-3 -5 0 0
0 0
Quadro 1 Entra X2 Sai X4
Quadro 2 Entra X1 Sai X5
X3 1 0 1
0 0 4 X2 0
1 0 1
0 6 X5 3 0
0 -2 1
6 -Z -3 0 0
5 0 30
Quadro 3 (ótimo)
X3 0 0 1
2/3 -1/3 2 X2 0
1 0 1
0 6 X1 1
0 0 -2/3
1/3 2 -Z 0 0
0 3 1 36
Solução básica viável ótima X1 2, X2 6,
X3 2, X4 X5 0, Z 36
101Visualização das iterações
Quadro 3 X4 X5 0, Z -36, X1 2,
X2 6, X3 2.
Quadro 2 X1 X4 0, Z -30, X2 6, X3 4,
X5 6.
Quadro 1 X1 X2 0, Z 0, X3 4, X4 6, X5
18.
X1
102(4) Identificação de Soluções Ótimas Múltiplas
Considere que há uma Solução Básica Viável
ótima para um modelo de minimização, ou seja,
tem-se Z Z e todos ? 0 para toda
variável não-básica X s . A identificação da
ocorrência de Soluções Ótimas múltiplas é feita,
no Quadro Ótimo, quando há alguma variável
não-básica Xj com 0. Assim ao se
escolher Xj para entrar no conjunto das variáveis
básicas, não se alterará o valor ótimo Z da
função objetivo. Desta maneira, pode-se obter
uma nova Solução Básica Viável ótima na qual Xj
será uma variável básica. Fica caracterizada
assim a existência de múltiplas Soluções Ótimas.
103Exemplo Modelo original
? Modelo na forma padrão
Min Z X1 2X2 ?
Min Z X1 2X2 S. a
S. a
A seguir apresenta-se A resolução gráfica do
modelo original. A resolução do modelo na forma
padrão pelo Método Simplex. Uma visualização
das iterações desenvolvidas pelo Método Simplex
sobre a região viável do modelo original.
104Resolução gráfica do exemplo com múltiplas
Soluções Ótimas
14
XB
Z - 9
Z - 6
(3,0)
X1
Observação XA , XB são soluções básicas
viáveis ótimas, Z 9 é o valor ótimo da
função objetivo, a expressão geral da Solução
Ótima é X ? XA (1 ?) XB com 0 ? ? ? 1.
105Resolução do modelo na forma padrão
VB X1 X2 X3
X4 X5 b X3 1
0 1 0
0 3 X4 0
1 0 1
0 4 X5
1 2 0
0 1 9 -Z -1
-2 0 0
0 0
Quadro 1 Entra X2 e Sai X4
X3 1 0 1
0 0 3 X2
0 1 0
1 0 4 X5
1 0 0
-2 1 1 -Z -1
0 0 2
0 8
Quadro 2 Entra X1 e Sai X5
X3 0 0 1
2 -1 2
X2 0 1
0 1 0
4 X1 1 2
0 -2 1
1 -Z 0
0 0 0
1 9
Quadro 3 Ótimo (XA)
Solução ótima geral X ? XA (1 - ?) XB,
com 0 ? ? ? 1, e Z - 9
X4 0 0 1/2
1 -1/2 1
X2 0 1
-1/2 0 1/2 3
X1 1 0
1 0 0
3 -Z 0
0 0 0
1 9
Quadro 4 Ótimo (XB)
106Visualização das iterações do Método Simplex
Quadro 3 X4 X5 0, X1 1, X2 4, X3
2, Z -9
X ? XA (1 -?) XB, onde 0 ? ? ? 1
X2
XA
Quadro 2 X1 X4 0, X2 4, X3 3, X5 1, Z
-8
Quadro 4 X3 X5 0, X1 3, X2 3, X4
1, Z -9
É o caso, em termos de resolução gráfica, de um
segmento de reta ótimo.
X
XB
(0,0)
X1
Quadro 1 X1 X2 0, X3 3, X4 4, X5 9,
Z 0
107 Observação importante Se no Quadro 3, na
coluna da variável X4 não houvesse algum
coeficiente , não se poderia
efetuar o pivoteamento Então este é o caso, em
termos da resolução gráfica, que a Solução Ótima
é uma semi-reta, da forma X ?XA com ? ? 1 .
108(No Transcript)
109- Procedimentos de inicialização para o Método
Simplex
Considere um modelo de Programação Linear que
esteja na forma padrão Se todas as restrições do
modelo original (ainda não colocado na forma
padrão) forem desigualdades do tipo ? ,
tem-se uma forma canônica inicial (ou seja, uma
Solução Básica Viável inicial) evidente, onde as
variáveis básicas serão as variáveis de folga
introduzidas para a redução das desigualdades
para equações equivalentes. Se alguma restrição
do modelo original for uma igualdade , ou
ainda desigualdade do tipo ? , a condição
acima não ocorrerá e não haverá uma Solução
Básica Viável inicial explícita. Quando não há
uma Solução Básica Viável inicial deve-se
utilizar algum procedimento de inicialização para
o Método Simplex.
110- Procedimentos de inicialização para o Método
Simplex
(1) Método das Duas Fases. Fase 1 (a)
Construção e resolução de um modelo artificial
(b) Análise da Solução Ótima do modelo
artificial Fase 2 Resolução do modelo
original utilizando como solução inicial a
Solução Ótima do modelo artificial. (2) Método
do Big M . Introduz variáveis artificiais,
nas equações do sistema de restrições (exatamente
como o método das duas fases), e na função
objetivo original com coeficientes penalizantes
adequados, isto é, M gtgt0 para minimização e M
ltlt0 para maximização. A seguir apresenta-se as
bases do Método das Duas Fases para inicialização
do Método Simplex.
111- Procedimentos de inicialização para o Método
Simplex
Desenvolvimento do Método das Duas
Fases Considere que o modelo de Programação
Linear na forma padrão abaixo não apresenta uma
Solução Básica Viável inicial, isto é, não há uma
forma canônica evidente. Modelo original (na
forma padrão) Min Z C1 X1 C2 X2 ... Cn
Xn s.a
112- Procedimentos de inicialização para o Método
Simplex
Fase 1 Construção e resolução de um modelo
artificial O modelo artificial, a partir das
equações do sistema de restrições do modelo
original será com Y1, Y2, ..., Ym sendo as
variáveis artificiais não negativas. Min W Y1
Y2 .... Ym s. a
A F. O. artificial sempre será de Minimização,
qualquer que seja o Modelo Original.
113- Procedimentos de inicialização para o Método
Simplex
Observe que o modelo artificial está na forma
padrão com Solução Básica Viável inicial X1
X2 ... Xn 0 (variáveis
não-básicas) Y1 b1, Y2 b2, ..., Ym bm
(variáveis básicas) W b1 b2 ... bm.
Analisando o valor ótimo da função objetivo W
do modelo artificial pode-se concluir Caso 1
Se W ? 0 ? há pelo menos uma variável básica
artificial Yj com valor ? 0. Nesta situação
conclui-se que o sistema de restrições do modelo
original depende destas variáveis artificiais não
nulas para ser satisfeito. Assim o Modelo
Original é inviável. Não há a fase 2.
114- Procedimentos de inicialização para o Método
Simplex
Caso 2 se W 0 ? Y1 Y2 ... Ym
0. Conclui-se que o sistema de restrições do
Modelo Original pode ser satisfeito apenas com as
variáveis Xi. Desta forma o Modelo Original é
viável. Subcaso 2.1 se todas as variáveis
artificiais são não-básicas na Solução Ótima do
modelo artificial. Basta eliminar todas as
variáveis artificiais, substituir a função
objetivo artificial pela original, e iniciar a
fase 2.
115- Procedimentos de inicialização para o Método
Simplex
Subcaso 2.2 se alguma variável artificial
permanece como variável básica na Solução Ótima
do modelo artificial. Observe que estas variáveis
devem ser nulas, pois W 0. Deve-se, através
de operações de pivoteamento, substituir estas
variáveis artificiais básicas por variáveis
originais, eliminar todas as variáveis
artificiais não básicas, substituir a função
objetivo artificial pela original, e iniciar a
fase 2. Se não é possível substituir alguma
variável artificial básica por uma variável
original (pela inexistência de elemento pivot),
basta eliminar a equação associada com a variável
artificial em questão (a equação é uma combinação
linear das demais equações do modelo original).
116Exemplo de aplicação do Método das Duas Fases
Visualização das iterações Modelo
Min Z -3X1 - 5X2 s. a
117- Procedimentos de inicialização para o Método
Simplex
Exemplo de aplicação do Método das Duas Fases
Modelo ?
Modelo na forma padrão Min Z
-3X1 - 5X2 ? Min Z
-3X1 - 5X2 s. a
s. a
118- Procedimentos de inicialização para o Método
Simplex
Fase 1 construção do Modelo Artificial Min W
Y1 s. a X1 X3
4 X2 X4
6 3X1 2X2 X5 Y1
18 Xi 0, i 1,5 Yi 0 Solução básica
viável inicial para o Modelo Artificial X1
X2 X5 0 (variáveis não-básicas) X3 4, X4
6, Y1 18 (variáveis básicas) W 18
119Exemplo de aplicação do Método das Duas Fases
Fase 1 Resolução do Modelo Artificial
VB X1 X2 X3
X4 X5 Y1 b X3
1 0 1 0
0 0 4
Adequar a X4 0 1
0 1 0
0 6 função Y1 3
2 0 0
-1 1 18 objetivo
-W 0 0 0
0 0 1 0
Transformar em Zeros os coeficientes das
variáveis artificiais na F. O.
X3 1 0 1
0 0 0 4
X4 0