Sie sind auf Seite 1von 120

1

Pesquisa Operacional

Livro: Introdução à Pesquisa Operacional


Capítulo 2 - Programação Linear

Marcos Antonio Estremote – estremot@gmail.com


FIRB - 2016
2
Sumário

• 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
Programação Linear
3

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.
Modelagem em Programação Linear
4

Razões para o uso da Programação Linear:

1. Grande variedade de situações podem ser aproximadas por


modelos lineares.

2. Existência de técnicas (algoritmos) eficientes para a solução


de modelos lineares.

3. Possibilidade de realização de análise de sensibilidade nos


dados do modelo.

4. Estágio de desenvolvimento da tecnologia computacional.


Modelagem em Programação Linear
5

Passos básicos na obtenção de modelos de PL:

1. Identificar as variáveis de decisão, representá-las em simbologia


algébrica.

2. Identificar as restrições do problema, expressá-las como


equações ou inequações lineares em termos das variáveis de
decisão.

3. 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.
Modelagem em Programação Linear
6

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
Modelagem em Programação Linear
7

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
Modelo 200 kg por dia. A
A B C disponibilidade diária de mão-
de-obra é 150 horas. Formule
Mão-de-obra 7 3 6
(horas por unidade) um modelo de Programação
Material
Linear para determinar a
4 4 5
(kg por unidade) produção diária de cada um dos
Lucro 4 2 3 modelos de modo a maximizar
($ por unidade) o lucro total da companhia.
Modelagem em Programação Linear
8

Formulação do modelo
1. 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

2. Identificação das restrições:


(Limitação de mão-de-obra) 7XA + 3XB + 6XC  150
(Limitação de material) 4XA + 4XB +5XC  200
(Não-negatividade) XA  0, XB 0, XC  0.

3. Identificação do objetivo: maximização do lucro total


Lucro Total = L = 4XA + 2XB +3XC
Max L = 4XA + 2XB +3XC
Modelagem em Programação Linear
9

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
Modelagem em Programação Linear
10

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 TV Rádio Revistas
horário horário
normal nobre

Custo 40.000 75.000 30.000 15.000


Clientes 400.000 900.000 500.000 200.000
Atingidos
Mulheres 300.000 400.000 200.000 100.000
Atingidas

0bs: valores válidos para cada veiculação da propaganda.


Modelagem em Programação Linear
11

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.
Modelagem em Programação Linear
12

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
Modelagem em Programação Linear
13

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.
Exercícios
14

1) Um alfaiate tem, disponíveis, os seguintes tecidos: 16 metros de


algodão, 11 metros de seda e 15 metros de lã. Para um terno são
necessários 2 metros de algodão, 1 metro de seda e 1 metro de lã. Para
um vestido, são necessários 1 metro de algodão, 2 metros de seda e 3
metros de lã. Se um terno é vendido por $300,00 e um vestido por
$500,00, quantas peças de cada tipo o alfaiate deve fazer, de modo a
maximizar o seu lucro? Encontre a solução ótima do problema, e
interprete sua resposta.
2) Uma companhia de aluguel de caminhões possuía-os de dois tipos: o
tipo A com 2 metros cúbicos de espaço refrigerado e 4 metros cúbicos
de espaço não refrigerado e o tipo B com 3 metros cúbicos refrigerados
e 3 não refrigerados. Uma fábrica precisou transportar 90 metros
cúbicos de produto refrigerado e 120 metros cúbicos de produto não
refrigerado. Quantos caminhões de cada tipo ela deve alugar, de modo a
minimizar o custo, se o aluguel do caminhão A era $0,30 por km e o do
B, $0,40 por km. Elabore o modelo de programação linear.
Exercícios
15

Uma confeitaria produz dois tipos de bolos de soverte: chocolate e


