Curso: Engenharia de Produção - pucrs.br · 5 x 2 Max f (xxxx) = z = (x – 2) ... que deve...

29

Transcript of Curso: Engenharia de Produção - pucrs.br · 5 x 2 Max f (xxxx) = z = (x – 2) ... que deve...

Page 1: Curso: Engenharia de Produção - pucrs.br · 5 x 2 Max f (xxxx) = z = (x – 2) ... que deve atender a seguinte restrição para ... Resolver por cálculo e via Lagrangiano.
Page 2: Curso: Engenharia de Produção - pucrs.br · 5 x 2 Max f (xxxx) = z = (x – 2) ... que deve atender a seguinte restrição para ... Resolver por cálculo e via Lagrangiano.

Prof. Lorí Viali, Dr. – PUCRS – FAMAT: Departamento de Estatística

Curso: Engenharia de Produção

Min (Max) f(xxxx)

s. a. gi(xxxx) (≤, ≥, =) bi, i = 1, … ,m

onde xxxx = (x1,…,xn)T é o vetor n-dimensional das

variáveis de decisão;

f (xxxx) é a função objetivo;

gi(xxxx) são as funções de restrição e os

bi são constantes conhecidas.

PPNL

Page 3: Curso: Engenharia de Produção - pucrs.br · 5 x 2 Max f (xxxx) = z = (x – 2) ... que deve atender a seguinte restrição para ... Resolver por cálculo e via Lagrangiano.

Prof. Lorí Viali, Dr. – PUCRS – FAMAT: Departamento de Estatística

Curso: Engenharia de Produção

Conjuntos Convexos

Definição: Um conjunto S ⊆ ℜn é convexo se

cada ponto, no segmento de linha

conectando dois pontos quaisquer x, y em S,

está também em S. Formalmente:

z = x + (1 - λ)y ∈ S para todo λ tal que

0 ≤ λ ≤ 1.

Page 4: Curso: Engenharia de Produção - pucrs.br · 5 x 2 Max f (xxxx) = z = (x – 2) ... que deve atender a seguinte restrição para ... Resolver por cálculo e via Lagrangiano.

Prof. Lorí Viali, Dr. – PUCRS – FAMAT: Departamento de Estatística

Curso: Engenharia de Produção

Exemplos

y

x

x

y

x

y•

Page 5: Curso: Engenharia de Produção - pucrs.br · 5 x 2 Max f (xxxx) = z = (x – 2) ... que deve atender a seguinte restrição para ... Resolver por cálculo e via Lagrangiano.

Prof. Lorí Viali, Dr. – PUCRS – FAMAT: Departamento de Estatística

Curso: Engenharia de Produção

Otimização e Conjuntos Convexos

Seja S = { xxxx ∈ ℜn : gi(xxxx) ≤ bi, i = 1,…,m }

Se gi(xxxx) é uma função convexa para cada

i = 1, …, m, então S é um conjunto convexo.

Page 6: Curso: Engenharia de Produção - pucrs.br · 5 x 2 Max f (xxxx) = z = (x – 2) ... que deve atender a seguinte restrição para ... Resolver por cálculo e via Lagrangiano.

Prof. Lorí Viali, Dr. – PUCRS – FAMAT: Departamento de Estatística

Curso: Engenharia de Produção

Teorema da Programação Convexa: Seja xxxx ∈ ℜn e

seja f (xxxx) uma funçãofunçãofunçãofunção convexaconvexaconvexaconvexa definida sobre um um

conjunto convexoconvexoconvexoconvexo SSSS. Se existe uma solução finita

para o problema

Min (Max) { f (xxxx): xxxx ∈ S }

Então todo o ótimo local é global. Se f(xxxx) é

estritamente convexa então a solução ótima é única.

Page 7: Curso: Engenharia de Produção - pucrs.br · 5 x 2 Max f (xxxx) = z = (x – 2) ... que deve atender a seguinte restrição para ... Resolver por cálculo e via Lagrangiano.

Prof. Lorí Viali, Dr. – PUCRS – FAMAT: Departamento de Estatística

Curso: Engenharia de Produção

Programação Convexa

Min (Max) f (x1,…,xn)

s. a gi(x1,…,xn) ≤ bi para i = 1,…,m e

x1 ≥ 0, …, xn ≥ 0

é um problema convexo se f é convexa

(côncava) e cada gi é convexa (côncava).

Page 8: Curso: Engenharia de Produção - pucrs.br · 5 x 2 Max f (xxxx) = z = (x – 2) ... que deve atender a seguinte restrição para ... Resolver por cálculo e via Lagrangiano.

Prof. Lorí Viali, Dr. – PUCRS – FAMAT: Departamento de Estatística

