50% acharam este documento útil (2 votos)
665 visualizações

PNL Exercicios

Este documento fornece uma série de exercícios sobre programação não linear para serem resolvidos. Inclui exercícios sobre métodos como bissecção, gradiente, multiplicadores de Lagrange, condições de Karush-Kuhn-Tucker e conceitos fundamentais de programação não linear como convexidade e matriz hessiana. O objetivo é que os alunos resolvam os exercícios para melhorar sua capacidade de identificar e resolver problemas de otimização não linear.

Enviado por

Graziela Lima
Direitos autorais
© © All Rights Reserved
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
50% acharam este documento útil (2 votos)
665 visualizações

PNL Exercicios

Este documento fornece uma série de exercícios sobre programação não linear para serem resolvidos. Inclui exercícios sobre métodos como bissecção, gradiente, multiplicadores de Lagrange, condições de Karush-Kuhn-Tucker e conceitos fundamentais de programação não linear como convexidade e matriz hessiana. O objetivo é que os alunos resolvam os exercícios para melhorar sua capacidade de identificar e resolver problemas de otimização não linear.

Enviado por

Graziela Lima
Direitos autorais
© © All Rights Reserved
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
Você está na página 1/ 85

INVESTIGAÇÃO OPERACIONAL

PROGRAMAÇÃO NÃO LINEAR

(Exercícios)
( Texto revisto para o ano lectivo 2001-2002 )

António Carlos Morais da Silva


Professor de I.O.
Recomendações

1. Fazer dez exercícios ou o mesmo exercício 10 vezes ?

Em regra obtém-se melhor rendimento executando várias vezes o mesmo


exercício, com critério e sentido da descoberta, do que resolvendo vários
exercícios com o objectivo enganador de “acertar na solução “.

2. Exercício feito, tarefa pronta ?

Rever criticamente a “história” da execução de um exercício melhora


substancialmente a capacidade pessoal de identificação dos problemas e de
arquitectar o plano de aplicação do “ferramental” técnico necessário (o quê ;
quando ; como).
A Programação Matemática apela ao “engenho e arte” de quem quer mesmo
utilizá-la.

3. Sim ou não ao software da disciplina ?

O “passado escolar” ensina que o recurso intensivo ao software académico,


desenhado especificamente para apoio do ensino desta disciplina, traduz-se
rapidamente na melhoria do rendimento porque além de permitir exercitar a
curiosidade intelectual (vertente fundamental) garante a obtenção rápida de
respostas rigorosas e detalhadas para exercícios propostos pelo professor ou
gizados pelo próprio aluno (aumento da produtividade).
Exercícios de PNL

1. Métodos da Bissecção e do Gradiente

1.1. Calcular o Máximo livre de f(x) = - 2x6 - 3x4 + 12x pelo Método da Bissecção ( tolerância = 0.01)

1.2. Calcular o Máximo livre de f(x) = - 0.25x4 + x3 - 2x2 + 2x pelo Método da Bissecção ( tolerância = 0.02)

1.3. Calcular o Máximo livre de f(x1,x2) = 4x1 + 6x2 - 2x12 - 2x1x2 - 2x22 pelo Método do Gradiente

1.4. Calcular o Máximo livre de f (x1 , x2) = 2x1 x2 + 2x2 - x12 - 2x2 2 pelo Método do Gradiente.

1.5. Calcular o Máximo livre de f (x1 , x2) = 8x1 - x12 - 12x2 - 2x22 + 2x1x2 pelo Método do Gradiente.

1.6. Calcular o Mínimo livre de f (x1 , x2) = x12x22 + 2x12 + 2x22 - 4x1 + 4x2 pelo Método do Gradiente.

1.7. Elabore um fluxograma do Método da Bissecção.

1.8. Fundamente e descreva o Método do Gradiente.

INVESTIGAÇÃO OPERACIONAL (MS) 1-1


Exercícios de PNL

2. Método dos Multiplicadores de Lagrange

2.1. Descrever o Método dos Multiplicadores de Lagrange à luz do respectivo Teorema.

2.2. Se (X,λ) são soluções das condições de Lagrange para um problema de PNL (maximização) só com restrições
de igualdade, pode concluir-se que são todos pontos onde a função atinge o máximo ?

2.3. Calcular pelo Método dos Multiplicadores de Lagrange:

Max f(x1,x2) = x1x2 + 2x1

s.a. 4x1 + 2x2 = 60

2.4. Deduza as condições de 1ª ordem para extremo de:


Max f(x)
s.a. x ≥ 0

2.5. Usando o Método dos Multiplicadores de Lagrange deduza as condições de 1ª ordem para extremo de:
Max f(x)
s.a. g(x) ≤ b

2.6. Calcular pelo Método dos Multiplicadores de Lagrange:

Max f(x1,x2) = 5x1 - 2x12 + 3x1x2 - 2x22

s.a. x1 + x2 ≤ 2

2.7. Calcular pelo Método dos Multiplicadores de Lagrange:

Max f(x1,x2) = 3x12 + x22 + 2x1x2 + 6x1 + 2x2

s.a. 2x1 - x2 = 4
O ponto óptimo é extremo global da função ?

2.8. Calcular pelo Método dos Multiplicadores de Lagrange o extremo da função:

Min f(x1,x2) x1 - x2

s.a. x12 + x22 = 1

INVESTIGAÇÃO OPERACIONAL (MS) 2-1


Exercícios de PNL

3. Programação Não Linear (alguns conceitos fundamentais)

3.1. Classifique e compare as soluções de modelos de PL e de PNL.

3.2. A solução óptima de um modelo de PNL pode ser atingida em ponto da fronteira do convexo de soluções ?

3.3. A solução óptima de um modelo de PNL pode ser atingida em ponto interior do convexo de soluções ?

3.4. Em PNL o espaço de solução pode não ser convexo ?

3.5. Partindo das respostas ás 4 questões anteriores, aponte as principais diferenças entre soluções de PL e PNL.

3.6. Considere o modelo de PNL:


Max f(x1 , x2 , ... . xn)

s.a. g1 (x1 , x2 , ... . xn) (≤,=,≥) b1

g2 (x1 , x2 , ... . xn) (≤,=,≥) b2

.............................. ................ .....


gm(x1 , x2 , ... . xn) (≤,=,≥) bm

Admitindo que o espaço de soluções é convexo em que circunstâncias pode afirmar-se que um máximo local
da função-objectivo é solução óptima do modelo de PNL?

3.7. Apresente a matriz Hessiana da função f = (x13 + 2x1x2 + x24)

3.8. Considere a função não linear f(x1 , x2 , ... . xn) com segundas derivadas parciais contínuas no conjunto “S”.

Indique as condições a que deve obedecer a matriz Hessiana da função para poder concluir que esta é côncava.

3.9. Considere a função não linear f(x1 , x2 , ... . xn) com segundas derivadas parciais contínuas no conjunto “S”.

Indique as condições a que deve obedecer a matriz Hessiana da função para poder concluir que esta é
convexa.

3.10. Uma empresa produz dois modelos M1 e M2 da mesma máquina.

As funções de procura são as seguintes:


modelo M1 : 150 - 2p1 - p2

modelo M2 : 200 - p1 - 3p2

em que p1 e p2 são os preços de venda de cada um dos modelos.

Calcular os preços de venda que maximizam a receita.

3.11. Verificar se a função f= x12 + x22 + 2x32 - x1x2 - x2x3 - x1x3 é convexa.

3.12. Considere a função quadrática f(x1,x2) = 2x1 x2 + 3x2 - x12 - x22

a. Calcular o gradiente da função no ponto X1 = (2,3)T.

b. Sendo f= 8 no ponto anterior, calcular o valor aproximado da função no ponto X2 = (2.1,3.2)T com uma

série de Taylor.

INVESTIGAÇÃO OPERACIONAL (MS) 3-1


Exercícios de PNL

3.13. Considerar a função quadrática anterior.


Calcular o vector “V” resultante da diferença dos gradientes da função nos pontos X1 e X2 do problema

anterior recorrendo exclusivamente à matriz hessiana da função.

3.14. Considere a função f (x1,x2) = 15x1 + 30x2 - 4x1x2 - 2x12 - 4x22

a. Apresentar a função na forma quadrática.

3-2 INVESTIGAÇÃO OPERACIONAL (MS)


Exercícios de PNL

4. Condições de Karush-Kuhn-Tucker (condições KKT)

4.1. Deduza as condições KKT a partir da função de Lagrange:

Max f(x1,x2) = 2x1 + 3x2 - x12 - x22

s.a. 2x1 + 2x2 ≤ 4

4.2. Deduza as condições KKT a partir da função de Lagrange:

Max f(x1,x2) = 2x1 + 3x2 - x12 - x22

s.a. 2x1 + 2x2 = 4

4.3. Deduza as condições KKT a partir da função de Lagrange e calcule a solução óptima.

Min f(x1,x2) x12 + 2x1 + x22 - 4x2 + 5

s.a. x1 - 2 ≤ 0

x2 - 1 ≤ 0

x1,x2 ≥ 0

4.4. Considere o seguinte problema de programação não linear :

Max f(x1,x2) = ln (x1 +1) + x2

s.a. x12 + x22 = 1

x1 , x2 ≥ 0

a. Estabeleça as condições KKT


b. Calcule a solução óptima.

4.5. Considere o seguinte problema de programação não linear :

Max f(x1,x2) 2x1 + 3x2 - x12 - x22

s.a. 2x1 + 2x2 ≤ 4

x1,x2 ≥ 0

a. Demonstre que o problema é de programação convexa.


b. Calcule a solução óptima pelo Método do Simplex modificado por Wolfe.
c. Verifique geometricamente a solução calculada (a figura apresenta a projecção horizontal das curvas de
nível da função).

INVESTIGAÇÃO OPERACIONAL (MS) 4-1


Exercícios de PNL

4.6. Considere o seguinte problema de programação não linear :

Max f(x1,x2) = 15x1 + 30x2 + 4x1x2 - 2x12 - 4x22

s.a. x1 + 2x2 ≤ 30

x1,x2 ≥ 0

a. Demonstre que o problema é de programação convexa.


b. Calcule a solução óptima pelo Método do Simplex modificado por Wolfe.
c. Verifique geometricamente a solução calculada (a figura apresenta a projecção horizontal das curvas de
nível da função).

4.7. Considere o seguinte problema de programação não linear :

Max f(x1,x2) = ln (x1 +1) - x22

s.a. x1 + 2x2 ≤ 3

x1 , x2 ≥ 0

a. Demonstre que o problema é de programação convexa.


b. Estabeleça as condições KKT.
c. Demonstre que o ponto de coordenadas (3,0) é o ponto onde f(x1,x2) atinge o máximo.

4.8. Considere o seguinte problema de programação convexa :

Min f(x1,x2x3) = 2x1 + x23 + x32

s.a. x12 + 2x22 + x32 ≥ 4

xj ≥ 0 (j=1 a 3)

a. Recorrendo ás condições KKT verifique se x1=1, x2=1, x3=1 pode ser a solução óptima.

4-2 INVESTIGAÇÃO OPERACIONAL (MS)


Exercícios de PNL

4.9. Descrever a solução óptima de Max f(x) para a ≤ x ≤ b recorrendo ás condições KKT sabendo que f´(x) existe
para qualquer valor no intervalo [ a,b ].

4.10. Considere o seguinte problema de programação não linear :

Min f(x1,x2) = (x1 -1)2 + (x2-2)2 - 3(x1+x2)

s.a. 4x1 + x2 ≤ 20

x1 + 4x2 ≤ 20

x1 , x2 ≥ 0

a. Sabendo que o ponto óptimo X* não pertence à fronteira do convexo de soluções, calcule a solução óptima
com base nas condições KKT.
b. Verifique geometricamente a solução calculada (a figura apresenta a projecção horizontal das curvas de
nível da função).

20

15

10

-5

-10
-10 -5 0 5 10 15 20

4.11. Considere o seguinte problema de programação convexa :

Min f(x1,x2) = x12 + 2x1 + 2x1x2 + 4x22

s.a. 2x1 + x2 ≥ 10

x1 + 2x2 ≥ 10

x1,x2 ≥ 0

a. Calcule a solução óptima pelo Método do Simplex modificado por Wolfe.

INVESTIGAÇÃO OPERACIONAL (MS) 4-3


Exercícios de PNL

4.12. Considere o seguinte problema de programação não linear :

Min f(x1,x2) = 2x12 + x22

s.a. x1 + x2 = 10

x1,x2 ≥ 0

a. Demonstre que o ponto de coordenadas (10/3 , 20/3) é o ponto onde f(x1,x2) atinge o mínimo.

b. Calcule a solução óptima pelo Método do Simplex modificado por Wolfe.


c. Verifique geometricamente a solução calculada (a figura apresenta a projecção horizontal das curvas de
nível da função).

4.13. Considere o seguinte problema de PNL :

Max f(x1,x2) = 3x1 + x2

s.a. x12 + x22 ≤ 5

x1 - x2 ≤ 1

a. Calcule a solução óptima recorrendo exclusivamente ás condições KKT.

4.14. Considere o seguinte problema de PNL :

Max f(x) = x1

s.a. x2 - (1 - x1 )3 ≤ 0

x1 ,x2 ≥ 0

a. Verifique que as condições KKT “falham “no ponto óptimo e explique porquê.

4-4 INVESTIGAÇÃO OPERACIONAL (MS)


Exercícios de PNL

4.15. Descreva o Método de Lemke (utilizado na Programação Quadrática.).

4.16. Calcule a solução óptima do exercício 4.5 utilizando o Método de Lemke.

4.17. Calcule a solução óptima do exercício 4.6 utilizando o Método de Lemke.

4.18. Calcule a solução óptima do exercício 4.11 utilizando o Método de Lemke.

INVESTIGAÇÃO OPERACIONAL (MS) 4-5


Exercícios de PNL

5. Métodos de Frank-Wolfe e SUMT

5.1. Descreva e fundamente o método de Frank-Wolfe (direcções viáveis).

5.2. Considere o seguinte problema de programação convexa :

Min f(x1,x2) = x12 - 6x1 + x23 - 3x2

s.a. x1 + x2 ≤ 1

x1,x2 ≥ 0

a. Determine a solução óptima pelo método de Frank-Wolfe.

5.3. Considere o seguinte problema de programação não linear:

Max f(x1,x2) = 15x1 + 30x2 + 4x1x2 - 2x12 - 4x22

s.a. x1 + 2x2 ≤ 30

x1,x2 ≥ 0

a. Considere x1=5 e x2=5 como ponto tentativa inicial. Efectue 3 iterações do método de Frank-Wolfe.

5.4. Considere o seguinte problema de programação não linear :

Max f(x1,x2) = 32x1 - x14 + 8x2 - x22

s.a. 3x1 + x2 ≤ 7

x1 - x2 ≤ 1

x1,x2 ≥ 0

a. Calcule a solução óptima recorrendo ao método de Frank-Wolfe, utilizando o programa distribuído


(BL.EXE).

5.5. Descreva e fundamente o método SUMT (Sequential Unrestricted Minimization Technique).

5.6. Considere o seguinte problema de programação não linear :

Max f(x1,x2) = 32x1 - x14 + 8x2 - x22

s.a. 3x1 + x2 ≤ 7

x1 - x2 ≤ 1

x1,x2 ≥ 0

a. Calcule a solução óptima recorrendo ao método SUMT, utilizando o programa distribuído (BL.EXE).

INVESTIGAÇÃO OPERACIONAL (MS) 5-1


Exercícios de PNL

6. Modelos de Programação Não Linear

6.1. Uma empresa pretende iniciar a produção e venda de dois novos computadores A e B com preços de venda p1
e p2 respectivamente.
A relação entre o número de computadores a produzir do tipo A e os preços de venda é a seguinte:
x1 = 4000 - 10 p1 + p2

Notar que se o preço de venda p1 sobe 1 unidade o total da produção reduz-se em 10 computadores; se no

computador do tipo B aumenta o preço de venda em 1 unidade, tal conduz à produção de mais um
computador do tipo A.
A relação entre o número de computadores a produzir do tipo B e os preços de venda é a seguinte:
x2 = 2000 - 9p2 + 0.8 p1

Das disponibilidades escassas indicam-se as necessidades para cada um dos tipos de aparelho:

Mão de obra (horas) Chips


Tipo A 2 3
Tipo B 3 1
Disponibilidade 5000 4500

a. Calcular o Plano Óptimo de Produção ( e respectivos preços de venda) recorrendo ás condições KKT.
b. Indicar o contributo interno de 1 hora adicional de mão de obra.
c. Se a empresa decidir não produzir e vender o stock de chips qual o preço a praticar ? Justifique.