creme. Cada lote de bolo de chocolate é vendido com um lucro de 3
u.m e os lotes de bolo de creme com um lucro de 1 u.m . Contratos
com várias lojas impõem que sejam produzidos no mínimo 10 lotes
de bolos de chocolate por dia e que o total de lotes fabricados nunca
seja menos que 20. O mercado só é capaz de consumir até 40 lotes de
bolos de creme e 60 de chocolate. As máquinas de preparação do
sorvete disponibilizam 180 horas de operação, sendo que cada lote de
bolos de chocolate consomem 2 horas de trabalho e cada lote de
bolos de creme 3 horas. Formule apenas o modelo do problema.
Exercícios
16
A Fashion Things Ltda. É uma pequena empresa fabricante de
diversos tipos de acessórios femininos, entre eles bolsas de modelos
diferentes. A empresa foi convencida, pelo seu distribuidor, de que
existe mercado tanto para bolsas do modelo padrão (preço médio)
quanto para as bolsas do modelo luxo (preço alto). A confiança do
distribuidor é tão acentuada que ele garante que ele ir· comprar todas
as bolsas que forem produzidas nos próximos três meses. Uma
análise detalhada dos requisitos de fabricação resultaram na
especificação da tabela abaixo, a qual apresenta o tempo despendido
(em horas) para a realização das quatro operações que constituem o
processo produtivo, assim como o lucro estimado por tipo de bolsa:
Exercícios
17
A indústria Alumilândia S/A iniciou suas operações em janeiro de 2001 e já vem
conquistando espaço no mercado de laminados brasileiro, tendo contratos fechados
de fornecimento para todos os 3 tipos diferentes de lâminas de alumínio que
fabrica: espessuras fina, média ou grossa. Toda a produção da companhia é
realizada em duas fábricas, uma localizada em São Paulo e a outra no Rio de
Janeiro. Segundo os contratos fechados, a empresa precisa entregar 16 toneladas de
lâminas finas, 6 toneladas de lâminas médias e 28 toneladas de Lâminas grossas.
Devido à qualidade dos produtos da Alumilândia S/A., há uma demanda extra para
cada tipo de lâminas. A fábrica de São Paulo tem um custo de produção diária de
R$ 100.000,00 para cada capacidade produtiva de 8 toneladas de lâminas finas, 1
tonelada de lâminas médias e 2 tonelada de Lâminas grossas por dia. O custo de
produção diária da fábrica do Rio de Janeiro é de R$ 200.000,00 para cada
produção de 2 toneladas de lâminas finas, 1 tonelada de lâminas médias e 7
tonelada de Lâminas grossas por dia. Quantos dias cada uma das fábricas dever·
operar para atender aos pedidos ao menor custo possível? Elabore o modelo.
Exercícios
18
Um vendedor de frutas pode transportar 800 caixas de frutas para sua região de
vendas. Ele já transporta 200 caixas de laranjas a 20 u.m de lucro por caixa por
mês. Ele necessita transportar pelo menos 100 caixas de pêssegos a 10 u.m. de
lucro por caixa, e no máximo 200 caixas de tangerinas a 30 u.m. de lucro por caixa.
De que forma dever· ele carregar o caminhão para obter o lucro máximo?
Até a Próxima Aula!!!!
19

Aula 3
Modelagem em Programação Linear
20

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.
Modelagem em Programação Linear
21

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)
Modelagem em Programação Linear
22

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.
Modelagem em Programação Linear
23

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.
Modelagem em Programação Linear
24

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 * (25*0,02X1 + 15*0,05X2)]


Min C = 40X1 + 36X2
Modelagem em Programação Linear
25

Restrições:

1. 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.
Resolução gráfica de modelos de PL
26

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*.
Resolução gráfica de modelos de PL
27 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.
Resolução gráfica de modelos de PL
28

A Gerência está procurando um


programa de produção que aumente
o lucro da Companhia.
Resolução gráfica de modelos de PL
29

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


Resolução gráfica de modelos de PL
30

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)
Resolução gráfica de modelos de PL
31

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.
Resolução gráfica de modelos de PL
32

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.
Resolução gráfica de modelos de PL
33

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.
Resolução gráfica de modelos de PL
34

Representando as condições de não negatividade

X2

X1
Resolução gráfica de modelos de PL
35

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á
Resolução gráfica de modelos de PL
36

X2

1000 Restrição do plástico


2X1+X2  1000
700 Restrição da produção total
X1+X2  700 (redundante)
500

Inviável
Tempo de Viável
produção
3X1+4X2  2400 X1
500 700
Resolução gráfica de modelos de PL
37

X2
1000 Restrição do plástico
2X1+X2 1000
700 Restrição da produção total:
X1+X2 700 (redundante)
500
Inviável
Restrição do mix da produção:
X1-X2  350
Tempo de Produção Viável
3X1+4X2  2400
X1
Resolução gráfica de modelos de PL
38