Curso: Engenharia de Produção

x11 2 3 4 5

1

2

3

4

5

x2

Max f (xxxx) = z = (x – 2)2 + (y – 2)2

Sujeito a –3x – 2y ≤ –6

–x + y ≤ 3

x + y ≤ 7

2x – 3y ≤ 4

Exemplo

Page 9: Curso: Engenharia de Produção - pucrs.br · 5 x 2 Max f (xxxx) = z = (x – 2) ... que deve atender a seguinte restrição para ... Resolver por cálculo e via Lagrangiano.

Prof. Lorí Viali, Dr. – PUCRS – FAMAT: Departamento de Estatística

Curso: Engenharia de Produção

Problema Não Convexo

Min f (xxxx) = -14x2 -0,9y2

s. a 3x – 13/x + 0,8y ≤ 1,7

x + y ≤ 30

x ≤ 7

x, y ≥ 0

Page 10: Curso: Engenharia de Produção - pucrs.br · 5 x 2 Max f (xxxx) = z = (x – 2) ... que deve atender a seguinte restrição para ... Resolver por cálculo e via Lagrangiano.

Prof. Lorí Viali, Dr. – PUCRS – FAMAT: Departamento de Estatística

Curso: Engenharia de Produção

Condições de Otimalidade de Primeira Ordem

Min (Max) {f (xxxx): gi(xxxx) ≤ bi, i = 1,…,m }

Lagrangiano: L(xxxx, λ) = f(xxxx) +

Condições de Otimalidade

• Estationaridade: ∇L(xxxx, λ) = ∇ f(xxxx) + = 0

• Complementaridade: λigi(xxxx) = 0, i = 1,…,m

• Viabilidade: gi(xxxx) ≤ bi, i = 1,…,m

