Professional Documents
Culture Documents
UNIVERSIDADE DO ALGARVE
INTRODUÇÃO À
INVESTIGAÇÃO OPERACIONAL
PROGRAMAÇÃO LINEAR
FARO
1998
João M. C. Estêvão - EST - UAlg
PREFÁCIO
-i-
INVESTIGAÇÃO OPERACIONAL
ÍNDICE
Pág.
1. Modelos de decisão na investigação operacional ................................... 1
1.1. Introdução.......................................................................................... 1
1.2. O papel do modelo ............................................................................. 2
2. Programação linear ............................................................................... 3
2.1. Aplicações da programação linear...................................................... 4
2.2. Formulação matemática ..................................................................... 8
2.2.1. Hipóteses do modelo de programação linear.................................. 10
2.2.2. Formas de apresentação de um programa linear............................. 11
2.2.2.1. Forma canónica.......................................................................... 11
2.2.2.2. Forma padrão ............................................................................. 12
2.3. Resolução gráfica............................................................................. 13
2.4. Problemas propostos ........................................................................ 15
3. Noções de algebra linear ..................................................................... 19
3.1. Espaços vectoriais............................................................................ 19
3.2. Sistemas de equações lineares indeterminados ................................. 21
3.3. Determinação de soluções básicas.................................................... 23
3.4. Mudança de solução básica .............................................................. 26
3.5. Problemas propostos ........................................................................ 29
4. Método simplex .................................................................................. 31
4.1. Mudança de solução básica admissível............................................. 33
4.2. Melhoria da função objectivo........................................................... 42
4.3. Algoritmo primal do simplex............................................................ 44
4.4. Casos particulares ............................................................................ 49
4.4.1. Soluções óptimas alternativas........................................................ 49
4.4.2. Empate no critério de entrada na base ........................................... 52
- ii -
João M. C. Estêvão - EST - UAlg
- iii -
João M. C. Estêvão - EST - UAlg
1.1. INTRODUÇÃO
-1-
INVESTIGAÇÃO OPERACIONAL
Diagnóstico
MODELO
MÉTODOS Dedução
TRADICIONAIS Revisão
SOLUÇÃO DO
MODELO
IMPLEMENTAÇÃO
DOS RESULTADOS
Validação da solução
FIGURA 1
-2-
João M. C. Estêvão - EST - UAlg
2. PROGRAMAÇÃO LINEAR
-3-
INVESTIGAÇÃO OPERACIONAL
-4-
João M. C. Estêvão - EST - UAlg
EXEMPLO 1
Um município algarvio disponibilizou no seu orçamento uma verba de
50000 contos para infra-estruturas de saneamento básico ao longo de duas
vias municipais. A via "1" é uma estrada pavimentada com 3400 m e a via
"2" é um caminho de terra batida com 5000 m, registando-se a existência de
6 hab./100 m na primeira e 4 hab./100 m na segunda. As obras em causa
não podem durar mais de 150 dias para não interferir com a época balnear.
Sabendo que os custos médios das obras são 12 contos/m na via "1" e 8.5
contos/m na via "2", e que se executam 25 m/dia e 50 m/dia,
respectivamente, em cada uma das vias, diga como distribuiria as obras por
cada via de modo a servir a máxima população possível.
-5-
INVESTIGAÇÃO OPERACIONAL
Formalização do exemplo 1
Passo 1
Elabora-se a lista de todas as variáveis de decisão que entram no
problema.
Neste caso:
Passo 2
Enumeração de todas as restrições ao problema.
- cada metro de via "2" com infra-estruturas custa 8.5 contos, logo a
totalidade de metros executados custará 8.5x2.
Como o custo total não pode ultrapassar a verba em orçamento, isso traduz-
se algebricamente em:
-6-
João M. C. Estêvão - EST - UAlg
- cada metro de via "1" com infra-estruturas demora 1/25 = 0.04 dias,
logo a totalidade de metros executados durará 0.04x1.
- cada metro de via "2" com infra-estruturas demora 1/50 = 0.02 dias,
logo a totalidade de metros executados durará 0.02x2.
Como a duração da obra não pode ser superior a 150 dias, isso traduz-se
algebricamente em:
• x1 ≤ 3400
• x1 ≥ 0
• x2 ≤ 5000
• x2 ≥ 0
Passo 3
Definir a função que traduz o objectivo do problema.
- cada metro de via "1" vai corresponder a 6/100 = 0.06 pessoas, logo a
totalidade de metros executados corresponderá a 0.06x1.
- cada metro de via "2" vai corresponder a 4/100 = 0.04 pessoas, logo a
totalidade de metros executados corresponderá a 0.04x2.
-7-
INVESTIGAÇÃO OPERACIONAL
sujeito a: (restrições)
a11x1 + a12x2 +...+ a1jxj +...+ a1nxn ≤ (ou = ou ≥) b1
a21x1 + a22x2 +...+ a2jxj +...+ a2nxn ≤ (ou = ou ≥) b2
...
ai1x1 + ai2x2 +...+ aijxj +...+ ainxn ≤ (ou = ou ≥) bi
...
am1x1 + am2x2 +...+ amjxj +...+ amnxn ≤ (ou = ou ≥) bm
Designando-se por:
-8-
João M. C. Estêvão - EST - UAlg
ii) ai1x1 + ai2x2 +...+ ainxn ≥ bi ⇔ −ai1x1 − ai2x2 −...− ainxn ≤ −bi
iii)
a i1x1 + a i2 x 2 +...+ a in x n ≤ b i
a i1x1 + a i2 x 2 +...+ a in x n = b i ⇔
a x + a x +...+ a x ≥ b
i1 1 i2 2 in n i
Exemplo
s.a
12x1 + 8.5x2 ≤ 50 000
0.04x1 + 0.02x2 ≤ 150
x1 ≤ 3400
x2 ≤ 5000
x1 , x2 ≥ 0
-9-
INVESTIGAÇÃO OPERACIONAL
- 10 -
João M. C. Estêvão - EST - UAlg
s. a
a11x1 + a12x2 +...+ a1jxj +...+ a1nxn ≤ b1
a21x1 + a22x2 +...+ a2jxj +...+ a2nxn ≤ b2
...
ai1x1 + ai2x2 +...+ aijxj +...+ ainxn ≤ bi
...
am1x1 + am2x2 +...+ amjxj +...+ amnxn ≤ bm
x1 , x2 , ... , xj ,..., xn ≥ 0
- 11 -
INVESTIGAÇÃO OPERACIONAL
s. a
a11x1 + a12x2 +...+ a1jxj +...+ a1nxn = b1
a21x1 + a22x2 +...+ a2jxj +...+ a2nxn = b2
...
ai1x1 + ai2x2 +...+ aijxj +...+ ainxn = bi
...
am1x1 + am2x2 +...+ amjxj +...+ amnxn = bm
x1 , x2 , ... , xj ,..., xn ≥ 0
- 12 -
João M. C. Estêvão - EST - UAlg
Resolução do exemplo 1
s.a
12x1 + 8.5x2 ≤ 50 000
0.04x1 + 0.02x2 ≤ 150
x1 ≤ 3400
x2 ≤ 5000
x1 , x2 ≥ 0
- 13 -
INVESTIGAÇÃO OPERACIONAL
3
2
F
Z(x) 4
Conjunto de
soluções admissíveis
B x1
O E D
FIGURA 2
- 14 -
João M. C. Estêvão - EST - UAlg
2.1. Uma empresa de betoneiras fabrica dois modelos numa fábrica que está dividida
em duas secções: secção 1 onde se efectua o trabalho de montagem, e secção 2 onde se
realizam as operações de acabamento. A secção 1 exige 5 dias de trabalho por betoneira
grande e 2 por betoneira pequena e a secção 2 exige 3 dias de trabalho para qualquer
betoneira. Em virtude das limitações de pessoal e máquinas, a secção 1 só pode dispor
de 180 dias de trabalho por semana e a secção 2 de 135 dias. Se a empresa obtém um
lucro de 90 contos por betoneira grande e 60 contos por betoneira pequena, quantas
betoneiras de cada tipo deve produzir por semana para maximizar o seu lucro?
2.2. Uma fábrica de produtos cerâmicos produz dois tipos de azulejos, A e B. Cada tipo
de azulejo, para ser produzido, passa por dois sectores. O sector 1 tem disponível, por
mês, uma capacidade de produção de 1160 horas, enquanto o sector 2 tem disponível
uma capacidade de produção de 1100 horas, para os dois produtos. O tempo necessário
à produção de cada azulejo (em horas) em cada sector, as quantidades de azulejos
máximas requeridas mensalmente e os respectivos preços de venda unitários estão
descriminados na tabela seguinte. O objectivo da empresa é maximizar o montante das
vendas. Determine os valores a produzir de cada azulejo.
- 15 -
INVESTIGAÇÃO OPERACIONAL
2.5. Uma empresa de janelas e portas pré-fabricadas efectua a sua produção em três
sectores distintos. A caixilharia de alumínio e acessórios são produzidos na secção 1, as
carpintarias são elaboradas na secção 2, sendo a secção 3 o local de produção do vidro e
da montagem de todos os elementos. Para relançar a empresa foi decidido iniciar a
produção dois novos produtos: uma porta envidraçada de alumínio e um janela de
madeira. O departamento de "marketing" determinou que os produtos teriam uma
procura que cobria a capacidade produtiva da empresa. Contudo como os produtos
competem entre si na secção 3 face à capacidade produtiva, a direcção da empresa
solicitou um estudo que determinasse o número de cada tipo de artigos a produzir. Os
valores tabelados traduzem a disponibilidade percentual de cada secção para produzir
os artigos, as percentagens requeridas pelos artigos por cada unidade produzida num
minuto, e o lucro por cada artigo produzido.
2.6. Uma empresa de produtos químicos pretende comercializar aditivos para betão,
tendo capacidade para produzir 800 unidades. O aditivo pode ser produzido com duas
qualidades distintas: "Normal" e "Extra". Os lucros que se obtêm pela venda é de
1400$00 por unidade de produto "Normal" e 1700$00 por unidade de produto "Extra".
A fábrica tem capacidade máxima para produzir 960 unidades de produto "Normal" e
640 de produto "Extra", ou combinações destes dois produtos que garantam estas
proporções. Um estudo de viabilidade da comercialização do produto concluiu que no
mínimo 240 unidades de aditivo têm de ser produzidas, e que pelo menos um quinto da
comercialização deve ser de produto "Extra", não devendo exceder metade dos produtos
vendidos. Determine as quantidades de produto "Normal" e "Extra" que deverão ser
produzidas de modo a ser obtido o maior lucro possível.
- 16 -
João M. C. Estêvão - EST - UAlg
2.8. Todo o aço fabricado por uma determinada siderurgia obedece às seguintes
propriedades químicas e físicas: 1.8 - 2.5% de silício; 0.9 - 1.2% de níquel; 3.2 - 3.5%
de carbono; tensão de rotura mínima de 310 MPa. A produção de aço é feita a partir de
duas ligas metálicas. Assume-se que a tensão de rotura da mistura das duas ligas é igual
à soma percentual da tensão de rotura de cada liga. Atendendo ao custo e propriedades
apresentadas no quadro seguinte, estabeleça o modo de minimizar o custo de produção
do aço.
Liga 1 Liga 2
Custo por quilo 38$00 40$00
Silício 2% 2.5%
Níquel 1% 1.5%
Carbono 3% 4%
Tensão de rotura 290 MPa 345 MPa
2.9. Uma cidade produz 50 toneladas de lixo por dia. O lixo tem que ser incinerado nas
incineradoras 1 ou 2. Por razões técnicas, é necessário incinerar um mínimo de 30%
desse lixo na incineradora 2. O custo para incinerar o lixo nas incineradoras 1 e 2 é de
6500$00/ton. e 11250$00/ton., respectivamente. O custo de transporte de cada tonelada
de lixo é de 60$00 por cada quilómetro percorrido. A distância da cidade à incineradora
1 é de 30 km e à incineradora 2 é de 20 km. Cada incineradora pode receber um
máximo de 40 toneladas de lixo por dia. Efectue o planeamento do transporte de lixo de
modo a minimizar o custo.
- 17 -
INVESTIGAÇÃO OPERACIONAL
φ100
1 1000 m
2
2.11. Uma empresa metalúrgica produz dois tipos de varões de aço para construção em
duas secções de laminação diferentes. A secção de laminação 1 tem 100 horas
disponíveis, enquanto a secção de laminação 2 tem 30 horas disponíveis. O preço de
venda (em contos) e o tempo necessário (em minutos), por secção, para a produção de
uma tonelada de varão, estão descritos na tabela seguinte. Como o número de
encomendas por mês é, no máximo, de 250 toneladas de varões tipo 1 e de 140
toneladas de varões tipo 2, determine a produção de varões de modo a maximizar a
facturação.
Varões Preço Secção 1 Secção 2
tipo 1 71 20 --
tipo 2 80 18 20
- 18 -
João M. C. Estêvão - EST - UAlg
n
com os escalares λ i ≥ 0 e ∑ λ i = 1 , com i= 1,..., n
i=1
Y = λ1x1 + (1−λ2)x2 ∈ S
Exemplos:
- 19 -
INVESTIGAÇÃO OPERACIONAL
• Vectores linearmente independentes são vectores A1, A2, ..., An, não
nulos, tais que a equação vectorial
n
com os escalares λ i ≥ 0 e ∑ λ i = 1 , com i= 1,..., n
i=1
- 20 -
João M. C. Estêvão - EST - UAlg
a m1
a mn x n b m
Se admitirmos que o sistema é possível, então existe pelo menos um vector
y ∈ ℜn tal que A y = b .
- 21 -
INVESTIGAÇÃO OPERACIONAL
Tal como foi efectuada uma partição de A, também o podemos fazer para o
vector x :
x = [ xB | xN ]T
[ B | N ] [ xB | xN ]T = b
⇔
B xB + N xN = b
- 22 -
João M. C. Estêvão - EST - UAlg
- 23 -
INVESTIGAÇÃO OPERACIONAL
EXEMPLO 2
x1 + 3x2 + x4 = 20
2x1 + 2x2 + x3 + x5 = 40
4x1 + 5x3 + 2x4 + 3x5 = 180
Resolução do exemplo 2
x1 x2 x3 x4 x5 b
1 3 0 1 0 20
2 2 1 0 1 40
4 0 5 2 3 180
x4 x5 x3 x1 x2 b
1 0 0 1 3 20
0 1 1 2 2 40
2 3 5 4 0 180
x4 x5 x3 x1 x2 b
1 0 0 1 3 20
0 1 1 2 2 40
0 3 5 2 -6 140
- 24 -
João M. C. Estêvão - EST - UAlg
x4 x5 x3 x1 x2 b
1 0 0 1 3 20
0 1 1 2 2 40
0 0 2 -4 -12 20
x4 x5 x3 x1 x2 b
1 0 0 1 3 20
0 1 1 2 2 40
0 0 1 -2 -6 10
x4 x5 x3 x1 x2 b
1 0 0 1 3 20
0 1 0 4 8 30
0 0 1 -2 -6 10
x3 = 10 , x4 = 20 e x5 = 30 (variáveis básicas)
- 25 -
INVESTIGAÇÃO OPERACIONAL
Numa dada solução básica, pode-se tornar básica uma variável que era não
básica (por troca óbvia com uma variável que era básica e que passou a não
básica), através de operações elementares. Esta nova solução básica diz-se
adjacente da anterior.
- 26 -
João M. C. Estêvão - EST - UAlg
Resolução do exemplo 3
x1 x2 x3 x4 x5 b
x1 1 0 0 1 -1 10
x2 0 1 0 0.5 -1 5
x3 0 0 1 -0.5 2 2
x1 x2 x3 x4 x5 b
x1 1 0 0 1 -1 10
x2 0 1 0 0.5 -1 5
x3 0 1 1 0 1 7
x1 x2 x3 x4 x5 b
x1 1 0 0 1 -1 10
x2 0 2 0 1 -2 10
x3 0 1 1 0 1 7
- 27 -
INVESTIGAÇÃO OPERACIONAL
x1 x4 x3 x2 x5 b
x1 1 0 0 -2 1 0
x4 0 1 0 2 -2 10
x3 0 0 1 1 1 7
x1 x4 x5 x2 x3 b
x1 1 0 0 -3 -1 -7
x4 0 1 0 4 2 24
x5 0 0 1 1 1 7
- 28 -
João M. C. Estêvão - EST - UAlg
3.1. Dos conjuntos que se apresentam nas figuras seguintes (zona sombreada), indique
os que são convexos e os que não são.
a) b)
c) d)
e) f)
a)
4x1 + 2x2 − x4 = 0
x1 + x2 + x3 = 8
x3 + 4x4 = 8
b)
2x1 + 4x2 − x3 = 2
−x1 + 2x2 − x3 − x4 = −2
- 29 -
INVESTIGAÇÃO OPERACIONAL
c)
x1 + 2x2 + 4x3 − x4 = 4
x1 + x2 = 8
x1 + x3 + 2x4 = 10
x1 x2 x3 x4 x5 x6 b
1 2 2 1 0 0 4
0 4 −1 0 1 0 2
2 0 5 0 0 1 0
a) x4 , x5 e x6
b) x2 , x4 e x6
c) x1 , x2 e x4
d) x1 , x4 e x5
e) x3 , x4 e x5
f) x2 , x3 e x4
x1 + a x2 + x6 = 10
2x1 + 2x2 − x3 + x5 = b
2x1 + 4x3 + x4 = 40
Diga para que valores de a e b obtemos [0, 9, 10, 0, 0, 1]T como solução do problema.
- 30 -
João M. C. Estêvão - EST - UAlg
4. MÉTODO SIMPLEX
x1 , x2 , ... , xm ,..., xn ≥ 0
- 31 -
INVESTIGAÇÃO OPERACIONAL
a 11 a 21 a n1 b1
a a a b
P1 = , P2 = , ... , Pn =
n2
P0 =
12 22 2
,
a 1m a 2m a nm b m
n n!
Em teoria bastará calcular o valor de Z em todos os =
m m!(n - m)!
pontos extremos (soluções básicas), para se obter o valor óptimo da função
objectivo. No entanto, tal seria impraticável para grandes valores de n e m.
- 32 -
João M. C. Estêvão - EST - UAlg
Admita-se que algum vector fora da base, por exemplo Pm+1 , tem pelo
menos uma componente aij ≥ 0 na expressão
- 33 -
INVESTIGAÇÃO OPERACIONAL
bi
Da expressão anterior resulta θ = e, dada a validade para todo o
a i,m+1
ai,m+1 > 0, a admissibilidade da nova solução é garantida com qualquer θ a
verificar
b
0 < θ ≤ mín i a i,m+1 > 0
i a i,m+1
b
θ = θ 0 = mín i a i,m+1 > 0
i a i,m+1
- 34 -
João M. C. Estêvão - EST - UAlg
O vector [ b1, b2, ..., bm, 0, ..., 0]T corresponde a uma solução básica do
sistema, que se assume admissível para um dado problema de programação
linear.
1
Se multiplicarmos a linha pivotal por obtemos o quadro seguinte:
a i,m+1
- 35 -
INVESTIGAÇÃO OPERACIONAL
1 a i,n bi
em que a'i,i = ; a'i,n = e θ= .
a i,m+1 a i,m+1 a i,m+1
Para que esta solução básica seja admissível, facilmente se conclui sobre a
obrigatoriedade de θ > 0 assim como as restantes componentes de x' devem
ser não negativas bk−θak,m+1 > 0. Donde se conclui que
bk bk bi
≥θ ⇔ ≥
a k,m+1 a k,m+1 a i,m+1
Desta forma, a escolha da variável não básica que pode ser tornada básica
com garantia da admissibilidade da nova solução, deve basear-se no
seguinte critério
b
θ = θ 0 = mín i a i,m+1 > 0
i a i,m+1
- 36 -
João M. C. Estêvão - EST - UAlg
EXEMPLO 4
Resolução do exemplo 4
P1 P2 P3 P4 P5 P6 P0
12 8.5 1 0 0 0 50000
0.04 x + 0.02 x + 0 x + 1 x + 0 x + 0 x = 150
1 2 3 4 5 6
1 0 0 0 1 0 3400
0 1 0 0 0 1 5000
Uma solução básica admissível será [0, 0, 50000, 150, 3400, 5000]T,
correspondendo ao ponto "A" da figura 3. Desta forma, de acordo com o
enunciado neste capítulo, podemos escrever
- 37 -
INVESTIGAÇÃO OPERACIONAL
P1 = 12 P3 + 0.04 P4 + 1 P5 + 0 P6 ii)
P2 = 8.5 P3 + 0.02 P4 + 0 P5 + 1 P6
P3 = 1 P3 + 0 P 4 + 0 P 5 + 0 P 6
P4 = 0 P3 + 1 P 4 + 0 P 5 + 0 P 6
P5 = 0 P3 + 0 P 4 + 1 P 5 + 0 P 6
P6 = 0 P3 + 0 P 4 + 0 P 5 + 1 P 6
Se fizermos:
θ = 2750, obtemos [ 2750, 0, 17000, 40, 650, 5000]T, uma solução não
básica admissível que corresponde ao ponto "D" da figura 3.
- 38 -
João M. C. Estêvão - EST - UAlg
x1 x2 x3 x4 x5 x6 b
x3 12 8.5 1 0 0 0 50000
x4 0.04 0.02 0 1 0 0 150
x5 1 0 0 0 1 0 3400
x6 0 1 0 0 0 1 5000
x1 x2 x3 x4 x5 x6 b
x3 0 8.5 1 0 -12 0 9200
x4 0 0.02 0 1 -0.04 0 14
x1 1 0 0 0 1 0 3400
x6 0 1 0 0 0 1 5000
- 39 -
INVESTIGAÇÃO OPERACIONAL
Identifica-se uma nova solução básica [ 3400, 0, 9200, 14, 0, 5000 ]T,
correspondente ao ponto "B" da figura 3.
b 9200 14 5000 14
mín i a i2 > 0 = mín , , = = 700
i2
i=1,..,4 a
8.5 0.02 1 0.02
x1 x2 x3 x4 x5 x6 b
x3 0 0 1 -425 5 0 3250
x2 0 1 0 50 -2 0 700
x1 1 0 0 0 1 0 3400
x6 0 0 0 -50 2 1 4300
- 40 -
João M. C. Estêvão - EST - UAlg
x1 x2 x3 x4 x5 x6 b
x5 0 0 0.2 -85 1 0 650
x2 0 1 0.4 -120 0 0 2000
x1 1 0 -0.2 85 0 0 2750
x6 0 0 -0.4 120 0 1 3000
x2
x1
A D B C
FIGURA 3
- 41 -
INVESTIGAÇÃO OPERACIONAL
à qual se encontra associada a base constituída pelas variáveis x1, x2, ...,
xm e a que corresponde na função objectivo
0
a sair da base
em que
n
Zr = c1a1r + ... + cmamr = ∑ c i a ir
i=1
em síntese
- 42 -
João M. C. Estêvão - EST - UAlg
A partir deste resultado é fácil concluir que se a variável não básica xr, que
está em condições de substituir a variável xi da base inicial, estiver
associada a uma diferença unitária positiva, cr−Zr > 0, a passagem à nova
solução básica admissível é acompanhada de melhoria da função objectivo
(Z > Z0), num problema de maximização. Este raciocínio aplica-se, da
mesma forma, a problemas de minimização, em que a melhoria da função
objectivo (Z < Z0) foi acompanhada de uma variação Zr−cr > 0.
Enquanto existir alguma variável xj fora da base tal que cr−Zr > 0, no caso
da maximização, e Zr−cr > 0 na minimização, o valor da função objectivo
pode ser melhorado. Para a diminuição do número de iterações, a variável
xj pode ser escolhida de acordo com o seguinte critério
{
max c j − Z j c j − Z j > 0
j
} no caso da maximização
ou
{
max Z j − c j Z j − c j > 0
j
} no caso da minimização
- 43 -
INVESTIGAÇÃO OPERACIONAL
m
em que Z0 = ∑ ci bi
i=1
n
e Z j = ∑ c i a ij , j = 1, 2, ..., n
i=1
- 44 -
João M. C. Estêvão - EST - UAlg
EXEMPLO 5
max. Z = x1 + 2x2
s.a
−x1 + x2 ≤ 4
x 1 + x2 ≤ 8
3x1 + x2 ≤ 18
x1 , x2 ≥ 0
- 45 -
INVESTIGAÇÃO OPERACIONAL
Resolução do exemplo 5
Zj 0 0 0 0 0 0
cj−Zj 1 2 0 0 0
- 46 -
João M. C. Estêvão - EST - UAlg
cj 1 2 0 0 0
cB xB x0 x1 x2 x3 x4 x5
2 x2 4 -1 1 1 0 0
0 x4 4 2 0 -1 1 0
0 x5 14 4 0 -1 0 1
Zj 8 -2 2 2 0 0
cj−Zj 3 0 -2 0 0
{ }
max c j − Z j c j − Z j > 0 = max {3} = 3 , a variável x1 entra na base
j=1,...,5
b 4 14 4
mín i a i1 > 0 = mín , = = 2 , saindo a variável x4 da base.
i1
i=1,..,3 a
2 4 2
cj 1 2 0 0 0
cB xB x0 x1 x2 x3 x4 x5
2 x2 6 0 1 0.5 0.5 0
1 x1 2 1 0 -0.5 0.5 0
0 x5 6 0 0 1 -2 1
Zj 14 1 2 0.5 1.5 0
cj−Zj 0 0 -0.5 -1.5 0
Deste quadro tiramos uma nova solução básica [2, 6, 0, 0, 6]T, a que
corresponde o ponto "C" na figura 4.
- 47 -
INVESTIGAÇÃO OPERACIONAL
Se determinarmos o valor de
{ }
max c j − Z j c j − Z j > 0 = ∅
j=1,...,5
dado que não existe nenhum valor de cj−Zj > 0, pode concluir-se que a
solução em presença é a solução óptima do problema. O valor óptimo da
função objectivo corresponde a Z = 14 e tira-se directamente do quadro.
x2
x1
A
FIGURA 4
- 48 -
João M. C. Estêvão - EST - UAlg
É possível que exista mais do que uma solução óptima para um problema de
programação linear, como foi referido em capítulos anteriores, das quais
pelo menos duas das soluções são básicas. As soluções óptimas não básicas
podem ser obtidas como uma combinação linear convexa das soluções
óptimas básicas.
EXEMPLO 6
s.a
2x1 + x2 ≤ 7
x1 ≤ 3
x2 ≤ 5
x1 , x2 ≥ 0
- 49 -
INVESTIGAÇÃO OPERACIONAL
Resolução do exemplo 6
cj 6 3 0 0 0
cB xB x0 x1 x2 x3 x4 x5
0 x3 7 2 1 1 0 0
0 x4 3 1 0 0 1 0
0 x5 5 0 1 0 0 1
Zj 0 0 0 0 0 0
cj−Zj
6 3 0 0 0
0 x3 1 0 1 1 -2 0
6 x1 3 1 0 0 1 0
0 x5 5 0 1 0 0 1
Zj 18 6 0 0 6 0
cj−Zj 0
3 0 -6 0
3 x2 1 0 1 1 -2 0
6 x1 3 1 0 0 1 0
0 x5 4 0 0 -1 2 1
Zj 21 6 3 3 0 0
cj−Zj 0 0 -3 0 0
- 50 -
João M. C. Estêvão - EST - UAlg
a que corresponde uma nova solução óptima [1, 5, 0, 2, 0]T. Outra solução
óptima qualquer, não básica e admissível, pode ser obtida através da
atribuição de valores a λ entre 0 e 1, na expressão seguinte
x* = λ × [3, 1, 0, 0, 4]T + (1−λ) × [1, 5, 0, 2, 0]T
Se fizermos λ = 0.5, obtém-se uma solução óptima [2, 3, 0, 1, 2]T,
correspondente ao ponto "E" da figura 5, com Z* = 6 × 2 + 3 × 3 = 21.
x2 A → B → C → D
x1
A B
FIGURA 5
- 51 -
INVESTIGAÇÃO OPERACIONAL
- 52 -
João M. C. Estêvão - EST - UAlg
EXEMPLO 7
s.a
x1 + 0.25x4 − 60x5 − 0.04x6 + 9x7 = 0
x2 + 0.5x4 − 90x5 − 0.02x6 + 3x7 = 0
x3 + x6 = 1
x1 , ..., x7 ≥ 0
Resolução do exemplo 7
Zj 0 0 0 0 0 0 0 0
cj−Zj 0 0 0 0.75 -150 0.02 -6
- 53 -
INVESTIGAÇÃO OPERACIONAL
- 54 -
João M. C. Estêvão - EST - UAlg
Apresentação do problema
na forma padrão
Determinar
se existe algum A solução básica
Cj - Zj > 0 Não determinada é óptima
na maximização FIM
Zj - Cj >0
na minimização
Sim
Determinar a entrada
de uma variável Xr na base.
máx. {Cj - Zj}
na maximização
máx. {Zj - Cj}
na minimização
Em caso de empate escolher
o menor índice j
O problema é ilimitado
Existe algum Não
FIM
a ir > 0 ?
Sim
Estabelecer a saida
de uma variável Xi da base.
mín.{ b i / a ir }
Em caso de empate escolher
mín.{ a is / a ir }
Efectuar as operações de
pivotação
- 55 -
INVESTIGAÇÃO OPERACIONAL
s. a
a11x1 + a12x2 +...+ a1jxj +...+ a1nxn = b1
a21x1 + a22x2 +...+ a2jxj +...+ a2nxn = b2
...
ai1x1 + ai2x2 +...+ aijxj +...+ ainxn = bi
...
am1x1 + am2x2 +...+ amjxj +...+ amnxn = bm
x1 , x2 , ... , xj ,..., xn ≥ 0
- 56 -
João M. C. Estêvão - EST - UAlg
iniciais artificiais
- 57 -
INVESTIGAÇÃO OPERACIONAL
s. a
a11x1 + a12x2 +...+ a1nxn + xn+1 = b1
a21x1 + a22x2 +...+ a2nxn + xn+2 = b2
...
ai1x1 + ai2x2 +...+ ainxn + xn+i = bi
...
am1x1 + am2x2 +...+ amnxn + xn+m = bm
i) Z ' > 0
Neste caso existe, pelo menos, uma variável artificial básica não
nula. Assim, as restrições do problema inicial a que correspondem
variáveis artificiais não nulas, não são verificadas, logo conclui-se
que o problema inicial é impossível (K = ∅).
- 58 -
João M. C. Estêvão - EST - UAlg
EXEMPLO 8
max. Z = x1 + 4x2
s.a
−x1 + 2x2 ≤ 12
4x1 + 4x2 ≥ 20
−x1 + 4x2 ≥ 4
x1 , x2 ≥ 0
- 59 -
INVESTIGAÇÃO OPERACIONAL
Resolução do exemplo 8
max. Z = x1 + 4x2
s.a
−x1 + 2x2 + x3 = 12
4x1 + 4x2 − x4 = 20
−x1 + 4x2 − x5 = 4
x1 , ..., x5 ≥ 0
min. Z' = x6 + x7
s.a
−x1 + 2x2 + x3 = 12
4x1 + 4x2 − x4 + x6 = 20
−x1 + 4x2 − x5 + x7 = 4
x1 , ..., x7 ≥ 0
- 60 -
João M. C. Estêvão - EST - UAlg
A primeira fase do método das duas fases, conduz aos seguintes quadros:
c'j 0 0 0 0 0 1 1
cB xB x0 x1 x2 x3 x4 x5 x6 x7
0 x3 12 -1 2 1 0 0 0 0
1 x6 20 4 4 0 -1 0 1 0
1 x7 4 -1 4 0 0 -1 0 1
Z'j 24 3 8 0 -1 -1 1 1
Z'j−c'j 3 8 0 -1 -1 0 0
5 0 0 -1 1 0 -2
cj 1 4 0 0 0
cB xB x0 x1 x2 x3 x4 x5
0 x3 11.6 0 0 1 -0.1 0.6
1 x1 3.2 1 0 0 -0.2 0.2
4 x2 1.8 0 1 0 -0.05 -0.2
Zj 10.4 1 4 0 -0.4 -0.6
cj−Zj 0 0 0 0.4 0.6
- 61 -
INVESTIGAÇÃO OPERACIONAL
cj 1 4 0 0 0
cB xB x0 x1 x2 x3 x4 x5
0 x3 2 -3 0 1 0.5 0
0 x5 16 5 0 0 -1 1
4 x2 5 1 1 0 -0.25 0
Zj 20 4 4 0 -1 0
cj−Zj -3 0 0 1 0
cB xB x0 x1 x2 x3 x4 x5
0 x4 4 -6 0 2 1 0
0 x5 20 -1 0 2 0 1
4 x2 6 -0.5 1 0.5 0 0
Zj 24 -2 4 2 0 0
cj−Zj 3 0 -2 0 0
Não existe nenhuma variável em condições de entrar na base (a1i < 0), logo
o problema é ilimitado (K = ∅).
x2 +∞
C 1ª Fase » A → B → C
B
2ª Fase » C → D → E → + ∞
x1
A
FIGURA 7
- 62 -
João M. C. Estêvão - EST - UAlg
s. a
iniciais artificiais
- 63 -
INVESTIGAÇÃO OPERACIONAL
EXEMPLO 9
Resolver o seguinte problema de programação linear.
min. Z = x1 + 4x2
s.a
x1 − x2 ≤ 1.5
2x1 + x2 ≥ 5
3x1 + x2 ≤ 16
−2x1 + x2 = 2
x1 , x2 ≥ 0
Resolução do exemplo 9
- 64 -
João M. C. Estêvão - EST - UAlg
cj 1 4 0 0 0 M M
cB xB x0 x1 x2 x3 x4 x5 x6 x7
0 x3 1.5 1 -1 1 0 0 0 0
M x6 5 2 1 0 -1 0 1 0
0 x5 16 3 1 0 0 1 0 0
M x7 2 -2 1 0 0 0 0 1
Zj 7M 0 2M 0 -M 0 M M
Zj−cj -1 2M-4
0 -M 0 0 0
0 x3 3.5 -1 0 1 0 0 0 1
M x6 3 4 0 0 -1 0 1 -1
0 x5 14 5 0 0 0 1 0 -1
4 x2 2 -2 1 0 0 0 0 1
Zj 3M+8 4M-8 4 0 -M 0 M -M+4
Zj−cj 4M-9
0 0 -M 0 0 -2M+4
- 65 -
INVESTIGAÇÃO OPERACIONAL
cj 1 4 0 0 0 M M
cB xB x0 x1 x2 x3 x4 x5 x6 x7
0 x3 4.25 0 0 1 -0.25 0 0.25 0.75
1 x1 0.75 1 0 0 -0.25 0 0.25 -0.25
0 x5 10.25 0 0 0 1.25 1 -1.25 0.25
4 x2 3.5 0 1 0 -0.5 0 0.5 0.5
Zj 14.75 1 4 0 -2.25 0 2.25 1.75
Zj−cj 0 0 0 -2.25 0 2.25-M 1.75-M
a que corresponde a solução óptima [0.75, 3.5, 4.25, 0, 10.25]T, (não foram
incluídas as variáveis artificiais por estas serem somente um artifício de
cálculo).
x2
A →B →C
x1
A
FIGURA 8
- 66 -
João M. C. Estêvão - EST - UAlg
- 67 -
INVESTIGAÇÃO OPERACIONAL
- 68 -
João M. C. Estêvão - EST - UAlg
- 69 -
INVESTIGAÇÃO OPERACIONAL
EXEMPLO 10
- 70 -
João M. C. Estêvão - EST - UAlg
em que:
x1 - volume de betão B25 a ser elaborado
x2 - volume de betão B30 a ser elaborado
em que:
y1 - preço de venda de 1 ton. de cimento
y2 - preço de venda de 1 ton. de areia
y3 - preço de venda de 1 ton. de brita
- 71 -
INVESTIGAÇÃO OPERACIONAL
Variáveis do PRIMAL
- 72 -
João M. C. Estêvão - EST - UAlg
- 73 -
INVESTIGAÇÃO OPERACIONAL
EXEMPLO 11
Resolução do exemplo 11
- 74 -
João M. C. Estêvão - EST - UAlg
• Se algum dos problemas (primal ou dual) tiver uma solução não limitada,
então o outro não possui soluções admissíveis.
- 75 -
INVESTIGAÇÃO OPERACIONAL
- 76 -
João M. C. Estêvão - EST - UAlg
Caso não exista nenhum air < 0 este algoritmo termina, sendo o
problema dual ilimitado e o problema primal impossível.
iv) No caso de empate no critério de saída ou de entrada na base
escolher a variável de menor índice. Identificado o elemento pivô,
aplicar as regras de pivotação, expostas no capítulo 3.3, para efectuar a
mudança de solução básica admissível.
Este algoritmo está implementado no programa de cálculo automático
"Simplex" fornecido em anexo a estes apontamentos.
- 77 -
INVESTIGAÇÃO OPERACIONAL
EXEMPLO 12
min. Z = x1 + 2x2
s.a
x1 + x2 ≥ 4
x1 + 5x2 ≥ 8
x1 , x2 ≥ 0
Resolução do exemplo 12
min. Z = x1 + 2x2
s.a
−x1 − x2 + x3 = −4
−x1 − 5x2 + x4 = −8
x1 , x2, x3, x4 ≥ 0
cj 1 2 0 0
cB xB x0 x1 x2 x3 x4
0 x3 -4 -1 -1 1 0
0 x4 -8 -1 -5 0 1
Zj 0 0 0 0 0
Zj−cj -1 -2 0 0
- 78 -
João M. C. Estêvão - EST - UAlg
logo, a segunda linha será a linha pivotal, a que corresponde a variável x4,
que sai da base.
cj 1 2 0 0
cB xB x0 x1 x2 x3 x4
0 x3 -2.4 -0.8 0 1 -0.2
2 x2 1.6 0.2 1 0 -0.2
- 79 -
INVESTIGAÇÃO OPERACIONAL
cj 1 2 0 0
cB xB x0 x1 x2 x3 x4
1 x1 3 1 0 -1.25 0.25
2 x2 1 0 1 0.25 -0.25
Zj 5 1 2 -0.75 -0.25
Zj−cj 0 0 -0.75 -0.25
x2 y2
B E
F
C x1 y1
A D
FIGURA 9
- 80 -
João M. C. Estêvão - EST - UAlg
Apresentação do problema
na forma padrão
A solução básica
Não
Existe algum determinada é óptima
bi<0? para o Dual e Primal
FIM
Sim
Estabelecer a saida
de uma variável Xr da base.
mín. {bi}
Em caso de empate escolher
a de menor índice
Sim
Determinar a entrada
de uma variável Xj na base.
mín. { (Cj - Zj) / a rj }
na maximização
ou
mín. { (Zj - Cj) / a rj }
na minimização
Em caso de empate escolher
o menor índice j
Efectuar as operações de
pivotação
- 81 -
INVESTIGAÇÃO OPERACIONAL
r-1 m
xr = M − ∑ x j − ∑ x j − x n+1
j=1 j=r +1
( )
m
Z = Z0 + ∑ c j − Z j x j
j=1
( ) ∑ (c j − Z j )x j
r-1 m m
= Z0 + ∑ c j − Z j x j + (c r − Z r ) M − ∑ x j − x n+1 +
j=1 j=1 j=r +1
j≠ r
[( ) ]
m
= Z 0 + (c r − Z r )M + ∑ c j − Z j − (c r − Z r ) x j − (c r − Z r )x n+1
j=1
j≠ r
- 82 -
João M. C. Estêvão - EST - UAlg
ou
{
max Z j − c j Z j − c j > 0
j
} no caso da minimização
EXEMPLO 13
- 83 -
INVESTIGAÇÃO OPERACIONAL
Resolução do exemplo 13
Zj 0 0 0 0 0
cj−Zj 1 4 0 0
Dado que existem valores da linha correspondente aos valores de cj−Zj > 0,
logo não estamos em presença de uma solução básica admissível para o
problema dual (ponto “A” da figura 11). Para podermos aplicar o algoritmo
dual do simplex é necessário adicionar uma restrição artificial x1 + x2 ≤ M
correspondente à soma das variáveis não básicas, que com a introdução de
uma variável de desvio se transforma em x1 + x2 + x5 = M. Vamos em
seguida explicitar a variável x2 na equação artificial dado que
{ }
max c j − Z j c j − Z j > 0 = max {1 ; 4} = 4
j=1,2
- 84 -
João M. C. Estêvão - EST - UAlg
cj 1 4 0 0 0
cB xB x0 x1 x2 x3 x4 x5
0 x3 M-6 -1 0 1 0 1
0 x4 5-M 0 0 0 1 -1
4 x2 M 1 1 0 0 1
Zj 4M 4 4 0 0 4
cj−Zj -3 0 0 0 -4
0 x3 -1 -1 0 1 1 0
0 x5 -5+M 0 0 0 -1 1
4 x2 5 1 1 0 1 0
Zj 20 4 4 0 4 0
cj−Zj -3 0 0 -4 0
1 x1 1 1 0 -1 -1 0
0 x5 -5+M 0 0 0 -1 1
4 x2 4 0 1 1 2 0
Zj 17 1 4 3 7 0
cj−Zj 0 0 -3 -7 0
- 85 -
INVESTIGAÇÃO OPERACIONAL
y1
A
FIGURA 11
- 86 -
João M. C. Estêvão - EST - UAlg
s.a s.a
3x1 + 3x2 ≤ 13 x1 + x2 ≥ 0
x1 + 8x2 ≤ 55 3x1 + 7x2 ≥ 45
x1 , x2 ≥ 0 x1 − x2 ≥ 2
x1 , x2 ≥ 0
s.a s.a
x1 + x2 + x3 ≤ 13 x1 − x2 ≥ 0
2x1 − x3 ≤ 1 x1 + x2 + 4x3 ≥ 21
3x2 + 5x2 ≥ 65 x3 ≤ 3
x1 , x2 ≥ 0 x1 , x2 , x3 ≥ 0
- 87 -
INVESTIGAÇÃO OPERACIONAL
- 88 -
João M. C. Estêvão - EST - UAlg
6. PÓS-OPTIMIZAÇÃO
- 89 -
INVESTIGAÇÃO OPERACIONAL
- 90 -
João M. C. Estêvão - EST - UAlg
Resolução do problema
associado de P.L. contínua
(algoritmo primal do simplex)
A solução básica
Sim determinada é óptima
A solução óptima
para o P.L. inteiro
é inteira ? FIM
Não
- 91 -
INVESTIGAÇÃO OPERACIONAL
- 92 -
João M. C. Estêvão - EST - UAlg
então
bi = [bi] + fi
aij = [aij] + fij
logo virá
[ ]
n n
x Bi = [b i ] − ∑ a ij x Nj + f i − ∑ f ij x Nj
j=1 j=1
[ ]
n n
[ i ] ∑ a ij x Nj é inteiro
b − e i ∑ f ij x Nj < 1
f −
j=1 j=1
n
Como xBi deve ser inteira, então f i − ∑ f ij x Nj < 1 deve ser também
j=1
inteira, logo
n n
fi − ∑ fij x Nj ≤ 0 ⇔ − ∑ fij x Nj ≤ − fi
j=1 j=1
j=1
- 93 -
INVESTIGAÇÃO OPERACIONAL
EXEMPLO 14
Resolução do exemplo 14
Zj 0 0 0 0 0 0
cj−Zj
3 2 0 0 0
- 94 -
João M. C. Estêvão - EST - UAlg
cj 3 2 0 0 0
cB xB x0 x1 x2 x3 x4 x5
0 x3 26 0 5 1 0 -1
0 x4 14 0 5 0 1 -2
3 x1 0 1 -2 0 0 1
Zj 60 3 -6 0 0 3
cj−Zj 0
8 0 0 -3
0 x3 12 0 0 1 -1 1
2 x2 2.8 0 1 0 0.2 -0.4
3 x1 5.6 1 0 0 0.4 0.2
0 x5 12 0 0 1 -1 1
⇒ 2 x2 7.6 0 1 0.4 -0.2 0
3 x1 3.2 1 0 -0.2 0.6 0
- 95 -
INVESTIGAÇÃO OPERACIONAL
ou
ii)
f2 0.6 f3 0.2
máx = = 0.5 ; = = 0.143 = 0.5
23 + f 24 0.4 + 0.8
i=2,3 f f 33 + f 34 0.8 + 0.6
cj 3 2 0 0 0 0
cB xB x0 x1 x2 x3 x4 x5 x6
0 x5 12 0 0 1 -1 1 0
2 x2 7.6 0 1 0.4 -0.2 0 0
3 x1 3.2 1 0 -0.2 0.6 0 0
0 x6 -0.6 0 0 -0.4 -0.8 0 1
Zj 24.8 3 2 0.2 1.4 0 0
cj−Zj 0 0 -0.2
-1.4 0 0
0 x5 10.5 0 0 0 -3 1 2.5
2 x2 7 0 1 0 -1 0 1
3 x1 3.5 1 0 0 1 0 -0.5
0 x3 1.5 0 0 1 2 0 -2.5
Zj 24.5 3 2 0 1 0 0.5
cj−Zj 0 0 0 -1 0 -0.5
- 96 -
João M. C. Estêvão - EST - UAlg
Deste novo quadro óptimo verificamos que as variáveis x1 ainda tem valor
fraccionário (ponto "B" da figura 13). Novamente será necessário a adição
de uma restrição de corte determinada pela variável x1.
cj 3 2 0 0 0 0 0
cB xB x0 x1 x2 x3 x4 x5 x6 x7
0 x5 10.5 0 0 0 -3 1 2.5 0
2 x2 7 0 1 0 -1 0 1 0
3 x1 3.5 1 0 0 1 0 -0.5 0
0 x3 1.5 0 0 1 2 0 -2.5 0
0 x7 -0.5 0 0 0 0 0 -0.5 1
Zj 24.5 3 2 0 1 0 0.5 0
cj−Zj 0 0 0 -1 0 -0.5
0
0 x5 8 0 0 0 -3 1 0 5
2 x2 6 0 1 0 -1 0 0 2
3 x1 4 1 0 0 1 0 0 -1
0 x3 4 0 0 1 2 0 0 -5
0 x6 1 0 0 0 0 0 1 -2
Zj 24 3 2 0 1 0 0 1
cj−Zj 0 0 0 -1 0 0 -1
- 97 -
INVESTIGAÇÃO OPERACIONAL
Finalmente chegamos a uma solução cujos valores das variáveis inteiras são
números inteiros, como tal, solução óptima do problema de programação
linear inteira inicial, com x1 = 4 , x2 = 6 e Z = 24 (ponto "C" da
figura 13). Se pretendessemos representar graficamente as restrições de
corte, teríamos que explicitar as restrições em ordem a x1 e x2.
x3 = 26 − x1 − 3x2 e x4 = 14 − 2x1 − x2
x2 2 1
x1
FIGURA 13
- 98 -
João M. C. Estêvão - EST - UAlg
Este problema foi estudado por Gomory que desenvolveu uma restrição de
corte que contempla esta possibilidade, do seguinte modo
n
− ∑ α ij x Nj ≤ − fi
j=1
em que
a ij ⇐ a ij ≥ 0
se x Nj é contínua
fi
1 − f a ij ⇐ a ij < 0
i
α ij =
f ij ⇐ f ij ≤ f i
se x Nj é inteira
fi
(
1 − f 1 − f ij ) ⇐ f ij > f i
i
EXEMPLO 15
- 99 -
INVESTIGAÇÃO OPERACIONAL
Resolução do exemplo 15
Zj 0 0 0 0 0 0 0
cj−Zj 2 1
4 0 0 0
0 x4 15.5 -0.4 1 0 1 0 0
0 x5 73 -1 5 0 0 1 -1
4 x3 5.5 1 -0.5 1 0 0 0.5
Zj 22 4 -2 4 0 0 2
cj−Zj -2
3 0 0 0 -2
- 100 -
João M. C. Estêvão - EST - UAlg
cj 2 1 4 0 0 0 0
cB xB x1 x0 x2 x3 x4 x5 x6 x7
0 x4 0.9 -0.2 0 0 1 -0.2 0.2 0
1 x2 14.6 -0.2 1 0 0 0.2 -0.2 0
4 x3 12.8 0.9 0 1 0 0.1 0.4 0
0 x7 -0.6 -0.3 0 0 0 -0.2 -0.3 1
Zj 65.8 3.4 1 4 0 0.6 1.4 0
cj−Zj -1.4 0 0 0 -0.6
-1.4 0
- 101 -
INVESTIGAÇÃO OPERACIONAL
P.L.1
x Bi ≤ [x Bi*] x Bi ≥ [x Bi*] + 1
P.L.2 P.L.3
- 102 -
João M. C. Estêvão - EST - UAlg
EXEMPLO 16
Resolução do exemplo 16
- 103 -
INVESTIGAÇÃO OPERACIONAL
cj 4 5 0 0 0 -M
cB xB x0 x1 x2 x3 x4 x5 x6
0 x3 48 1 2 1 0 0 0
0 x4 23 4 -2 0 1 0 0
-M x6 11 1 1 0 0 -1 1
Zj -11M -M -M 0 0 M -M
cj−Zj M+4 M+5
0 0 -M 0
0 x3 26 -1 0 1 0 2 -2
0 x4 45 6 0 0 1 -2 2
5 x2 11 1 1 0 0 -1 1
Zj 55 5 5 0 0 -5 5
cj−Zj -1 0 0 0
5 -M-5
0 x5 13 -0.5 0 0.5 0 1 -1
0 x4 71 5 0 1 1 0 0
5 x2 24 0.5 1 0.5 0 0 0
Zj 120 2.5 5 2.5 0 0 0
cj−Zj 1.5
0 -2.5 0 0 -M
x2 ≤ [16.9] e x2 ≥ [16.9] + 1
ou seja
x2 ≤ 16 e x2 ≥ 17
- 104 -
João M. C. Estêvão - EST - UAlg
-0.3 0 0
- 105 -
INVESTIGAÇÃO OPERACIONAL
cj 4 5 0 0 0 0
cB xB x0 x1 x2 x3 x4 x5 x6
0 x5 18.75 0 0 0 0.25 1 1.5
4 x1 13.75 1 0 0 0.25 0 0.5
5 x2 16 0 1 0 0 0 1
0 x3 2.25 0 0 1 -0.25 0 -2.5
Zj 135 4 5 0 1 0 7
cj−Zj 0 0 0 -1 0 -7
Verifica-se, novamente, que esta solução não é inteira. Dado que x1 tem
valor fraccionário logo vai originar dois novos sub-programas
correspondentes à adição das restrições
x1 ≤ 13 e x1 ≥ 14
Considere-se o sub-problema obtido pela adição da nova restrição x1 ≤ 13,
designe-se por P.L. 3. Uma nova sequência de quadros é obtida se
aproveitarmos o quadro anterior.
cj 4 5 0 0 0 0 0
cB xB x0 x1 x2 x3 x4 x5 x6 x7
0 x5 18.75 0 0 0 0.25 1 1.5 0
4 x1 13.75 1 0 0 0.25 0 0.5 0
5 x2 16 0 1 0 0 0 1 0
0 x3 2.25 0 0 1 -0.25 0 -2.5 0
0 x7 13 1 0 0 0 0 0 1
0 x5 18.75 0 0 0 0.25 1 1.5 0
4 x1 13.75 1 0 0 0.25 0 0.5 0
5 x2 16 0 1 0 0 0 1 0
0 x3 2.25 0 0 1 -0.25 0 -2.5 0
0 x7 -0.75 0 0 0 -0.25 0 -0.5 1
Zj 135 4 5 0 1 0 7 0
cj−Zj 0 0 0 -1
0 -7 0
- 106 -
João M. C. Estêvão - EST - UAlg
cj 4 5 0 0 0 0 0
cB xB x0 x1 x2 x3 x4 x5 x6 x7
0 x5 18 0 0 0 0 1 1 1
4 x1 13 1 0 0 0 0 0 1
5 x2 16 0 1 0 0 0 1 0
0 x3 3 0 0 1 0 0 -2 -1
0 x4 3 0 0 0 1 0 2 -4
Zj 132 4 5 0 0 0 5 4
cj−Zj 0 0 0 0 0 -5 -4
Passa-se em seguida para outro ramo, por exemplo o ramo adjacente a este.
Para tal vamos aproveitar o quadro óptimo do P.L.2. A este quadro
adiciona-se a restrição x1 ≥ 14. A equação correspondente será
−x1 + x7 = − 14
cj 4 5 0 0 0 0 0
cB xB x0 x1 x2 x3 x4 x5 x6 x7
0 x5 18.75 0 0 0 0.25 1 1.5 0
4 x1 13.75 1 0 0 0.25 0 0.5 0
5 x2 16 0 1 0 0 0 1 0
0 x3 2.25 0 0 1 -0.25 0 -2.5 0
0 x7 -14 -1 0 0 0 0 0 1
0 x5 18.75 0 0 0 0.25 1 1.5 0
4 x1 13.75 1 0 0 0.25 0 0.5 0
5 x2 16 0 1 0 0 0 1 0
0 x3 2.25 0 0 1 -0.25 0 -2.5 0
0 x7 -0.25 0 0 0 0.25 0 0.5 1
Zj 135 4 5 0 1 0 7 0
cj−Zj 0 0 0 -1 0 -7 0
- 107 -
INVESTIGAÇÃO OPERACIONAL
Neste último quadro não existe nenhum coeficiente a5j < 0, logo o dual é
ilimitado e o primal impossível. Este ramo está limitado por um problema
impossível.
1 Z = 141.3
X 1 = 14.2
X 2 = 16.9
x 2 ≤ 16 x 2 ≥ 17
2 Z = 135 5
X 1 =13.75
X 2 = 16
?
x 1 ≤ 13 x 1 ≥ 14
3 Z = 132 4
X 1 = 13
X 2 = 16
Imp.
cj 4 5 0 0 0 0
cB xB x0 x1 x2 x3 x4 x5 x6
0 x5 20.1 0 0 0.6 0.1 1 0
4 x1 14.2 1 0 0.2 0.2 0 0
5 x2 16.9 0 1 0.4 -0.1 0 0
0 x6 -17 0 -1 0 0 0 1
0 x5 20.1 0 0 0.6 0.1 1 0
4 x1 14.2 1 0 0.2 0.2 0 0
5 x2 16.9 0 1 0.4 -0.1 0 0
0 x6 -0.1 0 0 0.4 -0.1 0 1
Zj 141.3 4 5 2.8 0.3 0 0
cj−Zj 0 0 -2.8 -0.3
0 0
- 108 -
João M. C. Estêvão - EST - UAlg
cj 4 5 0 0 0 0
cB xB x0 x1 x2 x3 x4 x5 x6
0 x5 20 0 0 1 0 1 1
4 x1 14 1 0 1 0 0 2
5 x2 17 0 1 0 0 0 -1
0 x4 1 0 0 -4 1 0 -10
Zj 141 4 5 4 0 0 3
cj−Zj 0 0 -4 0 0 -3
- 109 -
INVESTIGAÇÃO OPERACIONAL
1 Z = 141.3
X 1 = 14.2
X 2 = 16.9
x 2 ≤ 16 x 2 ≥ 17
2 Z = 135 5 Z = 141
X 1 =13.75 X 1 = 14 ← Solução
X 2 = 16 X 2 = 17
x 1 ≤ 13 x 1 ≥ 14
3 Z = 132 4
X 1 = 13
X 2 = 16
Imp.
- 110 -
João M. C. Estêvão - EST - UAlg
- 111 -
INVESTIGAÇÃO OPERACIONAL
- 112 -
João M. C. Estêvão - EST - UAlg
BIBLIOGRAFIA
- 113 -
INVESTIGAÇÃO OPERACIONAL
- 114 -
João M. C. Estêvão - EST - UAlg
ANEXO
-i-
INVESTIGAÇÃO OPERACIONAL
CAPÍTULO 2
2.1. x1 - nº de betoneiras grandes x2
x2 - nº de betoneiras pequenas
1
C x1
O A
2.2. x1 - nº de azulejos A
x2 - nº de azulejos B
Solução óptima: 4
x1 = 34000 un. x1
x2 = 7000 un. O
Z = 1475000 escudos
- ii -
João M. C. Estêvão - EST - UAlg
x2
2.3. x1 - nº de vivendas 2
1
x2 - nº de apartamentos
4
Solução óptima:
x1 = 350 un.
x2 = 540 un.
Z = 4907500 contos 3
O x1
x2
2.4. x1 - peso de produto 1
x2 - peso de produto 2
Solução óptima:
x1 = 0.82 kg 1
x2 = 0.19 kg
Z = 436 escudos
x1
O 2
- iii -
INVESTIGAÇÃO OPERACIONAL
2.5. x1 - nº de portas x2
x2 - nº de janelas
1
s.a
x1 ≤ 3
x2 ≤ 5
4x1 + 3x2 ≤ 24
x1 , x2 ≥ 0 2
Soluções óptimas:
x1 = 3 un. e x2 = 4 un. ou
x1 = 2.25 un. e x2 = 5 un. ou
combinações lineares das duas. x1
Z = 72 contos O
x1 + x2 ≤ 800
2x1 + 3x2 ≤ 1920
x1 + x2 ≥ 240 2
5
x1 − 4x2 ≤ 0
x1 − x2 ≥ 0
x1 , x2 ≥ 0 3
Solução óptima:
x1 = 480 un.
x2 = 320 un.
Z = 1216000 escudos x1
O
- iv -
João M. C. Estêvão - EST - UAlg
max. Z = x1 + 1.4x2 x2
s.a 6
x1 + x2 ≤ 110
20x1 + 40x2 ≥ 2000 1
x1 − 3x2 ≤ 0 3
x1 ≥ 35 4
x2 ≥ 25 5
x1 , x2 ≥ 0
Solução óptima:
x1 = 80 un. x1
O
x2 = 30 un.
Z = 122
2.8. x1 - % da liga 1
x2 - % da liga 2 x2
min. Z = 38x1 + 40x2 7
2
s.a
2x1 + 2.5x2 ≥ 1.8
6
x1 + 1.5x2 ≥ 0.9
x1 + 1.5x2 ≤ 1.2
3x1 + 4x2 ≥ 3.2
3x1 + 4x2 ≤ 3.5
290x1 + 345x2 ≥ 310 x1
x1 , x2 ≥ 0 O 1 5
Solução óptima:
x1 = 0.567
x2 = 0.422
Z = 38.422 escudos
-v-
INVESTIGAÇÃO OPERACIONAL
Solução óptima: x1
x1 = 35 ton. O
x2 = 15 ton.
Z = 477250 escudos
x1 + x2 ≥ 75
x1 ≤ 65
x2 ≤ 45
x1 + x2 ≤ 80
−x1 + 3x2 ≥ 0 5 3
x1 , x2 ≥ 0
Solução óptima: x1
x1 = 56.25 m3/h O
4
x2 = 18.75 m3/h
Z = 2625 escudos
- vi -
João M. C. Estêvão - EST - UAlg
s.a
20x1 + 18x2 ≤ 6000
1
20x2 ≤ 1800
x1 ≤ 250
x2 ≤ 140 4
x1 , x2 ≥ 0 2
x1
O
Solução óptima:
x1 = 219 ton.
x2 = 90 ton.
Z = 22749 contos
x2
2.12. x1 - área habitacional
x2 - área comercial 5
3
max. Z = 150x1 + 250x2
s.a
x1 + x2 ≤ 10000
x1 − 2x2 ≥ 0
x1 + x2 ≥ 8000
x1 − 4x2 ≤ 0 2
x1 ≥ 6000
x1 , x 2 ≥ 0
4
Solução óptima:
x1 = 6666.67 m2
x2 = 3333.33 m2 x1
Z = 1833333.33 contos O
- vii -
INVESTIGAÇÃO OPERACIONAL
CAPÍTULO 3
3.1.
a) Convexo
b) Não convexo
c) Não convexo
d) Não convexo
e) Convexo
f) Convexo
3.3.
a) x4 = 4 ; x5 = 2 e x6 = 0
b) x2 = 0.5 ; x4 = 3 e x6 = 0
c) x1 = 0 ; x2 = 0.5 e x4 = 3
d) x1 = 0 ; x4 = 4 e x5 = 2
e) x3 = 0 ; x4 = 4 e x5 = 2
f) x2 = 0.5 ; x3 = 0 e x4 = 3
Todas as soluções anteriores são básicas degeneradas.
3.4.
a=1 e b=8
CAPÍTULO 4
4.1.
a) x1 = 0 ; x2 = 2 e Z = 20
b) x1 = 4 ; x2 = 0 ; x3 = 0 e Z = −8
c) Problema ilimitado
d) x1 = 2 ; x2 = 0 ; x3 = 4 ; x4 = 0 e Z = 14
- viii -
João M. C. Estêvão - EST - UAlg
4.2.
a) x1 = 14.25 ; x2 = 0 ; x3 = 2.25 e Z = 120.75
b) x1 = 0 ; x2 = 20 ; x3 = 21 e Z = −148
c) x1 = 5.2 ; x2 = 4.2 ; x3 = 29.6 ; x4 = 3.4 e Z = 22
d) Problema impossível
e) x1 = 2.72 ; x2 = 1.8 ; x3 = 1.28 ; x4 = 1.6 e Z = −6.8
f) Problema ilimitado
4.3.
a) x1 = 17.6 ; x2 = 15.6 ; x3 = 0 e Z = −29.2
b) Problema impossível
c) x1 = 10 ; x2 = 15 ; x3 = 0 ; x4 = 8.5 e Z = 65.5
d) x1 = 10 ; x2 = 8 ; x3 = 4 e Z = 38
x1 = 32 ; x2 = 6 ; x3 = 0 e Z = 38
e) x1 = 10 ; x2 = 60 ; x3 = 20 ; x4 = 0 e Z = 220
f) x1 = 21.2 ; x2 = 10.3 ; x3 = 8.3 e Z = 1.4
- ix -
INVESTIGAÇÃO OPERACIONAL
CAPÍTULO 5
5.1.
a) min. W = 13y1 + 55y2 b) max. W = 45y2 + 2y3
s.a s.a
3y1 + y2 ≥ 7 y1 + 3y2 + y3 ≤ 5
3y1 + 8y2 ≥ 1 y1 + 7y2 − y3 ≤ 3
y1 , y2 ≥ 0 y1 , y2 , y3 ≥ 0
s.a s.a
y1 + 2y2 + 3y3 ≥ 1 y1 + y2 ≤ 1
y1 + 5y3 ≥ −2 −y1 + y2 ≤ 0
y1 − y2 ≥ 4 4y2 + y3 ≤ −3
y1 , y2 ≥ 0 ; y3 ≤ 0 y1 , y2 ≥ 0 ; y3 ≤ 0
5.2.
a) x1 = 2 ; x2 = 8 e Z = 84
b) Problema impossível
-x-
João M. C. Estêvão - EST - UAlg
c) x1 = 11 ; x2 = 0 ; x3 = 0 e Z = −22
x1 = 9.8 ; x2 = 2.4 ; x3 = 0 e Z = −22
d) x1 = 10 ; x2 = 9 ; x3 = 5 e Z = −29
e) x1 = 15.5 ; x2 = 7 ; x3 = 0 e Z = 70.5
f) x1 = 24 ; x2 = 28 ; x3 = 8 e Z = 88
x1 = 24 ; x2 = 0 ; x3 = 64 e Z = 88
CAPÍTULO 7
7.1.
a) x1 = 4 ; x2 = 0 e Z = 36
b) x1 = 90 ; x2 = 1 ; x3 = 8 e Z = 641
c) x1 = 1 ; x2 = 6 ; x3 = 10 e Z = −15
d) x1 = 75 ; x2 = 50 ; x3 = 3 e Z = 2274
e) x1 = 14 ; x2 = 13.1 e Z = −55.1
f) x1 = 56 ; x2 = 32 ; x3 = 117.5 e Z = 1911
g) x1 = 0 ; x2 = 33 ; x3 = 16.8 e Z = 41.4
h) x1 = 11 ; x2 = 27 ; x3 = 24.85 e Z = 123.55
- xi -