X2
1000

700

500
Inviável

Viável

X1
500 700
Pontos interiores. Pontos na fronteira. Pontos extremos.
Há três tipos de pontos viáveis.
Resolução gráfica de modelos de PL
39

A busca por uma Solução Ótima:


X2 Começar com algum valor de lucro arbitrário,
1000 Por exemplo $2000...
Depois aumentar o lucro, se possível...
...e continuar até que seja inviável

X* = (320, 360)
700

600 com Z* = 4.360

X1

500
Resolução gráfica de modelos de PL
40

Pontos extremos e Soluções Ótimas


Se o problema de Programação Linear tem uma Solução
Ótima, um ponto extremo é Solução Ótima.
Resolução gráfica de modelos de PL
41

Visualização de situações possíveis

X2 X2
Z
Z*

Solução X1 X1
Solução
única ilimitada
Resolução gráfica de modelos de PL
42

Soluções Ótimas Múltiplas


Quando a função objetivo é paralela a alguma restrição.

Todos os pontos do segmento de


reta serão Soluções Ótimas.
X*1 X* = X*1 + (1 - )X*2, com 0    1

X*2
Resolução gráfica de modelos de PL
43

X2
X2

Z
* X*

X*

X1 Z* X1
Múltiplas Soluções
Múltiplas
Ótimas 1 –
Soluções Ótimas 2
Segmento de Reta
Semi-reta Ótima
Ótimo
Resolução gráfica de modelos de PL
44

X2

O conjunto
viável é vazio. Problema
Há restrições inviável
incompatíveis.

X1
45
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:

1. A função-objetivo é de minimização ou maximização;

2. Todas as restrições estão na forma de igualdade;

3. Todas as variáveis são não-negativas;

4. As constantes de cada restrição são não-negativas.


46
Forma padrão de modelo de PL
Modelo na forma padrão:

Minimizar (ou maximizar) Z = C1 X1 + C2 X2 + ... + Cn Xn

A11 X1 + A12 X2 + ... + A1n Xn = b1


A21 X1 + A22 X2 + ... + A2n Xn = b2

 ... ... ... ...

Sujeito a:  ... ... ... ...
Am1 X1 + Am2 X2 + ... + Amn Xn = bm

X1  0, X2  0, ..., Xn  0
b1  0, b2  0, ..., bm  0.

47
Forma padrão de modelo de PL
Notação matricial para um modelo na forma padrão:

Minimizar (ou maximizar) Z = C X


AX  b
Sujeito a: 
X  0
b  0.

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)


48
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”.
49
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.
50
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.
51
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.


52
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).
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.
53
54
Forma padrão de modelo de PL

Exemplo Completo

Obtenha a forma padrão do modelo abaixo:

Maximizar Z = X1 – 2X2 + 3X3

 X1 + X2 + X3  7 1
 X1  X2 + X3  2 2

Sujeito a: 
3X1  X2  2X3 =  5 3
X1  0, X2  0, X3 livre
55
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 < 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
 X1  X2' + X3 + X4 =7 1' '
Sujeito a: 
 X1  X2' + X3  X5 = 2 2' '
 3X1  X2' + 2X3 3' '
 =5
56
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’

 X1  X2'+ X3'  X3' '  X4 =7


  2X2'  X4 + X5 = 5
s. a:  s. a:  X1 + X2'+ X3'  X3' '  X5 = 2
5X1  X2' + 2X4 =9 
X1, X2' , X4, X5  0  3X1  X2'+2X3'  2X3' ' =5
 X1, X2' , X3' , X3' ' , X4, X5  0

Usando
De (1’’): X3 = 7 – X1 + X2’ – X4 ou X3 = X3’ – X3’’
57
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)
X1  2X 2  X3  4X 4  2X5  2 1

X1  X 2  X3  3X 4  X5  4 2

(nº variáveis >> nº equações)


58
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.
59
Forma Canônica
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) X1  2X 2  X3  4X 4  2X5  2 (3)

 X2  2X3 + X4  3X5  2 (4)
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) X1  3X3  2X4  4X5 = 6 (5)

 X2  2X3 + X4  3X5 = 2 (6)
(S3) é denominado uma forma canônica do sistema original (S1).
60
Forma Canônica

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.
61
Solução Básica
A 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 =  N 
M
 
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 =  5  = 10
 
 2

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.