6.2. Uma empresa pretende iniciar a produção e venda de três novos tipos de secretária A, B e C com preços de
venda respectivamente de p1 ,p2 e p3 para o que pode disponibilizar, mensalmente, 150 horas/máquina e 280

horas de mão de obra.


As relações entre nível da produção e preços de venda são as seguintes:

• nível da produção de A = 18 - p1

• nível da produção de B = 9 + 1/3 p1 - p2

• nível da produção de C = 13 - p3

Os consumos por unidade produzida são os seguintes:

Tipo Horas/máquina Mão de obra (horas)


A 0.3 0.4
B 0.4 1
C 0.6 0.7

Os preços unitários de produção são, respectivamente, 5, 12 e 9 u.m.


a. Apresentar o modelo de PNL para calcular o Plano Óptimo de Produção.

6.3. Uma empresa tem disponíveis “T” horas de trabalho e “C” unidades monetárias sendo seu objectivo produzir
T2/3.C1/3 máquinas.
O custo a suportar por hora de trabalho é de 2 u.m. sendo de 1 u.m. por cada unidade de capital aplicado.
Disponibilizando 30 u.m. para a produção quantas máquinas podem ser produzidas?

6.4. Considere-se que no problema anterior se pretende produzir apenas 6 máquinas.

INVESTIGAÇÃO OPERACIONAL (MS) 6-1


Exercícios de PNL

Calcular o capital mínimo a disponibilizar para a produção.

6.5. Uma empresa produz a mesma máquina em Portugal e Espanha.


Se aplicar x1 unidades monetárias na promoção em Portugal a previsão de vendas é de 6x11/2.

Se aplicar x2 unidades monetárias na promoção em Espanha a previsão de vendas é de 4x21/2.

O lucro unitário é de 5 u.m. nos dois países.


a. Dispondo de 100 u.m. para promoção como pode a empresa maximizar o lucro?
b. Qual é o aumento de lucro associado ao aumento de 1 u.m. para promoção?

6.6. Uma empresa tem 2 clientes para o mesmo produto "A".


Se produzir x1 unidades para o cliente X, o preço de venda é de 70-4x1 u.m. ; se produzir x2 unidades para o

cliente Y, o preço de venda é de 150-15x2 u.m..

Para produzir P unidades tem um custo de 100 + 15P (P>0).


Quantas unidades produzir para cada um dos clientes ?

6-2 INVESTIGAÇÃO OPERACIONAL (MS)


INVESTIGAÇÃO OPERACIONAL

PROGRAMAÇÃO NÃO LINEAR

(Soluções dos exercícios)


( Texto revisto para o ano lectivo 2001-2002 )

António Carlos Morais da Silva


Professor de I.O.
Exercícios de PNL – Soluções detalhadas

1.

1.1.
Controlo da Tentativa Inicial
Método da Bissecção OK. df/dx em A é Positiva 12
OK
FUNÇÃO OK. df/dx em B é Negativa -468
Coeficientes Tolerância OK
Var. Coef. 0.01
x6 -2
x5 Pontos Tentativa SOLUÇÃO
x4 -3 A B
x3 0.00 2.00 f(x) = 7.8838682
x2 EXTREMO ÓPTIMO
x 12 0.8281250
Const. ABCISSA 0.8359375
0.8437500

Esq(Dir) Dir(Esq) Médio


ÁREA DE CÁLCULO Ponto "a" Ponto "b" M OK ? Valor f( M )
K (df/dx)M Lado de 0.000000 2.000000 1.0000000 Não 7.0000000
1 -12.00 b 0.000000 1.000000 0.5000000 Não 5.7812500
2 10.13 a 0.500000 1.000000 0.7500000 Não 7.6948242
3 4.09 a 0.750000 1.000000 0.8750000 Não 7.8438644
4 -2.19 b 0.750000 0.875000 0.8125000 Não 7.8671807
5 1.31 a 0.812500 0.875000 0.8437500 Não 7.8829082
6 -0.34 b 0.812500 0.843750 0.8281250 Não 7.8815042
7 0.51 a 0.828125 0.843750 0.8359375 Sim 7.8838682

Book Bissec.xls. Sheet Sol. 1.1

Analise o gráfico da função:

INVESTIGAÇÃO OPERACIONAL (MS) 1-1


Exercícios de PNL – Soluções detalhadas

1.2.
Controlo da Tentativa Inicial
Método da Bissecção OK. df/dx em A é Positiva 2,00
OK
FUNÇÃO OK. df/dx em B é Negativa -4,14
Coeficientes Tolerância OK
Var. Coef. 0,02
x6
x5 Pontos Tentativa SOLUÇÃO
x4 -0,25 A B
x3 1 0,00 2,40 f(x) = 0,7499805
x2 -2 EXTREMO ÓPTIMO
x 2 0,9750000
Const. ABCISSA 0,9937500
1,0125000

Esq(Dir) Dir(Esq) Médio


ÁREA DE CÁLCULO Ponto "a" Ponto "b" M OK ? Valor f( M )
K (df/dx)M Lado de 0,000000 2,400000 1,2000000 Não 0,7296000
1 -0,21 b 0,000000 1,200000 0,6000000 Não 0,6636000
2 0,46 a 0,600000 1,200000 0,9000000 Não 0,7449750
3 0,10 a 0,900000 1,200000 1,0500000 Não 0,7487484
4 -0,05 b 0,900000 1,050000 0,9750000 Não 0,7496874
5 0,03 a 0,975000 1,050000 1,0125000 Não 0,7499219
6 -0,01 b 0,975000 1,012500 0,9937500 Sim 0,7499805

Book Bissec.xls Sheet Sol. 1.2

Analise o gráfico da função:

1-2 INVESTIGAÇÃO OPERACIONAL (MS)


Exercícios de PNL – Soluções detalhadas

1.3. Considerando como ponto tentativa inicial X0 = (1,1) e a tolerância de 0.01, da aplicação do Método do

Gradiente resulta o seguinte:

Quadro 1 - Determinação das coordenadas de Xk+1 em ordem ao parâmetro “t”

Ponto Tentativa X0 Gradiente em X0 Abcissa de Xk+1 Ordenada de Xk+1


Iter. x1 x2 x1 x2 a bt c dt
1 1.00000 1.00000 -2.00000 0.00000 1.00000 -2.00000 1.00000 0.00000
2 0.50000 1.00000 0.00000 1.00000 0.50000 0.00000 1.00000 1.00000
3 0.50000 1.25000 -0.50000 0.00000 0.50000 -0.50000 1.25000 0.00000
4 0.37549 1.25000 -0.00195 0.24902 0.37549 -0.00195 1.25000 0.24902
5 0.37500 1.31262 -0.12523 -0.00048 0.37500 -0.12523 1.31262 -0.00048
6 0.34385 1.31250 -0.00042 0.06228 0.34385 -0.00042 1.31250 0.06228
7 0.34375 1.32815 -0.03129 -0.00009 0.34375 -0.03129 1.32815 -0.00009
8 0.33596 1.32813 -0.00008 0.01558 0.33596 -0.00008 1.32813 0.01558
9 0.33594 1.33203 -0.00780 0.00002
Book Gradient.xls Sheet 1.3

Na iteração 9 as derivadas parciais de f(x1,x2) têm valor absoluto inferior à tolerância 0.01 (termina processo

iterativo).

Solução : x1 = 0.33594 ; x2 = 1.33203 ; f (x1, x2 ) = 4.6663

Nota: A solução exacta é x1 = 1/3 ; x2 = 4/3 ; f(x1,x2) = 14/3.

Para cada uma das iterações foi organizada a função f (x1,x2) com x1 e x2 parametrizados e calculado

o seu máximo. Os resultados obtidos são apresentados no quadro seguinte:

Quadro 2 - Determinação do valor óptimo “t* ” onde f (x1,x2) atinge o máximo

Iter. t2 t Constante t* (óptimo) Valor de f(x1 , x2)


1 -8.000 4.000 4.0000 0.251 4.00000
2 -2.000 1.000 4.5000 0.251 4.50000
3 -0.500 0.250 4.6250 0.250 4.62500
4 -0.123 0.062 4.6562 0.252 4.65625
5 -0.031 0.016 4.6641 0.249 4.66406
6 -0.008 0.004 4.6660 0.252 4.66602
7 -0.002 0.001 4.6665 0.250 4.66650
8 0.000 0.000 4.6666 0.251 4.66663
Book Gradient.xls Sheet 1.3

INVESTIGAÇÃO OPERACIONAL (MS) 1-3


Exercícios de PNL – Soluções detalhadas

Nas figuras seguintes apresentam-se o gráfico da função e a projecção horizontal das curvas de nível da
função.

f(x1, x2)

x2

x1

x2

Máximo

x1

1-4 INVESTIGAÇÃO OPERACIONAL (MS)


Exercícios de PNL – Soluções detalhadas

1.4. Considerando como ponto tentativa inicial X0 = (0.1,0.1) e a tolerância de 0.01, da aplicação do Método do

Gradiente resulta o seguinte:


Quadro 1 - Determinação das coordenadas de Xk+1 em ordem ao parâmetro “t”

Ponto Tentativa X0 Gradiente em X0 Abcissa de Xk+1 Ordenada de Xk+1


Iter. x1 x2 x1 x2 a bt c dt
1 0.10000 0.10000 0.00000 1.80000 0.10000 0.00000 0.10000 1.80000
2 0.10000 0.27719 0.35438 1.09125 0.10000 0.35438 0.27719 1.09125
3 0.19784 0.57849 0.76128 0.08174 0.19784 0.76128 0.57849 0.08174
4 0.63738 0.62568 -0.02339 0.77203 0.63738 -0.02339 0.62568 0.77203
5 0.63175 0.81154 0.35959 0.01733 0.63175 0.35959 0.81154 0.01733
6 0.83351 0.82126 -0.02450 0.38197 0.83351 -0.02450 0.82126 0.38197
7 0.82785 0.90949 0.16327 0.01774 0.82785 0.16327 0.90949 0.01774
8 0.93952 0.92163 -0.03578 0.19253 0.93952 -0.03578 0.92163 0.19253
9 0.93230 0.96044 0.05628 0.02284 0.93230 0.05628 0.96044 0.02284
10 0.98625 0.98234 -0.00782 0.04315 0.98625 -0.00782 0.98234 0.04315
11 0.98469 0.99095 0.01252 0.00559 0.98469 0.01252 0.99095 0.00559
12 0.99707 0.99647 -0.00119 0.00824
Book Gradient.xls Sheet 1.4

Na iteração 12 as derivadas parciais de f(x1,x2) têm valor absoluto inferior à tolerância 0.01 (termina

processo iterativo)

Solução : x1 = 0.99707 ; x2 = 0.99647 ; f (x1 ,x2 ) = 0.99988


Nota : A solução exacta é x1 = 1 ; x2 = 1 ; f(x1,x2) = 1.

Para cada uma das iterações foi organizada a função f (x1,x2) com x1 e x2 parametrizados e calculado

o seu máximo. Os resultados obtidos são apresentados no quadro seguinte.


Quadro 2 - Determinação do valor óptimo “t* ” onde f (x1, x2) atinge o máximo

Iter. t2 t Constante t* (óptimo) Valor de f(x1 , x2)


1 -6.480 3.240 0.190 0.099 0.19000
2 -1.733 1.316 0.446 0.277 0.44615
3 -0.467 0.586 0.677 0.578 0.67744
4 -1.233 0.597 0.860 0.241 0.85975
5 -0.115 0.130 0.932 0.562 0.93216
6 -0.316 0.146 0.968 0.232 0.96790
7 -0.020 0.027 0.985 0.685 0.98514
8 -0.095 0.038 0.994 0.203 0.99354
9 -0.001 0.004 0.998 0.960 0.99764
10 -0.005 0.002 1.000 0.200 0.99967
11 0.000 0.000 1.000 0.990 0.99988
Book Gradient.xls Sheet 1.4

INVESTIGAÇÃO OPERACIONAL (MS) 1-5


Exercícios de PNL – Soluções detalhadas

Nas figuras seguintes apresentam-se o gráfico da função e a projecção horizontal das curvas de nível da
função.

f(x1, x2)

x2

x1

Máximo

1-6 INVESTIGAÇÃO OPERACIONAL (MS)


Exercícios de PNL – Soluções detalhadas

1.5. Considerando como ponto tentativa inicial X0 = (0.1,0.1) e a tolerância de 0.01, da aplicação do Método do

Gradiente resulta o seguinte:


Quadro 1 - Determinação das coordenadas de Xk+1 em ordem ao parâmetro “t”
Ponto Tentativa X0 Gradiente em X0 Abcissa de Xk+1 Ordenada de Xk+1
It x1 x2 x1 x2 a bt c dt
1 0,10000 0,10000 8,00000 -12,20000 0,10000 8,00000 0,10000 -12,20000
2 1,61563 -2,21133 0,34609 0,07656 1,61563 0,34609 -2,21133 0,07656
3 1,70891 -2,19069 0,20080 0,18058 1,70891 0,20080 -2,19069 0,18058
4 1,73636 -2,16600 0,19527 0,13673 1,73636 0,19527 -2,16600 0,13673
5 1,76458 -2,14624 0,17835 0,11413 1,76458 0,17835 -2,14624 0,11413
6 1,79036 -2,12975 0,15979 0,09970 1,79036 0,15979 -2,12975 0,09970
7 1,81346 -2,11533 0,14242 0,08825 1,81346 0,14242 -2,11533 0,08825
8 1,83376 -2,10275 0,12697 0,07853 1,83376 0,12697 -2,10275 0,07853
9 1,85162 -2,09171 0,11335 0,07007 1,85162 0,11335 -2,09171 0,07007
10 1,86734 -2,08199 0,10135 0,06264 1,86734 0,10135 -2,08199 0,06264
11 1,88119 -2,07343 0,09076 0,05609 1,88119 0,09076 -2,07343 0,05609
12 1,89342 -2,06587 0,08142 0,05032 1,89342 0,08142 -2,06587 0,05032
13 1,90439 -2,05909 0,07304 0,04514 1,90439 0,07304 -2,05909 0,04514
14 1,91409 -2,05309 0,06563 0,04056 1,91409 0,06563 -2,05309 0,04056
15 1,92281 -2,04771 0,05897 0,03644 1,92281 0,05897 -2,04771 0,03644
16 1,93053 -2,04294 0,05307 0,03280 1,93053 0,05307 -2,04294 0,03280
17 1,93747 -2,03864 0,04777 0,02952 1,93747 0,04777 -2,03864 0,02952
18 1,94372 -2,03478 0,04299 0,02657 1,94372 0,04299 -2,03478 0,02657
19 1,94935 -2,03130 0,03869 0,02391 1,94935 0,03869 -2,03130 0,02391
20 1,95434 -2,02822 0,03488 0,02156 1,95434 0,03488 -2,02822 0,02156
21 1,95883 -2,02544 0,03145 0,01944 1,95883 0,03145 -2,02544 0,01944
22 1,96289 -2,02294 0,02835 0,01752 1,96289 0,02835 -2,02294 0,01752
23 1,96654 -2,02068 0,02556 0,01580 1,96654 0,02556 -2,02068 0,01580
24 1,96984 -2,01864 0,02304 0,01424 1,96984 0,02304 -2,01864 0,01424
25 1,97276 -2,01683 0,02081 0,01286 1,97276 0,02081 -2,01683 0,01286
26 1,97540 -2,01520 0,01879 0,01161 1,97540 0,01879 -2,01520 0,01161
27 1,97779 -2,01373 0,01697 0,01049 1,97779 0,01697 -2,01373 0,01049
28 1,97994 -2,01240 0,01532 0,00947 1,97994 0,01532 -2,01240 0,00947
29 1,98189 -2,01119 0,01384 0,00855 1,98189 0,01384 -2,01119 0,00855
30 1,98365 -2,01011 0,01249 0,00772 1,98365 0,01249 -2,01011 0,00772
31 1,98523 -2,00913 0,01128 0,00697 1,98523 0,01128 -2,00913 0,00697
32 1,98666 -2,00824 0,01019 0,00630 1,98666 0,01019 -2,00824 0,00630
33 1,98796 -2,00744 0,00920 0,00569 1,98796 0,00920 -2,00744 0,00569
Book Gradient.xls Sheet 1.5

Na iteração 33 as derivadas parciais de f(x1,x2) têm valor absoluto inferior à tolerância 0.01 (termina

processo iterativo)
Solução : x1 = 1.98796 ; x2 = -2.00744 ; f (x1,x2) = 19,9999234

