ff x 2

Transkrypt

ff x 2
Niezawodność i Optymalizacja
Wykład 2: Metody optymalizacji dla zdeterminowanych, nieliniowych problemów statycznych
2.1. Warunki optymalności dla problemów programowania nieliniowego bez ograniczeń
2.1.1. Gradient funkcji
Założenia: f(.) - funkcja skalarna zmiennej wektorowej f: ℜN→ℜ.
Wektor :
 ∂f 
 ∂x 
 1
 ∂f 
 ∂f ( x ) 
=
(
∇
f
)
≡


 ∂x2  ,
xˆ
 ∂x  xˆ
 M 
 ∂f 


 ∂x N  x̂
(2.1)
nazywamy gradientem funkcji f(x) w punkcie x̂ .
Wektor (∇f)x jest prostopadły do płaszczyzny stycznej do hiperpowierzchni f(x) = const w
punkcie x. W przypadku N=2 hiperpowierzchnia jest linią i nasz wniosek ilustruje rys.2.1.
(∇f )x
f(x) = fˆ2 > fˆ1
x
f(x) = fˆ1
-(∇f )x
Rys.2.1. Ilustracja twierdzenia, iż wektor (∇f)x jest prostopadły do hiperpowierzchni f(x) = const
Spośród wszystkich przesunięć o jednakowej długości funkcja f(x) maleje najszybciej przy
przesunięciu ∆x w kierunku wektora -(∇f)x.
Możemy więc kierunek wektora -(∇f)x nazwać kierunkiem najszybszego malenia funkcji f(x)
w punkcie x.
2.1.2. Warunek konieczny istnienia ekstremum funkcji N zmiennych o ciągłych pochodnych
Jeżeli x̂ jest punktem stacjonarnym, to:
 ∂f 

 = 0,
 ∂xn  x̂
n = 1,...., N ,
(2.2)
co wektorowo daje się zapisać:
 ∂f 
 ∂x 
 1
 ∂f 
(∇f ) xˆ =  ∂x2  = 0 Nx1 .
 M 
 ∂f 


 ∂x N  xˆ
(2.3)
1
Niezawodność i Optymalizacja
Wykład 2: Metody optymalizacji dla zdeterminowanych, nieliniowych problemów statycznych
2.1.3.Warunek dostateczny istnienia ekstremum
Niech znany będzie hesjan funkcji f(x) w punkcie x̂ (macierz symetryczna ⇐ tw. Schwarza
o równości pochodnych mieszanych II rzędu).
 ∂ 2 f ( x) 

 = (∇ 2 f )xˆ
T 
 ∂x∂x  xˆ
  ∂2 f 
  2 
  ∂x1  xˆ
 ∂2 f 


≡   ∂x ∂x 
  2 1  xˆ
M

 ∂ 2 f 


 ∂x N ∂x1  xˆ
 ∂2 f 


 ∂x1∂x2  xˆ
 ∂2 f 
 2 
 ∂x 2  xˆ
M
 ∂2 f 


 ∂x N ∂x2  xˆ
 ∂2 f  
 
K 
 ∂x1∂x N  xˆ 
 ∂2 f  
 
K 
 ∂x2 ∂x N  xˆ 
O
M

 ∂2 f  
K  2  
 ∂x N  xˆ 
(2.4)
Funkcja f (x) N zmiennych, mająca ciągłe pochodne cząstkowe do rzędu drugiego włącznie w
otoczeniu punktu stacjonarnego x̂ :
- ma w punkcie x̂ minimum lokalne silne, gdy:
minory główne wyznacznika hesjanu ∆n ( x̂ ) > 0, dla n = 1,...., N, tj. gdy hesjan jest w
punkcie x̂ dodatnio określony (twierdzenie Sylvestra), gdzie:
 ∂2 f 
 2
 ∂x 
 ∂2 f 
∆1 ( x̂ ) ≡  2  , ∆2 ( x̂ ) ≡  2 1  xˆ
 ∂ f 
 ∂x1  xˆ


 ∂x 2 ∂x1  xˆ
 ∂2 f 


 ∂x1∂x 2  xˆ
 ∂2 f 
 2
 ∂x 
 2  xˆ
,...,
 ∂2 f 
 ∂2 f 
 2


K
 ∂x 
 ∂x1∂x N  xˆ
 1  xˆ
∆N ( x̂ ) ≡
M
O
M
2
2

 ∂ f 
∂ f 


 L 
2 
∂
x
 ∂x N ∂x1  xˆ
 N  xˆ