62
Pivoteamento
Operaçõ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.
Método de Eliminação de Gauss Jordan
63

Artifício para a realização de operações de pivoteamento:

Considere o sistema (S) abaixo:

(S) 2X1  2X 2 + 6X3 = 4 (1)



 X1 + 4X2  X3 = 2 (2)

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).
Método de Eliminação de Gauss Jordan
64

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 -1 3 2 (1’) = (1)/2 - Equação do Pivô

X3 0 3 2 4 (2’) = (2) + (1’) – Pivô em Azul

X1 1 -11/2 0 -4 (1’’) = (1’) - 3*(2’’)


X3 0 3/2 1 2 (2’’) = (2’)/2 – Equação do Pivô

(S’) X1  11 / 2X 2 =4



 3/2 X2 + X3 = 2
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)
65
Teoremas em PL
Teorema 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.
66
Comentários Gerais
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).
67
Comentários Gerais
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.

• What’s best - The ABC of Optimization - S. L. Savage, 1992.


68
Método Simplex
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.


69
Método Simplex
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.
70
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

A11 X1 + A12 X2 + ... + A1n Xn = b1


A21 X1 + A22 X2 + ... + A2n Xn = b2

 ... ... ... ...
s. a: 
 ... ... ... ...
Am1 X1 + Am2 X2 + ... + Amn Xn = bm

X1  0, X2  0, ... , Xn  0
b1  0, b2  0, ... , bm  0

71
Método Simplex - Minimização
Considere o sistema (S) abaixo:
 A11 X1 + A12 X2 + ... + A1n Xn = b1 (1)
 A21 X1 + A22 X2 + ... + A2n Xn = b2 (2)


 ... ... ... ... ...
s. a: 
 ... ... ... ... ...
 Am1 X1 + Am2 X2 + ... + Amn Xn = bm (m)


- Z + C1 X1 + C2 X2 + ... + Cn Xn = 0 (m + 1)
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 (m+1).
72
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:

 X1 + A1, m + 1 Xm + 1 + ... + A1, n Xn = b1



 X2 + A2, m + 1 Xm + 1 + ... + A2, n Xn = b2

 .......
 Xm + Am, m + 1 Xm + 1 + ... + Am, n Xn = bm


 Z + C m + 1 Xm + 1 + .... + C n Xn =  Zo (I)
73
Método Simplex - Minimização
Em (S’) :
(1) Ai , j , bj, C j 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 C j 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: X1  b1, X2  b 2, ... , Xm  bm;


• Variáveis não-básicas: Xm  1  Xm  2  ...  Xn  0
• Valor da função objetivo: Zo  C1 b1  C2 b 2  ...  Cnbn
74
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

2X1  X2  2X3  4
s. a: 
3X1  3X2  X3  3
Xi  0, i  1,3

 2X1 + X2 + 2X3 = 4 (1)



(S):  3X1 + 3X2 + X3 = 3 (2)
 Z  4X1  X 2  X3  0
 (3)
75
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:
  3/4 X2 + X3 = 3/2
(S’): 
 X1 + 5/4 X2 = 1/2
 Z  13/4 X2 =  7/2
 (I)

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
76
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).
77
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:

Z + Cm  1 X m + 1 + .... + Cn Xn =  Zo,
Onde  Zo = C1 b1 + C2 b2 + ... + Cm bm.
Método Simplex - Minimização
78

Analisando (I) há duas possibilidades:

• Se não há Cj  0  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á Cj  0  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).
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:
 X1 + 2X3 + 3X4 = 5 (1)
(S): 
 X2 + 2X3  2X4 = 6 (2)
 Z  4X3 + 5X4 =  4
 (3)
Aplicando a etapa (A) tem-se:

Como C 3 = - 4 < 0  se o valor de X3  o valor de Z  .

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.
79
80
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 X 3   X1 
De (2): X2 = 6 – 2X3 ou seja se X 3   X2 
Sabe-se que X1  0  X3  5/2 

  X3 = Min 5/2, 6/2 = 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
81
Método Simplex - Minimização
Etapa (B) do Método Simplex

Hipótese:

Há um coeficiente de custo relativo CS < 0  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?
82
Método Simplex - Minimização

Solução:

• Sejam A 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:

br Min  bi 
=  
A r , s Ai, s > 0  Ai, s 
• 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.
83
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:

 X1 + 2X3 + 3X4 = 5 (1)



 X2 + 2X3  2X4 = 6 (2)
 Z  4X3 + 5X4 =  4
 (3)
84
Método Simplex - Minimização
Operacionalização da aplicação das etapas (A) e (B):

VB X1 X2 X3 X4 b

(5/2)  menor quociente X1 sai


X1 1 0 2 3 5
X2 0 1 2 -2 6 (6/2)

-Z 0 0 -4 5 -4
 X3 entra
 X 1*   0 
X3 1/2 0 1 3/2 5/2    
X2 -1 1 0 -5 1  X 2 *  1 
X*    = 
X 3* 5/2
   
-Z 2 0 0 11 6
 X 4 *  0 
   
Não há Cj < 0 , assim a
solução atual é ótima.
Z* = - 6
85
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   Cj > 0.

Etapa (B):
A variável XS que entra terá C S > 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.


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

X1  4 X1 + X3 = 4
s. a: 
 X2  6 s. a: 
 X2 + X4 = 6
 
3X1 + 2X2  18 3X1 + 2X2 + X5 = 18
X1  0, X2  0 Xi  0, i = 1,5

86
87
Método Simplex
VB X1 X2 X3 X4 X5 b

X3 1 0 1 0 0 4
Entra X2, Sai X4
X4 0 1 0 1 0 6
X5 3 2 0 0 1 18

-Z 3 5 0 0 0 0

X3 1 0 1 0 0 4
X2 0 1 0 1 0 6 Entra X1, Sai X5
X5 3 0 0 -2 1 6

-Z 3 0 0 -5 0 -30

X3* 0 0 1 2/3 -1/3 2


X2* 0 1 0 1 0 6
Solução Ótima
X1* 1 0 0 -2/3 1/3 2
X*1 = 2, X*2 = 6,
X*3 = 2, X*4 = X*5 = 0,
-Z* 0 0 0 -3 -1 -36 Z* = 36
88
Método Simplex
Comentá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 C S < 0.
(Regra de entrada de Dantzig)
89
Método Simplex