Nota : A solução exacta é x1 = 2 ; x2 = -2 ; f(x1,x2) = 20

Para cada uma das iterações foi organizada a função f (x1,x2) com x1 e x2 parametrizados e calculado

o seu máximo pelo método da Bissecção.

INVESTIGAÇÃO OPERACIONAL (MS) 1-7


Exercícios de PNL – Soluções detalhadas

Nas figuras seguintes apresentam-se o gráfico da função e a projecção horizontal das curvas de nível da
função.

f(x 1 , x 2)

x2

x1

Máximo

1-8 INVESTIGAÇÃO OPERACIONAL (MS)


Exercícios de PNL – Soluções detalhadas

1.6. Considerando como ponto tentativa inicial X0 = (0,0) e a tolerância de 0.01, da aplicação do Método do

Gradiente, na função simétrica, resulta o seguinte:


Quadro 1 - Determinação das coordenadas de Xk+1 em ordem ao parâmetro “t”

Ponto Tentativa X0 Gradiente em X0 Abcissa de Xk+1 Ordenada de Xk+1


Iter. x1 x2 x1 x2 a bt c dt
1 0.00000 0.00000 4.00000 -4.00000 0.00000 4.00000 0.00000 -4.00000
2 0.76800 -0.76800 0.02203 -0.02203 0.76800 0.02203 -0.76800 -0.02203
3 0.77111 -0.77111 -0.00143 0.00143 0.77111 -0.00143 -0.77111 0.00143
Book Gradient.xls Sheet 1.6

Na iteração 3 as derivadas parciais de -f(x1,x2) têm valor absoluto inferior à tolerância 0.01 (termina

processo iterativo)
Solução : x1 = 0.77111 ; x2 = -0.77111 ; f (x1 ,x2 ) = -3.437

Nota :Para cada uma das iterações foi organizada a função -f (x1,x2) com x1 e x2 parametrizados e calculado

o seu máximo. Os resultados obtidos são apresentados no quadro seguinte:


Quadro 2 - Determinação do valor óptimo “t* ” onde f(x1,x2) atinge o máximo

Iter. t4 t3 t2 t Constante t* (óptimo) Valor de f(x1 , x2)


1 -256.000 0.000 -64.000 32.000 0.000 0.192 0.00000
2 0.000 0.000 -0.003 0.001 3.437 0.141 -3.43681
3 0.000 0.000 0.000 0.000 3.437 0.141 -3.43688
Book Gradient.xls Sheet 1.6

INVESTIGAÇÃO OPERACIONAL (MS) 1-9


Exercícios de PNL – Soluções detalhadas

Nas figuras seguintes apresentam-se o gráfico da função e a projecção horizontal das curvas de nível da
função.

f(x1,x2)

x2

x1

1-10 INVESTIGAÇÃO OPERACIONAL (MS)


Exercícios de PNL – Soluções detalhadas

1.7. O método da bissecção determina a abcissa do extremo de uma função monovariável no intervalo [a,b].
Fluxograma do método:

Fixar tolerância “ε“


Escolher 2 pontos-tentativa "a" e "b" tal que:
f ´(a).f ´(b) < 0 (por exº f ´(a) > 0 e f ´(b) < 0)

a+b
m =
2

Sim
f ´(m) = 0 ?

Não

f ´(m) > 0 ? Sim a=m

Não

b=m

Não

a - b ≤ 2ε ?

Sim

Abcissa óptima = m
Fim

A figura seguinte visualiza os pontos “a” , “b” e “m” da primeira iteração:

1ª Hipótese 2ª Hipótese
Reduzir intervalo com a = m Reduzir intervalo com b = m

f(x) f(x)

a m b a m b

INVESTIGAÇÃO OPERACIONAL (MS) 1-11


Exercícios de PNL – Soluções detalhadas

1.8. Aspectos essenciais que fundamentam o método:


1. O valor do gradiente da função num ponto Xk , indica a direcção e sentido de crescimento da função

naquele ponto.
2. O vector-gradiente, no ponto Xk , é perpendicular à curva de nível da função a que pertence Xk e indica a

direcção e sentido de maior aumento da função o que não deve ser confundido com caminho mais curto
para atingir o extremo desta (ver figura).

2.5

1.5
Max

X1
0.5

0 X0

0 0.5 1 1.5 2
3. No ponto Xk , conhecendo a direcção e sentido de maior aumento da função, é necessário calcular o

tamanho do deslocamento (passo) para atingir o ponto Xk+1 de coordenadas:

Xk+1 = Xk + p ∇fXk

onde a função tem o seu maior valor naquela direcção e sentido(ver figura).
Com as coordenadas de Xk+1 expressas em função de “p”:

• coloca-se f(X) em ordem a “p” (dispõe-se de uma função monovariável h(p) para maximizar);
• pelo método da bissecção calcula-se o valor óptimo de “p”;
• calculam-se as coordenadas de Xk+1 por substituição de “p”.

4. Em Xk+1 calcula-se o valor do gradiente da função ( que se sabe ser nulo no óptimo) e compara-se com a

tolerância fixada. Se satisfaz é interrompido o cálculo (regra de paragem) repetindo-se o procedimento


descrito no caso contrário.

1-12 INVESTIGAÇÃO OPERACIONAL (MS)


Exercícios de PNL – Soluções detalhadas

Fluxograma do Método do Gradiente:

Escolher ponto-tentativa Xk

Calcular ∇f em Xk

Xk+1= Xk + p∇fXk

Construir h(p) = f(Xk+1)

Max h(p) por bissecção


(obter valor óptimo de "p")

Calcular Xk+1

Calcular ∇f em Xk+1

Sim
∇f Xk+1 ≤ Tolerância ? Fim

Não

Xk = Xk+1

INVESTIGAÇÃO OPERACIONAL (MS) 1-13


Exercícios de PNL – Soluções detalhadas

2.

2.1 Teorema dos multiplicadores de Lagrange


Dado o problema de PNL:
Max f0(X)

s.a. fi (X) = 0 (i = 1, ..., m)

se :
• X* é um máximo local, e
• n > m ( há mais variáveis do que restrições), e
• fi têm primeiras derivadas parciais contínuas em ordem a xj, e

• os gradientes ∇fi (X*) são vectores linearmente independentes,

então há um vector λ = [ λ1 , λ2 , ...,λm ]T tal que :

m
∇ f0 (X * ) − ∑ λ i∇ fi (X * ) = 0
i =1

em que:
- λ1 , λ2 , ..., λm são denominados multiplicadores de Lagrange;

- a condição da independência linear de ∇fi (X*) é denominada restrição de qualificação.

O teorema sugere o seguinte método para resolver problemas de PNL só com restrições de igualdade:
• Verificar se n > m e se todas as fi têm derivadas parciais contínuas

• Considerar a Função de Lagrange :


m
L ( X ,λ ) = f 0 ( X ) − ∑ λ i f i ( X )
i =1

• Calcular todas as soluções (X* , λ*) para o sistema de equações algébricas não lineares:
m
∇L ( X , λ ) = ∇f 0 ( X ) − ∑ λ i ∇f i ( X ) = 0 ( n equações)
i =1

∂ L( X , λ )
= − f i ( X ) = 0 (i = 1,..., m) ( m equações)
∂λ i
Estas equações representam as condições de Lagrange sendo os pontos (X,λ) os pontos de
Lagrange.
• Analisar cada uma das soluções (X*, λ*) para verificar se é maximizante.

2.2 A resposta é negativa pois que o teorema não garante que as soluções das condições de Lagrange são pontos
óptimos (onde a função-objectivo atinge o máximo) ou mesmo que sejam pontos de estacionaridade; o que o
teorema garante é que qualquer ponto onde não se verifiquem as condições de Lagrange não é
garantidamente ponto-óptimo. Resumindo, as condições de Lagrange são condição necessária para uma
solução ser considerada óptima mas não são condição suficiente excepto no caso de solução única em que
pode concluir-se imediatamente que a mesma é óptima.

INVESTIGAÇÃO OPERACIONAL (MS) 2-1


Exercícios de PNL – Soluções detalhadas

2.3
1. n=2 e m=1 portanto tem-se n > m
O gradiente da restrição é:

∇f1 = 4

2
pelo que ∂ fi / ∂ xj é contínua.

2. Construir a função Lagrangeana:


L (x1,x2,λ) = f(x1,x2) - λ ( 4x1 + 2x2 - 60 ) = x1x2 + 2x1 - λ ( 4x1 + 2x2 - 60 )

(Notar que sendo ( 4x1 + 2x2 - 60 )= 0 maximizar “L” é maximizar a função-objectivo)

3. Calcular as derivadas parciais de 1ª ordem, igualar a zero e resolver o sistema de equações:

∂ L / ∂ x1 = x2 + 2 - 4λ = 0 x1 = 8

∂ L / ∂ x2 = x1 - 2λ = 0 x2 = 14

∂L/∂λ = -4x1 - 2x2 + 60 = 0 λ=4

A solução que satisfaz as condições de Lagrange é única pelo que é óptima (Max f = 128):

X= 8 e λ= 4
14

A figura seguinte apresenta a projecção horizontal das curvas de nível da função.

x
302

25

20

Ponto Óptimo
15

10

5
f = 128

0
0 5 10 15 20 25 30
x1

2-2 INVESTIGAÇÃO OPERACIONAL (MS)


Exercícios de PNL – Soluções detalhadas

2.4 Sendo a variável não negativa as situações possíveis são:

1ª Situação 2ª Situação

f(x) f(x)
Max Max

ou

0 x 0 x

df/dx = 0 df/dx = 0
x >0 x=0

3ª Situação

f(x)

Max

Max

0 x
df/dx < 0
x=0

A não negatividade das variáveis independentes, determina as seguintes condições de 1ª ordem para um
ponto maximizante (extremo condicionado):

df/dx ≤ 0
x (df/dx) = 0

Naturalmente para f( x1,x2, ...,xn) com x1,x2,...,xn ≥ 0 tem-se:

∂ f / ∂ xj ≤ 0 ( j =1 a n )

xj (∂ f / ∂ xj ) = 0

INVESTIGAÇÃO OPERACIONAL (MS) 2-3


Exercícios de PNL – Soluções detalhadas

2.5 Considere-se o modelo na forma:

Max f(x)
s.a. g(x) +s = b
s ≥ 0

A função Lagrangeana é:
L = f(x) - λ [(g(x) + s - b)]
Atendendo a que “s” é variável não negativa, as condições de 1ª ordem para extremo de L (x,λ) são:

∂L/∂x = 0
∂L/∂s ≤ 0
s (∂ L / ∂ s) = 0
∂L/∂λ = 0 (notar que ∂L / ∂λ = -g(x) - s + b = 0

Notar que:
• (∂ L / ∂ s) = -λ o que implica: λ ≥ 0 (multiplicador de Lagrange deve ser não negativo)
• s (-λ ) = 0. Como -s = g(x) - b resulta: λ[ g(x) - b)] = 0 (note que “λ“ é complementar da variável
de folga da restrição pelo que é a variável Dual associada...)

2.6
Verificação da concavidade da função:

∇f= ∂ f / ∂ x1 = 5 - 4x1 + 3x2

∂ f / ∂ x2 3x1 - 4x2

Hf = ∂ 2f / ∂ x12 ∂ 2f / ∂ x1x2 = -4 3

∂ 2f / ∂ x2x1 ∂ 2f / ∂ x22 3 -4

Na matriz Hessiana os menores principais Hk com k=1,2 são:

H1 = -4 e -4 (diagonal principal) ; H2 = (-4)(-4) - (3)(3) = 7

Como os determinantes têm o sinal de (-1)k (são respectivamente negativo e positivo) a matriz é Definida
Negativa podendo concluir-se que a função é côncava.
A função Lagrangeana é:
L = 5x1 - 2x12 + 3x1x2 - 2x22 - λ ( x1 + x2 + s - 2 )

As condições a satisfazer pelo extremo (ver problema 2.5) são:

∂ L / ∂ x1 = 0 ⇒ 5 - 4x1 + 3x2 - λ = 0 (1)

∂ L / ∂ x2 = 0 ⇒ 3x1 - 4x2 - λ = 0 (2)

∂L/∂s ≤ 0 ⇒ -λ ≤ 0 (3)
s (∂ L / ∂ s) = 0 ⇒ - sλ = 0 (4)
∂L/∂λ = 0 ⇒ -x1 -x2 -s + 2 = 0 (5)
Estas condições podem tomar a forma mais simples:

2-4 INVESTIGAÇÃO OPERACIONAL (MS)


Exercícios de PNL – Soluções detalhadas

5 - 4x1 + 3x2 - λ = 0 (1)

3x1 - 4x2 - λ = 0 (2)

λ ( x1 + x2 -2 ) = 0 (3)

λ;s ≥ 0 (4)
(Notar a condição de não negatividade do multiplicador “λ“)
Se λ = 0 tem-se de (1) e (2) x1 = 20/7 e x2 = 15/7 que não satisfaz x1 + x2 + s = 2 com s ≥ 0 pelo que se

conclui que λ ≠ 0.
Para λ ≠ 0 então em (3) tem-se x1 + x2 = 2 ou seja x1 = 2 - x2

Substituindo em (1) e (2) tem-se:


5 - 8 + 4x2 + 3x2 - λ = 0 e 6 - 3x2 - 4x2 - λ = 0 que permite calcular x2 = 9/14 e λ = 3/2.

Em (1) ou (2) tem-se x1 = 19/14.

O ponto ( 19/14 , 9/14 ) é o ponto óptimo onde Max f(x1,x2) = 137/28.

Nas figuras seguintes apresentam-se o gráfico da função e a projecção horizontal das curvas de nível da
função.

5
2
f(x1,x2) 0

-5 1.5

0 1
x2
0.5
1 0.5
x1
x1 1.5
20

1.5

0.5

0
0 0 5 1 1 5 2

2.7 A matriz Hessiana é:

INVESTIGAÇÃO OPERACIONAL (MS) 2-5


Exercícios de PNL – Soluções detalhadas

Hf = ∂ 2f / ∂ x12 ∂ 2f / ∂ x1x2 = 6 2

∂ 2f / ∂ x2x1 ∂ 2f / ∂ x22 2 2

Como os determinantes menores principais (1ª e 2ª ordem) são positivos a matriz é Definida Positiva
podendo concluir-se que a função é convexa.
A função Lagrangeana é:
L = 3x12 + x22 + 2x1x2 + 6x1 + 2x2 - λ ( 2x1 - x2 - 4 )

As condições a satisfazer pelo extremo são:

∂ L / ∂ x1 = 0 ⇒ 6x1 + 2x2 + 6 - 2λ = 0 (1)

∂ L / ∂ x2 = 0 ⇒ 2x2 + 2x1 + 2 + λ = 0 (2)

∂L/∂λ = 0 ⇒ -2x1 + x2 + 4 = 0 (3)

A solução do sistema de equações é x1 = 7/11 ; x2 = -30/11 ; λ = 24/11.

Porque a função é convexa só se pode concluir que foi atingido um ponto de estacionaridade.

2-6 INVESTIGAÇÃO OPERACIONAL (MS)


Exercícios de PNL – Soluções detalhadas

Nas figuras seguintes apresentam-se o gráfico da função e a projecção horizontal das curvas de nível da
função.

80
60
f(x1,x2) 40
2
20
0
0
-2 x2

0
x1
x -2
1
2

-1

-2

-3

-4
-3 -2 -1 0 1 2 3

INVESTIGAÇÃO OPERACIONAL (MS) 2-7


Exercícios de PNL – Soluções detalhadas

2.8 A função-objectivo é linear (côncava e convexa)


A função Lagrangeana é:
L = x 1 - x 2 - λ ( x 1 2 + x2 2 - 1 )

As condições a satisfazer pelo extremo são:

∂ L / ∂ x1 = 0 ⇒ 1 - 2λx1 = 0 (1)

∂ L / ∂ x2 = 0 ⇒ -1 - 2λx2 = 0 (2)

∂L/∂λ = 0 ⇒ -x1 2 - x2 2 + 1 = 0 (3)

1
Do sistema calcula-se λ=± pelo que há 2 soluções:
2
2 2 2
1. x1 = − ; x2 = ;λ = − ; f = −141421
.
2 2 2
2 2 2
2. x1 = ; x2 = − ;λ = ; f = 141421
.
2 2 2
Da sua análise verifica-se que o valor óptimo da função é atingido no primeiro destes pontos:

2 2
x1 = − ; x2 = ; Min f = −141421
.
2 2
A figura seguinte esclarece a situação:

Ponto óptimo x2
1