• Não negatividade: λi ≥ 0, i = 1,…,m

))x(( bg ii

m

1ii −∑λ

=

)x(gi

m

1ii∇∑λ

=

Page 11: Curso: Engenharia de Produção - pucrs.br · 5 x 2 Max f (xxxx) = z = (x – 2) ... que deve atender a seguinte restrição para ... Resolver por cálculo e via Lagrangiano.

Prof. Lorí Viali, Dr. – PUCRS – FAMAT: Departamento de Estatística

Curso: Engenharia de Produção

Importância dos Problemas Convexos

Softwares de otimização comerciais não

podem garantir que a solução é globalmente

ótima se o problema não é convexo. Os

algoritmos de PNL tentam encontrar um ponto

onde o gradiente da função Lagrangiana é zero –

um ponto estacionário – e exista uma folga

completmentar.

Page 12: Curso: Engenharia de Produção - pucrs.br · 5 x 2 Max f (xxxx) = z = (x – 2) ... que deve atender a seguinte restrição para ... Resolver por cálculo e via Lagrangiano.

Prof. Lorí Viali, Dr. – PUCRS – FAMAT: Departamento de Estatística

Curso: Engenharia de Produção

Dado L(xxxx, µ) = f(xxxx) + µ(g(xxxx) – b)

Queremos ∇L(xxxx, µ) = ∇f(xxxx) + µ∇g(xxxx) = 0

λ(g(xxxx) – b) = 0

g(xxxx) – b ≤ 0, λ ≥ 0

Para um problema convexo, toda a

solução local é um ótimo global.

Page 13: Curso: Engenharia de Produção - pucrs.br · 5 x 2 Max f (xxxx) = z = (x – 2) ... que deve atender a seguinte restrição para ... Resolver por cálculo e via Lagrangiano.

Prof. Lorí Viali, Dr. – PUCRS – FAMAT: Departamento de Estatística

Curso: Engenharia de Produção

Um pacote postal é uma caixa de dimensões x,

y, z, que deve atender a seguinte restrição para

poder ser enviado via correio. A altura e mais o

perímetro da base não pode exceder 108 cm. O

objetivo é obter um pacote com o maior volume

possível cujas dimensões atendam as especificações

do correio.

Exemplo: pacote postal

Page 14: Curso: Engenharia de Produção - pucrs.br · 5 x 2 Max f (xxxx) = z = (x – 2) ... que deve atender a seguinte restrição para ... Resolver por cálculo e via Lagrangiano.

Prof. Lorí Viali, Dr. – PUCRS – FAMAT: Departamento de Estatística

Curso: Engenharia de Produção

Max V(x, y, z) = xyz

s. a. 2x + 2y + z ≤ 108

x ≥ 0, y ≥ 0 e z ≥ 0

Solução via Lagrangiano

Page 15: Curso: Engenharia de Produção - pucrs.br · 5 x 2 Max f (xxxx) = z = (x – 2) ... que deve atender a seguinte restrição para ... Resolver por cálculo e via Lagrangiano.

Prof. Lorí Viali, Dr. – PUCRS – FAMAT: Departamento de Estatística

Curso: Engenharia de Produção

L(x, y, z, λ) = xyz + λ(2x + 2y + z – 108)

Derivando e igualando a zero as derivadas

parciais em relação a cada variável inclusive λ.

Page 16: Curso: Engenharia de Produção - pucrs.br · 5 x 2 Max f (xxxx) = z = (x – 2) ... que deve atender a seguinte restrição para ... Resolver por cálculo e via Lagrangiano.

Prof. Lorí Viali, Dr. – PUCRS – FAMAT: Departamento de Estatística

Curso: Engenharia de Produção

108zy2x2L

xyzL

2xzyL

2yzxL

−++=λ∂

λ+=∂

λ+=∂

λ+=∂

Igualando essas expressões a zero, tem-se:

Page 17: Curso: Engenharia de Produção - pucrs.br · 5 x 2 Max f (xxxx) = z = (x – 2) ... que deve atender a seguinte restrição para ... Resolver por cálculo e via Lagrangiano.

Prof. Lorí Viali, Dr. – PUCRS – FAMAT: Departamento de Estatística

Curso: Engenharia de Produção

108zy2x20108zy2x2

xy0xy

xz202xz

yz202yz

=++⇒=−++

−=λ⇒=λ+

−=λ⇒=λ+

−=λ⇒=λ+

Assim, concluí-se que:

z = 2y e z = 2x. Logo x = y.

Substituindo esses resultados na quarta

equação, tem-se:

Page 18: Curso: Engenharia de Produção - pucrs.br · 5 x 2 Max f (xxxx) = z = (x – 2) ... que deve atender a seguinte restrição para ... Resolver por cálculo e via Lagrangiano.

Prof. Lorí Viali, Dr. – PUCRS – FAMAT: Departamento de Estatística

Curso: Engenharia de Produção

2x + 2y + z = 108

2x + 2x + 2x = 108

6x = 108 ⇒ x = 18.

Logo y = 18 e z = 36.

Page 19: Curso: Engenharia de Produção - pucrs.br · 5 x 2 Max f (xxxx) = z = (x – 2) ... que deve atender a seguinte restrição para ... Resolver por cálculo e via Lagrangiano.

Prof. Lorí Viali, Dr. – PUCRS – FAMAT: Departamento de Estatística

Curso: Engenharia de Produção

Queremos construir um recipiente na forma

de um cilindro fechado em cima e em baixo que

tenha o máximo de volume e que a área da

superfície não seja superior a ssss unidades.

Max V(r, h) = πr2h

s. a. 2πr2 + 2πrh = s

r ≥ 0, h ≥ 0

r

h

Exemplo: projeto de um cilindro

Page 20: Curso: Engenharia de Produção - pucrs.br · 5 x 2 Max f (xxxx) = z = (x – 2) ... que deve atender a seguinte restrição para ... Resolver por cálculo e via Lagrangiano.

Prof. Lorí Viali, Dr. – PUCRS – FAMAT: Departamento de Estatística

Curso: Engenharia de Produção

Essa é uma solução global ótima?

Solução via Cálculo

π

π

π

π

π

=→=→π=π=

=−π

=→=→=

π−=

π

π−π=π==→

π

π−=

6s

6s

6s

r

6s

6s

rrrrr

2/12/12/32

2/12/1

32

222

2hr2hV

2rr2

shr0

drdV

.2rs

r22s

hVVolumer2

2sh

Page 21: Curso: Engenharia de Produção - pucrs.br · 5 x 2 Max f (xxxx) = z = (x – 2) ... que deve atender a seguinte restrição para ... Resolver por cálculo e via Lagrangiano.

Prof. Lorí Viali, Dr. – PUCRS – FAMAT: Departamento de Estatística

Curso: Engenharia de Produção

Assim V(r ) é côncava em R3 e a solução

é um máximo global.

Teste de Convexidade

0. r todo para 0r6d

)r(V

r6d

)r(V3

2s

dr)r(dV

.2rs

)r(V

rd

rdrr

2

2

2

223

≥≤π−=

π−=→π−=→π−=

Page 22: Curso: Engenharia de Produção - pucrs.br · 5 x 2 Max f (xxxx) = z = (x – 2) ... que deve atender a seguinte restrição para ... Resolver por cálculo e via Lagrangiano.

Prof. Lorí Viali, Dr. – PUCRS – FAMAT: Departamento de Estatística

Curso: Engenharia de ProduçãoResolução pelo Lagrangiano

Dado o problema:

Max V(r, h) = πr2h

s. a. 2πr2 + 2πrh = s

O Lagrangiano será:

L(r, h) = πr2h + λ(2πr2 + 2πrh – s).

Derivando essa expressão em relação a r, h e λ,

tem-se:

Page 23: Curso: Engenharia de Produção - pucrs.br · 5 x 2 Max f (xxxx) = z = (x – 2) ... que deve atender a seguinte restrição para ... Resolver por cálculo e via Lagrangiano.

Prof. Lorí Viali, Dr. – PUCRS – FAMAT: Departamento de Estatística

Curso: Engenharia de Produção

srh22L

r2hL

h2r4rh2rL

r

r

2

2

−π+π=λ∂

πλ+π=∂

πλ+πλ+π=∂

Igualando essas

expressões a zero, tem-se:

0srh22

0r2

0h2r4rh2

rr

2

2

=−π+π

=πλ+π

=πλ+πλ+π

λ=

=λ+π

=πλ+π

2r

0)2r(r

0r2r2Manipulando a

segunda equação:

Page 24: Curso: Engenharia de Produção - pucrs.br · 5 x 2 Max f (xxxx) = z = (x – 2) ... que deve atender a seguinte restrição para ... Resolver por cálculo e via Lagrangiano.

Prof. Lorí Viali, Dr. – PUCRS – FAMAT: Departamento de Estatística

Curso: Engenharia de Produção

Substituindo esse resulltado na primeira

equação, segue que:

r2h02rh

0rh2rh20h2r4rh2

0)h2r4rh2(0h2r4rh2

rr

2

2

=⇒=−

=−−⇒=λ+λ+

=λ+λ+π⇒=πλ+πλ+π

Substituindo agora na terceira equação, vem:

Page 25: Curso: Engenharia de Produção - pucrs.br · 5 x 2 Max f (xxxx) = z = (x – 2) ... que deve atender a seguinte restrição para ... Resolver por cálculo e via Lagrangiano.

Prof. Lorí Viali, Dr. – PUCRS – FAMAT: Departamento de Estatística

Curso: Engenharia de Produção

Como h = 2r, segue que:

π

=⇒π

=⇒=π

=π+π⇒=π+π

=π+π⇒=−π+π

6s

rr

rrrrr

2/122

222

22

r6s

s6

s42sr2r22

srh220srh22

π

=6s 2/1

2h

Page 26: Curso: Engenharia de Produção - pucrs.br · 5 x 2 Max f (xxxx) = z = (x – 2) ... que deve atender a seguinte restrição para ... Resolver por cálculo e via Lagrangiano.

Prof. Lorí Viali, Dr. – PUCRS – FAMAT: Departamento de Estatística

Curso: Engenharia de Produção

Solução pelo Solver

r h

1,30 2,61 s = 32

Max 13,90

Sinal LD

R 32 = 32

Para utilizar o Solver o valor de ssss deve ser

fixado. Nesse caso: s = 32.

Page 27: Curso: Engenharia de Produção - pucrs.br · 5 x 2 Max f (xxxx) = z = (x – 2) ... que deve atender a seguinte restrição para ... Resolver por cálculo e via Lagrangiano.

Prof. Lorí Viali, Dr. – PUCRS – FAMAT: Departamento de Estatística

Curso: Engenharia de Produção

O departamento de Estradas e Rodagens planeja

construir uma área de descanso para os motoristas

ao longo de uma longa autoestrada. Ela deve ser

retangular, com uma área de 5000 metros

quadrados, e deverá ser cercada nos três lados não-

adjacentes à estrada. Qual é a menor quantidade de

cerca que será necessária para completar o trabalho?

Exercício: área de descanso

Page 28: Curso: Engenharia de Produção - pucrs.br · 5 x 2 Max f (xxxx) = z = (x – 2) ... que deve atender a seguinte restrição para ... Resolver por cálculo e via Lagrangiano.

Prof. Lorí Viali, Dr. – PUCRS – FAMAT: Departamento de Estatística

Curso: Engenharia de Produção

Max Min 2x + y

s. a. xy = 5000

x ≥ 0, y ≥ 0

Resolver por cálculo e via Lagrangiano.

Modelagem

Page 29: Curso: Engenharia de Produção - pucrs.br · 5 x 2 Max f (xxxx) = z = (x – 2) ... que deve atender a seguinte restrição para ... Resolver por cálculo e via Lagrangiano.

Prof. Lorí Viali, Dr. – PUCRS – FAMAT: Departamento de Estatística

Curso: Engenharia de Produção

BERTSEKAS, Dimitri P. Nonlinear Programming.

Belmont (MA): Athena Scientific, 1995.

WINSTON, Wayne L. Operations Research:

Applications and Algorithms. 3 ed. Belmont (CA):

Duxbury Press, 1994.

Referências