Professional Documents
Culture Documents
Otimiza PDF
Otimiza PDF
(6&2/$'((1*(1+$5,$
&8562'(3Ï6*5$'8$d2(0(1*(1+$5,$48Ë0,&$
²2WLPL]DomRGH3URFHVVRV²
3URI$UJLPLUR56HFFKL
− −
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
&RQWH~GR
)2508/$d2'(352%/(0$6
&21&(,726%È6,&26
2WLPL]DomRVHPUHVWULomR
2WLPL]DomRFRPUHVWULo}HV
*HQHUDOL]DomRGHIXQo}HVFRQYH[DV
EXERCÍCIOS DE FIXAÇÃO...............................................................................................................................33
27,0,=$d26(05(675,d2
0pWRGRGDVHomRiXUHD
0pWRGRGDDSUR[LPDomRSROLQRPLDO
0pWRGRGHEXVFDVHFFLRQDGD
0pWRGRGH+RRNH -HHYHV
0pWRGRGH5RVHQEURFN
0pWRGRGH3RZHOO
0pWRGRGHEXVFDGHOLPLWHV
0pWRGRGRVSROLHGURVIOH[tYHLV
2
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
0pWRGRVGHEXVFDDOHDWyULD
0pWRGRVJUDGLHQWHV
0pWRGRGH1HZWRQ
0pWRGRGRJUDGLHQWHFRQMXJDGR
0pWRGRVGDPpWULFDYDULiYHO
7(25,$'$'8$/,'$'(
352*5$0$d2/,1($5/3
3ULPHLUDVROXomRYLiYHO
)RUPDSDGUmR
3
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
$SUR[LPDo}HV([WHUQDVFRP5HOD[DPHQWRGH,JXDOGDGHH3HQDOLGDGH$XPHQWDGD2$(5$3
4
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
)RUPXODomRGH3UREOHPDV
$SOLFDo}HV
5
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
)
, Wo )
, W1 ) , W2 ) , W3
$1 , 81 $2 , 82 $3 , 83
:1 , 71 :2 , 72 :3 , 73
deseja-se dimensionar os trocadores de calor de modo a resfriar a corrente a
temperatura Wo para W3 com o menor custo possível. Uma análise econômica levou a
seguinte expressão do custo do sistema:
custo por unidade: F = D $ +E :
3
custo total: F
7
= ∑F L
L =1
6
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
e 8i, o problema de levar a corrente (), Wo) para a condição (), W3) da maneira mais
econômica possível, consiste em minimizar F no projeto dos trocadores de calor.
1RPHQFODWXUD
igual a 2.
UHVWULo}HV : são os limites impostos ao sistema ou estabelecidos pelas leis naturais
que governam o comportamento do sistema, a que estão sujeitas as
variáveis de decisão. As restrições podem ser de igualdade (equações)
ou de desigualdade (inequações). No exemplo acima tem-se 6 restrições
de igualdade e 3 restrições de desigualdade: W3 ≤ W2 ≤ W1 ≤ Wo.
UHJLmRGHEXVFD : ou região viável, é a região do espaço definido pelas variáveis de
decisão, delimitada pelas restrições, em cujo interior ou em cuja
fronteira se localiza o ótimo da função objetivo. No exemplo
acima, tomando W1 e W2 como variáveis de decisão, a região de
busca é aquela delimitada pelas restrições de desigualdade.
W2
W1 ≥ W2
W3
Wo W1
7
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
:1 :2
) , [o ) , [1 ) , [2
1 2
:¶1 , \1 :¶2 , \2
inviável
0.02 economicamente 0
0.015
5
X2
18
0.01
15
10
0.005
onde \([) é o modelo proposto (ou tipo de curva) para ser ajustado aos 1 dados
experimentais \exp, e [ são os parâmetros de ajuste do modelo. Ou, se for utilizado o
método da máxima verossimilhança:
1
6 [ ( )=∑ [ \ ( [ ) − \ exp ] 2
=1 σ
2
onde σ
2 são as variâncias dos dados experimentais.
9
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
3URFHGLPHQWRJHUDO
Não existe um único método que pode ser aplicado eficientemente para todos
os problemas. O método escolhido para um caso particular depende das
características da função objetivo, da natureza das restrições e do número de
variáveis do problema. Contudo, os seguintes passos devem ser observados na
solução de um problema de otimização:
1) Análise do processo e suas variáveis;
2) Determinação do critério para otimização e especificação da função objetivo em
termos das variáveis do processo;
3) Desenvolvimento do modelo para o processo, relacionando as suas variáveis
através de restrições de igualdade e desigualdade. Cálculo do grau de liberdade
do sistema;
4) Se a formulação do problema é de dimensão elevada, então procurar particionar o
problema em partes menores ou simplificar a função objetivo e/ou o modelo;
5) Aplicação de técnicas apropriadas de otimização;
6) Analisar a solução obtida e a sua sensibilidade frente a variações em parâmetros
do modelo e suas considerações (hipóteses).
'LILFXOGDGHVHQFRQWUDGDV
10
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
&RQFHLWRV%iVLFRV
0tQLPRVHPi[LPRV
6 [
( )
mínimos locais
[
mínimo global
supremo (ou valor superior) em ;. Nem toda função tem mínimo (máximo), mas se
ele existir deve ser finito e é obtido no ínfimo (supremo), isto é,
( ) = min 6 ( [) = inf 6 ( [)
6 [
[6([
) = max 6 ( [) = sup 6 ( [) ]
∈;
[ ∈;
[ [∈; [∈;
Por exemplo, a função 6([) = H não tem máximo em ; = ℜ e a função 6([) = H não
tem mínimo em ; = ℜ. Contudo, o supremo de H é +∞, e o ínfimo de H é zero.
&RQGLo}HVSDUDDRWLPDOLGDGH
2WLPL]DomRVHPUHVWULomR
11
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
∇6([*) = 0
• Condição suficiente:
Seja 6([) duas vezes diferenciável em [* tal que:
∇6([*) = 0 e
+ [
( *) seja positiva (negativa) definida
então [* é um mínimo (máximo) local estrito de 6.
Pode-se analisar a condição da matriz Hessiana, + [
( *), pelas seguintes
formas:
1) Pela sua contribuição no termo de segunda ordem da expansão em série de Taylor
em torno do ponto ótimo.
1
6 ( [) − 6 ( [*) = ( [ − [*) + ( [*)( [ − [*) + L
2
2) Pelos sinais dos valores característicos de +([*).
Decompondo a matriz Hessiana em seus valores e vetores característicos:
+ [ ( *) = 9Λ9-1
onde 9 é a matriz dos vetores característicos (nas colunas) e Λ é a matriz dos valores
característicos (na diagonal). Definindo ]([) 9-1 ([ [
) e lembrando que sendo a
12
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
matriz Hessiana simétrica então 9-1 = 9 (matriz ortogonal) e ([[
) 9 = zT. Desta
forma a expansão em série de Taylor pode ser escrita como:
1
∑ λ ] 2 + L
1
6 ( [) − 6 ( [*) = ] Λ ] +L =
2
2 =1
3) Pelos sinais dos determinantes das primeiras menores principais de +([*) (critério
de Sylvester).
A PHQRU 0 de uma matriz + é definida como a matriz obtida pela remoção
da L-ésima linha e da M-ésima coluna de +. Uma PHQRU SULQFLSDO de ordem N é uma
matriz obtida pela remoção de quaisquer Q – N colunas e suas linhas correspondentes
de uma matriz de ordem Q. A SULPHLUDPHQRUSULQFLSDO de ordem N de uma matriz +,
denotada por 0 (+), é obtida pela remoção das últimas Q – N colunas e linhas da
matriz +. Observa-se que os determinantes das primeiras menores principais de
ordem 1,2,...,Q da matriz Λ são, respectivamente: λ1, λ1λ2, ..., λ1λ2λ3⋅⋅⋅λ .
Na tabela a seguir apresenta-se as relações entre a matriz Hessiana e as três
formas de analisar a sua condição.
+ [
( *) Taylor λ ∆ = det (0 )
positiva semidefinida [
T
+ [ ≥0 ≥0 ≥0
T
positiva definida [ + [ >0 >0 >0
negativa semidefinida [
T
+ [ ≤0 ≤0 (-1) ∆ ≥ 0
negativa definida [
T
+ [ <0 <0 (-1) ∆ > 0
> >
≠ dos acima
T
não definida [ + [ 0 0
< <
13
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
[ 3 = − 1
primeira ordem;
( ) = ([2 – 1) (30 [2 – 6) → +([1) = 6; +([2) = 0; +([3) = 0 satisfazem a
+ [
6 [
2.0
1.5
1.0
0.5
0.0 [
-1.0
-1.5
([HPSOR 6 [ ( 1 , [ 2 ) = [12 + [1 [ 22
2
∇6 ( [ ) = 2 [1 + [ 2
2 [1 [ 2
então, [1* = [2* = 0, e:
2 2 [2
( [) = → + [( *) = 20 00
2 [1
+
2 [2
isto é, uma matriz positiva semidefinida. O gráfico abaixo ilustra a função 6([), onde
observa-se que [* = 0 não é um ponto de mínimo.
14
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
150
100
50
S(x)
-50
-100
5
5
0
0
x2 -5 -5 x1
15
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
2WLPL]DomRFRPUHVWULo}HV
16
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
17
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
Como os termos entre colchetes da expressão acima devem ser nulos no ponto ótimo
(condição necessária de primeira ordem), então:
∇ /([
, λ*) = −λ* e ∇ 6([
) = −λ*
pois ∇ /([
, λ*) = ∇ 6([
) + ∇ λ [K ([
) − E] + ∇
7
E
7
E
K ([
) λ* − λ* ,
K ([) = E e ∇ K ([) = ,
Portanto, o valor de 6([) aumenta ou diminui a partir de 6([*) com um aumento ou
diminuição em E, dependendo do sinal de λ*. Por isso, os multiplicadores de
Lagrange são também conhecidos como “VKDGRZ SULFHV” ou “custos marginais” das
restrições, porque a mudança no valor ótimo da função objetivo por unidade de
acréscimo no lado direito da restrição de igualdade é dado por λ*.
([HPSOR Seja o seguinte problema de otimização com restrição
min 6([) = ([1 − 5)2 + ([2 − 5)2
sujeito a: K([) = [1 − [2 = 0
Introduzindo uma perturbação na restrição de igualdade do tipo: [1 − [2 = E, então a
função de Lagrange toma a forma:
( , λ) = ([1 − 5)2 + ([2 − 5)2 + λ ([1 − [2 − E)
/ [
cujo gradiente nulo com relação a [1, [2 e λ leva ao seguinte sistema de equações:
2 ([1 − 5) + λ = 0
2 ([2 − 5) − λ = 0
[1 − [2 − E = 0
resultando na solução ótima: [1* = 5 + E / 2, [2 * = 5 − E / 2 e λ* = −E.
Deste modo 6([*) = E2 / 2 e ∇ 6(x*) = E = −λ*.
Para entender a origem da função de Lagrange, o ótimo do exemplo acima
deve satisfazer as seguintes condições:
∂6 ∂6
G6 = δ[1 + δ[2 = 0
∂[1 ∂[ 2
18
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
∂K ∂K
GK = δ[1 + δ[2 = 0
∂[1 ∂[ 2
Se 6([) fosse uma função sem restrição, então as suas duas derivadas parciais seriam
nulas no ponto ótimo e G6([
) seria nulo para quaisquer valores das variações δ[1 e
δ[2. Entretanto, como as variáveis [1 e [2 estão restritas (δ[1 e δ[2 não são
independentes), as duas derivadas parciais de 6([) não podem ser arbitrariamente
igualadas a zero. Contudo, 6([) deve ser um extremo no ponto ótimo e portanto
G6([
) = 0. A segunda condição, GK([
) = 0, existe porque K([) = 0. Para se obter
uma solução (δ[1 e δ[2) não trivial do sistema de equações acima, a matriz dos
coeficientes do sistema:
∂6 ∂6
∂[ ∂[ 2
1
∂K ∂K
∂[1 ∂[ 2
deve ter determinante nulo, ou seja, as linhas da matriz são linearmente dependentes:
∂6 ∂K ∂6 ∂K
+λ =0 e +λ =0
∂[1 ∂[1 ∂[ 2 ∂[ 2
Então, definindo uma função auxiliar: /([, λ) = 6([) + λ K [
( )
as condições acima são satisfeitas se: ∇ /([, λ) = 0. Para que a restrição de
igualdade, K([) = 0, seja também satisfeita é necessário que ∇λ/([, λ) = 0. Portanto,
no ponto ótimo é necessário que ∇/([
, λ*) = 0.
A existência dos multiplicadores de Lagrange depende da forma das
restrições, e estará garantida se e somente se os gradientes das restrições de
desigualdade ativas, ∇J ([*), e das restrições de igualdade, ∇K([*), forem
linearmente independentes. Por exemplo, no caso de um problema somente com
restrições de igualdade, a condição necessária de primeira ordem para /([, λ) fica:
∇ 6([) + [∇ K([)]T λ = 0
cuja solução para λ existirá somente se a matriz ∇ K([) possuir posto completo, P ,
isto é, estar composta por P vetores linearmente independentes.
• Condição necessária de primeira ordem de Karush-Kuhn-Tucker (KKT):
Para que [* seja um ótimo local do problema com restrições, com 6([), J([), e
K([) diferenciáveis em [*, é necessário que:
19
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
µ * J ([
) = 0 , M = 1, 2, ..., S
µ* ≥ 0
A condição de independência linear pode ser relaxada por outras
qualificações de primeira e segunda ordens das restrições (Floudas, 1995, pg. 59 e
64).
A condição do gradiente nulo, ∇ /([
, λ*, µ*) = 0, implica em:
(λ*) ∇K([
) + (µ*) ∇J([
) = −∇6([
)
que interpretada graficamente, figura abaixo, mostra que o vetor −∇6([
) pertence
ao cone das direções viáveis, formado pelo gradientes das restrições de igualdade e
desigualdade ativas (uma vez que µ * = 0 para as restrições inativas).
20
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
21
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
Para que [* seja um mínimo local do problema com restrições, com 6([), J([),
e K([) duas vezes diferenciáveis em [*, é suficiente que:
a condição de primeira ordem de KKT seja satisfeita e, que a matriz Hessiana da
função de Lagrange, ∇ 2 /([
, λ*, µ*), seja positiva definida para todo vetor não
[
forem positivas, onde 0 é a matriz formada pelos gradientes de K([*) e J([*) ativas,
isto é, a matriz tal que G 0 = 0, com PS < Q e com posto completo (S é o número
de restrições J ativas). O mesmo critério se aplica para semipositividade,
negatividade e seminegatividade, com os respectivos sinais das raízes.
sujeito a: J1([) = [1 − [
2
2 /4≤0
22
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
([HPSOR Verificar se o ponto [* = [1 4,9] é um mínimo local para o seguinte
problema (Edgar & Himmelblau, 1988 , pg. 316):
min 6([) = 4 [1 − [ 22 − 12
sujeito a: K1([) = 25 − 2
[
1 − [
2
2 =0
J1 [
( )= 2
[
1 − 10 [1 + [ 22 − 10 [2 + 38 ≤ 0
( ) = −([1 − 3)2 − ([2 − 1)2 ≤ 0
J2 [
( ) = −[1 ≤ 0
J3 [
( ) = −[2 ≤ 0
J4 [
23
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
&RQYH[LGDGH
A função 6([) é estritamente convexa se a desigualdade for estrita. Uma função 7([)
é côncava se a função 6([) = –7([) for convexa.
Sejam 6([), 6 ([), L=1,2,...,Q, funções convexas em um convexo não vazio .
do ℜ , então as seguintes propriedades são apresentadas:
a) 6([) é contínua em qualquer ponto do interior de .;
b) as seções .ε = {[ ∈ . ⁄ 6([) ≤ ε} são conjuntos convexos;
24
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
!
c) 6([) = "∑ 6 " ( [) é uma função convexa. Se no mínimo uma 6# ([) é estritamente
=1
convexa, então 6([) é estritamente convexa;
d) β 6([) é convexa para β > 0 ∈ ℜ.
e) se todas 6# ([) < ∞ ∀ [ ∈ ., então 6([) = max{61([), 62([), ..., 6$ ([)} é convexa.
Quando 6([) é convexa, as condições de otimalidade simplificam-se, porque
as condições de segunda ordem são equivalentes à convexidade local da função.
Além disso, um mínimo local será também global e se a função for estritamente
convexa o mínimo global é único.
Para ilustrar, define-se \ = α [1 + (1 – α) [2 e w = α 6([1) + (1 – α) 6([2)
6 [
( ) 6 [ ( ) função côncava
função convexa
6 (y)
Z Z
6(y)
[ [
[1 \ [2 [1 \ [2
$
Seja ; um conjunto aberto não vazio do ℜ e 6([) uma função diferenciável
em [ ∈ ;. Se 6([) é convexa em [o, então
o
%
6 [ ( ) − 6([o) ≥ ∇ 6([o)([− [o)
Para uma função 6([) diferenciável em ;,
%
6 [ ( ) é convexa ⇔ 6 [ ( 2) − 6([1) ≥ ∇ 6([1)([2− [1) ∀ [1, [2 ∈ ;.
$
Seja ; um conjunto aberto não vazio do ℜ e 6([) uma função duas vezes
diferenciável em [o ∈ ;. Se 6([) é convexa em [o, então ∇26([o) é positiva
semidefinida. Para uma função 6([) duas vezes diferenciável em ;,
( ) é convexa ⇔ ∇26([) é positiva semidefinida ∀ [ ∈ ;.
6 [
$
Seja . um conjunto convexo não vazio do ℜ , [o ∈ . e G um vetor não nulo
tal que ([o + α G) ∈ . para um α > 0 suficientemente pequeno. Então, a GHULYDGD
GLUHFLRQDO de 6([) no ponto [ , ao longo da direção α, denotada por 6´([ ,G), é
o o
25
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
& &
& ([ + α G ) − 6([ )
6
6 ′( [ , G ) = lim+
α →0 α
o
Por exemplo, para uma aproximação [
% oquadrática em torno do ponto , a derivada
direcional é dada por 6´([ ,G) = ∇ 6([ ) G.
o
$
Seja . um conjunto convexo não vazio do ℜ e 6([) uma função convexa.
Então, o sub-gradiente de 6([) no ponto [o ∈ ., denotado por G, é definido como:
%
( ) ≥ 6([o) + G ([− [o) , ∀ [ ∈ .
6 [
Isto é, a aproximação linear com o uso do vetor G sempre resulta em uma sub-
estimativa de 6([).
*HQHUDOL]DomRGHIXQo}HVFRQYH[DV
P →∞ P →∞
26
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
IXQomRVHPLFRQWtQXDLQIHULRUIXQomRVHPLFRQWtQXDVXSHULRU
P →∞ P →∞
$
Seja . um convexo não vazio do ℜ . A função 6: . → ℜ é dita TXDVL
FRQYH[D se ∀ [1, [2 ∈ . e 0 ≤ α ≤ 1:
27
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
)XQomRTXDVLFRQYH[D )XQomRHVWULWDPHQWHTXDVLFRQYH[D
$
Seja 6([) uma função semicontínua inferior no convexo . ⊆ ℜ . Se 6([) é
estritamente quasi-convexa em ., então 6([) é quasi-convexa, mas o converso não é
verdadeiro.
A soma de funções quasi-convexas não é necessariamente uma função quasi-
convexa, propriedade válida para funções convexas. Por outro lado, o recíproco de
uma função quasi-convexa, 1/6([), é uma função quasi-côncava, mas o recíproco de
uma função convexa não é necessariamente uma função côncava (já o recíproco de
,
uma função côncava positiva é uma função convexa). Por exemplo, 6([) = H é
convexa e 1/6([) é convexa também.
Seja 6([) uma função diferenciável em um conjunto convexo aberto não vazio
$
.⊆ℜ , então:
%
6 [ ( ) é quasi-convexa ⇔ ( 2) ≤ 6([1) → ∇ 6([1)([2− [1) ≤ 0 ∀ [1, [2 ∈ ..
6 [
28
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
)RUPDVIXQFLRQDLV
função linear: ( )=
6 [ D +F 7
[ = D + ∑F L
[
L
L =1
como neste caso ∇6([) = F ≠ 0 ∀ [, a função 6([) não apresenta pontos de máximo
ou mínimo. Para este tipo de função objetivo, só faz sentido a existência de um
problema de otimização com restrição, cuja solução, se existir, estará localizada em
algum ponto da fronteira da região de busca.
Q Q Q
1 1
função quadrática: 6 [ ( )= D+F 7
[ + [
7
$ [ = D + ∑F L
[
L
+ ∑∑D LM
[
L
[
M
2 L =1 2 =1 =1
L M
% % % % % %
como [ $[ é um escalar ⇒ [ $[ = [[ $[ ] =[ $ [ ,
- 1 - - - - 1 -
tem-se que: [ $ [ = ([ $ [ +[ $ [ )= [
2 ( $ + $ ) [ ,
2
29
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
1 . /
então definindo 4 = ($ + $ ) , que é uma matriz simétrica: 4 = 4 ,
2
/ /
resulta em: [ $[ =[ 4[ , isto é:
Q Q Q
1 1
6 [ ( )= D+F 7
[ + [
7
4 [ = D + ∑F L
[
L
+ ∑∑T LM
[
L
[
M
2 L =1 2 =1 =1 L M
e portanto:
∂6 1 ∂[ Q Q
∂[
= F + ∑ ∑ T
M
∇6 ( [ ) =
L
[ +[ ,
∂[ 2 =1 =1 ∂[ ∂[
N LM M L
N L M N N
∂[ 0 , L ≠ N 1 Q Q
mas como =δ L
= , tem-se: ∇6 ( [ ) = F + ∑ ∑ ( T [ +T [ )
∂[
LN N NM M LN L
N 1 , L = N 2 =1 =1 L M
e + [ ( ) = ∇26([) = 4
com isto, a condição necessária de primeira ordem, ∇6([*) = 0, para este tipo de
função resulta em:
/ /
4 [ * = −F ou de forma similar ([*) 4 = −F
e
0 1 0 1 0
6 [ ( *) = D +F [ * + ( [ *) 4 [ *= D + F [ *
2 2
Subtraindo 6([*) da função 6([) tem-se:
1 1 1
( ) = 6 ( [*) + F ( [ − [*) +
6 [
1
2
[ [ 4 [ − ( [ *) 4 [ ]
*
/ /
como F = −([*) 4 ,
2 2 2 2
6 [ ( ) = 6 ( [ *) +
1
2
[ [ 4 [ − ( [*) 4 [ * − ( [ *) 4 ( [ − [*) − ( [ *) 4 ( [ − [ *) ]
30
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
3 3 3
( ) = 6 ( [*) +
6 [
1
2
[ [ 4 [ − ( [ *) 4 [ − ( [ *) 4 ( [ − [*) ]
4 4
( ) = 6 ( [ *) +
6 [
1
2
[
( [ − [ *) 4 [ − ( [ *) 4 ( [ − [*) ]
1 5
6 [ ( ) = 6 ( [ *) + ( [ − [ *) 4 ( [ − [*)
2
1 6
( ) ≈ 6 ( [*) +
6 [ ( [ − [*) + [ ( *) ( [ − [*)
2
∂26
Se 6([) for duas vezes diferenciável em [*, então + [ ( *) = é simétrica.
∂ [
L
∂ [
M *
[
Portanto, tanto no caso de função quadrática, onde +([*) = 4, quanto no caso geral
de função não-linear, a matriz Hessiana fornece as características do(s) ponto(s)
ótimo(s) de 6([).
31
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
/ /
função mista linear e inteira: 6([, \) = F [ +G \ , [ ∈ ; ⊆ ℜn e \ ∈<
7
onde \ é um vetor de variáveis inteiras de dimensão T, < ⊆ ℑ , ou um vetor de
7
variáveis binárias de dimensão T, < = {0, 1} . Como a função é linear, só faz sentido
a existência de um problema de otimização com restrição.
ÈOJHEUDYHWRULDO
8 8 8
Sejam [ e\ ∈ ; ⊆ ℜ , $ e% ∈ ℜ × , 6([): ; → ℜ, J([) e K([): ; → ;. Então
as seguintes regras de diferenciação se aplicam:
/ / /
∇[J([) ( )] = ∇ J([) K([) + ∇ K([) J([)
K [
/
∇[6([) g([)] = g([) ∇ 6([) + 6([) ∇J([)
∇($[) = $
/
∇([ $ )=$
/ /
∇([ $[ ) = ($ + $ ) [
/
∇6[J([)] = ∇ J([) ∇g6(J)
/ /
∇6{J[K([)]} = ∇ K([) ∇9 ( ) ∇g6(J)
J K
32
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
G ( $ [)
= $& [ + $ [&
GW
G ( $ %)
= $& % + $ %&
GW
4
G ([ $[ ) 4 4 4
= [& $[ + [ $& [ + [ $[&
GW
([HUFtFLRVGHIL[DomR
c) 6 [ ( )= [
3
1 + [22 − 3 [1 + 8 [ 2 + 2
NOTA: se todas as restrições colocadas na forma Ji([) ≤ 0 são funções convexas (ou
na forma Ji([) ≥ 0 são funções côncavas), então elas formam uma região convexa.
Funções lineares são tanto convexas quanto côncavas.
4. Mostre que a função 6([) = −[1 [2 com [1 ≥0 e [2 ≥ 0 é quasi-convexa. Ela é
também convexa ? Por quê ?
5. Mostre que a função 6([) = 2
[
1 + 5 [1 [ 2 + 3 [ 22 com [1 >0 e [2 > 0 é pseudo-
convexa. Ela é também convexa ? Por quê ?
33
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
2WLPL]DomR6HP5HVWULomR
PLQ 6 [ ( ) ou PD[ 6 [ ( )
[ ∈ℜ ; [ ∈ℜ ;
0pWRGRVGHEXVFDPRQRYDULiYHOHPXOWLYDULiYHO
= >* @ A*
100 7 100 6 1 C
θ? =
1
∑
> =1 7? ,>
χB =
1
∑
A =1 6 B ,A
η C = 100
1
0pWRGRGDVHomRiXUHD
2
E E
E + −1= 0
D D
D E
- E
E − 1+ 5
α= = = 0,618
D 2
Outras escolhas do fator α levariam a métodos similares, como por exemplo o
método da bisseção para α = 0,5. Contudo, a vantagem da razão áurea está na
redução do número de cálculos da função objetivo, em função da propriedade deste
método de conservar o retângulo áureo a cada iteração. Outro método com
características similares a seção áurea é a busca de Fibonacci.
algoritmo
1) Determinar o intervalo de busca [/o, 8o] que contém o ponto de mínimo
2) Fazer N = 0 e calcular ∆o = 8o − /o,
[
o
/
= o
/ + α ∆o , 6
o
/
= 6 ([ o ) , /
[
o
8
= 8 o − α ∆o , 6
8
o
= 6 ([ o ) , 8
+1 +1
3) 6H 6 [
( N
8
) > 6 ([ ) ,
N
/
HQWmR /
N +1
=[ , N
8
[
N
8
= [
N
/
, 6
N
8
= 6
N
+1 +1
VHQmR 8
N +1
= [
N
/
, [
N
/
= [
N
8
, 6
N
/
= 6
N
H
4) Fazer (N ← N + 1) e calcular ∆ = 8k − /k,
35
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
−1 −1
[
k
/
= /
k
+ α ∆k , 6
k
/
= 6 ([ k )
/
se 6 [
( N
8
) > 6 ([ N
/
)
−1 −1
ou [
k
8
= 8 k − α ∆k , 6
k
8
= 6 ( [ k ) se
8
6 [
( N
8
) < 6 ([ N
/
)
H
5) 6H ∆ > ε (tolerância), HQWmR (ir para 3)
VHQmR FIM.
6 [
( ) 6 [
( )
6 [U
( )
6 [L( )
6 [L
( ) 6 [U
( )
[ [
[U [L [U [L
/ 8 / 8
α∆ α∆
α∆ α∆
0pWRGRGDDSUR[LPDomRSROLQRPLDO
3
Q
( [) = ∑ l ( [)6 ( [ ) M M
M =1
J
( [ − [L )
onde l K ( [) = L ∏ L são os interpoladores de Lagrange. Quando a derivada de
K
L =1K ( [ − [ )
≠
6 [
( ) está disponível, então ela também é usada na aproximação polinomial:
[ 1( ]
Q
3
2 Q −1 ( [ ) =∑ K [ ) 6 ( [ ) + K2 ( [ ) ∇ 6 ( [ )
M M
M =1
onde K
1 ( [) [
= l 2M ( [) 1 − 2 ( [ − [ M )∇l M ( [ M ) ] e K
2 ( [) = l 2M ( [) ( [ − [ M ) são os
interpoladores de Hermite.
,QWHUSRODomRTXDGUiWLFDRXPpWRGRGH&RJJLQVRX'6&3RZHOO
36
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
algoritmo
1) Determinar o intervalo de busca [[1, [3]
2) Calcular 61 = 6([1) e 63 = 6 ([ 3 )
3) Calcular [2 = 0,5 ([1 + [3) e 62 = 6 ([ 2 )
32 [ ( )
6 [
( )
N
6 [ ( )
N [
[1 [2 [3
[
,QWHUSRODomRF~ELFD
37
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
[ 1( ]
4 2
3
3 ( [) = ∑ l ( [)6 ( [ ) M M
ou 3
3 ( [) =∑ K [ ) 6 ( [ ) + K2 ( [) ∇6 ( [ )
M M
M =1 M =1
3 2 1
Escrevendo o polinômio na forma: 33([) = D3 [ + D2 [ + D1 [ + D0 , a condição
necessária de primeira ordem para o mínimo:
G3
3 ( [)
= 3 D3 [2 + 2 D2 [ + D1 = 0
G[
− D2 ± D
2
2 − 3 D1 D3
resulta no ponto [
#
= cujo sinal usado é aquele que fornece um
3 D3
N
valor positivo para a derivada segunda de 33([), isto é, 6 D3 [ + 2 D2 > 0. No caso de
usar dois pontos tem-se as expressões:
∇6 ( [ 2 ) + Z − ]
[
#
= [
2 − ( [2 − [1 )
∇6 ( [2 ) − ∇6 ( [1 ) + 2 Z
0pWRGRGHEXVFDVHFFLRQDGD
É um método de busca multivariável, mas em uma única direção por vez, que utiliza
os métodos de busca univariável em cada direção. As figuras abaixo ilustram a idéia
do método na busca de um ponto de mínimo.
38
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
6 [( )
[1 =D
[1 =G
[1 =E [1 =F
6 [
( )
[2
[2 *
0pWRGRGH+RRNH -HHYHV
[1 [1
− + − +
[11 [10 [11 [11 [10 [11
exploração progressão
algoritmo
Partida:
1) Determinar a região de busca [/ O , 8 O ], (L = 1,2,...,Q)
2) Selecionar o ponto base inicial [L o (L = 1,2,...,Q)
39
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
−
7) 6H [
No estiver fora da região de busca, HQWmR insucesso em N- (ir para 10)
−
8) Calcular o valor de 6
o = 6 ( [ o− )
−
9) 6H 6
o > 6o HQWmR insucesso em k-
-
VHQmR sucesso em k e fazer [
N o ← [ −o e
N
6
o ← 6 o− (ir para 14)
+
10) Calcular [
No = [
N
o + δ (sentido positivo)
N
+
11) 6H [
No
estiver fora da região de busca, HQWmR insucesso em N+ (ir para 14)
12) Calcular o valor de 6
+
o = 6 ( [ o+ )
+
13) 6H 6
o > 6o HQWmR insucesso em N+
VHQmR sucesso em N+ e fazer [
N o ← [ +o e
N
6
o ← 6 o+
14) 6H já foram exploradas todas as direções (N = Q) HQWmR (ir para 15)
VHQmR tomar a direção seguinte (N ← N + 1) e (ir para 6)
Fase de Progressão:
17) Tomar [ 1 = [ ± δ (e, opcionalmente, δ ← 2 δ ) para todas as direções que
L LR L L L
houve sucesso
18) 6H x1 estiver fora da região de busca, HQWmR insucesso na progressão (ir para 5)
19) Calcular o valor de 6
1 = 6 ( [1 )
20) 6H 6
1 > 6o insucesso na progressão (ir para 5)
HQWmR
0pWRGRGH5RVHQEURFN
40
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
continuamente explorar nas direções dos eixos coordenados, são construídas novas
direções ortogonais, usando o procedimento de Gram-Schmidt, baseadas nos
tamanhos dos passos das direções bem sucedidas.
Q
Sejam G
N
L
∈ ℜ , L = 1,2, ..., Q, vetores direção unitários do N-ésimo estágio de
busca e ∆ = ∑ δ a soma de todos os passos bem sucedidos (distância percorrida) na
N
L L
$
N
L
= ∑∆ N
M
G
N
M
, 1≤L≤Q
M =L
N
+1 $
G
N
1 = 1
N
$
1
−1
[ ]
N
L
+1 % +1 +1
G
N
L
= L
, %
L
N
= $
L
N
− ∑ ($ ) N
L
7
G
N
M
G
N
M
1 < L ≤ (Q − P )
N
%
L
M =1
+1
G
N
L
=G N
L
(Q − P ) i ≤ Q
algoritmo
1) Selecionar o ponto base inicial [o, fazer N = 0, e G
0
L
= H (direção dos eixos)
L
4) Fazer [1 = [o + δS G
N
P
e calcular 61 = 6([1)
6) Se alguma direção ainda não teve insucesso, fazer P ← min{P+1, Q} (ir para 4)
7) 6H δ ≤ ε L L
∀L HQWmR FIM.
41
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
0pWRGRGH3RZHOO
42
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
Para verificar esta conjugância, basta representar 6([) em série de Taylor em torno
do ponto [o:
Y 1 Y
6 ( [) = 6 ( [ X ) + ∇ 6 ( [ X )( [ − [ X ) + ( [ − [ X ) + ([ − [ X )
2
e minimizá-la ao longo da direção G: [ = [o + α G, isto é, obter α tal que:
[
G6 ([ + α G ) Z [ Z Z [ Z
=0=∇ 6 ([ ) G + G + α G = G ∇6 ( [ ) + G + αG
Gα
∇ 7
6 ([ ) G R
resultando em: α = 7
G + G
\ \
Rescrevendo a função 6([) na forma: 6([) = D + E [ +½[ +[ , tem-se:
∇6([) = E + + [ e ∇6([o) = E + + [o
V
que substituído na equação G6/Gα = 0, sabendo que α G [ − [o, resulta em:
\ \ V \ V
G (E + +[o) + G + ([ − [o) = 0 → G (E + +[ ) = 0
\ V
e portanto: G ∇6([ ) = 0, isto é, o gradiente de uma função quadrática no mínimo da
direção de busca
\ éW ortogonal
\ a esta
W direção. Fazendo a mesma análise para o ponto
[ , tem-se: G ∇6([ ) = G (E + +[ ) = 0. Subtraindo estes dois resultados chega-se a:
1
\ W V
G + [ ( −[ )=0
W V
que mostra que G é conjugado a direção ([ − [ ) com respeito a matriz +.
O método de Powell é uma implementação da busca em direções conjugadas,
que pode ser sumarizado nos seguintes passos:
algoritmo
1) Selecionar um ponto inicial [
0
0, fazer estágio N = 0 e G
0
L
= H (direção dos eixos)
L
2) A partir do ponto [
N
0 determine α1 via busca unidimensional na direção de G
N
1 e
[
1
N
= [
N
0 + α1 G
N
1 . A partir do ponto [
N
1 , determinar α2 via busca
unidimensional na direção de G
N
2 e fazer [
N
2 = [
N
1 + α2 G
2
N
, e assim
sucessivamente até determinar todos os αT , L = 1, 2, ..., Q. A transição do ponto
N N
[
0 para o ponto [ é equivalente a: P
_ _ ] _
[ ] = [0 + ∑ α^ G^ , P = 1, 2, ..., Q
^ =1
43
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
3) Calcular [
Q
N
+1 = 2[ − N
Q
[
N
0 , isto é, fazer um passo adicional de tamanho ( [ − N
Q
N
[
0 ) na direção resultante das Q buscas unidimensionais. Este passo procura
garantir que duas direções de busca não se tornem colineares quando algum αT =
0.
` ` `
4) Calcular ∆ = a maxb [ 6 ( [ a −1 ) − 6 ( [ a )] . A direção de busca relativa a esta variação
=1,...,
N N N
máxima será designada por G . Definindo 61 = 6( [0 ), 62 = 6( [ ) e 63 =
P
c c Q
6 ([ Q
N
+1 ), 6H 63 ≥ 61 e/ou (61 − 2 62 + 63) (61 − 62 − ∆ )2 ≥ ½ ∆ (61 − 63)2, HQWmR
+1
usar as mesmas direções do estágio N, isto é, G
N
L
=G , N
L
L = 1, 2, ..., Q e iniciar o
+1
próximo estágio a partir do ponto [
N
0 = [
N
Q
(ou [
N
Q +1 se 63 > 62).
0pWRGRGHEXVFDGHOLPLWHV
44
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
0pWRGRGRVSROLHGURVIOH[tYHLV
p l
g hji
e f hkh q
o h
hml
d
h n
q
l
p h
[ v w = [ 0w + α ( [ 0w − [ x w ) , α > 0
1) Reflexão:
RQGH 6 ( [ x w ) = PD[ 6 ( [1w ),K , 6 ( [ y w +1 ) { }
45
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
5
N
{ N N
Q }
HQWmR [ = [ 0 + γ ( [ − [ 0 ) , γ > 1
K K N N
( 5
+1
6H 6 ( [ ) < 6 ( [ ), HQWmR [ =[
N N N N
2) Expansão: ( 5 K (
sen mR [ +1 = [ N
K
N
N = N +1 (LU SDUD 1)
N
onde [ é o melhor vértice.
l
+1 1
6H 6 [
( N
5
) > 6 ( [ ), N
K
HQWmR [
L
N
=
+ ( [ − [l )
[
N
l
N
L
N
2
4) Redução: L = 1,2,K , Q + 1
N = N + 1 (LU SDUD 1)
O critério usado por Nelder e Mead para terminar a busca é o seguinte:
2 2
1
1 +1
∑
Q + 1 =1
[
6( [ ) − 6( [ )
0 ≤ ε.
]
0pWRGRVGHEXVFDDOHDWyULD
É similar ao método dos poliedros flexíveis, sem a restrição de usar somente Q+1
vértices (M. J. Box, 1965). A partir de um ponto inicial, [1, outros S−1 pontos são
obtidos aleatoriamente:
[ = / + ψ [8 - /] , L = 2, 3, ..., S
46
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
onde / e 8 são vetores que limitam a região de busca e ψ é uma matriz diagonal
de números aleatórios, distribuídos uniformemente no intervalo [0,1]. A busca
procede de forma análoga ao método dos poliedros flexíveis. Recomenda-se, em
geral, usar S = 2 Q.
%XVFDDOHDWyULDUHSHWLWLYD
É uma busca completamente aleatória (R.J. Kelly e R.F. Wheeling, 1962), onde um
caminho aleatório é construído na seqüência dos passos em busca do ótimo, através
da seguinte relação:
[
+1
= [ + α (1 − β)
G
+ βU , N = 1,2,...
G
onde α ∈ ℜ é o passo, que é ampliado após uma direção bem sucedida e reduzido
caso contrário, β é um coeficiente ajustável durante a busca (grau de aleatoriedade
das direções), U ∈ ℜ é um vetor unitário gerado aleatoriamente, G ∈ ℜ é um vetor
da história da busca (uma direção média dos passos anteriores), obtido por:
+1
G = γ G + (1 − γ) ([ +1 − [ ) Λ
onde γ ∈ [0, 1] é o fator de esquecimento das direções e Λ ∈ ℜ + é uma matriz
diagonal de fatores de escala para as variáveis [. A figura abaixo ilustra um caminho
típico de uma busca aleatória.
47
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
'LUHo}HVDOHDWyULDV
É uma técnica onde as direções de busca são aleatórias, geradas a partir de um raio
de busca uniforme, isto é, os pontos aleatórios em cada estágio estão localizados
sobre a superfície de uma hiperesfera com centro no ponto [ . Uma busca em linha é
realizada na direção que passa pelo ponto [ e pelo melhor ponto da hiperesfera. A
figura abaixo mostra que quanto maior o raio da hiperesfera (limitado pela posição
do ponto ótimo), maior é a probabilidade do melhor ponto cair dentro do cone de
direções melhores que a direção do gradiente no ponto [ . Para atender os critérios
de convergência, o raio de busca deve ser periodicamente reduzido. A busca pode
ser acelerada se os pontos aleatórios forem restritos a um ângulo mínimo entre eles e
a direção do estágio anterior.
%XVFDDOHDWyULDDGDSWDWLYD
48
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
onde [ ∈ ℜ é o melhor ponto da última amostragem, ψ é um vetor de números
aleatórios ∈ (0, 1), 5 é o vetor dos eixos da hiperelipse, δ é o parâmetro de forma da
distribuição das amostras (δ = 1, 3, 5, ..., sendo que para δ = 1 tem-se uma
distribuição uniforme), $ é o vetor de assimetria da distribuição ($ = 2 Å
distribuição simétrica), % é o vetor de direção da assimetria (% = −1 Å assimetria
positiva, no sentido de aumento de [ , e % = 1 Å assimetria negativa). Após a
amostragem, se estiver na etapa de exploração, um número determinado de pontos
são armazenados para uso posterior, quando a busca na direção do melhor ponto for
encerrada. As etapas principais do algoritmo de busca são as seguintes:
1) Amostragem de pontos aleatórios em torno de [ , usando a equação acima;
2) Ordenação das amostras baseado no valor da função objetivo;
3) Memorização das amostras, isto é, armazenar os melhores pontos, exceto o
melhor de todos, durante a fase de exploração (δ = 1);
4) Análise do melhor ponto: verificar os critérios de convergência;
5) Checar validade de um novo ponto ótimo encontrado: análise de redundância de
pontos, baseado em uma métrica;
6) Resgate de um ponto da memória;
7) Eliminação pelos ótimos: verificar a tendência da busca;
8) Ajustar direção e critérios de amostragem: alteração dos parâmetros de busca ($,
%, δ);
49
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
5
s tart point
optim um
4
-1
-2
-3
-4
-5
-5 -4 -3 -2 -1 0 1 2 3 4 5
$OJRULWPRJHQpWLFR
A idéia dos algoritmos genéticos (GA), J. Holland (1975), está baseada no processo
evolutivo dos organismos biológicos da natureza (princípios da seleção natural e da
sobrevivência do mais adaptado). Os indivíduos que têm mais sucesso para se
adaptar ao meio ambiente terão mais chance de sobreviver e reproduzir, enquanto
que os menos ajustados serão eliminados. Isto significa que os genes dos indivíduos
mais adaptados serão disseminados em um número crescente de indivíduos nas
próximas gerações. A combinação de características de ancestrais bem ajustados
pode produzir indivíduos que são bem mais adaptados que os pais. Os GAs
procuram simular este processo natural pela aplicação de RSHUDGRUHVJHQpWLFRV sobre
uma população inicial e suas próximas gerações. Cada indivíduo da população é
codificado em um FURPRVVRPR (VWULQJ), que representa uma solução possível para o
problema. A adaptação de um indivíduo é avaliada pelo valor da função objetivo.
Indivíduos altamente ajustado são permitidos a se reproduzirem pela troca de parte
de sua informação genética (em um procedimento de cruzamento) com outro
indivíduo altamente ajustado, produzindo filhos (RIIVSULQJV) com características de
ambos os pais. Mutações são freqüentemente permitidas pela alteração de alguns
genes dos cromossomos. Os filhos podem substituir toda a geração anterior (WpFQLFD
50
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
6LPXODWHGDQQHDOLQJ
É uma técnica de busca direta com relaxação estocástica (S. Kirkpatrick, C. Gelatt
Jr. e M. Vecchi, 1983), baseada no processo de recozimento de sólidos (onde um
sólido é aquecido a altas temperaturas e gradualmente resfriado para permitir a sua
cristalização). Como o processo de aquecimento permite que os átomos se
movimentem aleatoriamente, se o resfriamento não é realizado muito rapidamente,
então os átomos terão tempo suficiente para se alinharem de modo a atingir um
estado de mínima energia. Usando esta analogia, o estado do sólido corresponde a
uma solução viável e a energia de cada estado corresponde ao valor da função
objetivo. Neste procedimento, a busca é permitida a prosseguir mesmo se o
movimento causar um aumento na função objetivo, através do uso de um parâmetro
chamado “WHPSHUDWXUD” (7), onde o movimento é aceito com uma probabilidade de
exp(−∆/7), com ∆ = 6([ +1) − 6([k). O valor de 7 ∈ (0,∞) é controlado pelo processo
de “UHVIULDPHQWR”, sendo que valores baixos resultam em um algoritmo de busca
51
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
onde α é um parâmetro que define o nível de WHPSHUDWXUD (7 ) que o algoritmo deve
terminar, β é um parâmetro utilizado para definir o número de iterações (1) em cada
nível de WHPSHUDWXUD, 7o é a WHPSHUDWXUD inicial, U é o número de rejeições, λ é
número de mudanças de direção, < ∈ [0,1] é uma variável aleatória uniforme e &m
é o número de máximo de níveis consecutivos de temperatura sem progressão (isto é,
rejeição total). O cálculo de 7o e a atualização de 7 podem ser feitos de diversas
maneiras, tal como (Aarts et al., 1988):
−1
P 7
7 = ∆ˆ ln 2 e 7
+1 = N
R
P2 η − (1 − η) P1
N
7 ln(1 + δ)
1+ N
3σ N
52
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
%XVFDWDEX
É um procedimento para levar métodos de busca local para fora da região de atração
de um ótimo local (meta-estratégia ou meta-heurísticas), pela incorporação de
funções de memória flexível para proibir movimentos que levam a características
(ou DWULEXWRV, ou estado das variáveis) de soluções passadas (F. Glover, 1986). Os
atributos que não são permitidos a serem retomados são chamados de WDEX e são
mantidos em uma memória de curta duração (OLVWDGHWDEXV).
Para maiores detalhes deste procedimento e dos dois métodos anteriores, sugere-se a
leitura de Hasan et al. (2000) e suas referências.
53
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
0pWRGRVDQDOtWLFRVPpWULFDYDULiYHO
Em qualquer método de otimização, uma boa direção de busca deve reduzir (para o
caso da minimização) o valor da função objetivo, isto é, 6([ +1) < 6([ ). Tal direção,
G , satisfaz o seguinte critério em cada ponto:
∇ 6 ([ ) G < 0
ou em outras palavras, o ângulo (θ) formado entre os vetores ∇6([ ) e G deve ser
sempre maior que 90º, ou seja:
∇ 6([ ) G = |∇ 6([ )| |G | cos θ < 0 ⇔ θ > 90º
54
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
0pWRGRVJUDGLHQWHV
55
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
−/([1,[2) J1 (α)
0.02
0.015
X2
o
[
0.01
0.005
J2 (α)
J2 (α)
α
α2
56
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
GJ
que minimizando em relação a α, = 0 , resulta:
G α
∇ 7
6
N
( [ )G N
(G ) N 7
G
N
α* = α = − N
N 7 N N
= N 7 N N
(3.3)
(G ) + ( [ )G (G ) + ( [ )G
Contudo, a equação (3.3) não é utilizada para o cálculo de α nos métodos gradientes,
pois exigiria o cálculo da segunda derivada da função objetivo. Neste caso, utiliza-
se, em geral, métodos de busca para a sua seleção.
0pWRGRGH1HZWRQ
Faz uso da segunda derivada da função objetivo, caso em que :([k) = [+([ )]-1:
+1
[ = [ − α [+([ )]-1 ∇6([ )
∆[ = −[+([ )]-1 ∇6([ )
0pWRGRGRJUDGLHQWHFRQMXJDGR
58
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
onde a nova direção é conjugada com a direção anterior com respeito a Hessiana,
isto é:
(G +1) + [ ( )G =0
e [ +1 = [ + α G , onde α é obtido de forma similar ao método da maior descida.
Para calcular ε +1, faz-se a aproximação quadrática de 6([), equação (3.4), de onde
obtém-se:
∇6([) ≈ ∇6([ ) + +([ ) ([ − [ ) (3.6)
+1
e portanto: ∇6([ +1) − ∇6([ ) = +([ ) ([ − [ ) = +([ ) α G , que multiplicado por
+1
G à esquerda, resulta:
+1
(G +1) [∇6([ ) − ∇6([ )] = α (G +1) H([ ) G = 0
-1
a última
igualdade resulta do fato de G = ε G − ∇6([ ) , que multiplicado por
∇6([ ) à direita:
(G ) ∇6([ ) = ε (G -1) ∇6([ ) − ∇ 6([ ) ∇6([ ) = −∇ 6([ ) ∇6([ ),
pois (G -1) ∇6([ ) = 0, pela mesma razão acima.
algoritmo
o
1) Escolher um ponto inicial [
2) Calcular G
o
= −∇6([o) , N =0
3) Encontrar α tal que ( + α
6 [ G )= PLQ g (α) = 6([ + α G )
α>0
+1 +1
4) Calcular [ = [ + α G e ∇6([ )
59
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
7) 6H N = Q, isto é, realizou Q direções L.I. HQWmR fazer [o = [ e (ir para 2)
VHQmR (ir para 3)
0pWRGRVGDPpWULFDYDULiYHO
∆ : ([ ) ∆I ([
N N
)= − : ([ ) ∆I ([ ) N N
(3.7)
ω
onde ∆I([ ) = ∇6([ +1) − ∇6([ ). Como o sistema
(3.7) possui Q equações e Q2
variáveis a determinar (os elementos de ∆:([ )), então existe um número infinito de
soluções, sendo que a solução geral é dada por:
1 {∆ [ , X } {: ( [ ) ∆ I ( [ ), Y }
N N N N N
∆ : ([ N
)= − (3.8)
ω < X , ∆I ([ ) > N
< Y , ∆I ([ ) > N N N
onde X e Y são vetores arbitrários
{[, \} = [\ é o produto transposto (uma matriz)
< [ , \> = [ \ é o produto escalar (um escalar)
Conseqüentemente, pode existir uma infinidade
de métodos que utilizam a equação
(3.1), dependendo da escolha de ω, X e Y . O parâmetro α pode ser minimizado
(“OLQHVHDUFK”) ou escolhido adequadamente (“WUXVWUHJLRQ”).
60
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
61
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
62
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
se 6([ + V ) < 6([ ), então o novo ponto é aceito, caso contrário a região de
confiança é reduzida e o procedimento é repetido. A figura abaixo ilustra esta
técnica, onde as curvas de níveis tracejadas representam a aproximação quadrática
convexa de 6([) no ponto [ .
2) Calcular : [ ( o), N =0
2) Calcular Gk = −:([k) ∇6([k)
¥ ¥
3) Encontrar α tal que 6 [ ( + α G ) ≈ min g (α) = 6([ + α G )
α >0
¥ +1 ¥ ¥ ¥ +1 ¥ ¥ +1 ¥
4) Calcular [ = [ + α¥ G , 6 [
( ) e ∆I([ ) = ∇6([ ) − ∇6([ )
5) 6H o critério de convergência foi satisfeito, HQWmR FIM.
¥ +1
6) calcular :([ ), N ← N + 1, verificar a necessidade de UHVHW e (ir para 3)
63
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
¥
onde UHVHW é uma reinicialização (ou modificação) de :([ ) devido a problemas de
convergência. No caso do método dos gradientes conjugados, o UHVHW acontece a cada
Q iterações (Q direções linearmente independentes). Para os demais casos, ele é
¥
necessário quando a matriz :([ ) deixa de ser positiva definida, ou quando a
¥
correção ¥ ∆:([ ) torna-se divergente devido
¥ -1 a erros de ¥ arredondamento, ou ainda
+1
quando G estiver na mesma direção de G , tornando :([ ) singular.
No algoritmo acima, quando a interpolação cúbica é usada, então os passos (3) e (4)
são concomitantes.
Definindo:
¥ -1
¥
: = :([ ) : = [:([ )]-1
¥ ¥
∆[ = ∆[ ∆I = ∆I([ )
G = ∆[ − : ∆I $
G = ∆I − :
-1
∆[
δ = <∆[, ∆I> δ$ = <∆I , ∆I>
γ = <∆I , W ∆I> γ$ = <∆[, :-1 ∆[>
$ = {∆[, ∆[} / δ $ = {∆I, ∆I} / δ
$
% = {: ∆I, : ∆I} / γ $
% = {:
-1
∆[, :-1 ∆[} / γ$
¥ ¥ +1 ¥ ¥
E = {∆[, ∆I} ) = {∇6([ ),∇6([ )} / <∇6([ ),∇6([ )>
+1 ∆I (∆I )
N N 7
+ ( [ )∆[ (∆[ ) [ + ( [ )]
N N N 7 N 7
+ ([ N
)= + ([ ) +
N
−
(∆[ ) ∆I N 7 N
(∆[ ) N 7
+ ( [ )∆[ N N
¥ ¦ ¥
que ao multiplicar à esquerda por (∆[ ) e à direita por ∆[ , resulta em:
¥ ¦ ¥ +1 ¥ ¥ ¦ ¥ ¥ ¦ ¥
(∆[ ) + [
( ) ∆[ = (∆I ) ∆[ = (T ) V
¥ ¦ ¥ ¥ +1
mostrando que se (T ) V > 0, então +([ ) é positiva definida.
64
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
¥ +1
PpWRGR : [ ( )
6WHHSHVWGHVFHQW I
Gradiente Conjugado I + :)
¥ +1
Newton [ +( [ )]-1
Greenstadt, λ § (C)→ max{|λ § |,10-4} '
-1
& '
-1
; ' = diag ( |: − 1 |1,/ 2 ) e L M
& = '-1 : '-1
Levenberg-Marquardt '
-1
(&βI '-1; β > −min (valor caract. de &)
{G , G }
Broyden : +
< G , ∆I >
Davidon-Fletcher-Powell (DFP) W+A−B
{G , ∆ [} ¨
Pearson I : + =:+ $ − γ %$ − 1 (
δ
{G , : ∆ I } δ
Pearson II : + = 1 + : − %
γ γ
Newton Projetado (Zoutendijk) : −%
Greenstadt-Goldfarb I (GGI) 1 δ
: + {G , ∆ I } + {∆ I , G } − < ∆ I , G > $$
δ$ δ$
©
Greenstadt-Goldfarb II (GGII) ( : +: ( δ
: + − 1 + %
γ γ
γ ( : +: (
7
Gill-Murray ou (GGIII) : + 1 + $ −
δ δ
ª −1 −1
−1 γ$ ( : +:− 1 (
: + 1 + $$ −
-1
Fletcher ou (GGIII)
δ δ
Broyden-Fletcher-Goldfarb-
[ ]
−1 −1
Shanno (BFGS) ou (DFP)-1 : + $$ − %$
−1
− 1 {G$ , G$}
: + $
-1
(Broyden)
{G , ∆ [}
Goldstein-Price aproximação por diferenças-finitas
65
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
7HRULDGD'XDOLGDGH
3UREOHPDSULPDO
¬
[ ∈;⊆ℜ
inf 6([)
sujeito a: « ([) = 0 , M = 1, 2, ..., P
K
Y \
( )= « ([) ≤ \ , M = 1, 2, ..., S
J
¬
[ ∈;⊆ℜ
66
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
3UREOHPDGXDO
Como o problema interno φ(λ,µ) = inf /([,λ,µ) do dual ' é uma função paramétrica
∈;
[
de λ e µ, φ(λ,µ), também chamado de IXQomR GXDO, ele pode assumir valores (−∞)
para algum valor de λ ou µ. Se o problema interno é finito para todos µ ≥ 0 e λ,
então ele pode ser escrito como:
67
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
,QWHUSUHWDomRJHRPpWULFDGRGXDO
° ¯ /([,µ)
max min
µ≥ 0 ∈
' =
sujeito a: ( ,µ) = 6([) + µ1 J1([) + µ2 J2([)
/ [
68
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
primal:
3 * = [J1([
), J2([
),6([
)]
Portanto, o problema primal consiste na determinação do ponto em , que minimiza
z3 sujeito a ]1 ≤ 0 e ]2 ≤ 0.
Interpretação geométrica da função dual: A função dual φ(µ) no ponto ( µ1 , µ 2 )
corresponde a determinação do plano mais baixo com inclinação (− µ1 , − µ 2 ) que
intercepta o conjunto ,. Isto corresponde ao hiperplano suporte K que é tangente ao
conjunto , no ponto 3 mostrado na figura acima.
Note que o ponto 3 é a imagem do min 6([) + µ1 ( ) + µ 2 J2([) cuja solução é o
J1 [
∈;
[
69
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
funções convexas, K([) for uma função afim (mapeamento linear de [) e o problema
primal for estável. A diferença entre os valores ótimos dos problemas primal e dual é
conhecida como brecha dual (GXDOLW\ JDS). Esta diferença pode ser devido a uma
descontinuidade da função perturbação Y(\) em \ = 0, que impossibilita a existência
de um hiperplano suporte neste ponto.
Se a função perturbação Y(\) é finita em \ = 0, então não existe brecha dual se
e somente se Y(\) é semicontínua inferior em \ = 0. Para que isto ocorra as seguintes
condições devem ser satisfeitas:
a) ; é um conjunto fechado;
b) 6 [ ( ) e J([) são funções contínuas em ;;
c) 6 [ ( *) é finito;
d) {[ ∈ ; | K([) = 0, J([) ≤ 0 e 6([) ≤ α} é um conjunto limitado, não vazio e
convexo, para algum escalar α ≥ Y(0).
([HPSOR Seja o seguinte problema:
min 6([) = [2
3 = sujeito a: [1 ≤0,
[ ∈ ; {([1,[2) | 0 ≤ [1 ≤ 2, 1 ≤ [2 ≤ 4 e [2 ≥ 2 se [1 = 0} ⊆ ℜ2
70
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
'XDOLGDGHIUDFDHIRUWH
71
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
® ®
Lagrange: /([,λ*,µ*) = 6([) + (λ*) K([) + (µ*) J([) para [ ∈ ;, satisfazendo
® as
restrições K([) = 0, J([) ≤ 0 e a condição de complementaridade (µ*) J([) = 0.
3 = sujeito a: J [ ( ) = [1[2 − 4 ≤ 0 ,
[ ∈ ; {([1,[2) | 0 ≤ [1 ≤ 4, 0 ≤ [2 ≤ 8} ⊆ ℜ2
®
cuja ótimo global é [
= [0,5 8] e 6([
) = −8,5. O seu dual (') somente em relação
a restrição J([) é dado por:
µ≥ 0° ¯ /([,µ)
max min
∈
' =
sujeito a: / [ ( ,µ) = −[1 − [2 + µ ([1[2 − 4)
cujo máximo (∇φ = 0) ocorre quando µ = 0,5 e φ( µ ) = −4. Neste ponto [ = (2, 2) e
6( [ ) = −4 ≥ φ( µ ). Contudo 6([
) < φ( µ ), contrariando o limite inferior da dualidade
dual:
µ≥ 0° ¯ /([,µ)
max min
∈
' =
sujeito a: / [ ( ,µ) = −[1 − [2 + µ1 ([1[2 − 4) + µ2 ([2 − 8)
72
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
-11
7 -9
-8
-10
6
-8.5
5
-7
x2
4 g(x)>0
-6
-4
3
-5
2
g(x)=0
g(x)<0
-2
1
-1 -3
0
0 0.5 1 1.5 2 2.5 3 3.5 4
x1
73
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
3URJUDPDomR/LQHDU/3
74
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
)XQGDPHQWRV
³ ´ ´
6HPLHVSDoRYHWRULDODEHUWR : + = {[ / F [³ < α, [ ∈ ℜ , α ∈ ℜ, F ≠ 0 ∈ ℜ }
´ ´
6HPLHVSDoRYHWRULDOIHFKDGR: + = {[ / F [ ≤ α, [ ∈ ℜ , α ∈ ℜ, F ≠ 0 ∈ ℜ }
³ ´ ´
+LSHUSODQR: K = {[ / F [ = α, [ ∈ ℜ , α ∈ ℜ, F ≠ 0 ∈ ℜ }
3ROLWRSR : I+ L
L =1
3ROLHGURFRQYH[R : Politopo limitado.
&DVFD FRQYH[D: é o conjunto convexo, &(;), formado pela interseção de todos
´ ´
conjuntos convexos no ℜ que contêm o conjunto ; ⊆ ℜ (convexo ou não
convexo). Se [ ∈ &(;), então
µ +1 ¶ · +1 ¹
[ = ∑α¶ ¸
¶ =1 [ com ¸∑ α = 1 , α¹ ≥ 0 e
=1
[ ∈ ; (teorema de Caratheodory).
75
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
2 1 ³
isto é, $ = e E = [8 10] , o poliedro formado é mostrado abaixo.
4 1
[2
10 −
8−
6−
4−
2−
| | | | | [1
1 2 3 4 5
onde α¾ ≥ 0 e ∑ α = 1 , então
N
( )=
6 [ ∑α N
6 [
( N
) , pois 6([) é linear e
N =1 N =1
S
6 [ ( ) ≥ S* ∑ α = S*. N
N =1
76
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
Se o problema de programação linear não está bem posto, ele pode apresentar
uma solução não única (quando a função objetivo é paralela a restrição com melhor
vértice), ou uma solução infinita (quando a região viável não é limitada), ou
nenhuma solução (quando as restrições não formam uma região viável), tais
problemas são ditos GHJHQHUDGRV.
0pWRGRVLPSOH[
´
A generalização para o ℜ , chamado de método simplex (Dantzig, 1947), que
é um método da classe dos conjuntos ativos (“DFWLYH VHW”), é feita através da
transformação das desigualdades em igualdades, pela inclusão das chamadas
variáveis de folga, I ¹ ≥ 0 (L = 1, 2, ..., P, onde P é o número de restrições):
$ [ ≤E ⇒ $ [ + I = E, E ≥0
$ [ ≥E ⇒ $ [ − I = E, E ≥0
gerando um sistema sub-determinado de P equações com S = Q+P variáveis.
Portanto, é necessário especificar Q variáveis (chamadas de YDULiYHLV QmR EiVLFDV)
para obter as demais (YDULiYHLV EiVLFDV) em função destas. Se algum E ¹ < 0, então
basta multiplicar a inequação correspondente por (−1) para deixá-lo na forma
padrão, antes de introduzir a variável de folga.
Quando atribui-se valores nulos para as variáveis não básicas e obtém-se valores não
negativos para as variáveis básicas, tem-se uma VROXomR EiVLFD YLiYHO (ou
simplesmente VROXomR EiVLFD), caso contrário tem-se um ponto inviável. Se alguma
variável básica for nula, então tem-se uma VROXomR EiVLFD GHJHQHUDGD, sendo
necessário substituir as variáveis básicas nulas por variáveis não básicas. Esta
situação ocorre na figura abaixo no ponto [ = (5/2, 0), onde tem-se [2 = I2 = I3 = 0,
isto é, como Q = 2 e P = 3, o número de variáveis não básicas é 2 e o número de
variáveis nulas é 3 > Q.
[2
10 −
8−
6−
4−
2−
| | | | | [1
1 2 3 4 5
77
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
0
%
7
F
³
de dimensão (P+1) × S, e pelo vetor aumentado \ = [[ I] , de dimensão S, onde I¿ é a
matriz identidade de tamanho P × P. O sistema resultante é dado por:
³
% \ = [E 6 [ ( )]
Considerando como ponto de partida o vértice [ = 0, então as variáveis de folga, I,
formam um conjunto de variáveis básicas do sistema. As demais variáveis, [,
formam o conjunto de variáveis não básicas. Partindo desta formação, o algoritmo
simplex (minimização) pode ser descrito da seguinte forma:
algoritmo
1) Se F ¹ ≥ 0 ∀ L = 1,2,...,Q, então a solução ótima foi encontrada, bastando igualar a
zero as variáveis não básicas e resolver o sistema [$ I¿ ] \ = E. FIM.
2) Pivotamento: identificar o N-ésimo elemento da linha P+1 da matriz % com o
menor valor (corresponde ao índice da variável que causa a maior redução da
função objetivo). A N-ésima variável será incluída na base. Identificar o V-ésimo
elemento do vetor E¹ / D¹ À ¾ com menor valor positivo (corresponde a restrição mais
próxima, e valores negativos não violam a restrição com o aumento da N-ésima
variável). A V-ésima variável de folga será removida da base.
3) Eliminação de Gauss-Jordan: executar as operações elementares na matriz % (para
levar de uma solução básica para outra), tomando como elemento pivô: DÁ À ¾ e (ir
para 1).
2 1 1 0 8 ⇒ 0 1/2 1 -1/2 3 ⇒ 0 1 2 -1 6
4 1 0 1 10 1 1/4 0 1/4 5/2 1 0 -1/2 1/2 1
-6 -2 0 0 6 0 -1/2 0 3/2 S+1 0 0 1 1 S+1
5 8
78
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
79
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
Este problema pode ser resolvido da mesma maneira que o problema primal,
introduzindo as correspondentes variáveis de folga (η, definido acima).
3ULPHLUDVROXomRYLiYHO
Se o ponto inicial não é viável, então é necessário realizar uma busca para a
primeira solução viável. Isto pode ser feito com o uso de YDULiYHLVDUWLILFLDLV.
([HPSOR : considere o problema
min 6([1, [2) = [1 + 2 [2
sujeito a 3 [1 + 4 [2 ≥ 5
[1 + [2 ≤ 4
[1 ≥ 0 e [2 ≥ 0
80
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
)RUPDSDGUmR
pela substituição desta variável por outras duas variáveis restritas. Por exemplo, se
um dado problema tem a variável [1 irrestrita, então fazendo [1 = \1 − ]1, com \1 ≥ 0
e ]1 ≥ 0, o problema equivalente com \1 e ]1 no lugar de [1 é restrito nestas
variáveis. Se [ possuir limite superior finito, estas restrições podem ser incluídas na
matriz $ com o uso das variáveis de folga. Por outro lado, se o limite inferior for
diferente de zero ([ ≥ Z), então faz-se uma mudança de variável do tipo \ = [ − Z,
com \ ≥ 0. Em suma, qualquer problema de programação linear pode ser posto na
forma padrão. Observe que os problemas com restrições de desigualdade, tratados
anteriormente, são transformados na forma padrão acima pela inclusão das variáveis
de folga.
Quando uma linha, L, da matriz de restrições de igualdade possuir somente um
elemento não nulo, o componente, M, de [ associado a este valor é chamado de
VLQJOHWRQ, pois não pode assumir outro valor diferente de [É = E Ã / D Ã É .
81
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
Ä
O termo UË = FË − (%−1 1) FÊ , conhecido como vetor dos “custos relativos” ou
gradiente reduzido da função objetivo ( ∇ Í 6 ( [) = UË ), é usado para determinar qual
[
a variável não básica se tornará básica (determinação da coluna pivô). A variável que
deixará a base resulta do teste da razão entre as linhas do termo independente %−1 E
e a coluna pivô da matriz %−1 1.
Fazendo [Ë = 0 (como parte da solução básica viável), tem-se:
[ Ê = %−1E e 6 [ ( )= F
7
%
%
−1
E
82
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
0pWRGRGRSRQWRLQWHULRU.DUPDUNDU
Ä Ä
3 = , − $ ($$ )−1 $
Esta projeção
Ð pode
Ð +1 ser melhorÐ interpretada
Ð +1 ao analisar duas soluções
Ð +1 viáveis
Ð durante
a busca,
Ð +1 Ð [ e [ , onde $ [ = E e $ [ = E, e portanto $ ([ − [ ) = 0, ou seja
([ − [ ) = αk GÎ , isto é, GÎ é ortogonal as linhas da matriz $ estando portanto no
espaço nulo de $. A figura abaixo ilustra a projeção.
G Ò
origem • G Ñ
ℵ
devendo-se
Ä proceder
Ä como no início do algoritmo, substituindo a matriz $ por $' e
vetor F por F '. O critério de parada é verificado pela análise dos multiplicadores
de Lagrange, calculados por: Ä
µ = −($$ )−1 $ F
e do gradiente projetado, isto é, na solução 3G = 0.
([HPSOR : considere o problema
84
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
min 6([) = [1 + 2 [2 + 3 [3
sujeito a [1 + [2 + [3 = 1
[1 ≥ 0, [2 ≥ 0, [3 ≥ 0
o
Ä Ä
ilustrado na figura abaixo, com centróide em [ = [1/3 1/3 1/3] e [* = [1 0 0] .
Ä
A primeira direção projetada é dada por: GÎ = 3G = −3F = [1 0 −1] . O tamanho do
passo nesta direção é obtido de modo a obter o maior avanço sem tornar a solução
inviável, isto é:
Ð Õ
α* = γ × max {α > 0 | [ + α GÎ ≥ 0} = γ × min { − [ Ô / G kÓ Ô | GÎ Ã < 0, L = 1,..., Q}
85
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
3URJUDPDomR1mR/LQHDU1/3
3URJUDPDomR4XDGUiWLFD43
µÙ * JÙ ([
) = 0 , M = 1, 2, ..., S
µ* ≥ 0
Além disto, se a matriz 4 for positiva definida, as condições de segunda ordem de
KKT são as condições suficientes para a solução ser um ponto extremo e o ótimo
global do problema. Se 4 não for positiva definida, então o problema pode não ter
solução limitada ou apresentar mínimos locais.
A função de Lagrange para o problema de programação quadrática, na forma
acima, é dada por:
× × × ×
( , µ, η) = F
/ [ [ +½[ 4[ + µ ($ [ − E) − η [
sujeito a: $G Ü =0
isto é, da minimização da função objetivo sobre o espaço nulo, como ilustra abaixo,
onde GÜ = 3 G. A solução acima é possível se 4 for positiva definida e $ possuir
posto completo.
G Ò
origem • G Ñ
ℵ
89
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
5HOD[DomR/DJUDQJHDQD
sujeito a: µ≥0
× ×
onde φ(λ,µ) = PLQ {6([) + λ ( ) + µ I([)}, IÙ ([) = JÙ ([) + (YÙ )2 e YÙ (M = 1,2,...,S)
K [
[ ∈.
( , µ) =
/ [ [ [
1 2 + µ1 ( [12 + [ 22 − 25 + Y12 )
∂/
= [ 2 + 2µ1 [1 = 0
∂[1
∂/
= [1 + 2µ1 [ 2 = 0
∂[ 2
∂/
= [12 + [ 22 − 25 + Y12 = 0
∂µ1
∂/
= 2µ1Y1 = 0
∂Y1
µ1 [1 [2 Y1 6 [
( ) ponto
0 0 0 5 0 sela
PtQLPR
90
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
∂/
Observe que como = 2µ M
Y
M
= 0 (isto é, as condições de complementaridade das
∂Y M
∂/
= 8 [ 2 + 2 λ1 = 0
∂[1
∂/
= 10 [1 + 3 λ1 = 0
∂[ 2
∂/
= 2 [1 + 3 [1 − 6 = 0
∂λ1
pelo menos positiva semi-definida para todo vetor não nulo G tal que:
×
G ∇KÝ ([*) = 0 , L = 1, 2, ..., P
×
G ∇JÙ ([*) = 0 para as JÙ ([*) ativas {YÙ * = 0 e µÙ * > 0}
×
G ∇JÙ ([*) ≤ 0 para as JÙ ([*) inativas {YÙ * ≠ 0 e µÙ * = 0}
×
isto é, G ∇ 2 /([
, λ*, µ*)G≥ 0, ou se todas as raízes do polinômio característico:
[
λ, − ∇ 2 / 0
S (λ ) = åæ =0
0 0
2 µ 1 1 1
∇2 / =
[ =
1 2 µ 1 1
×
resultando em G ∇J1([*) = 7,08 (G1 − G2 )=0→ G1 = G2 e G
7
∇ 2 / G = 4 G12 > 0 , e
[
92
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
)XQo}HVSHQDOLGDGH
Transforma o problema:
PLQ 6 [ ( )
[ ∈.
93
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
Esta função, ilustrada abaixo, causa uma descontinuidade da matriz Hessiana quando
algum Jï ([) = 0, dificultando o uso de algoritmos quasi-Newton.
0 J
sendo uma penalidade exata, pois existe um valor finito de U , Uôöõ ÷ , tal que [* é um
mínimo local de {6([) + 3([, U)} quando U > Uôøõ ÷ , ao contrário da penalidade
quadrática onde U deve ser infinito para se ter uma penalidade exata.
No caso de restrições de desigualdades é possível usar penalidades interiores
à região viável, conhecidas como IXQo}HV EDUUHLUDV, sendo a forma mais comum
dada por:
S
1
( , ) = −∑
% [ U
L =1 U J ( [ )
L
94
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
95
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
ú
G ∇K([*) = 0 → G = 0 (P = Q, grau de liberdade nulo)
∇ 2 / ( [*, λ*; U ) = 6[
+ U = U− 6 (positiva definida se U> 6).
[ $
também que quando U < 6 o mínimo de /ù ([, λ*; U) é deslocado para um ponto
inviável.
96
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
3URJUDPDomROLQHDUVHTHQFLDO6/3
97
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
ð ð
4)ð 6H [ +1 (solução
ð +1 ð +1 do LP) não for viável para o NLP, HQWmR reduzir o intervalo [/
8 ] para [/ 8 ] e ir para (3)
5) 6H o critério de convergência não foi satisfeito, HQWmR N ← N + 1 (ir para 2)
6) FIM.
As maiores desvantagens do SLP são:
a) pode convergir lentamente se o ótimo estiver no interior da região viável, ou se o
problema for muito não linear;
b) geralmente viola as restrições não lineares por uma quantidade razoável,
necessitando de muitas iterações para a redução dos intervalos.
Por outro lado, em problemas de grandes dimensões e não linearidades
moderadas, o método SLP pode ser competitivo. A convergência pode ser rápida em
problemas cuja solução está em um vértice das restrições.
*UDGLHQWHVUHGX]LGRVJHQHUDOL]DGRV*5*
98
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
ou ainda usando a estratégia dos conjuntos ativos (DFWLYHVHW), onde a cada estágio de
busca as restrições ativas são adicionadas ao conjunto das restrições de igualdade e
as inativas são removidas, baseado nas estimativas dos multiplicadores de Lagrange.
Lembrando que o vetor direção G pode ser decomposto
ú em G = Gý + Gþ , onde
Gþ é um vetor do espaço ú nulo (ℵ) da matriz $ = ∇ K, Gý é um vetor do “UDQJH
VSDFH” (5) de $ e (Gþ ) Gý = 0, ou seja, Gþ é a projeção ortogonal de G em ℵ.
÷
Portanto, qualquer vetor G ∈ ℜ pode ser representado unicamente por uma
combinação linear da base < de 5 e da base = de ℵ:
G = < Gý + = Gþ
onde < é uma matriz com P colunas independentes e Z é uma matriz com Q−P
colunas independentes e ortogonais a <, tendo ambas Q linhas.
Por exmeplo, se [ é um ponto viável de restrições lineares (ou linearizadas), $ [ = E,
a sua representação nas base acima: [ = < [ý + = [þ , resulta em:
$[ = $< [ý + $= [þ = E
mas como $= = 0, tem-se $< [ ý = E e portanto:
[ ý = ($<)−1 E
ou seja, todos os pontos viáveis possuem os mesmos componentes no “UDQJHVSDFH”
de $ e a solução do problema de otimização é determinada somente pelos
componentes
ð de [ no espaço nulo de $. Em outras palavras, partindo de um ponto
viável, [ , o vetor direção deve permanecer no espaço nulo:
ð +1 ð ð ð
[ = [ + αð G , com $ G =0
ð ÿ
ou seja G = =G (< G
N
U
= 0). Então, o vetor direção tem dimensão reduzida Q−P.
99
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
onde % é uma matriz não singular de dimensão P × P e & é uma matriz P × (Q−P),
ambas com colunas independentes, obtidas da decomposição da matriz $:
$ = [% ¦ &]
ú
Do mesmo modo o vetor [ é decomposto em [ = [[ ¦ [ ], onde % = ∇ 7
[
K [
( N
) e
−1
& =∇ 7
[
K [
( N
) . Deste modo, [ = % E − %−1 & [ , que é conhecido como vetor das
variáveis dependentes (ou vetor básico) e [ é o vetor das variáveis independentes
(ou vetor superbásico). Aquelas variáveis mantidas fixas em um de seus limites são
chamadas de variáveis não básicas.
O termo gradiente reduzido, J
, é dado ao seguinte vetor:
- B
-1
& ∇ 6( [ )
J
([ ) = = ∇6([ ) =
= ∇ 6([ )−& (%−1) ∇ 6 [ ( )
I − ∇ 6([ )
onde ∇ 6([ ) = ∇ [
6
N
( [ ) (para simplificar a notação), sendo que o vetor direção de
busca é dado por −J
nas direções que não violam os limites das variáveis.
Naturalmente, como as restrições foram linearizadas, a direção de busca é
viável localmente, como ilustra a figura abaixo.
100
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
( , λ) = 6([) + λ
/ [ K [
( )
∇ ( , λ) = ∇ 6([) + ∇ K([) λ = ∇ 6([) + % λ = 0
/ [
∇ /([, λ) = ∇ 6([) + ∇ K([) λ = ∇ 6([) + & λ = 0
então, λ = −(%−1) ∇ 6([)
e ao substituí-lo em ∇ /([, λ), resulta em:
∇ /([, λ) = ∇ 6([) − ∇ K([) λ = ∇ 6([) − & (%−1) ∇ 6([) = J
([) = 0
quando [ for um ponto ótimo.
([HPSOR : min 6([) = 2 [12 + 2 [ 22
sujeito a: K1([) = [1 + 2 [2 − 2 = 0
arbitrando [ = [1 e [ = [2, tem-se:
∂K ∂K
% = =1 & = =2
∂[ ∂[
101
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
algoritmo
1) Escolher um ponto [o viável e selecionar Q−P variáveis independentes, N =0
2) Linearizar a função objetivo e as restrições em torno do ponto [
N
3) Calcular J
5
∂K ∂K
(isto é, GK = G[ + G[ = 0)
∂[ ∂[
6) Encontrar α tal que 6 [ ( + α G )= PLQ g (α) = 6([ + α G ), sujeito a /≤ [ ≤ 8
α>0
$
$ G &
onde G = $
G %
+1
7) Calcular [
N
,
= [
N
,
+α N
G
N
,
~ +1
[
N
'
= [
N
'
+α N
G
'
N
(ponto tentativa ou SUHGLomR)
9) 6H [ +1 é viável e 6([ +1) ≤ 6([ ), HQWmR N ← N + 1 e VH o critério de convergência
não foi satisfeito (ir para 2) VHQmR FIM.
10) 6H [ +1 é viável e 6([ +1) > 6([ ) ou se o método de Newton não convergiu, HQWmR
reduzir α e (ir para 7).
NOTA: se a obtenção de um ponto viável [ +1 não foi possível, após um determinado
número de iterações, então deve-se trocar alguns elementos da base e reiniciar o
algoritmo. Também aquelas variáveis independentes que atingirem seus limites
devem ser substituídas por outras variáveis dependentes. A determinação da direção
de busca no espaço das variáveis independentes pode também ser obtida pelo
método dos gradientes conjugados:
102
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
$ ( $
+1 ' +1
$
% +1
$ $ (J ' ) J
G = − J ' +1 + G% $ ( $
(J' ) J
'
3URJUDPDomRTXDGUiWLFDVHTHQFLDO643
sujeito a: K) ( [) = 0 , M = 1, 2, ..., P
J) ([) ≤ 0 , M = 1, 2, ..., S
sujeito a: J([) = [
2
1 + [ 22 − 2 ≤ 0
*
Partindo do ponto [o = [−1,9 2] , a solução *
do problema sem restrição, usando o
método BFGS chega na solução [* = [1 1] após 165 avaliações da função objetivo,
ao passo que o método SQP (com atualização BFGS) obtém a mesma solução com
apenas 84 avaliações da função objetivo, usando a mesma tolerância (10−6). A figura
abaixo ilustra a trajetória dos dois métodos.
4
SQP
2
x2
BFGS
0
-1
start point g(x)=0
optimum
-2
-3.5 -3 -2.5 -2 -1.5 -1 -0.5 0 0.5 1 1.5
x1
sujeito a: $/ G = E/
$0 G ≤ E0
105
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
. * . * . . .
onde F = ∇6([ ), $/ = ∇ K([ ), $0 = ∇ g([ ), E/ = −K([ ) e E0 = −J([ ), é geralmente
realizada em duas etapas. A primeira destina-se a encontrar um ponto viável e a
segunda obtém um seqüência de pontos viáveis que convergem para a solução.
A obtenção de um ponto viável pode ser realizada pela inclusão de variáveis
artificiais, do mesmo modo que no caso da programação linear, isto é, resolve-se o
seguinte problema auxiliar de programação linear:
min 1 Y
Y ∈ℜ, G∈ℜ
sujeito a: $/ G = E/
$0 G − Y ≤ E0
Se uma solução viável não é encontrada, então a direção de busca é aquela que
minimiza o valor de Y.
Usando a estratégia dos conjuntos ativos para a solução da segunda etapa da
programação quadrática, é construída a matriz das restrições ativas, $, e determina-
se a base, =, de seu espaço nulo ($= = 0). A matriz = é formada pelas últimas P−Z
colunas da decomposição QR (ou decomposição *
ortogonal-triangular, ou
decomposição de Householder) da matriz $ , ou ainda pelas últimas P2 −Z colunas da
matriz 9 da decomposição em valor singular da matriz $ ( 8 6 9 ), onde Z é o
número de restrições ativas do problema quadrático (Z < P), isto é:
=, 3) = 4 , 3 )5476 L = 1,2,..., Q , =1,2,...,P−Z
M
2 * 5 2
onde 4 $ = (4 é uma matriz unitária e Q−1 = 4 é a transposta conjugada)
0
Uma vez encontrada a base =, determina-se a direção de busca que minimiza T(G) no
espaço nulo das restrições ativas. Escrevendo a* função objetivo quadrática, T(G), em
termos da projeção de G no espaço nulo, G8 = = G(ou G = = G8 ), tem-se:
* * * . . .
T G8
( )=F =G8 + ½ (G8 ) = + [ ( ,λ ,µ )=G8
que diferenciado em relação a G8 , resulta em:
* * . . .
∇T(G8 ) = = F += + [( ,λ ,µ )=G8
* . . .
ou seja, o gradiente projetado de T(G). O termo = +([ ,λ ,µ ) = é chamado de
Hessiana projetada. Como a matriz Hessiana é mantida sempre positiva definida no
106
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
método SQP, então o mínimo de T(G8 ) ocorre quando ∇T(G8 ) = 0, ou seja a solução
do problema linear:
* . . . *
= + [ ( ,λ ,µ )=G8 = −= F
. . . .
e a correção em [. é então realizada nesta direção: [ +1 = [ + α. G , com G = = G8 .
Devido a natureza quadrática da função objetivo, T(G8 ), existe somente duas
escolhas possíveis para .α. . O valor exato, α. = 1, que é usado quando
.
nenhuma
+1
restrição é violada em [ . Caso contrário, o passo ao longo de G até a restrição
mais próxima é α. < 1, sendo esta restrição incluída
.
no. conjunto
.
ativo da próxima
iteração. Tal distância é dada por (multiplicando [ = [ + αk G por $ , ):
+1
9
− ( $: [ − E: ) .
α 9 = : min; 9 , com $ , G >0
∈{1,..., } $: G
que é definida. para as restrições que não estão no conjunto ativo, e na direção de sua
fronteira ($ , G > 0).
Quando Q restrições independentes estão incluídas no conjunto ativo e o
mínimo ainda não foi localizado, então os multiplicadores de Lagrange são
calculados de modo a satisfazer o sistema não singular de equações:
* .
$ λ =F
. .
Se todos os elementos de λ ≥ 0, então [. é a solução ótima do problema quadrático.
Entretanto, se algum componente de λ é negativo e este não corresponder a uma
restrição de igualdade, então a restrição associada é removida do conjunto ativo para
a próxima iteração.
.
A solução do problema de programação quadrática gera um vetor direção, G ,
que é usado para calcular o próximo ponto no nível mais externo das iterações SQP,
ou seja:
. . .
[
+1
= [ + α. G
107
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
que assegura uma elevada penalização das restrições com menor gradiente, isto é, as
que estiverem mais perto de suas fronteiras (este mesmo procedimento pode ser
usado para obter uma estimativa inicial para os multiplicadores de Lagrange).
Outra forma muito utilizada é a do Lagrangeano aumentado (Powell, 1969 e
Hestenes, 1969). Neste caso a função de mérito é dada por:
* *
Ψ(α) = S([) + λ ( ) + µ I([) + 3([, U. )
K [
([HUFtFLRVGHIL[DomR
108
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
3. min 6([) = [
3
1 − 3 [1 [2 + 4
sujeito a: K1 [( ) = −2 [1 + [
2
2 −5=0
J1 [( ) = 18 − 5 [1 − 2 [2 ≤ 0
2WLPL]DomRPXOWLREMHWLYR
sujeito a: KH ( [) = 0 , M = 1, 2, ..., P
JH ( [) ≤ 0 , M = 1, 2, ..., S
em um problema de otimização escalar pela definição da soma ponderada das
funções objetivos: G
min 6([) = Z )([)
[∈.
sujeito a: KH ( [) = 0 , M = 1, 2, ..., P
JH ([) ≤ 0 , M = 1, 2, ..., S
109
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
onde Z é o vetor dos pesos relativos, geralmente definido como uma combinação
convexa:
I
∑
J=1
ZJ =1 e Z ≥0
Consequentemente, este problema pode ser resolvido por qualquer uma das técnicas
de otimização de um funcional escalar. Uma das dificuldades desta estratégia é a
homogeneização das diferentes unidades de medida tratadas em cada função objetivo
(tais como grau de confiabilidade, custo, segurança, qualidade), ou seja, como
escolher os pesos adequadamente. Outra dificuldade está associada ao tratamento
das não convexidades que podem existir no espaço das funções objetivos, ilustrado a
seguir.
O método das restrições ε consiste em minimizar uma das funções objetivos,
expressando as demais como restrições de desigualdades, ou seja:
min )K ( [)
[∈.
sujeito a: KH ( [) = 0 , M = 1, 2, ..., P
JH ( [) ≤ 0 , M = 1, 2, ..., S
)L [ ( ) ≤ εL , L = 1, 2, ..., T , L ≠U
As dificuldades naturais deste método estão associadas à seleção da função objetivo
a ser minimizada e a definição do nível de restrição para as demais funções (ε L ).
Pode-se também associar a este método uma estratégia de priorização das funções
objetivos durante o processo de otimização.
No método da perseguição dos objetivos (JRDO DWWDLQPHQW) é definido um
conjunto de objetivos )
= {)1* , )2* , K, )M * } a ser perseguido pelas respectivas
funções ) [
( ) = {)1([), )2 [
( ), ..., )F ([)}. A formulação do problema é dada por:
min N γ
γ∈ℜ,O ∈
sujeito a: KP ( [) = 0 , M = 1, 2, ..., P
JP ( [) ≤ 0 , M = 1, 2, ..., S
)Q [ ( ) − ZQ γ ≤ )
L
*
, L = 1, 2, ..., T
o termo ZQ γ permite uma certa folga para mais ou para menos no alcance dos
objetivos. Valores nulos de ZQ implicam em restrições rígidas para os objetivos.
Como nesta formulação os objetivos podem ser super-alcançados (γ < 0) ou sub-
110
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
JP ([) ≤ 0 , M = 1, 2, ..., S
111
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
B representam dois pontos não inferiores distintos, ou seja, pontos onde a melhoria
em uma função objetivo requer a degradação de outra: )1B < )1A → )2B > )2A.
Como qualquer ponto em Ω que não seja um ponto não inferior há a possibilidade de
obter um novo ponto com melhoria em todas as funções objetivos, o problema de
otimização multi-objetivo resume-se em gerar e selecionar pontos do conjunto de
Pareto.
T
([HPSOR : min )([) = [)1([) )2 [
( )]
sujeito a: ( ) = 1 + ½ [2
)1 [
)2([) = 4 ([ − ½) + ½
2
[ ≥ 0
Para este exemplo o conjunto de Pareto (3) está ilustrado nos gráficos abaixo.
112
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
Resolvendo este exemplo pelo método das restrições ε, com a escolha de )2([) como
função objetivo, tem-se o seguinte problema de otimização:
min 6 [
( ) =)2([)
U ∈ℜ
sujeito a: )1 [ ( )≤ ε
[ ≥0
cujas soluções para vários valores de ε ≥ 1 (observe que min )1 [
( ) = 1, [ ≥ 0,
ocorrendo em [ = 0) são dadas por:
1/ 2 ε ≥ 1,125
[ * (ε ) =
2 (ε − 1) 1 ≤ ε ≤ 1,125
sujeito a: [ ≥0
cujas soluções em função do peso Z1 são dadas por:
4 (1 − Z1 )
[ * ( Z1 ) =
8 − 7 Z1
0.5
0.45
0.4
0.35
0.3
0.25
x
0.2
0.15
0.1
0.05
0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
w1
113
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
[ *
Neste caso, o conjunto de soluções não inferiores entre os pontos A e B não estão
acessíveis. Este problema de não convexidade pode ser tratado pelo método das
restrições ε, conforme ilustra a figura a seguir relativa ao problema abaixo:
min 6 [ ( ) =)1([)
U∈Ω
sujeito a: ( ) ≤ ε2
)2 [
114
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
onde verifica-se que o método é capaz de identificar pontos não inferiores dentro da
região de não convexidade de Λ.
γo
* *
onde )
1 e )
2 são os objetivos estabelecidos, representados pelo ponto P, e ()1s, )2s)
é o ponto ótimo obtido para um determinado conjunto de pesos {Z1, Z2}, que define
a direção de busca. A região viável, Λ(γ), vai encolhendo à medida que o valor de γ é
reduzido. Este método pode ser visto como uma generalização do método das
restrições ε, que é resgatado quando ZQ = 0 ∀ L ≠ U e ZV = 1.
115
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
Ao resolver este problema usando métodos tipo SQP, uma forma apropriada
de representar a função de mérito é a seguinte:
Ψ([) = max
Y ΛQ
116
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
3URJUDPDomR,QWHLUD0LVWD
5HGHGHWURFDGRUHVGHFDORU
✮
✮
✮✍✑
❒❅❆■✍✑ ✰✑
❒❅❆❉ ✒
✦
✑ ✒
❆❉✌❆❉ ❒❉
✑
✦
❂◆❉
❂◆✒
✒
✰✒
✑ ✰✒
✑
/RFDOL]DomRGHDOLPHQWDomRHRXUHIOX[RGHFROXQDVGHGHVWLODomR
117
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
6HTHQFLDPHQWRGHGHVWLODo}HV
6XSHUHVWUXWXUDSDUDDKLGURGHDOTXLODomRGRWROXHQR
118
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
que assumem valores elevados, podem as vezes ser tratadas como variáveis
contínuas (UHOD[DPHQWR), sendo a solução ótima arredondada para o número inteiro
mais próximo, podendo resultar em uma solução sub-ótima. Por exemplo, as figuras
abaixo apresentam situações onde a solução relaxada difere significativamente da
solução ótima.
PLQ6 [ ( ) = 11[1 + 21 [2
[2 [2
fhgjilk
fhgjmnm s.a.: 4[1 + 6,5 [2 ≥ 12,5
fhgjono 3− 3−
fhgpolq
fhgrksont o [ ∈I 2
2− 2−
1− 1−
| | | | | | | | | |
[1 [1
1 2 3 4 5 1 2 3 4 5
_ `
As variáveis inteiras, ], com limites superiores e inferiores dados, ] ≤ ] ≤ ] ,
a
podem ser expressas como um vetor de variáveis binárias, \ ∈ < = {0,1} , pela
seguinte fórmula:
c b −1
] = ] + \
1 + 2 \ 2 + 4 \3 + L + 2 \b
119
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
sendo que a função “int” trunca o argumento real para um valor inteiro. Esta
aproximação, entretanto, pode não ser prática quando os limites são grandes.
A maioria dos problemas de programação mista são inerentemente de
natureza combinatorial, isto é, as variáveis inteiras do problema de otimização
correspondem a combinações de Q elementos tomando P de cada vez, resultando em
Q
um número de combinações, ou correspondem a permutações de Q elementos,
P
levando a Q! possibilidades.
Os problemas MIP que envolvem somente variáveis inteiras são denotados
por IP (,QWHJHU 3URJUDPPLQJ), tendo como caso particular a programação inteira
binária (BIP), onde todas as variáveis inteiras são binárias. Quando um problema
MIP é linear na função objetivo e nas restrições, tem-se o caso MILP (0L[HG,QWHJHU
/LQHDU 3URJUDPPLQJ). Finalmente, quando há relações não lineares na função
min 6(\) = ∑ ∑ F LM
\
LM
L =1 M =1
120
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
x Q
sujeito a: y∑ \ y z = 1 , ∑ \ = 1 , LM
\ u{u = 0, LM = 1,2,...,Q
=1 M =1
a7|p} ×}
\ ∈ < = {0,1}
Este problema também pode ser interpretado como um problema de associação,
como por exemplo, a associação de correntes de processo a trocadores de calor,
limitando um trocador por corrente.
3URJUDPDomRGLQkPLFD
G G −1 G2 G1
N N −1 2 1
5 5 −1 52 51
6 ([ )
6 −1([ −1) 62 [ 2
( ) 61 [ 1
( )
[ −1 [ −2 [1 [0
121
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
decisão, que pode ser otimizado por qualquer uma das técnicas de otimização
descritas nos capítulos anteriores.
A programação dinâmica está baseada no SULQFtSLR GD RWLPDOLGDGH GH
%HOOPDQ (1957): “Se uma decisão forma uma solução ótima em um estágio de um
processo, então qualquer decisão remanescente deve ser ótima com respeito ao
resultado desta decisão tomada”. Este conceito pode ser melhor implementado se as
tomadas de decisão de um estágio para outro são realizadas na direção do fluxo de
informação nos estágios, que pode estar no sentido oposto ao fluxo de material.
([HPSOR Para ilustrar este princípio, seja o problema de distribuição de
combustível através de uma rede de tubulações, cujo escoamento se dá somente
através do terminal H, segundo a figura abaixo, onde os valores representam os
custos de transporte.
8 3 8
A D E H
5 5 2 2
9 3 3
B C F G
*
Como cada função objetivo otimizada, 6
N
([ ), depende de suas variáveis de entrada,
[
, estas formas funcionais devem ser obtidas antes de passar para o próximo estágio,
ou devem ser calculadas recursivamente. Portanto, a programação dinâmica só é
122
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
3URJUDPDomROLQHDULQWHLUDPLVWD0,/3
123
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
3ULQFtSLRGRVPpWRGRVGRVSODQRVGHFRUWH
124
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
125
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
[1 + [2 ≤ 5 e [2 ≤4
então o problema aumentado:
min 6([) = −10 [1 − 11 [2
sujeito a: 10 [1 + 12 [2 ≤ 59
[1 + [2 ≤ 5
[2 ≤4
[ ≥0
teria como solução a ponto ótimo do problema original [ = [1 4] , pois as restrições
formam uma casca convexa de suas soluções inteiras.
0pWRGRGHEUDQFKDQGERXQG
O método de EUDQFK DQG ERXQG está baseado nas idéias chaves de VHSDUDomR,
UHOD[DomR e VRQGDJHP.
6HSDUDomR
126
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
∑
\ =1
∈
é igualar a zero parte desta soma e gerar outra soma mutuamente excludente. Por
exemplo, se o problema (P) possuir a seguinte restrição:
\1 + \2 + \3 + \4 = 1
então ao subproblema (P1) seria adicionado a restrição \1 + \2 = 0 e ao subproblema
(P2) a restrição \3 + \4 = 0.
5HOD[DomR
127
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
1) Se (RCS) não possui solução viável, então (CS) também não possui e pode ser
considerado sondado;
2) Se ]RCS ≥ ]* então (CS) está sondado;
3) Se uma solução ótima de (RCS) é viável para (CS), então ela é também uma
solução ótima de (CS), portanto o problema (CS) pode ser considerado sondado.
Neste caso, a solução também é viável para (P) e se ]RCS < ]*, então a solução
titular é substituída por esta nova solução, senão ]RCS é um OLPLWHVXSHULRU para o
problema.
128
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
Note que é possível ter ]CS ≥ ]* > ]RCS, e neste caso (CS) não pode ser considerado
sondado, sendo ]RCS um OLPLWH LQIHULRU para o problema. Portanto, quanto menor a
diferença entre a solução do problema (RCS) e o problema (CS), mais
freqüentemente estes critérios serão utilizados para eliminar ramificações. O sucesso
dos algoritmos de EUDQFK DQG ERXQG está baseado no percentual de eliminação de
subproblemas e no esforço requerido para resolver os subproblemas candidatos.
Um algoritmo genérico para os métodos de EUDQFK DQG ERXQG pode ser
descrito como segue:
algoritmo
1) Inicializar a lista de subproblemas (CS) = (P), ou árvore binária, ]* = ∞;
2) 6H a lista de subproblemas (CS) estiver vazia, HQWmR FIM (se ]* = ∞, então não
existe solução viável);
3) Selecionar um candidato da lista, tornado-o candidato (CS) corrente;
4) Selecionar e resolver uma relaxação (RCS) do (CS) corrente, obtendo a solução
]RCS;
129
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
130
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
UDL] QtYHO
QtYHO
QtYHO
QtYHO
%XVFDHPSULPHLUDSURIXQGLGDGH %XVFDHPSULPHLUDODUJXUD
SULPHLUDSURIXQGLGDGH SULPHLUDODUJXUD
Qy
QtYHO LQIHULRU VXSHULRU ]
QtYHO LQIHULRU VXSHULRU ]
0 0 −6,8 ∞ ∞ 0 −6,8 ∞ ∞
1 1 −6,667 ∞ ∞ 1 −6,8 −5 −5
2 2 −6,667 ∞ ∞ 1 −6,667 −5 −5
3 3 −6,5 −5 −5 2 −6,667 −6 −6
4 3 −6,5 −5 −5 2 −6,5 −6 −6
5 2 −6,667 −6 −6 3 −6,5 −6 −6
6 1 −6 −6 −6 3 −6 −6 −6
131
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
3URJUDPDomRQmROLQHDULQWHLUDPLVWD0,1/3
'HFRPSRVLomR*HQHUDOL]DGDGH%HQGHUV*%'
132
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
3UREOHPDSULPDO1/3
Se o problema primal é viável, então sua solução fornece um OLPLWH VXSHULRU,
6([ ,\ ), para a função objetivo e os respectivos multiplicadores de Lagrange das
restrições, λ e µ . A função de Lagrange para este problema é dada por:
/ [ \
( , ,λ ,µ ) = 6([,\) + (λ ) K [ \
( , ) + (µ ) J [ \
( , )
Se o problema primal é inviável, então o seguinte problema de viabilidade
geral, FP, (Fletcher e Leyffer, 1994) é resolvido:
+
min ∑ Z J ( [, \ )
∈
sujeito a: K([,\ ) = 0
FP
J¡ ([,\ ) ≤ 0, L ∈,
[ ∈;⊆ℜ
+
onde Z¡ ≥ 0 são pesos associados a cada restrição, J
L
N
( [, \ ) = max [0,J ¡ ([,\ )], , é
¢
o conjunto de restrições de desigualdade viáveis, e , é o conjunto de restrições de
desigualdade inviáveis. A solução do problema FP fornece informações sobre os
multiplicadores de Lagrange, λ e µ , sendo a função de Lagrange para este caso
N N
dada por:
/ ( [ ,\ , λ , µ ) = ( λ )
N N N
K [ \( , ) + (µ ) N
J [ \
( , )
3UREOHPDPHVWUH
O problema mestre é derivado via teoria de dualidade não linear, faz uso dos
multiplicadores de Lagrange obtido no problema primal e sua solução produz
informação sobre o limite inferior, caracterizada pelas seguintes idéias chaves:
133
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
L =1
mestre (M) tem como restrição dois problemas de otimização, que precisam ser
considerados para todos λ e µ ≥ 0 (primal viável) e para todos ( λ , µ ) ∈ Λ (primal
inviável), resultando em um problema com um número elevado de restrições. A
estratégia natural de resolver este problema é através de relaxação das restrições,
gerando um problema mestre relaxado (RM).
min α
sujeito a: α ≥ inf /([,\,λ ,µ ) , N = 1,2,...,1¥
[∈;
RM
0 ≥ inf / ([,\, λ , µ ) , k = 1,2,...,1¦7¥
N N
[ ∈;
\ ∈ < = {0,1} , α∈ℜ
onde 1¤ é o número de problemas primais viáveis e 1¦p¥ é o número de problemas
primais inviáveis resolvidos.
$SUR[LPDo}HV([WHUQDV2$
134
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
135
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
$SUR[LPDo}HV([WHUQDVFRP5HOD[DPHQWRGH,JXDOGDGH2$(5
Para lidar com restrições de igualdade não lineares explicitamente da forma K([) = 0,
Kocis e Grossmann (1987) propuseram uma aproximação externa com relaxamento
de igualdade para a seguinte classe de problemas MINLP.
min 6([,\) = F \ + I([)
sujeito a: $ [ + %\ ≤ E
K([) = 0
J([) ≤ 0
[ ∈ ; ⊆ ℜ , \ ∈ < = {0,1}
136
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
$XPHQWDGD2$(5$3
$SUR[LPDomR([WHUQD*HQHUDOL]DGD*2$
∈
sujeito a ( , ) ≤ 0,
J ¡ [ \ L ∈,
[ ∈;⊆ℜ
+ N
onde Z¡ são os pesos, J
L
( [, \ ) = max [0, J ¡ ([, \ )], , é o conjunto de restrições de
¢
desigualdade viáveis, e , é o conjunto de restrições de desigualdade inviáveis. Note
que o problema acima tem dentro da função objetivo um somatório somente das
restrições de desigualdade inviáveis.
Se o problema primal P(\ )° é inviável de modo que [ resolve o problema de
( )
° ±
+
viabilidade geral e tem ∑ Z¯ J ¯ [ , \ > 0 , então \ é inviável dentro das restrições:
¯ ®
∈
138
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
³ ²
0≥ J´ (
[
²
,\
²
)+ ∇ ´ (
J [
²
,\
²
) [−[
\ − \²
, ∀L ∈ { ,
1
}
∪ , ∀[ ∈ ;
'HFRPSRVLomR&UX]DGD*HQHUDOL]DGD*&'
Holmberg (1990) generalizou a aproximação proposta por Van Roy (1983) para a
classe de problemas de otimização da forma:
min 6([,\)
sujeito a: K([,\) = 0
( , )≤0
J [ \
µ ¶
[ ∈;⊆ℜ , \ ∈ < = {0,1}
para o problema mestre na fase II. Para cada iteração do GCD, os problemas primal ±
e dual são resolvidos, e um teste de convergência primal é aplicado sobre \ ,
139
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
± ±
enquanto o teste de convergência dual é aplicada sobre λ , µ . Se qualquer teste de
convergência falhar, então entra-se na fase II, que caracteriza a solução do problema
mestre e retorna subseqüentemente para a fase I. A idéia chave é fazer uso extenso
da fase I e limitar tanto quanto possível o uso da fase II para a aplicação de testes de
convergência apropriados. Isto é porque o problema mestre é mais difícil e demanda
um maior tempo computacional que os problemas da fase I.
%UDQFKDQG%RXQG(VSDFLDO6%%
140
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
sujeito a ( ) + %\0 ≤ 0
J [
µ
[ ∈ ; ⊆ ℜ
141
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
– Se não existe mais LPs para serem resolvido, ou seja, nenhum nó aberto
3DVVR
se para o passo 8;
¾Âà ÀÂÁ
iii) se ]Ï
+
Ð ≥ ]Ï
+Î , inverte-se ( )¾ + e ( )À + , no armazenamento de LPs.
/3 /3
½
Caso contrário (isto é, existe somente um problema filho), resolve-se o (/3 )¾ e se
] Ò + ε Ñ ≥ ]X , este deve ser desconsiderado, mas se ]Ó é uma solução inteira, segue-se
para passo 8.
Retornar ao passo 5.
142
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
143
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
Ü Ý Ý Ý
∇ J([ ) ([ − [ ) ≤ −[%\ + J([ )]
Ü Ý Ý Ý Ü Ý
Então, ∇ I([ ) ([±[ ) − (λ ) [%\ + J([ )] ≥ 0. Logo, a primeira inequação do MILP
reduz-se a:
Ü Ý Ý Ü Ý
α≥F \ + I([ ) + (λ ) [%\ + J([ )]
Desta forma, a formulação do problema mestre para os cortes de Benders é dado por:
] = min
è α
,α
Ü Ý Ý Ü Ý
sujeito a α ≥ F \ + I([ ) + (λ ) [%\ + J([ )] , N 1,2, ...,. à áÖâ5äæåÖéê ëìéîíê å ç
Ý Ü Ý
(λ ) [%\ + J([ )] ≤ 0, N 1,2, ...,. à áãâØäïåðê Þ
éê ëìéñíê å{ç
ß
α ∈ ℜ, \ ∈ < = {0,1}
Ý Ý
onde [ e λ são as variáveis ótima primal e dual do subproblema NLP.
A vantagem das aproximações externas é que elas têm a representação
estendida da região viável. Entretanto, têm a limitação que o número de colunas dos
problemas LPs que são resolvidos para os nós pode tornar-se muito grande. Também
em um número de casos, as novas linearizações não determinam aproximações muito
reais da região viável não linear. Para evitar este problema, uma opção são os cortes
de Benders, que em geral, não provêm cortes fortes.
Por estas razões, Quesada e Grossmann (1992) propuseram uma restrição
aproximada, cuja a idéia básica é agregar as linearizações de funções não lineares,
enquanto mantém as restrições lineares em ordem para fortalecer os cortes.
5HVWULomR$SUR[LPDGDSURSRVWDSRU4XHVDGDH*URVVPDQQ
144
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
] = min α
Ý Ý Ý
sujeito a &\ + 'Z + W(Y ) + ∇W(Y ) (Y−Y ) ≤ 0
Ý Ý Ý
U Y ( ) + ∇U(Y ) (Y−Y ) ≤ β
(\ + )Z + *Y ≤ E
Ü Ü
F \ +D Z +β−α=0
α,β ∈ ℜ, \ ∈<, Z ∈ :, Y ∈9
Se as condições de Kuhn-Tucker do subproblema NLP são consideradas em
relação as variáveis não lineares “Y”, então:
Ý Ý Ý Ü Ý
∇U(Y ) + ∇W(Y ) λ + G µ = 0
Ý
que multiplicado por (Y−Y ), tem-se:
Ü Ý Ý Ý Ü Ý Ý Ü Ü Ý Ý
∇ U(Y ) (Y−Y ) + (µ ) G (Y−Y ) = −(λ ) ∇W (Y ) (Y−Y )
Do problema linearizado tem-se:
Ý Ý Ý
∇W(Y ) (Y−Y ) ≤ −[&\ + 'Z + W(Y )]
então:
Ü Ý Ý Ý Ü Ý Ý Ü Ý
∇ U(Y ) (Y−Y ) ≥ (λ ) [&\ + 'Z + W(Y )] − (µ ) G (Y−Y )
] = min α
Ý Ý Ü Ý Ý Ü Ý
sujeito a β ≥ U(Y ) + (λ ) [&\ + 'Z + W(Y )] − (µ ) G (Y−Y )
(\ + )Z + *Y ≤ E
Ü Ü
F \ +D Z +β−α=0
α,β ∈ ℜ, \ ∈<, Z ∈ :, Y ∈9
N 1,2, ...,. à áãâØäæå ç
Observe que usando as aproximações lineares acima somente a primeira
inequação é modificada para os nós abertos na árvore de busca, quando acontece
uma solução inteira de um LP.
5HVWULomR$SUR[LPDGDSURSRVWDSRU3HUHLUDH6HFFKL
146
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
] = õ min ó α
ô
, ,α ,
Ü ö Ü ö ö
sujeito a α ≥ F \ + I([ ) + ∇ I([ ) ([ − [ ) + µ X
ö Ü ö ö
%\ + J([ ) + ∇ J([ ) ([ − [ ) ≤ X
Ü Ý Ü Ý Ý
α≥F \ + I([ ) + ∇ I([ ) ([ − [ ) + µ XN 1,2, ...,. à áãâØäæåÖéê ë÷éîíê å{ç
Ü Ý Ý Ü Ý
α≥F \ + I([ ) + (λ ) [%\ + J([ ) − X] + µ XN 1,2, ...,. à áÖâØäïåøê Þ éê ëìéñíê å{ç
Þ ß
α ∈ ℜ, [ ∈;⊆ℜ , \ ∈ < = {0,1} , X ≥0
onde .(NLPs viáveis) são todos pontos viáveis obtidos pelo NLP e .(NLPs inviáveis) são
todos os pontos inviáveis resultantes do NLP.
%UDQFKDQG%RXQG(VSDFLDO 1mR/LQHDU
A diferença entre o SBB linearizado e o SBB não linear está na solução do problema
relaxado. Enquanto que o SBB linearizado resolve problemas LP relaxados para
encontrar limites inferiores, o SBB não linear resolve problemas NLP relaxados.
Os algoritmos SBB linearizados partem da suposição de que o LP relaxado
pode ser resolvido mais eficientemente que o NLP relaxado. Contudo, se muitos
NLPs resultantes de soluções inteiras do LP relaxado forem inviáveis, então os
algoritmos SBB linearizados podem encontrar dificuldades de convergência. A
introdução de novas restrições, resultantes de sucessivas linearizações, também
podem trazer mau condicionamento para os problemas LP relaxados, além de levar a
possíveis cortes de soluções ótimas em problemas não convexos.
Por outro lado, os algoritmos SBB não lineares partem da premissa de que os
subproblemas NLPs diferem por apenas algumas restrições e, portanto, a solução de
um NLP pode servir como uma boa estimativa inicial para outro NLP, acelerando a
convergência.
É de se esperar que o SBB não linear seja mais eficiente em problemas com
poucas variáveis discretas e com maior não linearidade e não convexidade.
147
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
2WLPL]DomRGH3URFHVVRV'LQkPLFRV
148
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
, [
( (0), [& (0) ,\(0),X(0),Y) = 0
que juntamente com a forma funcional de X(W) e os valores de Y determinam
completamente a resposta transiente do sistema.
)RUPXODomRGDIXQomRREMHWLYRHUHVWULo}HV
sujeito a: ) [ W
( ( ), [& (W ) ,\(W),X(W),Y) = 0
, [
( (0), [& (0) ,\(0),X(0),Y) = 0
onde [3 é a concentração de C.
Se a função objetivo a ser minimizada for a integral de uma função sobre todo
o intervalo [0, Wù ]:
üû
com a condição inicial Φ(0) = 0, para ser integrada simultaneamente. Para o caso
particular de Φ
& = 1, tem-se o problema de minimização do tempo de operação, Wù .
Uma formulação mais geral para a função objetivo envolve as duas formas
acima, ou seja:
149
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
üû
150
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
3ULQFtSLRGR0tQLPRGH3RQWU\DJLQ
2 2 2 2 2
δ ∫ [ (W )GW = ∫ [ (W )GW − ∫ [ * (W )GW = ∫ [ [ (W ) − [ * (W )]GW = ∫ δ[ (W )GW
1 1 1 1 1
151
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
onde δϕ = ϕ[[, [& (W ) ,W] − ϕ[[
, [& * (W ) ,W] = ϕ[[* + ε φ, [& * (W ) + ε φ& (W ) ,W] − ϕ[[
, [& * (W ) ,W].
Expandindo ϕ em série de Taylor tem-se:
ϕ[[*+ ε φ(W), [& * (W ) + ε φ& (W ) , W] = ϕ[[
, [& * (W ) , W] + ∇ ϕ[[
, [& * (W ) , W] ε φ(W) + 7
[
( )
2
δ6 = ε ∫ ∇ ϕ φ + ∇ ϕ φ& GW =0
1
sobre qualquer função arbitrária φ(W). O segundo termo no integrando pode ser
integrado por partes (X = ∇
ϕ e Y = φ), resultando em:
2 2 G
∫ ∇ ϕ φ& GW = [∇ ϕ φ] − ∫ 2 [∇ ϕ] φ GW
1 GW
1 1
Se a função [(W) é fixada nos contornos, W1 e W2, então φ(W) deve se anular nestes
pontos, pois não pode existir variação de [(W) nos contornos. Deste modo o primeiro
termo da integração por partes é nulo. Para o caso mais geral, onde algum contorno
pode estar livre, as seguintes condições de FRPSOHPHQWDULGDGH devem ser satisfeitas:
∇ & ϕ φ = 0 para
7
[
W = W1 e W = W2
ou seja, se δ6 é para ser zero para todas as variações admissíveis (restritas somente
pela continuidade e diferenciabilidade) então o primeiro termo da integração por
partes deve ser sempre nulo. No caso de existir uma contribuição terminal na função
objetivo:
152
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
Como a equação acima deve ser satisfeita para qualquer função arbitrária φ(W),
contínua, diferenciável e que satisfaça as condições de contorno, então o termo entre
parêntesis deve ser nulo, resultando na equação de (XOHU/DJUDQJH:
G
∇ ϕ − [∇ ϕ] = 0
GW
O comprimento de uma curva conectando os pontos (W1, [1) e (W2, [2) é dado por:
( 2) 2
6 ( [) = ∫ GV = ∫ 1 + [& 2 GW
( 1) 1
153
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
G G ∂ϕ G
[
&
∇ ϕ− [∇ & ϕ] = 0 − =− =0
GW
[ [
GW GW ∂[
&
1 + [&
2
[&
ou seja: = constante, o que implica que [& * (W ) = constante. Portanto,
1 + [& 2
como não poderia deixar de ser, o caminho mais curto entre dois pontos é uma reta:
[
(W) = D W + E.
de Legendre:
∇ 2& ϕ( [*, [&*, W ) > 0
[
K [(W ),W ] = 0
Introduzindo os multiplicadores de Lagrange associado às restrições chega-se a:
154
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
[ ( ),X(W),λ(W),η,W ] = ψ[[(W ),W ] + η
/ [ W K [ W
[ ( ),W ] +
∫ {ϕ [[(W),X(W),W] + λ (t) (I[[(W),X(W),t] − [& (W ) )} GW
0
G
∇ ωΛ − [∇ ω# Λ] = 0 ⇒ ∇ ω& Λ = FWH
GW
λ& = −∇ [
+ = −∇ ϕ − ∇
[
7
[
I λ
∇ X
+ = ∇ ϕ+∇ X
7
X
I λ=0
155
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
[ (0) = [o
K [ W+ [ ( ),W+ ] = 0
*
[∇ [ W( , )Θ − λ(W+ )] δ[(W+ ) = 0
conjunto de condições são conhecidos como 3ULQFtSLR GR 0tQLPR GH 3RQWU\DJLQ
(1962), e os multiplicadores de Lagrange, λ(W), são conhecidos como YDULiYHLV
.0/1
min
DGMXQWDV. Para as partes do caminho X(W) sobre as restrições X ou X , vale a
seguinte condição de otimalidade, no lugar de ∇ 2 + = 0 :
3
onde J ∈ ℜ é duas vezes continuamente diferenciável e o subconjunto de restrições
/
ativas, J , não deve ser maior que o número de variáveis de controle, X, e deve
/
apresentar uma matriz Jacobiana, ∇4 J , de posto completo ∀ W ∈ [0, W+ ]. Exemplos de
restrições de desigualdade que satisfazem estas condições são:
.0/1
X
min
≤ X(W) ≤ X , ∀ W ∈ [0,W+ ]
.0/1
X [[(W),W] ≤ X(W) ≤ X
min
[[(W),W] , ∀ W ∈ [0,W+ ]
.
|X(W)| ≤ X , ∀ W ∈ [0,W+ ]
||X(W)||2 ≤ U2 , ∀ W ∈ [0,W+ ] , U ∈ ℜ
Introduzindo funções de folga ]&(W ) , isto é:
J5 [[(W),X(W),W] + ]& 6 2 (W ) = 0 , L = 1,2,...,S
156
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
: G : : 9: 9:
∇ Λ− [∇ 8 Λ ] = 0 = ∇ ϕ + ∇ I λ+∇ J µ + λ&
GW
G
∇ ωΛ − [∇ ω; Λ] = 0 ⇒ ∇ ω& Λ = FWH
GW
G =
∇< Λ − [∇ < Λ ] = 0 ⇒ ∇ > ? Λ = FWH
GW
L L
λ& = −∇ M + = −∇ M ϕ − ∇ M I λ − ∇M J µ
N N
∇O + = ∇O ϕ + ∇O I λ + ∇O J µ=0
µ≥0
Q
∇ 2 + ≥ 0 ∀ {δX | ∇ R
X
J P δX = 0}
µI JI = 0, L = 1,2,...,S.
157
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
&RQWUROHyWLPR
6[[(W),X(W),WH ] =
1
2
[ (W Z ) Y
2 1
+ ∫
20
[ [ W () X
2
V
( )
+ X (W )
2
W V
( )
]
GW
K
≥ 0, ()≥0e ( ) ≥ 0 são matrizes simétricas de pesos.
2
onde [ [ = [ 5 [ e 5 4 W : W
158
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
3 WH ( )=5
Fazendo a mudança de variável τ = WH − W, tem-se G τ = −GW e:
K K
& = 3$ + $
3 3 − 3% :−1% 3 +4
3 (0) = 5
Portanto, o problema de TPBVP foi transformado em um problema de valor inicial
de dimensão Q (Q + 1) / 2, pois 3(W) é uma matriz simétrica. Com a solução da
equação de Riccati dinâmica, a lei de controle ótimo quadrático é dada por:
X
= −.(W)[
(W)
K
. W ( ) = :(W)−1%(W) 3 W ()
que é independente da condição inicial [o . O sistema dinâmico em malha fechada
pode ser escrito como:
K
& * = ($ − % :−1%
[ 3 [
) = $b [
, [ (0) = [o
K
onde $b (W) = $ − % :−1 % 3 é a matriz característica da dinâmica do sistema
regulado. Observa-se também que o valor ótimo da função objetivo é dado por:
1 d
6 [
X
WH
[ , , ]= [c 3 ( 0) [ c
2
onde 3(0) é obtido em W = 0 (τ = WH ). Este resultado pode ser verificado pela equação:
G e e e e
([ 3 [ ) = [& 3 [ + [ 3& [ + [ 3 [ &
GW
pois 3(Wh ) = 5.
159
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
160
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
161
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
([HUFtFLRV
A figura abaixo representa um extrator onde entram uma solução com uma vazão ) =
104 kg H2O / h e uma concentração [o = 0,02 kg A / kg H2O, e um solvente B puro a uma
vazão : kg B / h a ser determinada. A corrente rafinada sai com uma vazão ) = 104 kg
H2O / h e uma concentração [ kg A / kg H2O e ainda um pouco de solvente B dissolvido
em água. No extrato, a vazão é de : kg B / h e a concentração \ kg A / kg B. Calcular a
vazão ótima : de B.
relação de equilíbrio: \ = N [ (N = 4)
Calcular as vazões ótimas de solvente para o exercício anterior quando dois extratores
em série são utilizados no lugar de apenas um extrator, conforme figura abaixo. Considere a
mesma relação de equilíbrio e a mesma solubilidade de B em água para os dois extratores.
h) bem como a área de troca térmica ótima A (m2). Considerar cp = 1 kcal / kg °C para as
duas correntes e U = 500 kcal / h m2 °C.
A figura abaixo representa um sistema de dois trocadores de calor em série, onde uma
corrente de processo com vazão )o = 1000 kg / h e temperatura Wo = 20 °C deve ser
aquecida a W2 = 100 °C por correntes de vapor saturado a 71 = 100 °C e 72 = 120 °C,
respectivamente. Calcular as vazões ótimas :1 e :2 das correntes de vapor (kg / h) bem
como as áreas de troca térmica ótimas $1 e $2 (m2). Considerar FS = 1 kcal / kg °C, 81 =
300 kcal / h m2 °C, 82 = 400 kcal / h m2 °C, λ1 = 500 kcal / kg e λ2 = 600 kcal / kg.
)o, Wo W1 W2
$1 , 81 $2 , 82
:1 , 71 :2 , 72
critério de desempenho:
163
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
onde ;m é a fração molar de catalisador. O custo do vapor (R$ / mol da alimentação) é dado
pela expressão:
&
V
= 1 + 0,003 6 + 2 × 10 − 6 6
2
sujeito a: ( [ 1 + [ 2 ) 2 − 4 ( [1 − [ 2 ) = 0
164
Otimização de Processos - Prof. Argimiro R. Secchi - CPGEQ/UFRGS
%LEOLRJUDILD%iVLFD
5HIHUrQFLDVFLWDGDV
• Secchi, A.R., Perlingeiro, C.A. (1989), “Busca Aleatória Adaptativa”, LQ 3URF
RI;,,&RQJUHVVR 1DFLRQDO GH 0DWHPiWLFD $SOLFDGD H &RPSXWDFLRQDO, São José
165