∇(-f)

1
x1

2-8 INVESTIGAÇÃO OPERACIONAL (MS)


Exercícios de PNL – Soluções detalhadas

3.

3.1 As soluções de um modelo de PL podem ser agrupadas do seguinte modo:


• não admissível
ou
• admissível com valor óptimo finito atingido no ponto óptimo
ou
• admissível com valor óptimo ilimitado
Na Programação Não Linear são possíveis as 3 situações e uma 4ª hipótese:
• admissível com valor limitado para a função-objectivo mas não há ponto óptimo
Veja-se por exemplo Min f = 1/x com x ≥ 0 que tem pontos admissíveis sendo zero o maior
limite inferior do valor da função-objectivo. Contudo este limite nunca é atingido em ponto
admissível pelo que não há ponto óptimo.

INVESTIGAÇÃO OPERACIONAL (MS) 3-1


Exercícios de PNL – Soluções detalhadas

3.2 É possível como o exemplo seguinte demonstra:


Minimizar f(x1 ,x2) = (x1 - 4)2 + (x2 - 4)2

s.a. 2x1 + 3x2 ≥ 6

-3x1 - 2x2 ≥ - 12

x1, x2 ≥ 0

A solução óptima é x1 =28/13, x2=36/13 e Min f= 64/13.

As figuras mostram que, no convexo de soluções, o Ponto óptimo NÃO É EXTREMO (o que não se passa
em Programação Linear).

f(x1,x2)

30
8
20
10 6
0
0 4
2
2
x2
4
6
x1
80

Min Livre

Min Condicionado

3-2 INVESTIGAÇÃO OPERACIONAL (MS)


Exercícios de PNL – Soluções detalhadas

3.3 É possível como o exemplo seguinte demonstra:

Minimizar f(x1,x2) = (x1 - 4)2 + (x2 - 4)2


s.a. x1 + x 2 ≥ 5

-x1 ≥-5
-2x2 ≥ -12

x1 ,x2 ≥ 0

A solução óptima é x1 = 4, x2 = 4 e Min f= 0.

As figuras mostram que, no convexo de soluções, o Ponto óptimo É INTERIOR ( o que não se passa em
Programação Linear).

f(x1,x2)

30
8
20
10 6
0
0 4
2
2
x2
4
6
x1
80

Min Condicionado

INVESTIGAÇÃO OPERACIONAL (MS) 3-3


Exercícios de PNL – Soluções detalhadas

3.4 É possível como o exemplo seguinte demonstra:


Max f (x1,x2) = 2x1 + x2

s.a. -x12 + 4x1 - x2 ≤ 0

2x1 + 3x2 ≤ 12

x1 , x2 ≥ 0

Nota: O espaço de solução não é convexo ( 2 conjuntos : áreas I e II ).


Na área I, é no ponto P que a função tem maior valor (5.508). Veja-se que tal é apenas máximo
local pois na área II a função tem maior valor em qualquer ponto sendo o ponto (6,0) o extremo
onde a função atinge o máximo(f(X)=12).

3.5 CONCLUSÕES SOBRE DIFERENÇAS ENTRE PNL E PL :

• Em PNL, qualquer ponto do espaço de solução pode ser óptimo. A procura do ponto óptimo não pode
ficar limitada aos extremos como na PL.
• O número de restrições técnicas saturadas, no óptimo, pode ser nulo.
(ver problema 3.3 onde nenhuma restrição é satisfeita como igualdade).
• O deslocamento contínuo numa dada direcção pode não conduzir a valores crescentes (ou decrescentes)
da função-objectivo ao contrário do que se verifica na PL.
• O espaço de solução pode não constituir um conjunto convexo (ver problema 3.4).
• Um óptimo local pode não ser um óptimo global ( ver problema 3.4).

3.6 Só no caso de f(X) ser côncava ou seja, no conjunto de soluções S para qualquer par de pontos X´ e X´´ do
conjunto S verifica-se:
f(cX´ + (1-c)X´´ ≥ cf(X´) + (1-c)f(X´´) (1)
para valores de “c” tal que 0 ≤ c ≤ 1.

3-4 INVESTIGAÇÃO OPERACIONAL (MS)


Exercícios de PNL – Soluções detalhadas

A figura seguinte visualiza a situação para uma função monovariável:

f(x)
C
f(cx´ + (1-c)x´´ ))

f(x´´ )
D
cf(x´ )+ (1-c) f(x´´ ))
B
f(x´ )
A

x´ cx´ + (1-c)x´´ x´´ x

Nota: Coordenadas de B obtidas por combinação linear convexa dos extremo do segmento AD.
Veja-se que a função é côncava porque se verifica a condição (1) o que geometricamente corresponde
a que o segmento que une qualquer par de pontos da curva da função está sempre abaixo desta.

3.7 A matriz Hessiana de f(x1, x2, ..., xn) é uma matriz de ordem “n” em que cada elemento (i,j) é igual a:

∂ 2f
∂ xi x j

Para a função proposta tem-se H = 6x1 2

2 12x22

3.8 A função é CÔNCAVA em “S” se e só se para qualquer ponto X∈S , os menores principais não nulos da

matriz Hessiana têm o sinal de (-1)k sendo “k” a ordem do menor.

3.9 A função é CONVEXA em “S” se e só se para qualquer ponto X∈S , os menores principais da matriz
Hessiana são positivos.

3.10 Considerando d1 e d2 as funções da procura, o objectivo é Maximizar a função-objectivo f = p1d1 + p2d2

ou seja f= p1(150 - 2p1 - p2) + p2(200 - p1 - 3p2) = 150 p1 - 2p12 - 2p1p2 + 200p2 - 3p22.

A matriz Hessiana é: -4 -2
-2 -6
sendo os seus menores principais:

H1 = -4 e -6 (ambos negativos)

H2 = 24 - 4 = 20 (positivo)

pelo que a matriz é definida negativa, podendo concluir-se que a função-objectivo é Côncava.
Anulando o gradiente da função tem-se:

∇f= 150 - 4p1 - 2p2 = 0 ⇒ p1 = p2 = 25 u.m. com Max f= 4375


-2p1 + 200 - 6p2 0 com d1 = 75 e d2 = 100 (unidades)

3.11

INVESTIGAÇÃO OPERACIONAL (MS) 3-5


Exercícios de PNL – Soluções detalhadas

2 -1 -1
A matriz Hessiana é: -1 2 -1
-1 -1 4

Os menores principais são :

H1 = 2, 2, 4 (positivos)

H2 = 8-1=7>0

H2 = 8-1=7>0

H2 = 4-1=3>0

H3 = 6>0

Dado que todos os menores principais de H são positivos a matriz é definida positiva pelo que a função é
Convexa.

3.12 a. Sendo X1 = (2,3) o valor do gradiente neste ponto é:

∇f= 2x2 - 2x1 = 2

2x1 + 3 - 2x2 1

b. A função é quadrática pelo que a série de Taylor terá 3 termos:


1
f ( X 2 ) = f ( X 1 ) + ∆X T ∇f X 1 + ∆X T H X 1 ∇X
2

2  1 − 2 2   0.1 
= 8 + [0.1 0 .2]   + [0.1 0.2]   0.2 
1
  2  2 − 2  

1  0.1 
= 8 + 0.4 + [0.2 − 0.2]   = 8.39
2 0.2 

− 2 2   0.1   0.2 
3.13 V = ∇f X 2 − ∇f X1 = H ( X 2 − X 1 ) =   = 
 2 − 2  0.2  − 0.2 

1 T
3.14 f = CX + X HX
2

 x1  1  − 4 − 4   x1 
= [15 30]   + [ x1 x2 ]   
 x2  2 − 4 − 8   x 2 
em que :
C = matriz dos coeficientes das variáveis xii, na função-objectivo

H = matriz hessiana de f(X)


X = vector coluna das variáveis de decisão

3-6 INVESTIGAÇÃO OPERACIONAL (MS)


Exercícios de PNL – Soluções detalhadas

4.

4.1 L (x1,x2, λ) = 2x1 + 3x2 - x12 - x22 - λ ( 2x1 + 2 x2 + s - 4)

s.a. s≥0
O termo “ -λ ( 2x1 + 2 x2 + s - 4) “ é nulo pelo que maximizar a função L é maximizar a função proposta.

As condições de 1ª ordem para extremo da função Lagrangeana são:

∂ L / ∂ x1 = 0 ⇒ 2 - 2x1 -2λ = 0

∂ L / ∂ x2 = 0 ⇒ 3 - 2x2 - 2λ = 0

∂ L / ∂s ≤ 0 ⇒ -λ ≤ 0
s(∂ L / ∂ s) = 0 ⇒ s (-λ) = 0
∂L/∂λ = 0 ⇒ -2x1 - 2x2 - s + 4 = 0

As condições KKT são:


• 1ª condição:

2 - 2x1 -2λ = 0

3 - 2x2 - 2λ = 0

• 2ª condição: Dado que -s = 2x1 + 2x2 - 4 e que -sλ = 0, deduz-se a condição seguinte:

λ(2x1 + 2x2 - 4) = 0

• 3ª condição: A restrição técnica do modelo

2x1 + 2x2 - 4 ≤ 0

• 4ª condição:

λ ≥ 0

4.2 Nesta situação, dado que a restrição é do tipo “=“ não é utilizada qualquer variável de folga pelo que a
variável “λ“ é livre.
As condições KKT são:
• 1ª condição:

2 - 2x1 -2λ = 0

3 - 2x2 - 2λ = 0

• 2ª condição: A restrição técnica do modelo

2x1 + 2x2 - 4 = 0

INVESTIGAÇÃO OPERACIONAL (MS) 4-1


Exercícios de PNL – Soluções detalhadas

4.3 Considerando s1 e s2 variáveis de folga (não negativas) das primeira e segunda restrições técnicas, a função

de Lagrange é:
L (x1,x2,s1,s2,λ1,λ2) = f(x1,x2) - λ1 ( x1 - 2 + s1 ) - λ2 ( x2 -1 + s2 )

Nesta situação é necessário atender à condição de não negatividade das variáveis x1, x2, s1, s2 e ao ambiente

de Minimização.
Adoptando abordagem semelhante à exposta no problema 2.4, conclui-se que as condições de 1ª ordem para
extremo são:

• ∂L / ∂xj ≥ 0 e xj (∂L / ∂xj ) = 0

• ∂L / ∂si ≥ 0 e si (∂L / ∂si ) = 0

• ∂L / ∂λi = 0

Da condição ∂L / ∂si ≥ 0 deduz-se λi ≤ 0 ( de facto λi é a variável Dual associada à restrição “i” ; como as

duas restrições são do tipo “≤“ em ambiente de Minimização, as variáveis duais associadas são não
positivas).
Da condição si (∂L / ∂si ) = 0 deduz-se λi ( gi (x1,x2) - bi) = 0.

As condições KKT são:


(1) 2x1 +2 - λ1 (1) ≥ 0

(2) x1 (2x1 +2 - λ1 ) = 0

(3) 2x2 - 4 - λ2 (1) ≥ 0

(4) x2 (2x2 - 4 - λ2 ) = 0

(5) x1 - 2 ≤ 0

(6) λ1 (x1 - 2) = 0

(7) x2 - 1 ≤ 0

(8) λ2 (x2 - 1) = 0

(9) x1 , x2 ≥ 0

(10) λ1 , λ2 ≤ 0

Das condições de ortogonalidade tem-se:


• se λi ≠ 0 então gi (X) = 0 e se gi (X) ≠ 0 então λi = 0

Explorando uma das condições até estabelecer incompatibilidade (contradição) com as restantes condições
será possível concluir se é nulo o multiplicador λi ou gi (X) ou ambos. Deste modo como se vai concluindo

quais as restrições activas e inactivas, as desigualdades KKT que se verificam como igualdades e os
multiplicadores que são nulos a complexidade do problema reduz-se progressivamente.

4-2 INVESTIGAÇÃO OPERACIONAL (MS)


Exercícios de PNL – Soluções detalhadas

Tomando a condição (6) tem-se:

x1 - 2 = 0 x1 - 2 ≠ 0

x1 = 2 λ1 = 0

λ1 ≠ 0 λ1 = 0 x1 = 0 x1 ≠ 0
Satisfaz (1),(2),(5),(6),(9),(10)

Em (2): λ1 = 6 Em (2): x1 = -1 Em (2): x1 = -1


Não admissível Contradição Não admissível

1ª Conclusão : x1 = 0 ; λ1 = 0 satisfaz as condições KKT.

Tomando a condição (7) tem-se:

x2 - 1 = 0 x2 - 1 ≠ 0

x2 = 1 λ2 = 0

λ2 ≠ 0 λ2 = 0 x2 = 0 x2 ≠ 0
Em (3) : -4 ≥ 0. Falso Em (4) x2 = 2
Em (4): λ2 = -2 Em (4): x2 = 2 Em (7) : 1 ≤ 0. Falso
Satisfaz (3),(4),(7),(8),(9),(10) Contradição

2ª Conclusão : x2 = 1 ; λ2 = -2 satisfaz as condições KKT.

A solução x1 = 0 ; x2 = 1; λ1 = 0 ; λ2 = -2 satisfaz todas as condições KKT o que é suficiente para afirmar

tratar-se da solução óptima.


Acresce ainda que sendo Convexa a função proposta para optimizar em espaço Convexo (restrições são
lineares) é condição necessária que a solução satisfaça integralmente as condição KKT.
O ponto óptimo é pois x1 = 0 ; x2 = 1 sendo Min f = 2.

Nota: Poder-se-ia ter optado por Maximizar a função simétrica -x12 - 2x1 - x22 + 4x2 - 5 com o que se

obteria o ponto-solução : x1 = 0 ; x2 = 1 ; λ1 = 0 ; λ2 = 2.

O multiplicador λ2 é agora não negativo porque a restrição associada é típica no ambiente de

maximização .

INVESTIGAÇÃO OPERACIONAL (MS) 4-3


Exercícios de PNL – Soluções detalhadas

As figuras seguintes apresentam o gráfico da função proposta, e a projecção horizontal das curvas de nível.

f=2

Ponto óptimo

4.4
a. Substituindo a restrição de igualdade pelas desigualdades x12 + x22 ≤ 1 e -x12 - x22 ≤ -1 as condições KKT

são :

∂ f m ∂ gi (1) [1 / (x1 + 1) ] - λ1 (2x1) - λ2 (-2x1) ≤ 0


−∑λi ≤0
∂ x j i =1 ∂ x j (2) 1 - λ1 (2x2) - λ2 (-2x2) ≤ 0

∂ f m ∂ gi (3) x1 {[1 / (x1 + 1) ] - λ1 (2x1) - λ2 (-2x1) } = 0


xj ( −∑λi )=0
∂ x j i =1 ∂ x j (4) x2 [1 - λ1 (2x2) - λ2 (-2x2) ] = 0

g i − bi ≤ 0 (5) x 1 2 + x2 2 - 1 ≤ 0
(6) - x12 - x22 + 1 ≤ 0

λ i ( g i − bi ) = 0 (7) λ1 (x12 + x22 - 1) = 0


(8) λ2 (-x12 - x22 + 1) = 0

λi ≥ 0 (9) λ1 , λ2 ≥ 0

xj ≥ 0 (10) x1 , x2 ≥ 0

4-4 INVESTIGAÇÃO OPERACIONAL (MS)


Exercícios de PNL – Soluções detalhadas

b.
De (1) deduz-se que λ1 ≠ 0 e x1 ≠ 0.

De (3) deduz-se que λ1 ≠ 0 e x2 ≠ 0.

Os multiplicadores λ1 e λ2 são complementares pelo que λ2 = 0 . De facto considerando a restrição na

forma de igualdade seria utilizado apenas um multiplicador “λ“ sem restrição de sinal que poderia ser
considerado λ = λ1 - λ2 com λ1 , λ2 ≥ 0 . Ora nesta situação, verifica-se no óptimo, se existe, λ1λ2 = 0.

Tem-se assim o sistema de equações:

[1 / (x1 + 1) ] - 2λ1x1 = 0

1 - 2λ1 x2 = 0

x 1 2 + x2 2 - 1 = 0

com solução x1 = 0.543689 ≈ 0.54 ; x2 = 0.839287 ≈ 0.84 ; λ = 0.595744 ≈ 0.6 ; Max f = 1.273462.

As figuras seguintes apresentam o gráfico da função proposta, e a projecção horizontal das curvas de nível.

Ponto óptimo

4.5
a. No problema proposto, o espaço “S” de soluções admissíveis é um conjunto convexo pelo que se a função
for côncava qualquer máximo local é solução óptima do problema.
A Hessiana de f(x1,x2) é a matriz quadrada de ordem 2:

H= ∂2 f / ∂x12 ∂2 f / ∂x1x2 = -2 0

∂2 f / ∂x2x1 ∂2 f / ∂x22 0 -2

A função f(x1,x2) é côncava no espaço de solução “S” se e só se para qualquer par (x1,x2) ∈ S, em H todos

os menores principais diferentes de zero têm sinal de (-1)k sendo “k” a ordem do menor.

INVESTIGAÇÃO OPERACIONAL (MS) 4-5


Exercícios de PNL – Soluções detalhadas

Nota: O menor principal de ordem “i” de uma matriz quadrada de ordem “n” é o determinante de
qualquer matriz de ordem “i” obtida quando se eliminam “n-i” linhas e as correspondentes “n-i”
colunas da matriz.
Na matriz H têm-se os menores principais:
• de ordem 1 : -2 e -2 (têm o sinal de -11 )
• de ordem 2: (-2)(-2) - (0)(0) = 4 ( tem o sinal de -12 )
pelo que H é uma matriz definida negativa, pelo que f(x1,x2) é côncava.

O problema é portanto de programação convexa : função côncava e espaço de soluções convexo.


b. O método do Simplex modificado por Wolfe pode ser utilizado em programação convexa quadrática (caso
do problema proposto) sendo necessário recorrer às condições KKT:
(1) 2 - 2x1 - 2λ ≤ 0

(2) x1 (2 - 2x1 - 2λ ) = 0

(3) 3 - 2x2 - 2λ ≤ 0

(4) x2 (3 - 2x2 - 2λ ) = 0

(5) 2x1 + 2x2 - 4 ≤ 0

(6) λ (2x1 + 2x2 - 4) = 0

(7) x1 , x2 , λ ≥ 0

Colocando as condições (1), (3) e (5) na forma de igualdade tem-se:


2x1 + 2λ - e1 = 2

2x2 + 2λ - e2 = 3

2x1 + 2x2 + s1 = 4

Atendendo a que:
• -e1 = 2 - 2x1 - 2λ, deduz-se da condição (2) que o produto x1 e1 = 0.

• -e2 = 3 - 2x2 - 2λ, deduz-se da condição (4) que o produto x2 e2 = 0.

• -s1 = 2x1 + 2x2 - 4, deduz-se da condição (6) que o produto λ s1 = 0

pode estabelecer-se a restrição de complementaridade x1e1 + x2e2 +λs1 = 0 .

As condições KKT são equivalentes a :


2x1 + 2λ - e1 = 2

2x2 + 2λ - e2 = 3

2x1 + 2x2 + s1 = 4

x1 e1 + x2 e2 + λ s1 = 0 (restrição de complementaridade)

x1 , x2 , λ , e1 , e2 , s1 ≥ 0

Analisando a restrição de complementaridade verifica-se que não é linear e impõe:


• as variáveis ei , xi não podem ser simultaneamente positivas;

• a variável auxiliar (folga ou excedentária) da restrição “i” e λi não podem ser simultaneamente

positivas.

4-6 INVESTIGAÇÃO OPERACIONAL (MS)


Exercícios de PNL – Soluções detalhadas

O método Simplex modificado por Wolfe recorre ao 1º passo do Método dos 2 Passos considerando a
seguinte regra para calcular soluções que satisfaçam a restrição de complementaridade :
• não formar base em que as variáveis complementares ei , xi sejam simultaneamente variáveis

básicas positivas (na maior parte dos casos se uma é VB a outra não pode entrar para a base);
• não formar base em que a variável auxiliar (folga ou excesso) da restrição “i” e λi (que são

complementares) sejam simultaneamente variáveis básicas positivas (na maior parte dos casos se
uma é VB a outra não pode entrar para a base);
No exemplo proposto, é necessário utilizar variáveis Artificiais nas duas primeiras restrições e Minimizar a
sua soma executando o 1º passo do Método dos 2 Passos:
2x1 + 2λ - e1 + A1 = 2

2x2 + 2λ - e2 + A2 = 3

2x1 + 2x2 + s1 = 4

Min fa = A1 + A2

A1 , A2 ≥ 0

Aplicando o método Simplex modificado por Wolfe tem-se:

VB x1 x2 λ e1 e2 s1 A1 A2 VSM Obs.

A1 2 0 2 -1 0 0 1 0 2 “λ“ não pode entrar para a


A2 0 2 2 0 -1 0 0 1 3 base (complementaridade com

s1 2 2 0 0 0 1 0 0 4 s1). Entra x1 ou x2.

-fa 0 0 0 0 0 0 1 1 0

-fa -2 -2 -4 1 1 0 0 0 -5

x1 1 0 1 -1/2 0 0 1/2 0 1 “λ“ não pode entrar para a


A2 0 2 2 0 -1 0 0 1 3 base (complementaridade com

s1 0 2 -2 1 0 1 -1 0 2 s1). Entra x2.

-fa 0 -2 -2 0 1 0 1 0 -3

x2 0 1 -1 1/2 0 1/2 -1/2 0 1 Entra λ.


x1 1 0 1 -1/2 0 0 1/2 0 1

A2 0 0 4 -1 -1 -1 1 1 1

-fa 0 0 -4 1 1 1 0 0 -1

λ 0 0 1 -1/4 -1/4 -1/4 1/4 1/4 1/4 Sol. óptima.


x2 0 1 0 1/4 -1/4 1/4 -1/4 1/4 5/4

x1 1 0 0 -1/4 1/4 1/4 1/4 -1/4 3/4

-fa 0 0 0 0 0 0 1 1 0
Solução Óptima: x1 = 3/4 ; x2 = 5/4 ; Max f(x1 , x2) = 25/8

Nota: “λ“ é a variável dual associada à restrição razão porque λs1 = 0 (complementaridade das

folgas).Neste caso a restrição está saturada.


As figuras seguintes apresentam o gráfico da função proposta, e a projecção horizontal das curvas de nível.

INVESTIGAÇÃO OPERACIONAL (MS) 4-7


Exercícios de PNL – Soluções detalhadas

f(x1, x2)

x2

x1

f=25/8

4.6 a.
A Hessiana de f(x1,x2) é a matriz quadrada de ordem 2:

H= ∂2 f / ∂x12 ∂2 f / ∂x1x2 = -4 4

∂2 f / ∂x2x1 ∂2 f / ∂x22 4 -8

H1 = -4 e -8 < 0

Matriz H é Definida Negativa


H2 = 16 > 0 A função é Côncava

O problema é de programação convexa porque:


• a função-objectivo é Côncava e diferenciável

• a função da restrição técnica é convexa e diferenciável ( restrição linear ≡ função côncava e


convexa)

4-8 INVESTIGAÇÃO OPERACIONAL (MS)


Exercícios de PNL – Soluções detalhadas

b. Condições KKT:

∂ f m ∂ gi (1) 15 + 4x2 - 4x1 -λ(1) ≤ 0


−∑λi ≤0
∂ x j i =1 ∂ x j (2) 30 + 4x1 - 8x2 - λ(2) ≤ 0

∂ f m ∂ gi (3) x1[15 + 4x2 - 4x1 -λ(1)] = 0


xj ( −∑λi )=0
∂ x j i =1 ∂ x j (4) x2[30 + 4x1 - 8x2 - λ(2)] = 0

g i − bi ≤ 0 (5) x1 + 2x2 -30 ≤ 0

λ i ( g i − bi ) = 0 (6) λ( x1 + 2x2 -30) = 0

λi ≥ 0 (7) λ≥0

xj ≥ 0 (8) x 1 , x2 ≥ 0

Para usar o método Simplex, estabelece-se o sistema de equações:


4x1 - 4x2 + λ - e1 + A1 = 15

-4x1 + 8x2 + 2λ - e2 + A2 = 30

x1 + 2x2 + s1 = 30

x1e1 + x2e2 + λs1 = 0 (restrição de complementaridade)

Min fa = A1 + A2

x1 , x2 , e1 , e2 , s1 , λ, A1 , A2 ≥ 0

Aplicando o método Simplex modificado por Wolfe tem-se:


VB x1 x2 λ e1 e2 s1 A1 A2 VSM Obs.
A1 4 -4 1 -1 0 0 1 0 15 Entra x2 (pode porque e2 é VNB)
A2 -4 8 2 0 -1 0 0 1 30
s1 1 2 0 0 0 1 0 0 30

-fa 0 0 0 0 0 0 1 1 0
-fa 0 -4 -3 1 1 0 0 0 -45
x2 -1/2 1 1/4 0 -1/8 0 0 1/8 15/4 Entra x1 (pode porque e1 é VNB)
A1 2 0 2 -1 -1/2 0 1 1/2 30 Notar que λ não é seleccionável pois
s1 2 0 -1/2 0 1/4 1 0 -1/4 45/2 s1 é VB e não sai da base por troca

-fa -2 0 -2 1 1/2 0 0 1/2 -30 com λ.


x1 1 0 -1/4 0 1/8 1/2 0 -1/8 45/4 Entra λ (pode porque s1 é VNB)
x2 0 1 1/8 0 -1/16 1/4 0 1/16 75/8
A1 0 0 5/2 -1 -3/4 -1 1 3/4 15/2

-fa 0 0 -5/2 1 3/4 1 0 1/4 -15/2


λ 0 0 1 -2/5 -3/10 -2/5 2/5 3/10 3
x1 1 0 0 -1/10 1/20 2/5 1/10 -1/20 12
x2 0 1 0 1/20 -1/40 3/10 -1/20 1/40 9

-fa 0 0 0 0 0 0 1 1 0 Solução óptima.


Solução Óptima: x1 = 12 ; x2 = 9 ; Max f(x1 , x2) = 270

INVESTIGAÇÃO OPERACIONAL (MS) 4-9


Exercícios de PNL – Soluções detalhadas

Nota: “λ“ é a variável dual associada à restrição razão porque λs1 = 0 (complementaridade das

folgas).Neste caso a restrição está saturada.


As figuras seguintes apresentam o gráfico da função proposta, e a projecção horizontal das curvas de nível.

f(x1,x2)

x2

x1

Ponto Óptimo

12

4.7 a.
A Hessiana de f(x1,x2) é a matriz quadrada de ordem 2:

H= ∂2 f / ∂x12 ∂2 f / ∂x1x2 = -1/(x1+1)2 0

∂2 f / ∂x2x1 ∂2 f / ∂x22 0 -2

H1 < 0

Matriz H é Definida Negativa


H2 > 0 Função Côncava

4-10 INVESTIGAÇÃO OPERACIONAL (MS)


Exercícios de PNL – Soluções detalhadas

O problema é de programação convexa porque:


• a função-objectivo é Côncava e diferenciável

• a função da restrição técnica é convexa e diferenciável ( restrição linear ≡ função côncava e


convexa)

b. Condições KKT:

∂ f m ∂ gi (1) 1/(x1+1) -λ(1) ≤ 0


−∑λi ≤0
∂ x j i =1 ∂ x j (2) -2x2 - λ(2) ≤ 0

∂ f m ∂ gi (3) x1[1/(x1+1) -λ(1)] = 0


xj ( −∑λi )=0
∂ x j i =1 ∂ x j (4) x2[-2x2 - λ(2)≤ ] = 0

g i − bi ≤ 0 (5) x1 + 2x2 -3 ≤ 0

λ i ( g i − bi ) = 0 (6) λ(x1 + 2x2 -3) = 0

λi ≥ 0 (7) λ≥0

xj ≥ 0 (8) x 1 , x2 ≥ 0

Verificação das condições KKT no ponto (3 , 0);

(1) 1/(x1+1) -λ(1) ≤ 0 1/4 - λ ≤ 0 λ ≥ 1/4 O.k. condição (7)


(2) -2x2 - λ(2) ≤ 0 -2λ ≤ 0 λ≥0 O.k. condição (7)

(3) x1[1/(x1+1) -λ(1)] = 0 3[(1/4) - λ] = 0 λ = 1/4 O.k. condições (1),(2),(3),(7)


(4) x2[-2x2 - λ(2)≤ ] = 0 0=0 O.k.

(5) x1 + 2x2 -3 ≤ 0 3+0-3≤0 0≤0 O.k.

(6) λ(x1 + 2x2 -3) = 0 1/4(3-3) = 0 0=0 O.k.

(7) λ≥0 Verificada


(8) x 1 , x2 ≥ 0 Verificada

O problema é de programação convexa e as condições KKT verificam-se no ponto (3,0) o que é condição
necessária e suficiente para afirmar que (3 , 0) é o ponto óptimo.

INVESTIGAÇÃO OPERACIONAL (MS) 4-11


Exercícios de PNL – Soluções detalhadas

4.8 Considerando o modelo na forma:


Max [-f(x)] = -2x1 - x23 - x32

s.a. -x12 - 2x22 - x32 ≤ -4

x1, x2, x3 ≥ 0

as condições KKT são:

∂ f m ∂ gi (1) -2+2λx1 ≤ 0
−∑λi ≤0
∂ x j i =1 ∂ x j (2) -3x22 +4λx2 ≤ 0
(3) -2x3 +2λx3 ≤ 0

∂ f m ∂ gi (4) x1 (-2+2λx1) = 0
xj ( −∑λi )=0
∂ x j i =1 ∂ x j (5) x2(-3x22 +4λx2) = 0
(6) x3(-2x3 +2λx3) = 0

g i − bi ≤ 0 (7) -x12 - 2x22 - x32 +4 ≤ 0

λ i ( g i − bi ) = 0 (8) λ(-x12 - 2x22 - x32 +4)=0

λi ≥ 0 (9) λ≥0

xj ≥ 0 (10) x 1 , x2 ≥ 0

Verificação das condições KKT no ponto (1, 1, 1);

(1) -2+2λx1 ≤ 0 -2+2λ ≤ 0 λ≤1


(2) 2
-3x2 +4λx2 ≤ 0 -3+4λ ≤ 0 λ ≤ 4/3
(3) -2x3 +2λx3 ≤ 0 -2+2λ ≤ 0 λ≤1
(4) x1 (-2+2λx1) = 0 -2+2λ = 0 λ=1 Contradição nos valores de λ
(5) x2(-3x22 +4λx2) = 0 -3+4λ = 0 λ = 3/4
(6) x3(-2x3 +2λx3) = 0 -2+2λ = 0 λ=1
(7) -x12 - 2x22 - x32 +4 ≤ 0

(8) λ(-x12 - 2x22 - x32 +4) = 0

(9) λ≥0
(10) x 1 , x2 ≥ 0

As condições KKT não se verificam no ponto (1, 1, 1) pelo que o ponto proposto não é o ponto-óptimo
(notar que o problema é de programação convexa).

4-12 INVESTIGAÇÃO OPERACIONAL (MS)


Exercícios de PNL – Soluções detalhadas

4.9 No intervalo [ a , b ] tem-se, no óptimo, f ´( a ) ≤ 0 , ou f ´(x) = 0 ou f ´(b) ≥ 0 como se pode verificar nas
figuras seguintes:

a a x b b

O modelo proposto é:
Max f(x)

s.a. -x ≤ -a
x ≤ b
ou seja:
Max f(x)

s.a. -x + s1 + a = 0

x + s2 - b = 0

s1 , s2 ≥ 0

A função Lagrangeana é:
L = f(x) - λ1 ( -x + s1 + a ) - λ2 ( x + s2 - b )

Não havendo condição de não negatividade para a variável “ x “ têm-se as condições de 1ª ordem para
extremo:
• L´(x) = 0 ou seja f ´(x) + λ1 - λ2 = 0

• L´(s1) = -λ1 ≤ 0 e s1 [ L´(s1 ) ] = - λ1 s1 = 0 (1) (porque s1 é variável não negativa)

• L´(s2) = -λ2 ≤ 0 e s2 [ L´(s2 ) ] = - λ2 s2 = 0 (2) (porque s2 é variável não negativa)

Sendo -s1 = -x + a , substituindo em (1) fica : λ1 ( -x + a ) = 0

Sendo -s2 = x - b , substituindo em (2) fica : λ2 ( x - b ) = 0

As condições obtidas são :


(1) f ´(x) + λ1 - λ2 = 0

(2) λ1 ( -x + a ) = 0

(3) λ2 ( x - b ) = 0

(4) λ1 ≥ 0

(5) λ2 ≥ 0

Resta agora verificar se estas condições conduzem ás soluções possíveis anteriormente obtidas
geometricamente :

INVESTIGAÇÃO OPERACIONAL (MS) 4-13


Exercícios de PNL – Soluções detalhadas

λ1 λ2 Condição Solução