-
-
-
(2.5)
ma w punkcie x̂ maksimum lokalne silne, gdy
(-1)n ∆n ( x̂ ) > 0, dla n = 1,...., N,
tj. gdy hesjan w punkcie x̂ jest ujemnie określony
NIE można rozstrzygnąć czy istnieje ekstremum w punkcie x̂ , gdy:
i) ∆n ( x̂ ) ≥ 0, dla n = 1,...., N-1 oraz ∆n ( x̂ ) = 0
albo gdy
ii) (-1)n ∆n ( x̂ ) ≥ 0, dla n = 1,...., N-1 oraz ∆n ( x̂ ) = 0
tj. gdy hesjan w punkcie x̂ jest półokreślony dodatnio bądź ujemnie
nie ma w punkcie x̂ ekstremum, gdy nie są spełnione warunki (i) ani warunki (ii), tj.
gdy hesjan w punkcie x̂ nie jest określony.
2
Niezawodność i Optymalizacja
Wykład 2: Metody optymalizacji dla zdeterminowanych, nieliniowych problemów statycznych
2.2. Warunki optymalności dla problemów programowania nieliniowego z
ograniczeniami typu równościowego
2.2.1. Problem optymalizacji
Problem optymalizacji jest postaci:
min f ( x ) g ( x ) = 0Mx1 lub
x
max f ( x ) g ( x ) = 0 Mx1 ,
(2.6)
x
gdzie:
x∈ℜ N;
f (x) – funkcja celu, f (x): ℜ N→ℜ 1 ,
g(x)=[g1(x), g2(x), ..., gM(x)]T = 0Mx1 – ograniczenia równościowe, g(x): ℜ N→ℜ M .
Jeżeli funkcje f (x), gi(x), i=1,..., M, przy czym x∈ℜ N oraz M<N, są różniczkowalne w
punkcie x̂ i funkcja f (x) osiąga w tym punkcie ekstremum warunkowe przy warunkach
ograniczających gi(x)=0, i=1,..., M, to istnieją takie liczby λˆ1 ,..., λˆM , że:
M
( ∇ f ) xˆ + ∑ λˆi ( ∇ g i ) xˆ = 0 Nx 1 ,
(2.7)
i =1
g(xˆ ) = 0 Mx1 .
(2.8)
Warunek (2.7) oznacza, że w punkcie ekstremum warunkowego funkcji f(x) przy warunkach
ograniczających g(x)= 0Mx1 wektory:
(∇f ) xˆ , (∇g1 ) xˆ ,..., (∇g M ) xˆ
muszą być liniowo zależne.
2.2.2. METODA MNOŻNIKÓW LAGRANGE’A
Utwórzmy funkcję:
M
L ( x , λ ) = f ( x ) + ∑ λi g i ( x ) ,
(2.9)
i =1
gdzie:
L(x, λ) – funkcja Lagrangea,
λi – mnożniki Lagrange’a.
Warunki Lagrange’a:
 ∂L 
 = 0 n = 1, ..., N ,
 
∂
x
  n  xˆ , λˆ

  ∂ L 
  ∂ λ  = 0 i = 1, ..., M ,
  i  xˆ
(2.10)
(2.11)
warunki (2.10) odpowiadają równaniu (2.7), ponieważ zachodzi:
3
Niezawodność i Optymalizacja
Wykład 2: Metody optymalizacji dla zdeterminowanych, nieliniowych problemów statycznych
M
 ∂L 
  = (∇f ) xˆ + ∑ λi (∇g i ) xˆ
 ∂x  xˆ,λˆ
i =1
,
(2.12)
warunki (2.11) odpowiadają ograniczeniom g(x)=0, ponieważ zachodzi:
 ∂L 
  = g ( xˆ ) .
 ∂λ  xˆ
(2.13)
Warunki Lagrange’a (2.10) oraz (2.11) są warunkami koniecznymi istnienia ekstremum
funkcji f(x) przy warunkach ograniczających gi(x), i=1,....,M. Postępowanie przy znajdowaniu
rozwiązania (optimum) polega na wyznaczeniu takich zespołów x̂ i λ̂ , dla których spełnione
są warunki Lagrange’a.
Warunki wystarczające:
2
(∇ xx ) xˆ,λˆ
  ∂2L 
  2 
  ∂x1  xˆ, λˆ
  ∂2L 


≡   ∂x2∂x1  ˆ
xˆ , λ

M
 ∂ 2 L 


 ∂x N ∂x1  xˆ, λˆ
 ∂2L 


 ∂x1∂x2  xˆ, λˆ
 ∂2L 
 2 
 ∂x2  xˆ, λˆ
M
 ∂2L 


 ∂x N ∂x2  xˆ, λˆ