(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 A i , s  0, em todas as equações i (= 1,..., m) do
sistema de restrições.
90
Método Simplex
Exemplo 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
 X1  2X3 + 3X4 = 5 (1)

(S):  X2  2X3  2X4 = 6 (2)
 Z  4X3 + 5X4 =  4
 (3)

Observar que C 3 = – 4 < 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  – .
91
Método Simplex

(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.
92
Método Simplex

Exemplo:
Modelo original
Min Z = –3X1 – 5X2

X1 4
s. a:  X2  6
 X2

3X1 + 2X2  18

Xi  0, i = 1, 2 Região
viável

X1
93
Método Simplex
Exemplo:
Modelo original  Modelo na forma padrão
Min Z = –3X1 – 5X2  Min Z = –3X1 – 5X2

X1 4 X1 + X3 = 4
 X2  6 
s. a:  s. a:  X2 + X4 = 6
 
3X1 + 2X2  18 3X1 + 2X2 + X5 = 18
Xi  0, i = 1, 2 Xi  0, i = 1, 5

X2

Região
viável

X1
94
Método Simplex
Resolução do exemplo para interpretação geométrica do Método Simplex:
VB X1 X2 X3 X4 X5 b
Quadro 1: Entra X2 Sai X4
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
X3 1 0 1 0 0 4 Quadro 2: Entra X1 Sai X5
X2 0 1 0 1 0 6
X5 3 0 0 -2 1 6
-Z -3 0 0 5 0 30

X3* 0 0 1 2/3 -1/3 2 Quadro 3 (ótimo)


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
95
Método Simplex
Visualização das iterações
Quadro 3:
X4 *= X5* = 0,
Z* = -36, X1* = 2,
X2* = 6, X3* = 2.
X2
Quadro 2:
X1 = X4 = 0,
Z = -30,
X2 = 6, X3 = 4, X5 = 6.
Região
viável

Quadro 1:
X1 = X2 = 0, X1
Z = 0, X3 = 4, X4 = 6,
X5 = 18.
96
Método Simplex
(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 C S  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 C j = 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.
97
Método Simplex
Exemplo:
Modelo original  Modelo na forma padrão
Min Z = – X1 – 2X2  Min Z = – X1 – 2X2

 X1 3 X1 + X3 =3

S. a: 
 X2  4 S. a:  X2 + X4 =4
 
X1 + 2X2  9 X1 + 2X2 + X5 = 9
 
Xi  0, i = 1, 5
Xi  0, i = 1, 2

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.
98
Método Simplex
Resolução gráfica do exemplo com múltiplas Soluções Ótimas
X2
1 = XA*
4
(0,4) 3
= XB*
3
X*

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.
99
Método Simplex
Resoluçã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 Quadro 1: Entra X2 e Sai X4
X5 1 2 0 0 1 9
-Z -1 -2 0 0 0 0
X3 1 0 1 0 0 3
Quadro 2: Entra X1 e Sai X5
X2 0 1 0 1 0 4
X5 1 0 0 -2 1 1
-Z -1 0 0 2 0 8
X3* 0 0 1 2 -1 2
Quadro 3: Ótimo (XA*)
X2* 0 1 0 1 0 4
X1* 1 2 0 -2 1 1
-Z* 0 0 0 0 1 9 Solução ótima geral:
X4* 0 0 1/2 1 -1/2 1
X2* 0 1 -1/2 0 1/2 3
Quadro 4 X* =  XA* + (1 - ) XB*,
Ótimo com 0    1, e Z* = - 9
X1* 1 0 1 0 0 3
(XB*)
-Z* 0 0 0 0 1 9
100
Método Simplex
Visualização das iterações do Método Simplex
Quadro 3:
X4* = X5* = 0,
X1* = 1, X2* = 4, X* =  XA* + (1 -) XB*,
onde 0    1
X2 X3* = 2, Z* = -9
XA Quadro 4:
Quadro 2:
X3* = X5* = 0,
X1 = X4 = 0, É o caso, em termos
X1* = 3, X2* = 3,
X2 = 4, X3 = 3, X* X4* = 1, Z* = -9 de resolução gráfica,
X5 = 1, Z = -8 XB de um segmento de
reta ótimo.
(0,0)

Quadro 1: X1

X1 = X2= 0, X3 = 3,
X4 = 4, X5 = 9,
Z=0
101
Método Simplex

Observação importante:
Se no Quadro 3, na coluna da variável X4 não houvesse algum
coeficiente Ai, 4 > 0 , 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 .
Procedimentos de inicialização para o Método Simplex
103

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.
Procedimentos de inicialização para o Método Simplex

104

(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 >>0 para minimização e –M <<0
para maximização.
A seguir apresenta-se as bases do Método das Duas Fases para inicialização do
Método Simplex.
Procedimentos de inicialização para o Método Simplex
105

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

A11X1 + .... + A1nXn = b1


........................................


s.a: ........................................
Am1 X1 + ... + Amn Xn = bm


Xi  0, i = 1, n
Procedimentos de inicialização para o Método Simplex
106

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

A11X1 + ... + A1nXn + Y1 = b1


s. a: A21X1 + ... + A2nXn + Y2 = b2

........................................................................
Am1 X1 + ... + Amn Xn + Ym = bm

 Xi  0, i = 1, n ; Y j  0, j = 1, m
A F. O. artificial sempre será de Minimização, qualquer que seja o Modelo Original.
Procedimentos de inicialização para o Método Simplex
107

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.
Procedimentos de inicialização para o Método Simplex
108

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.
Procedimentos de inicialização para o Método Simplex
109

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).
110
Exemplo de aplicação do Método das Duas Fases

Visualização das iterações

Modelo
Min Z = -3X1 - 5X2

X1  4 (1)
 X2  6
s. a:  (2)

3X1 + 2X2  18 (3)

Xi  0, i = 1,2 (4)
Procedimentos de inicialização para o Método Simplex
111

Exemplo de aplicação do Método das Duas Fases

Modelo  Modelo na forma padrão


Min Z = -3X1 - 5X2  Min Z = -3X1 - 5X2

X1  4 X1 + X3 =4
 X2  6 
s. a:  s. a:  X2 + X4 = 6
 
3X1 + 2X2  18 3X1 + 2X2 - X5 = 18
Xi  0, i = 1,2 Xi  0, i = 1, 5
Procedimentos de inicialização para o Método Simplex
112

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
Exemplo de aplicação do Método das Duas Fases
113

Fase 1: Resolução do Modelo Artificial


VB X1 X2 X3 X4 X5 Y1 b
Transformar em
X3 1 0 1 0 0 0 4 Adequar a
Zeros os coeficientes
X4 0 1 0 1 0 0 6 função
das variáveis
Y1 3 2 0 0 -1 1 18 objetivo
artificiais na F. O.
-W 0 0 0 0 0 1 0
X3 1 0 1 0 0 0 4
X4 0 1 0 1 0 0 6 Quadro 1
Y1 3 2 0 0 -1 1 18 Fase 1: Análise da Solução
-W -3 -2 0 0 1 0 -18 Ótima do Modelo Artificial
W* = 0
X1 1 0 1 0 0 0 4
Caso 2.1: Modelo Original
X4 0 1 0 1 0 0 6 Quadro 2 viável. Não há variáveis
Y1 0 2 -3 0 -1 1 6 básicas artificiais. Eliminar
-W 0 -2 3 0 0 1 -6 variáveis artificiais,
X1 1 0 1 0 0 0 4 substituir função objetivo
X4 0 0 3/2 1 1/2 -1/2 3 Quadro 3 artificial pela original.
X2 0 1 -3/2 0 -1/2 1/2 3 Iniciar fase 2.
-W* 0 0 0 0 0 1 0
Exemplo de aplicação do Método das Duas Fases
114

Fase 2: Resolução do Modelo Original

VB X1 X2 X3 X4 X5 b
Coeficientes de
X1 1 0 1 0 0 4 Adequar a
variáveis
X4 0 0 3/2 1 1/2 3 função
básicas na F. O.
X2 0 1 -3/2 0 -1/2 3 objetivo
devem ser Zero
-Z -3 -5 0 0 0 0
X1 1 0 1 0 0 4
X4 0 0 3/2 1 1/2 3 Quadro 3’
Solução ótima
X2 0 1 -3/2 0 -1/2 3
(única) do Modelo
-Z 0 0 -9/2 0 -5/2 27 Original:
X1* 1 0 0 0 0 4 X1* = 4, X2* = 6,
X5* 0 0 3 2 1 6 Quadro 4 X5* = 6,
X2* 0 1 0 1 0 6 (Ótimo) X3* = X4* = 0,
-Z* 0 0 3 5 0 42 Z* = -42
Visualização da Iterações do Método das Duas Fases
115

Quadro 4: Ótimo,
X2 Z* = -42

(2, 6) Região (4, 6)


Viável

Quadro 3= (4, 3)
Quadro 3’:
W = 0,
Quadro 1: Z = -27
W = 18,
Z=0
(4, 0) X1
Quadro 2:
W = 6,
Z = -12
SIM
Exercícios: Resolver graficamente e pelo
117
Simplex
1. Min Z = X1 + 2 X2

X1 + X2 ≥ 3
s. a: 2X1 + X2 ≤ 2
X1, X2 ≥ 0 (R: Inviável)

2. Max Z = 6X1 + 10 X2

3X1 + 5X2 ≤ 15
s. a: 5X1 + 2X2 ≤ 10
X1, X2 ≥ 0 R: há mais de uma solução ótima
(Segmento de reta ótimo)
Exercícios
118

3. Max Z = 2X1 + 2X2

X1 - X2 ≥ -1
s. a: - ½ X1 + X2 ≤ 2
X1, X2 ≥ 0 (R: Solução ilimitada)

4. Max Z = X1 + X2

X1 + 4X2 ≥ 4
s. a: 3X1 + X2 = 1
X1, X2 ≥ 0 Comentário: Fica a Variável Artificial na solução ótima do
Problema Artificial como Variável Básica, ela sai por
pivoteamento.
Exercícios
119

5. Max Z = X1 + X2

2X1 + 3X2 = 5
s. a: - 6X1 - 9X2 = - 15
X1 – X2 ≥ 0 Comentário: 1a. equação é

X1, X2 ≥ 0 combinação linear das demais.

6. Max Z = - 4X1 + X2

3X1 + X2 ≥ 3
s. a: X1 - X2 ≤ - 1
4X1 – X2 ≥ - 4
X1, X2 ≥ 0 R: Há mais de uma solução
ótima (Semi-reta ótima)
Exercícios 7. Max Z = 3X1 – 5X2

s.a: -3X1 + 5X2  0

X1 – 2X2  -2

Xi  0, i = 1,2

R: Há mais de uma solução ótima (Semi-reta ótima)