1º caso 0 0 f ´(x) = 0 ←
2º caso >0 0 -x + a = 0 ⇒ x = a ⇒ f ´(x) + λ1 = 0

f ´(a) = -λ1 ≤ 0 ←

3º caso 0 >0 x-b=0⇒x=b ⇒ f ´(x) - λ2 = 0

f ´(b) = λ2 ≥ 0 ←

4º caso >0 >0 -x + a = 0 ⇒ x = a ⇒ Impossível porque a ≠ b


x-b=0⇒x=b ⇒

Dado que as restrições são lineares se a função f(x) for Côncava então a solução óptima ocorre no ponto “a”
ou “b” ou em ponto interior do intervalo.

4.10 O problema equivalente é:

Max [-f(x1,x2)] = - (x1 -1)2 - (x2-2)2 + 3(x1+x2)

s.a. 4x1 + x2 ≤ 20

x1 + 4x2 ≤ 20

x 1 , x2 ≥ 0

As condições KKT são:

∂ f m ∂ gi (1) - 2x1 + 5 - 4λ1 - λ2 ≤ 0


−∑λi ≤0
∂ x j i =1 ∂ x j (2) -2x2 + 7 - λ1 -4λ2 ≤ 0

∂ f m ∂ gi (3) x1 ( - 2x1 + 5 - 4λ1 - λ2 ) = 0


xj ( −∑λi )=0
∂ x j i =1 ∂ x j (4) x2 (-2x2 + 7 - λ1 -4λ2 ) = 0

g i − bi ≤ 0 (5) 4x1 + x2 -20 ≤ 0


(6) x1 + 4x2 -20 ≤ 0
λ i ( g i − bi ) = 0 (7) λ1 (4x1 + x2 -20) = 0
(8) λ2 (x1 + 4x2 -20) = 0
λi ≥ 0 (9) λ1 , λ2 ≥ 0

xj ≥ 0 (10) x 1 , x2 ≥ 0

Se o ponto óptimo não pertence à fronteira do convexo de soluções então tem-se:


• em (7) 4x1 + x2 < 20 pelo que λ1 é obrigatoriamente nulo porque é complementar da variável de folga.

• em (8) deduz-se que λ2 = 0 pela mesma razão.

4-14 INVESTIGAÇÃO OPERACIONAL (MS)


Exercícios de PNL – Soluções detalhadas

Com λ1 = λ2 = 0 as condições KKT ficam reduzidas a:

(1) - 2x1 + 5 ≤ 0

(2) -2x2 + 7 ≤ 0

(3) x1 ( - 2x1 + 5 ) = 0

(4) x2 (-2x2 + 7) = 0

(5) 4x1 + x2 - 20 ≤ 0
(6) x1 + 4x2 - 20 ≤ 0

(10) x 1 , x2 ≥ 0

De (3) deduz-se x1=0 ou (5-2x1) = 0. Para x1 = 0 a condição (1) é violada pelo que (5-2x1) = 0 ou seja

x1=5/2.

De (4) deduz-se x2=0 ou (-2x2+7) = 0. Para x2= 0 a condição (2) é violada pelo que (-2x2+7) = 0 ou seja

x2=7/2.

Com x1 = 5/2 e x2 = 7/2 todas as condições KKT são satisfeitas.

A função maximizada é -f=5x1 - x12 - x22 + 7x2 - 5 que é côncava. As restrições técnicas são lineares pelo

que o problema é de Programação Convexa situação em que as condições KKT são condição necessária e
suficiente para x1 = 5/2 e x2 = 7/2 ser garantidamente o ponto óptimo onde a função atinge o seu mínimo

condicionado (Min f = -13.5).

b.

20

15

10

5 Ponto Óptimo

-5

-10
-10 -5 0 5 10 15 20

INVESTIGAÇÃO OPERACIONAL (MS) 4-15


Exercícios de PNL – Soluções detalhadas

A figura seguinte apresenta o gráfico da função:

f(x1,x2)

400 20

200
10
0
-10
x2
0 0

x1 10

20 -10

4.11 O problema equivalente é:

Max [-f(x1,x2)] = - x1 2 - 2x1 - 2x1x2 - 4x22

s.a. - 2x1 - x2 ≤ - 10

- x1 - 2x2 ≤ - 10

x1,x2 ≥ 0

As condições KKT são:

∂ f m ∂ gi (1) - 2x1 - 2 - 2x2 +2λ1 + λ2 ≤ 0


−∑λi ≤0
∂ x j i =1 ∂ x j (2) -2x1 - 8x2 + λ1 + 2λ2 ≤ 0

∂ f m ∂ gi (3) x1 (- 2x1 - 2 - 2x2 +2λ1 + λ2) = 0


xj ( −∑λi )=0
∂ x j i =1 ∂ x j (4) x2 (-2x1 - 8x2 + λ1 + 2λ2) = 0

g i − bi ≤ 0 (5) -2x1 - x2 +10 ≤ 0


(6) - x1 - 2x2 + 10 ≤ 0
λ i ( g i − bi ) = 0 (7) λ1 (-2x1 - x2 +10) = 0
(8) λ2 (- x1 - 2x2 + 10) = 0
λi ≥ 0 (9) λ1 , λ2 ≥ 0

xj ≥ 0 (10) x 1 , x2 ≥ 0

4-16 INVESTIGAÇÃO OPERACIONAL (MS)


Exercícios de PNL – Soluções detalhadas

Colocando as condições (1), (2), (5) e (6) na forma de igualdade tem-se:


- 2x1 - 2x2 +2λ1 + λ2 + s1 = 2

-2x1 - 8x2 + λ1 + 2λ2 + s2 = 0

2x1 + x2 - e1 = 10

x1 + 2x2 - e2 = 10

com s1, s2, e1, e2 ≥ 0

Atendendo ao valor das variáveis auxiliares s1 , s2, e1 , e2 e à restrição de complementaridade as condições

KKT são equivalentes a:


- 2x1 - 2x2 +2λ1 + λ2 + s1 = 2

-2x1 - 8x2 + λ1 + 2λ2 + s2 = 0

2x1 + x2 - e1 = 10

x1 + 2x2 - e2 = 10

x1s1 + x2s2 + λ1e1 + λ2e2 = 0 (restrição de complementaridade)

x1 , x2 , λ1, λ2, s1, s2, e1 , e2 ≥ 0

Para utilizar o método Simplex é necessário utilizar variáveis Artificiais nas 3ª e 4ª igualdades e Minimizar
a sua soma pelo que se tem:
- 2x1 - 2x2 +2λ1 + λ2 + s1 = 2

-2x1 - 8x2 + λ1 + 2λ2 + s2 = 0

2x1 + x2 - e1 + A1 = 10

x1 + 2x2 - e2 + A2 = 10

Min fa = A1 + A2

A1 , A2 ≥ 0

Aplicando o método Simplex modificado por Wolfe:

VB x1 x2 λ1 λ2 e1 e2 s1 s2 A1 A2 VSM Obs.

s1 -2 -2 2 1 0 0 1 0 0 0 2 Entra x2 pois s2 pode sair

s2 -2 -8 1 2 0 0 0 1 0 0 0 garantindo-se x2s2 = 0

A1 2 1 0 0 -1 0 0 0 1 0 10

A2 1 2 0 0 0 -1 0 0 0 1 10

-fa 0 0 0 0 0 0 0 0 1 1 0

-fa -3 -3 0 0 1 1 0 0 0 0 -20
• • • • • • • • • • • • • • • • • • •
x1 1 0 -3/4 0 0 -1/2 -1/2 1/4 0 1/2 4

x2 0 1 3/8 0 0 -1/4 1/4 -1/8 0 1/4 3

λ2 0 0 5/4 1 0 -3/2 1/2 1/4 0 3/2 16

e1 0 0 -9/8 0 1 -5/4 -3/4 3/8 -1 5/4 1 Solução óptima

-fa 0 0 0 0 0 0 0 0 1 1 0

INVESTIGAÇÃO OPERACIONAL (MS) 4-17


Exercícios de PNL – Soluções detalhadas

Solução Óptima: x1 = 4 ; x2 = 3 ; Max f(x1 , x2) = 84

As figuras seguintes apresentam o gráfico da função proposta, e a projecção horizontal das curvas de nível.

f(x1,x2)
1500

1000
10
500
0
0
-10 x2

0
-10
x1
10

10

Ponto Óptimo

-5

-10
-10 -5 0 5 10

4-18 INVESTIGAÇÃO OPERACIONAL (MS)


Exercícios de PNL – Soluções detalhadas

4.12 O problema equivalente é:

Max [-f(x1,x2)] = - 2x12 - x2 2

s.a. x1 + x2 ≤ 10

-x1 - x2 ≤ -10

x1,x2 ≥ 0

a. As condições KKT são:

∂ f m ∂ gi (1) - 4x1 -λ1 + λ2 ≤ 0


−∑λi ≤0
∂ x j i =1 ∂ x j (2) -2x2 - λ1 + λ2 ≤ 0

∂ f m ∂ gi (3) x1 (- 4x1 -λ1 + λ2) = 0


xj ( −∑λi )=0
∂ x j i =1 ∂ x j (4) x2 (-2x2 - λ1 + λ2) = 0

g i − bi ≤ 0 (5) x1 + x2 - 10 ≤ 0
(6) - x1 - x2 + 10 ≤ 0
λ i ( g i − bi ) = 0 (7) λ1 (x1 + x2 - 10) = 0
(8) λ2 (- x1 - x2 + 10) = 0
λi ≥ 0 (9) λ1 , λ2 ≥ 0

xj ≥ 0 (10) x 1 , x2 ≥ 0

No ponto (10/3,20/3) todas as condições KKT são satisfeitas.


O problema é de programação convexa pelo que aquele ponto é óptimo.
b. Colocando as condições (1), (2), (5) e (6) na forma padrão Simplex tem-se:
- 4x1 - λ1 + λ2 + s1 = 0

-2x2 - λ1 + λ2 + s2 = 0

x1 + x2 + s3 = 10

x1 + x2 - e1 = 10

com x1 , x2 , λ1, λ2, s1, s2, s3 , e1 ≥ 0

Atendendo ao valor das variáveis auxiliares estabelece-se a restrição de complementaridade:


x1s1 + x2s2 + λ1s3 + λ2e1 = 0

Para utilizar o método Simplex é necessário utilizar uma variável Artificial na 4ª igualdade e Minimizar a
função artificial fa(A1) = A1 pelo que se tem:

Min fa = A1

- 4x1 - λ1 + λ2 + s1 = 0

-2x2 - λ1 + λ2 + s2 = 0

x1 + x2 + s3 = 10

x1 + x2 - e1 + A1 = 10

com x1 , x2 , λ1, λ2, s1, s2, s3 , e1, A1 ≥ 0

Aplicando o método Simplex modificado por Wolfe:

INVESTIGAÇÃO OPERACIONAL (MS) 4-19


Exercícios de PNL – Soluções detalhadas

VB x1 x2 λ1 λ2 s1 s2 s3 e1 A1 VSM Obs.

s1 -4 0 -1 1 1 0 0 0 0 0 Entra x1 pois pode sair a

s2 0 -2 -1 1 0 1 0 0 0 0 variável complementar s1.

s3 1 1 0 0 0 0 1 0 0 10 Notar que a11 tem coeficiente

A1 1 1 0 0 0 0 0 -1 1 10 negativo e θmin = 0.

-fa 0 0 0 0 0 0 0 0 1 0

-fa -1 -1 0 0 0 0 0 1 0 -10

x1 1 0 1/4 -1/4 -1/4 0 0 0 0 0 Entra x2 pois pode sair a

s2 0 -2 -1 1 0 1 0 0 0 0 variável complementar s2.

s3 0 1 -1/4 1/4 1/4 0 1 0 0 10 Notar que a22 tem coeficiente

A1 0 1 -1/4 1/4 1/4 0 0 -1 1 10 negativo e θmin = 0.

-fa 0 -1 1/4 -1/4 -1/4 0 0 1 0 -10

x2 0 1 1/2 -1/2 0 -1/2 0 0 0 0 Entra λ2 (pode entrar porque

x1 1 0 1/4 -1/4 -1/4 0 0 0 0 0 a variável complementar é VNB).

s3 0 0 -3/4 3/4 1/4 1/2 1 0 0 10 Sai A1.

A1 0 0 -3/4 3/4 1/4 1/2 0 -1 1 10

-fa 0 0 3/4 -3/4 -1/4 -1/2 0 1 0 -10

λ2 0 0 -1 1 1/3 2/3 0 -4/3 4/3 40/3

x2 0 1 0 0 1/6 -1/6 0 -2/3 2/3 20/3

x1 1 0 0 0 -1/6 1/6 0 -1/3 1/3 10/3

s3 0 0 -3/2 0 0 0 1 1 -1 0 Solução óptima

-fa 0 0 0 0 0 0 0 0 1 0

Solução Óptima: x1 = 10/3 ; x2 = 20/3 ; Max f(x1 , x2) = 66 + 2/3

4-20 INVESTIGAÇÃO OPERACIONAL (MS)


Exercícios de PNL – Soluções detalhadas

As figuras seguintes apresentam a projecção horizontal das curvas de nível e o gráfico da função proposta.

10

Ponto Óptimo
8

-2

-4

-4 -2 0 2 4 6 8 10

f(x1,x2)
300

200 10

100
5
0
-5
x2
0 0

5
x1
10 -5

4.13 A função Lagrangeana é :


L = 3x1 + x2 - λ1 ( x12 + x22 + s1 - 5 ) - λ2 ( x1 - x2 + s2 - 1 ).

Tendo em atenção que só as variáveis de folga utilizadas são não negativas, as condições de primeira ordem
para extremo são as seguintes:

• 3 - 2λ 1 x 1 - λ 2 = 0 (derivada parcial em ordem a x1)

• 1 - 2λ 1 x 2 + λ 2 = 0 (derivada parcial em ordem a x2 )

• -x12 - x22 - s1 + 5 = 0 (derivada parcial em ordem a λ1 )

• -x1 + x2 - s2 + 1 = 0 (derivada parcial em ordem a λ2 )

• - λ1 ≤ 0 (derivada parcial em ordem a s1 )

• - λ1 s1 = 0 ( complementaridade)

• - λ2 ≤ 0 ( em ordem a s2 )

• - λ2 s2 = 0 ( complementaridade)

INVESTIGAÇÃO OPERACIONAL (MS) 4-21


Exercícios de PNL – Soluções detalhadas

Substituindo o valor das variáveis de folga, têm-se as condições KKT :


(1) 3 - 2λ1 x1 - λ2 = 0

(2) 1 - 2λ1 x2 + λ2 = 0

(3) x12 + x22 - 5 ≤ 0

(4) λ1 (x12 + x22 - 5) = 0

(5) x 1 - x2 - 1 ≤ 0

(6) λ2 (x 1 - x2 - 1) = 0

(7) λ1 , λ2 ≥ 0

Estudo:
1ª Hipótese : λ1 = 0

Da condição (2) tem-se λ2 = -1 que não é admissível, concluindo-se que λ1 ≠ 0

2ª Hipótese : λ1 ≠ 0 ; λ2 = 0

Da condição (4) tem-se x12 + x22 = 5

Da condição (1) tem-se (3 - 2λ1 x1 ) = 0 ou seja x1 = 3/ 2λ1

Da condição (2) tem-se (1 - 2λ1 x2 ) = 0 ou seja x2 = 1/ 2λ1


2
Substituindo “x1” e “x2” por estes valores em x12 + x22 =5 tem-se λ1 = ( porque λ1 ≥ 0 )
2
1
O valor de x 1 = 3/ 2λ1 é então x1 = e3 y =
2 2
Estes valores das variáveis não verificam a condição (5) pelo que se conclui que λ2 é diferente de zero.

3ª Hipótese : λ1 ≠ 0 ; λ2 ≠ 0

Das condições (4) e (6) tem-se o sistema de equações:


x12 + x22 = 5

x1 - x2 = 1

com 2 soluções : x1= -1 ; x2 = -2 e x1 = 2 ; x2 = 1.

Para x1 = -1 ; x2 = -2 obtém-se em (1) e (2) : λ1 = - 2/3 que não é admissível.

A solução x1 = 2 ; x2 = 1 permite calcular λ1 = 2/3 ; λ2 = 1/3 no mesmo sistema de equações

Com x 1= 2 ; x2 = 1 ; λ1 = 2/3 ; λ2 = 1/3 todas as condições KKT são observadas pelo que se conclui que o

valor máximo da função-objectivo é 7. A figura seguinte permite verificar o exposto:

x2
f=7

x1 - x 2 = 1
(2,1)

x1

4-22 INVESTIGAÇÃO OPERACIONAL (MS)


Exercícios de PNL – Soluções detalhadas

4.14 Se x1 > 1 então ( 1 - x1 ) 3 < 0 o que conduziria a x2 < 0. Conclui-se assim que o valor óptimo de f(x) não

pode exceder 1.
Dado que x1 = 1 ; x2 = 0 é admissível , o ponto com estas coordenadas deve ser a solução óptima.

Uma das condições KKT é:


1 - 3λ(1 - x1 ) 2 ≤ 0

Para x1 =1 e x2 = 0 tem-se por substituição :

1 - 3λ ( 0 ) 2 ≤ 0
1 ≤ 0 ( não satisfaz)
Conclusão : A condição KKT testada “falha” no ponto óptimo.

g(x1,x2)

10000

0 20
-10000 10

0
-20
-10
-10 x2
0
10 -20
x1
20

A figura seguinte apresenta as curvas de nível da função de restrição:

X2

10
Ponto Óptimo (x1= 1 ;x2 = 0 )

-10

-20

-20 -10 0 10 X1

As condições KKT podem “falhar” no ponto-óptimo quando não forem linearmente independentes os
gradientes associados às restrições saturadas.

INVESTIGAÇÃO OPERACIONAL (MS) 4-23


Exercícios de PNL – Soluções detalhadas

No ponto (1,0) a restrição técnica x2 - (1-x1)3 ≤ 0 e a restrição lógica -x2 ≤ 0 estão saturadas ou seja

verificam-se como igualdades.


Neste ponto os valores dos gradientes destas restrições são:

∇( x2 - (1-x1)3 ) = 3(1-x1)2 = 0 [
∇ x 2 − (1 − x 1 ) 3 ]
1 1
∇( f )

∇( -x2 ) = 0 x1=1 ; x2 = 0

-1
∇( − x 2 )

Dado que [ 0 1 ]T + [ 0 -1 ]T = [ 0 0 ]T estes gradientes não são linearmente independentes.


Tenha-se então em atenção que:
“Sendo X* a solução óptima de um PNL, se os gradientes das restrições saturadas (técnicas e lógicas)
formarem um conjunto de vectores linearmente independentes, verificam-se as condições KKT “.
“Se o espaço de solução for definido exclusivamente por restrições lineares as condições KKT vigoram
sempre no óptimo”.

4.15 Resumo do método de Lemke:


• Ambiente : Programação quadrática
• Finalidade : Cálculo da solução das condições KKT
• Forma do modelo para estabelecer as condições KKT:
Max f(x)
s.a. AX ≤ B
X≥0
Se o objectivo é Minimizar, maximizar a função simétrica.
Se uma restrição é do tipo “ ≥“, passá-la a “≤“ multiplicando por “-1”.
Se uma restrição é do tipo “=“, substituí-la por duas restrições: uma do tipo “≤“ e outra do tipo “≥“.
• Técnica de cálculo : método Simplex modificado por Lemke
• Descrição
1. Organizar o seguinte sistema de equações a partir das condições KKT:
∂f m ∂ gi
− ∑λi + Ej =0
∂ x j i =1 ∂ x j
AX + S i = B
E j , Si ≥ 0

em que:
Ej = variável de folga na condição associada à derivada parcial em ordem a xj

A = matriz tecnológica
Si = variável de folga da restrição técnica “i”

B = vector-coluna dos segundos membros das restrições técnicas

4-24 INVESTIGAÇÃO OPERACIONAL (MS)


Exercícios de PNL – Soluções detalhadas

2. Acrescentar aos segundos membros das equações precedentes a variável auxiliar “α“ ficando o
sistema de equações:
∂f m ∂ gi
− ∑λi + Ej −α = 0
∂ x j i =1 ∂ x j
AX + S i − α = B
α ≥0

As equações obtidas em 1. (forma-padrão do Simplex) são satisfeitas se e só se α=0. O recurso a esta


variável é assim a forma engenhosa apresentada por Lemke para cálculo da solução das condições
KKT. Recorrendo ao método Simplex, procura-se por combinação linear uma solução em que a
variável “α“ seja nula e as restantes variáveis tenham valor não negativo garantindo a satisfação da
restrição de complementaridade:
x j E j + λ i Si = 0
Para tal adoptam-se as seguintes regras para o processo iterativo:
1ª Iteração
• Entra para a base a variável “α“.
• Sai da base a variável com valor negativo de maior valor absoluto
Restantes Iterações
• Entra para a base a variável complementar da que acabou de sair da base.
• Sai da base a variável associada ao valor “θmin “ usual em Simplex

Regra de Paragem
• O processo iterativo termina se “α“ é VNB (valor nulo) ou não é possível obter “θmin ≥ 0”.

No primeiro caso (α = 0) há solução para as condições KKT enquanto no segundo o problema


não tem solução.

4.16 As condições KKT são:


(1) 2 - 2x1 - 2λ ≤ 0

(2) x1 (2 - 2x1 - 2λ ) = 0

(3) 3 - 2x2 - 2λ ≤ 0

(4) x2 (3 - 2x2 - 2λ ) = 0

(5) 2x1 + 2x2 - 4 ≤ 0

(6) λ (2x1 + 2x2 - 4) = 0

(7) x1 , x2 , λ ≥ 0

O sistema de equações de Lemke é formado a partir das condições (1), (3) e (5):

- 2x1 - 2λ + e1 - α = -2

3 - 2x2 - 2λ + e2 - α = -3

2x1 + 2x2 + s1 = 4

Recorrendo ao método Simplex tem-se:

INVESTIGAÇÃO OPERACIONAL (MS) 4-25


Exercícios de PNL – Soluções detalhadas

VB x1 x2 λ e1 e2 s1 α VSM Obs.

e1 -2 0 -2 1 0 0 -1 -2 Entra α.
e2 0 -2 -2 0 1 0 -1 -3 Sai e2

s1 2 2 0 0 0 1 -1 4

α 0 2 2 0 -1 0 1 3 Saiu e2 ⇒ Entra x2

e1 -2 2 0 1 -1 0 0 1 Sai e1

s1 2 4 2 0 -1 1 0 7

x2 -1 1 0 1/2 -1/2 0 0 1/2 Saiu e1 ⇒ Entra x1

α 2 0 2 -1 0 0 1 2 Sai s1

s1 6 0 2 -2 1 1 0 5

x1 1 0 1/3 -1/3 1/6 1/6 0 5/6 Saiu s1 ⇒ Entra λ

x2 0 1 1/3 1/6 -1/3 1/6 0 4/3 Sai α

α 0 0 4/3 -1/3 -1/3 -1/3 1 1/3

λ 0 0 1 -1/4 -1/4 -1/4 3/4 1/4 Solução óptima pois “α“ é VNB
x1 1 0 0 -1/4 1/4 1/4 -1/4 3/4

x2 0 1 0 1/4 -1/4 1/4 -1/4 5/4

Solução Óptima: x1 = 3/4 ; x2 = 5/4 ; Max f(x1 , x2) = 25/8

4.17
Condições KKT:

∂ f m ∂ gi (1) 15 + 4x2 - 4x1 -λ(1) ≤ 0


−∑λi ≤0
∂ x j i =1 ∂ x j (2) 30 + 4x1 - 8x2 - λ(2) ≤ 0

∂ f m ∂ gi (3) x1[15 + 4x2 - 4x1 -λ(1)] = 0


xj ( −∑λi )=0
∂ x j i =1 ∂ x j (4) x2[30 + 4x1 - 8x2 - λ(2)] = 0

g i − bi ≤ 0 (5) x1 + 2x2 -30 ≤ 0

λ i ( g i − bi ) = 0 (6) λ( x1 + 2x2 -30) = 0

λi ≥ 0 (7) λ≥0

xj ≥ 0 (8) x 1 , x2 ≥ 0

O sistema de equações de Lemke é formado a partir das condições (1), (2) e (5):

- 4x1 + 4x2 - λ + e1 - α = -15

4x1 - 8x2 - 2λ + e2 - α = -30

x1 + 2x2 + s1 - α = 30

Recorrendo ao método Simplex tem-se:

VB x1 x2 λ e1 e2 s1 α VSM Obs.

4-26 INVESTIGAÇÃO OPERACIONAL (MS)


Exercícios de PNL – Soluções detalhadas

e1 -4 4 -1 1 0 0 -1 -15 Entra α.
e2 4 -8 -2 0 1 0 -1 -30 Sai e2

s1 1 2 0 0 0 1 -1 30

α -4 8 2 0 -1 0 1 30 Saiu e2 ⇒ Entra x2

e1 -8 12 1 1 -1 0 0 15 Sai e1

s1 -3 10 2 0 -1 1 0 60

x2 -2/3 1 1/12 1/12 -1/12 0 0 5/4 Saiu e1 ⇒ Entra x1

α 4/3 0 4/3 -2/3 -1/3 0 1 20 Sai s1

s1 11/3 0 7/6 -5/4 1/6 1 0 95/2

x1 1 0 7/22 -5/22 -1/22 3/11 0 285/22 Saiu s1 ⇒ Entra λ

x2 0 1 13/44 -3/44 -5/44 2/11 0 435/44 Sai α

α 0 0 10/11 -4/11 -3/4 -4/11 1 30/11


λ 0 0 1 -2/5 -3/10 -2/5 11/10 3 Solução óptima pois “α“ é
x1 1 0 0 -1/10 1/20 2/5 -7/20 12 VNB

x2 0 1 0 1/20 -1/40 3/10 -13/40 9


Solução Óptima: x1 = 12 ; x2 = 9 ; Max f(x1 , x2) = 270

4.18 O problema equivalente é:

Max [-f(x1,x2)] = - x1 2 - 2x1 - 2x1x2 - 4x22

s.a. - 2x1 - x2 ≤ - 10

- x1 - 2x2 ≤ - 10

x1,x2 ≥ 0

As condições KKT são:

∂ f m ∂ gi (1) - 2x1 - 2 - 2x2 +2λ1 + λ2 ≤ 0


−∑λi ≤0
∂ x j i =1 ∂ x j (2) -2x1 - 8x2 + λ1 + 2λ2 ≤ 0

∂ f m ∂ gi (3) x1 (- 2x1 - 2 - 2x2 +2λ1 + λ2) = 0


xj ( −∑λi )=0
∂ x j i =1 ∂ x j (4) x2 (-2x1 - 8x2 + λ1 + 2λ2) = 0

g i − bi ≤ 0 (5) -2x1 - x2 +10 ≤ 0


(6) - x1 - 2x2 + 10 ≤ 0
λ i ( g i − bi ) = 0 (7) λ1 (-2x1 - x2 +10) = 0
(8) λ2 (- x1 - 2x2 + 10) = 0
λi ≥ 0 (9) λ1 , λ2 ≥ 0

xj ≥ 0 (10) x 1 , x2 ≥ 0

O sistema de equações de Lemke é formado a partir das condições (1), (2) (5) e (6):

- 2x1 - 2x2 + 2λ1 + λ2 + e1 - α = 2

INVESTIGAÇÃO OPERACIONAL (MS) 4-27


Exercícios de PNL – Soluções detalhadas

-2x1 - 8x2 + λ1 + 2λ2 + e2 - α = 0

-2x1 - x2 + s -10

- x1 - 2x2 + s1 - α = 10

Recorrendo ao método Simplex tem-se:

VB x1 x2 λ1 λ2 e1 e2 s1 s2 α VSM Obs.

e1 -2 -2 2 1 1 0 0 0 -1 2 Entra α
e2 -2 -8 1 2 0 1 0 0 -1 0 Sai s1 (ou s2)

s1 -2 -1 0 0 0 0 1 0 -1 -10

s2 -1 -2 0 0 0 0 0 1 -1 -10

α 2 1 0 0 0 0 -1 0 1 10 Saiu s1 ⇒ Entra λ1

e1 0 -1 2 1 1 0 -1 0 0 12 Sai e1

e2 0 -7 1 2 0 1 -1 0 0 10

s2 1 -1 0 0 0 0 -1 1 0 0

λ1 0 -1/2 1 1/2 1/2 0 -1/2 0 0 6 Saiu e1 ⇒ Entra x1

α 2 1 0 0 0 0 -1 0 1 10 Sai s2

e2 0 -13/2 0 3/2 -1/2 1 -1/2 0 0 4

s2 1 -1 0 0 0 0 -1 1 0 0

x1 1 -1 0 0 0 0 -1 1 0 0 Saiu s2 ⇒ Entra λ2

λ1 0 -1/2 1 1/2 1/2 0 -1/2 0 0 6 Sai e2

α 0 3 0 0 0 0 1 -2 1 10
e2 0 -13/2 0 3/2 -1/2 1 -1/2 0 0 4

λ2 0 -19/3 0 1 -1/3 2/3 -1/3 0 0 8/3 Saiu e2 ⇒ Entra x2

x1 1 -1 0 0 0 0 -1 1 0 0 Sai λ1

λ1 0 5/3 1 0 2/3 -1/3 -1/3 0 0 14/3

α 0 3 0 0 0 0 1 -2 1 10
x2 0 1 3/5 0 2/5 -1/5 -1/5 0 0 14/5 Saiu λ1 ⇒ Entra s1

λ2 0 0 13/5 1 7/5 -1/5 -6/5 0 0 74/5 Sai α

x1 1 0 3/5 0 2/5 -1/5 -6/5 1 0 14/5

α 0 0 -9/5 0 -6/5 3/5 8/5 -2 1 8/5


• • • • • • • • •

4-28 INVESTIGAÇÃO OPERACIONAL (MS)


Exercícios de PNL – Soluções detalhadas

VB x1 x2 λ1 λ2 e1 e2 s1 s2 α VSM Obs.

s1 0 0 -9/8 0 -3/4 3/8 1 -5/4 5/8 1 Solução óptima pois “α“ é


x2 0 1 3/8 0 1/4 -1/8 0 -1/4 1/8 3 VNB

λ2 0 0 5/4 1 1/2 1/4 0 -3/2 3/4 16

x1 1 0 -3/4 0 -1/2 1/4 0 -1/2 3/4 4

Solução Óptima: x1 = 4 ; x2 = 3 ; Max f(x1 , x2) = 84

INVESTIGAÇÃO OPERACIONAL (MS) 4-29


Exercícios de PNL – Soluções detalhadas

5.

5.1 Considere-se o problema de programação convexa:


Max f(X)
s.a. AX ≤ B
X≥0
em que X = [ x1, x2, ... , xn ]T , f(X) é a função-objectivo não linear, Amxn é a matriz tecnológica e B é o

vector-coluna dos segundos membros das restrições técnicas que são lineares.
Sendo X0 um ponto-tentativa inicial, o valor de f(X) no intervalo de X0 a X é a série de Taylor em potências

de (X-X0 ):

∞ f k (X 0 )
f (X ) = ∑ (X − X 0 )k
k =1 k!
O valor de f(X) na proximidade de X pode ser obtido pela aproximação linear:
f ( X ) ≈ f ( X 0 ) + ∇f ( X 0 )( X − X 0 )
Dado que f ( X 0 ) e ∇f ( X 0 )( X 0 ) são valores constantes, pode construir-se a função:

h( X ) = ∇f ( X 0 )( X )
que sendo linear permite calcular, pelo método Simplex, um ponto XPL que é solução admissível do modelo

original e solução óptima do modelo:


Max h(X)
s.a. AX ≤ B
X≥0
O valor da função linear h(X) aumenta necessariamente ao longo do segmento de extremos X0 e XPL mas

dada a distância que pode haver entre estes dois pontos nada garante que o mesmo se verifique com f(X)
pelo que é necessário determinar qual o ponto X* onde f(X) atinge o maior valor.
O ponto X* pertencente ao segmento tem coordenadas:
X* = X0 + t(XPL - X0) com 0 ≤ t ≤ 1,