K
K
O
K
 ∂2L  
 

 ∂x1∂x N  xˆ, λˆ 
 ∂2L  

 
x
x
∂
∂
 2 N  xˆ, λˆ 

M
2
∂ L 

 
2 
x
∂
 N  xˆ, λˆ 
(2.14)
Można udowodnić, że:
Jeśli ( x̂ , λ̂ ) jest punktem stacjonarnym funkcji Lagrange’a , to dwukrotnie różniczkowalna
funkcja f (x) ma wtedy w punkcie x̂ :
1) minimum lokalne warunkowe,
2) maksimum lokalne warunkowe,
przy warunkach ograniczających gi(x)=0, i=1,...M, gdy forma kwadratowa macierzy (2.14)
jest:
1’) dodatnio określona,
2’) ujemnie określona.
4
Niezawodność i Optymalizacja
Wykład 2: Metody optymalizacji dla zdeterminowanych, nieliniowych problemów statycznych
2.2. Warunki optymalności dla problemów programowania nieliniowego z
ograniczeniami typu nierównościowego
2.2.1. Problem optymalizacji
Problem optymalizacji jest postaci:
min f ( x ) h( x ) ≤ 0 Jx1 .
x
(2.15)
gdzie:
x∈ℜ N;
f (x) – funkcja celu, f (x): ℜ N→ℜ 1 ,
h(x)=[h1(x), h2(x), ..., hJ(x)]T ≤ 0Jx1 – ograniczenia nierównościowe, h(x): ℜ N→ℜ J.
2.2.2. Warunki konieczne
Wprowadźmy funkcję Lagrange’a:
J
L(x, µ) ≡ f (x) +
∑
µj hj (x) ,
j =1
przy czym µ =(µ1,…, µJ) jest zespołem mnożników Lagrane’a.
Twierdzenie (wniosek):
Jeżeli funkcje f(x), hj(x), j = 1,...J, przy czym x∈ℜN, są różniczkowalne w punkcie x̂ będącym
punktem regularnym i funkcja f(x) osiąga w tym punkcie minimum warunkowe przy
warunkach ograniczających hj(x) ≤ 0, j = 1,..., J, to są spełnione warunki:
 ∂L 
 = 0, n = 1,....,N
1o) 
 ∂xn  xˆ, µˆ
 ∂L 
 ≤0
2o) 
 ∂µ 
 j  xˆ
 ∂L 
 =0
3o) µ̂ j 
 ∂µ 
j

 xˆ