pelo que é necessário calcular Max f [(X0 + t(XPL - X0)] para o que se recorre a qualquer dos métodos de

optimização livre de funções monovariáveis (método da bissecção por exemplo).


Em X* tem-se f(X*) ≥ f(X0) pelo que:

• se f(X*) = f(X0) então X0 é a solução óptima do modelo de programação não linear

• se f(X*) > f(X0) então X* passa a constituir novo ponto-tentativa onde se repete o procedimento

descrito
O cálculo termina quando se verificar uma das seguintes situações:
• Xk = Xk-1 com Xk-1 como solução óptima

• quando dois pontos sucessivos estiverem suficientemente próximos (uso de tolerância),no caso de
a função-objectivo aumentar sempre ao longo do processo iterativo

INVESTIGAÇÃO OPERACIONAL (MS) 5-1


Exercícios de PNL – Soluções detalhadas

Fluxograma do método Frank-Wolfe:

Escolher Ponto-Tentativa Xk
(deve ser admissível)

Calcular ∇f(Xk )

Construir a função:
h(X) = ∇f(Xk ).X

Calcular XPL optimizando:


Max h(X)
s.a. AX ≤ B
X≥0

Definir X*=Xk + t(XPL-Xk )

Calcular:
Max f(t)=Xk+t(XPL-Xk)

X*=Xk ?
ou Sim Xk é Óptimo
X*- Xk ≤ Tolerância ? FIM

Não
Xk=X*

5.2 Considerando o modelo na forma:


Max (-f(X)) = -x12 + 6x1 - x23 + 3x2

s.a. x1 + x2 ≤ 1

x 1 , x2 ≥ 0

tem-se ∇(-f) = -2x1 + 6

-3x22 + 3

5-2 INVESTIGAÇÃO OPERACIONAL (MS)


Exercícios de PNL – Soluções detalhadas

Considerando para ponto-tentativa inicial X1 = (0 , 0) que é admissível , calcula-se:

∇[-f(0 , 0)] = 6
3

Organiza-se a função linear h(X) = 6x1 + 3x2 e optimiza-se pelo método Simplex:

Max h(X) = 6x1 + 3x2

s.a. x1 + x2 ≤ 1
x 1 , x2 ≥ 0
com solução óptima XPL = (1 , 0 ).

O valor máximo de -f(X) é um ponto X* (igual a X1+ t(XPL - X1) = ( t , 0) com 0 ≤ t ≤ 1), do segmento:

(0,0) (1,0)
Calcula-se Max(-f(X*)) = -x12 + 6x1 - x23 + 3x2 = -t2 + 6t.

Recorrendo, por exemplo, ao método da bissecção determina-se o valor óptimo de t* = 1 a que corresponde
X*=(1,0) onde a função atinge o maior valor. Como X1 e X* são diferentes e muito afastados, considera-se o

ponto (1,0) como novo ponto-tentativa X2 .

Calcula-se novamente:

∇[-f(1 , 0) = 4
3

Organiza-se a função linear h(X) = 4x1 + 3x2 e optimiza-se pelo método Simplex:

Max h(X) = 4x1 + 3x2

s.a. x1 + x2 ≤ 1
x 1 , x2 ≥ 0
com solução óptima XPL = (1 , 0 ).

O valor máximo de -f(X) é atingido no ponto X* = X2+ t(XPL - X2) = ( 1 , 0) com 0 ≤ t ≤ 1.

Calcula-se Max(-f(X*))= -x12 + 6x1 - x23 + 3x2 = 5.

Como X2 e X* são iguais e a função -f(x) é côncava conclui-se que o ponto de coordenadas x1=1, x2=0 é

solução óptima com Min f(X) = - 5.

5.3
1. Calcula-se o gradiente da função no ponto tentativa X1 = (5,5):

∇f = 15+4x2-4x1 = 15

30+4x1-8x2 10

2. Optimiza-se recorrendo ao método Simplex:


Max h(X) = 15x1 + 10x2

s.a. x1 + 2x2 ≤ 30

x1 , x 2 ≥ 0

A solução óptima é XPL = (30 , 0).

INVESTIGAÇÃO OPERACIONAL (MS) 5-3


Exercícios de PNL – Soluções detalhadas

5   30 5  5 + 25t 


3. Calcula-se X* = X1 + t(XPL - X1) =   + t    −    =  
5   0  5   5 − 5t 

4. Maximiza-se a função f(X*) = -1850t2 + 325t + 175, obtendo-se t* = 0.088 a que corresponde:

 7.196
X* =  
 4.561

 7.196
5. Porque X* ≠ X1 considera-se para novo ponto-tentativa X2 = X* =  
 4.561
6. Recalcula-se o gradiente da função no ponto tentativa X2 :

∇f = 15+4x2-4x1 = 4.459

30+4x1-8x2 22.3

7. Optimiza-se recorrendo ao método Simplex:


Max h(X) = 4.459x1 + 22.3x2

s.a. x1 + 30x2 ≤ 30

x1 , x 2 ≥ 0

A solução óptima é XPL = (0 , 15).

 7.196   0   7.196   7.196 − 7.196t 


8. Calcula-se X* = X2 + t(XPL - X2) =   + t   −   =  
 4.561  15  4.561   4.561 + 10.44t 

9. Maximiza-se a função f(X*) = -840t2 + 201t + 189, obtendo-se t* = 0.119 a que corresponde:

 6.337
X* =  
 5.807 

 6.337
10. Porque X* ≠ X2 considera-se para novo ponto-tentativa X3 = X* =  
 5.807 
11. Recalcula-se o gradiente da função no ponto tentativa X3 :

∇f = 15+4x2-4x1 = 12.88

30+4x1-8x2 8.89

12. Optimiza-se recorrendo ao método Simplex:


Max h(X) = 12.88x1 + 8.89x2

s.a. x1 + 30x2 ≤ 30

x1 , x 2 ≥ 0

A solução óptima é XPL = (30 , 0).

 6.337   30  6.337   6.337 + 23.667t 


14. Calcula-se X* = X3 + t(XPL - X3) =   + t   −   =  
 5.807    0   5.807    5.807 − 5.807t 

15. Maximiza-se a função f(X*) = -1804t2 + 253t + 201, obtendo-se t* = 0.07 a que corresponde:

 7.996
X* =  
 5.4 

 7.796
16. Porque X* ≠ X3 considerava-se para novo ponto-tentativa X4 = X* =  
 5.4 

5-4 INVESTIGAÇÃO OPERACIONAL (MS)


Exercícios de PNL – Soluções detalhadas

5.4 Solução óptima no ponto x1 = 1.695 ; x2 = 1.914

5.5 O método SUMT é caracterizado pela simplicidade e versatilidade embora propenso a instabilidade
numérica.
O problema original é substituído por uma sequência de problemas livres cujas soluções convergem para um
máximo local do problema original (máximo global em programação convexa).
Para um modelo do tipo:
Max f(x1 , ..., xn)

s.a. AX ≤ B
X≥0
estabelece-se uma função-barreira B(X) que para X admissível, satisfaz as seguintes condições:
• B(X) tem valores reduzidos se X é um ponto afastado das fronteiras do espaço de solução
• B(X) tem valores muito elevados em pontos próximos da fronteira daquele espaço tendendo para
“∞ “ quando a distância do ponto X à fronteira tende para zero.
A função B(X) utilizada pelo método é:
m n
1 1
B( X ) = ∑ +∑
bi − gi ( X ) j = 1 x j
i =1

em que: m = número de restrições técnicas


n = número de variáveis de decisão
bi = segundos membros das restrições técnicas

gi(X) = primeiros membros das restrições técnicas


Para valores admissíveis de X, o denominador de cada termo é proporcional à distância de X à fronteira
associada à restrição pelo que B(X) funciona como fronteira de repulsão.
Cada um dos problemas livres a resolver sequencialmente envolve a optimização de :
Max P(X,r) = f(X) - rB(X)
em que “r” tem valores estritamente positivos sucessivamente decrescentes tendendo para zero.
A redução sucessiva do valor de “r” é estabelecida por recorrência (valor seguinte igual ao anterior
multiplicado por “θ“ que satisfaz 0 < θ < 1 sendo típico usar θ=0.01).
Se Xk é um máximo de P(X,r) então:

P(Xk ,r) = f(Xk ) - rB(Xk )

e se X* for óptimo de f(X) então:


f(X*) ≥ f(Xk ) - rB(Xk )

f(X*) ≤ f(Xk ) + rB(Xk )

donde resulta que tendendo “r” para zero, Xk tende para X* .

O processo iterativo termina quando rB(X) ≤ ε (tolerância).


Casos particulares:
1. Minimização de f(X) : maximiza-se Max (-f(X))
2. Restrição técnica do tipo “ ≤ “ : transforma-se em restrição do tipo “ ≥ “

−[bi − gi ( X )]
2
−r
3. Restrição técnica do tipo “ = “ : substituir por na expressão de P(X,r).
bi − gi ( X ) r

INVESTIGAÇÃO OPERACIONAL (MS) 5-5


Exercícios de PNL – Soluções detalhadas

5.6 Solução óptima no ponto x1 = 1.695 ; x2 = 1.914

5-6 INVESTIGAÇÃO OPERACIONAL (MS)


Exercícios de PNL – Soluções detalhadas

6.

6.1 Variáveis de Decisão : x1 ( produção do computador A) ; x2 (produção do computador B)

Função Objectivo: Max f = p1 x1 + p2 x2

Restrições técnicas :

2x1 + 3x2 ≤ 5000 ( mão de obra)

3x1 + x2 ≤ 4500 (chips)

Restrições lógicas : x1 , x2 ≥ 0 e Inteiro

As relações das variáveis de decisão com os preços de venda permitem obter por substituição:
Max f = 4000p1 -10p12 + 1.8 p1 p2 + 2000p2 - 9p22

Esta função é Côncava o que conjugado com restrições lineares permite concluir que as condições KKT
vigoram no óptimo.
Condições KKT:
(1) 4000 - 20p1 + 1.8 p2 +17.6 λ1 + 29.2 λ2 ≤ 0

(2) 1.8 p1 + 2000 -18 p2 +25λ1 + 6 λ2 ≤ 0

(3) p1 (4000 - 20p1 + 1.8 p2 +17.6 λ1 + 29.2 λ2 ) = 0

(4) p2 (1.8 p1 + 2000 -18 p2 +25λ1 + 6 λ2 ) = 0

(5) -17.6 p1 - 25 p2 ≤ -9000

(6) -29.2 p1 -6 p2 ≤ -9500

(7) λ1 (-17.6 p1 - 25 p2 + 9000 ) = 0

(8) λ2 (-29.2 p1 -6 p2 + 9500 ) = 0

(9) p1 , p2 ≥ 0

(10) λ1 , λ2 ≥ 0

1ª Hipótese : λ1 = 0 ; λ2 ≠ 0

λ2 ≠ 0 ⇒ -29.2p1 - 6p2 + 9500 = 0

p1 ≠ 0 ⇒ 4000 - 20p1 + 1.8 p2 +17.6 λ1 + 29.2 λ2 = 0

p2 ≠ 0 ⇒ 1.8 p1 + 2000 -18 p2 +25λ1 + 6 λ2 = 0

Resolvendo o sistema tem-se p1 = 292.8093 u.m. ; p2 = 158.3231 u.m. ; λ2 = 53.80807 u.m. que é uma

solução admissível a que corresponde x1 = 1230 computadores do tipo A, x2 = 809 computadores do tipo B e

f= 488358.4 u.m.
Não há outro ponto que satisfaça as condições KKT pelo que o calculado é a solução óptima.
a. Plano óptimo de produção: 1230 computadores do tipo A ; 809 computadores do tipo B com preços de
venda de p1 = 292.81 u.m. e p2 = 158.33 u.m. respectivamente.

A receita máxima da venda será de 488358.36 u.m.


b. Preço-sombra da hora de mão de obra =λ1 = 0

c. Preço-sombra do chip = λ2 = 53.81 u.m.

INVESTIGAÇÃO OPERACIONAL (MS) 6-1


Exercícios de PNL – Soluções detalhadas

6.2
• Variáveis de Decisão : x1 , x2 , x3 ( nível de produção de A, B, C respectivamente)

Tem-se assim :
x1 = 18 - p1 ; x2 = 9 + 1/3 p1 - p2 ; x3 = 13 - p3

• Restrições técnicas :

3x1 + 4x2 + 6x3 ≤ 150 (horas máquina)

4x1 + 10x2 + 7x3 ≤ 280 (horas de trabalho)

• Restrições lógicas : x1 , x2 ,x3 ≥ 0 e Inteiro

• Função-objectivo : Max f = (13x1 - x12 ) + ( 3x2 - (1/3) x1x2 - x22 ) + ( 4x3 - x32 )

Nota sobre a organização da função objectivo:


Secretária do tipo A:
• total do lucro = total da venda - total do custo de produção = p1 x1 - 5x1 = x1 (18 - x1) - 5x1

= 13x1 -x12

Secretária do tipo B:
• total do lucro = total da venda - total do custo de produção = p2 x2 - 12x2 =

= x2 (9 + 1/3 p1 - x2 ) - 12x2 = x2 [ 9 + (1/3) (18-x1) - x2 ] -12x2 =

= 3x2 - (1/3) x1x2 - x22

Secretária do tipo C:
• total do lucro = total da venda - total do custo de produção = p3 x3 - 9x3 = 4x3 - x32

6.3 O modelo de PNL é:


Max f (T,C) = T2/3.C1/3
s.a. 2T + C ≤ 30
T,C≥0
2 1
Para maximizar a função pode maximizar-se ln f (T , C ) = ln T + ln C , dado que ln é uma função
3 3
crescente.
As condições KKT são:
2
(1) − 2λ ≤ 0
3T
 2 
(2) T  − 2λ  = 0
 3T 

1
(3) −λ ≤ 0
3C
 1 
(4) C  − λ = 0
 3C 

(5) 2T + C - 30 ≤ 0
(6) λ ( 2T + C - 30 ) = 0

(7) λ, T, C ≥ 0

6-2 INVESTIGAÇÃO OPERACIONAL (MS)


Exercícios de PNL – Soluções detalhadas

2T
Admitindo 2T+C-30 ≠ 0 então λ=0 e em (2) tem-se = 0 o que é falso pelo que se conclui que λ≠0 e que
3T
2
2T+C-30 = 0. Se T=0 tem-se em (1) o que não é possível pelo que T≠0.
0
 2 
Então em (2) fica  − 2λ  = 0 .
 3T 

 1 
De (4) conclui-se que C≠0 pelo que  − λ = 0 .
 3C 

Dispõe-se assim do sistema de equações:


2T+C-30 = 0
 2 
 − 2λ  = 0
 3T 

 1 
 − λ = 0
 3C 

com solução λ=1/30 ; T=10 ; C=10 a que corresponde f(T,C) = 10 máquinas.

6.4 Do sistema de equações organizado no problema anterior tem-se:


1 1
T= e C=
3λ 3λ
Considerando “x” o capital mínimo a determinar tem-se a restrição 2T+C=x. Substituindo T e C fica:
 1 1 1 x x x
2  + = x pelo que λ = . Resulta assim T = e C= pelo que f = = 6 , implica x=18.
 3λ  3λ x 3 3 3
A solução é portanto 18 unidades de capital como mínimo para produzir 6 máquinas.

6.5
a. O modelo de PNL é:
Max f(x1 , x2) = 30x11/2 + 20x21/2

s.a. x1 + x2 ≤ 100

x1 , x2 ≥ 0

Recorrendo ás condições KKT :


15
(1) −λ ≤ 0
x1

 15 
(2) x1  − λ  ≤ 0
 x1 

10
(3) −λ ≤ 0
x2

 10 
(4) x2  − λ  ≤ 0
 x2 

(5) x1 + x2 ≤ 100

(6) λ(x1 + x2 -100) = 0

(7) λ, x1 , x2 ≥ 0

INVESTIGAÇÃO OPERACIONAL (MS) 6-3


Exercícios de PNL – Soluções detalhadas

Admitindo x1 , x2 , λ diferentes de zero, tem-se o sistema de equações:

15
− λ = 0 ⇒ λ x1 = 15
x1

10
− λ = 0 ⇒ λ x2 = 10
x2

x1 + x2 = 100

com solução x1 = 69.231 u.m. ; x2 = 30.769 u.m. ; λ = 1.803 ; Max f= 360.555 u.m.

b. Aproximadamente λ = 1.803 (em rigor, 1.798 pois a função não é linear…).

6.6
a. O modelo de PNL é:
Max f ( X ) = (70 − 4 x1 )x1 + ( 150 − 15 x2 )x2 − ( 100 + 15 x1 + 15 x2 ) =
= 55 x1 − 4 x12 + 135 x2 − 15 x22 − 100
O estudo da função conduz a:

 55 − 8 x1  − 8 0 
∇f =   ; H =  0 − 30 
135 − 30 x 2   
A matriz H é definida negativa pelo que a função é côncava.
Recorrendo à condição de 1ª ordem para extremo tem-se:

 55 − 8 x1 = 0  x1 = 558
  ; Max f ( X ) = 392.81 u.m.
135 − 30 x2 = 0  x2 = 2
9

6-4 INVESTIGAÇÃO OPERACIONAL (MS)

Você também pode gostar