4o) µ̂ j ≥ 0
(2.16)
j = 1,..., J
Warunki (2.16) nazywane warunkami Kuhna – Tuckera dla problemu (2.15) i stanowią
warunki konieczne istnienia w punkcie x̂ rozwiązania tego zadania. Warunki (2.16) są
„wystarczające” przy założeniu, że funkcja f(x) jest wklęsła (wypukła w dół).
__________________________________________________________________________
2.2.3. Przypadek f(x): ℜ2→ℜ
Rozważmy warunki, jakie zachodzą w punkcie x̂ będącym rozwiązaniem zadania (2.15)
(niech x∈ℜ2 oraz J=3). Charakterystyczne przypadki położenia minimum funkcji f(x)
przedstawia rys.2.2. Niech X oznacza zbiór punktów dopuszczalnych, tj. zbiór spełniający
warunki hj(x)≤0, j=1,2,3. Na rysunku 2.2 przedstawiono następujące przypadki:
a) Funkcja f(x) osiąga minimum bezwarunkowe w punkcie x̂ wewnątrz zbioru X. Zatem
(2.17)
(∇ f x̂ ) = 0
5
Niezawodność i Optymalizacja
Wykład 2: Metody optymalizacji dla zdeterminowanych, nieliniowych problemów statycznych
oraz zachodzą nierówności:
h1( x̂ )<0, h2( x̂ )<0, h3( x̂ )<0.
Zauważmy, że równość :
3
(∇ x L) xˆ, µˆ = (∇f ) xˆ + ∑ µ j (∇h j ) xˆ = 0
(2.18)
j =1
jest równoważna równości(2.17), jeśli µˆ1 = µˆ 2 = µˆ 3 = 0 .
a)
b)
x2
x2
(
f (x) = f 2
(
f (x) = f1
h1(x)=0
° x̂
h2(x)=0
h2(x)=0
X
(
f (x) = f 2
(
f (x) = f1
η’
a1’
a2’
a1’
(
f (x) = f 3
h1(x)=0
c) x2
η’
(
f (x) = f 2
(
f (x) = f1
(
f (x) = f 3
h1(x)=0
(
f (x) = f 3
X
° x̂
h3(x)=0
h3(x)=0
X
0
h2(x)=0
h3(x)=0
x1
x1
0
°x̂
x1
0
( (
(
f1 < f 2 < f 3
Rys.2.2. Szczególne przypadki położenia minimum funkcji f(x) przy warunku, że x∈X. Przyjęto
oznaczenia: aj' = ( ∇h j ) x̂ , η' = -(∇ f ) x̂ : a) punkt x̂ pokrywa się z punktem minimum
bezwarunkowego; b), c) punkt x̂ nie pokrywa się z punktem minimum bezwarunkowego.
b) Mamy tu w punkcie x̂ aktywny jeden warunek ograniczający h1(x) ≤ 0 {„aktywny” tzn.,
że h1( x̂ ) = 0}, czyli
{h2 i h3 → „nie aktywne”}
h1( x̂ ) = 0, h2( x̂ ) < 0, h3( x̂ ) < 0
Zatem rozważane zadanie optymalizacji jest równoważne zadaniu znajdowania punktu
minimum funkcji f( x̂ ) przy warunku ograniczającym równościowym h1( x̂ ) = 0, jeśli
minimum to istnieje w punkcie x̂ , to :
− (∇f ) xˆ = µ1 (∇h1 ) xˆ
(2.19)
c) Zauważmy, że równość (2.19) jest równoważna równaniu (2.18), gdy µˆ1 > 0, µˆ 2 = µˆ 3 = 0
h1(x) ≤ 0 i h2(x) ≤ 0 są w x̂ aktywne, czyli:
h1( x̂ ) = 0, h2( x̂ ) = 0, h3( x̂ ) < 0 .
Sytuacja jest podobna do rozważanej już sytuacji b). Teraz w dostatecznie małym otoczeniu
punktu x̂ omawiane zadanie (2.15) jest równoważne zadaniu znajdowania punktu minimum
funkcji f(x) przy dwóch warunkach ograniczających h1( x̂ ) = 0, h2( x̂ ) = 0. Wiemy, że jeśli to
minimum istnieje w punkcie x̂ , to:
(2.20)
− (∇f ) xˆ = µ1 (∇h1 ) xˆ + µ 2 (∇h2 ) xˆ
Zauważmy, że równość (2.18) jest równoważna równości (2.20), gdy: µˆ1 > 0, µˆ 2 > 0, µˆ 3 = 0 .
6
Niezawodność i Optymalizacja
Wykład 2: Metody optymalizacji dla zdeterminowanych, nieliniowych problemów statycznych
Dokonajmy teraz przeglądu warunków spełnionych w poszczególnych sytuacjach . Widzimy,
że zawsze
µˆ j ≥ 0,
j = 1,2 ,3 , czyli µˆ ≥ 0
ponadto dla j =1,2,3 :
a) jeżeli hj( x̂ ) < 0 , to zawsze µˆ j = 0 ,
b) jeżeli hj( x̂ ) = 0 , to może być µˆ j = 0 ,
(2.21)
c) jeżeli µˆ j > 0 , to zawsze hj( x̂ ) = 0 .
Z zespołu warunków (2.21) widać, że zachodzi:
 ∂L 
 = 0 , dla j = 1,2,3
µ̂ j hj( x̂ ) = 0, czyli µ̂ j 

µ
∂
 j  xˆ
Punkt x̂ może być tylko wówczas rozwiązaniem zadania, gdy spełnia wszystkie warunki
ograniczające. Musi więc być hj( x̂ ) ≤ 0 , j = 1,2,3 , lub co jest temu równoważne:
 ∂L 
 ∂L 
 = hj( x̂ ) */

 ≤ 0,
j = 1,2,3
czyli
(∇λ L) x̂ ≤ 0.
/* pamiętając, że: 
 ∂µ 
 ∂µ 
j
j

 x̂

 xˆ
2.3. Warunki optymalności dla problemów programowania nieliniowego
Podstawowe znaczenie przy rozwiązywaniu zadań optymalizacji z warunkami
ograniczającymi nierównościowymi, a zwłaszcza zadań, w których warunki te są zadane w
postaci równań i nierówności, maja twierdzenia o punkcie siodłowym funkcji Lagrange’a,
które są nazwane twierdzeniami Kuhna – Tuckera.
Będziemy teraz rozważać:
min f ( x )
x
gi(x) = 0, i = 1,..., M
hj(x) ≤ 0, j = 1,..., J
xn ≥ 0, n = 1,..., N’; N’ < N ,
(2.22)
przy czym zmienne xn, n = N’+1,...,N mogą przyjmować wartości o dowolnym znaku.
Z zespołem warunków równościowych gi(x) = 0, i = 1,...,M zwiążemy zespół mnożników
Lagreange’a : λ = [λ1,...,λM]T , natomiast z zespołem warunków nierównościowych
hj(x) ≤ 0, j = 1,..., J, zespół mnożników: µ = [µ1,...,µJ]T. Ponieważ oba zespoły mnożników
maja taki sam sens, więc będziemy je rozważać łącznie.
Utwórzmy zatem zespół mnożników:
Λ ≡ [λT, µT]T.
(2.23)
Z rozważanym zadaniem zwiążemy funkcję Lagrange’a
M
J
i =1
j =1
L(x, Λ) ≡ f(x) + ∑ λi g i ( x) + ∑ µ j h j ( x )
(2.24)
i przy jego rozwiązywaniu poszukujemy pary ( xˆ , Λˆ ) stanowiącej punkt siodłowy funkcji
Lagrange’a L(x,Λ), w którym funkcja ta osiąga minimum względem x i maksimum względem
Λ przy µ > 0. Zatem dla pary ( xˆ , Λˆ ) zachodzi nierówność
(2.25)
L( x̂ ,Λ) ≤ L( xˆ , Λˆ ) ≤ L(x, Λ̂ ).
7
Niezawodność i Optymalizacja
Wykład 2: Metody optymalizacji dla zdeterminowanych, nieliniowych problemów statycznych
Jeżeli nierówność (2.25) jest spełniona tylko w pewnym otoczeniu ( xˆ , Λˆ ) , to taki punkt
siodłowy nazywamy lokalnym, jeśli natomiast zachodzi ona dla wszystkich (x,Λ) z pewnego
ustalonego zbioru, to punkt siodłowy nazywamy globalnym w tym zbiorze.
Punkt siodłowy ( xˆ , Λˆ ) , w którym x̂ ≥ 0, Λ̂ ≥ 0, nazywamy nieujemnym punktem
siodłowym.
Przy rozwiązywaniu zadania (2.22) wyznaczamy punkty siodłowe ( xˆ , Λˆ ) , w których:
x̂n ≥ 0 , n=1,...,N’,
x̂n - o dowolnym znaku, n=N’+1,..., N,
λi - o dowolnym znaku, i=1,...,M,
µj ≥ 0, j=1,...,J.
(2.26)
2.3.1. Warunki konieczne istnienia punktu siodłowego
Ponieważ w punkcie siodłowym ( xˆ , Λˆ ) zachodzi nierówność (2.25) czyli funkcja L(x, Λ) ma
w tym punkcie minimum względem x i maksimum względem Λ, zatem warunki konieczne
istnienia takiego punktu siodłowego można utworzyć przez połączenie warunków
koniecznych istnienia w punkcie x̂ minimum funkcji L(x, Λ̂ ) i warunków koniecznych
istnienia w punkcie Λ̂ maksimum funkcji L( x̂ , Λ). Tak postępując stwierdzimy, że:
Jeżeli funkcja L(x,Λ) jest różniczkowalna to para ( xˆ , Λˆ ) postaci (2.26) może być jej punktem
siodłowym tylko wówczas, gdy są spełnione warunki:
 ∂L 


≥0
 ∂xn  xˆ,λˆ, µˆ
, n=1,...,N’ ,
 ∂L 

xˆn 
=0
dla x
 ∂xn  xˆ, λˆ, µˆ
 ∂L 


= 0 , n=N’+1,...,N ,
 ∂xn  xˆ,λˆ, µˆ
xˆ n ≥ 0 , n =1,...,N’; x̂n - o dowolnym znaku , n=N’+1,...,N ,
(2.27)
dla Λ
 ∂L 

 = 0 , i=1,...,M ,
 ∂λi  xˆ
 ∂L 

 ≤0
 ∂µ 
 j  xˆ
, j=1,...,J ,
 ∂L 
 =0
µˆ j 

∂
µ
j

 xˆ
λ̂i - o dowolnym znaku, i=1,...,M ,
µ̂ j ≥ 0, j=1,...,J .
8
Niezawodność i Optymalizacja
Wykład 2: Metody optymalizacji dla zdeterminowanych, nieliniowych problemów statycznych
Twierdzenie
Jeżeli funkcje f(x), gi(x), i=1,...,M, h(x), j=1,...J są różniczkowalne to punkt regularny
x̂ może być rozwiązaniem problemu (2.22) tylko wówczas, gdy para ( x̂ , Λ̂ ) spełnia zespół
warunków koniecznych (2.27) istnienia punktu siodłowego funkcji Lagrange’a (2.24).
9