Rozwązywane zadań optymalzacj w środowsku programu MATLAB Zagadnene optymalzacj polega na znajdowanu najlepszego, względem ustalonego kryterum, rozwązana należącego do zboru rozwązań dopuszczalnych. Standardowe zadane mnmalzacj funkcj z ogranczenam zapsuje sę następująco: mn f ( g( Warunk Kuhna Tuckera: Warunkam konecznym optymalnośc rozwązana zadana standardowego są równana KuhnaTuckera w postac: f g j ( ( = =,..., n j =,..., m Strona
Rozwązywane zadań optymalzacj w środowsku programu MATLAB λ j g j ( = j =,..., m λ j j =,...,m Warunek wystarczający mnmum: = Warunk koneczne + d f ( Powyższe warunk pozwalają znaleźć punkt stacjonarny będący mnmum lokalnym, o le spełna on warunk regularnośc. Zamana znaku funkcj Zamanę zadań optymalzacj ogranczeń do postac standardowej można dokonać stosując następujące zależnośc: ma f ( mn( f ( g ( g ( Ogranczena równoścowe można przedstawć za pomocą ogranczeń nerównoścowych: g ( = g ( g ( Zależnośc znaku mnożnka Lagrange a w warunkach KuhnaTuckera od zadana optymalzacj oraz rodzaju ogranczena są podane w tabel: f ( ( g λ j mn mn ma ma Strona
Rozwązywane zadań optymalzacj w środowsku programu MATLAB Metody optymalzacj funkcj bez ogranczeń: Do podstawowych metod poszukwana mnmum zalczane są mędzy nnym: metoda spadku (gradentu optymalnego, metoda gradentu sprzężonego. Metoda spadku polega na poszukwanu mnmum funkcj w kerunku przecwnym do gradentu funkcj w punkce wyjścowym. Gradent funkcj jest kerunkem najszybszego wzrostu funkcj. Metoda gradentu optymalnego w przypadku funkcj celu w postac formy kwadratowej daje analtyczną postać długośc kroku. Dla formy kwadratowej: T f = Q długość kroku oblcza sę z zależnośc: T Q k = T 3 Q Następny punkt wyjścowy, w którym oblcza sę kolejny krok, wynos: = + k f ( +. + Strona 3
Rozwązywane zadań optymalzacj w środowsku programu MATLAB Metoda gradentu sprzężonego jest bardzej efektywna od metody gradentu optymalnego. Dla formy kwadratowej, nty krok przechodz dokładne przez punkt optymalny. Sposób oblczena kolejnych kroków algorytmu przedstawony jest metodą Fletcher Reevesa.. Wyberamy punkt wyjścowy perwszy kerunek mnmalzacj oblczmy metodą spadku: v = f (. Dla =,,,n;..podstawamy: + v = mn f ( λ = λ ; gdze: λ + λ v.. oblczamy gradent funkcj w punkce : f.3. dla <n: v = f ( + ( f f ( (.4. dla =n n n n = + λn v podstawamy = n, powracamy do punktu (; powtarzamy do spełnena warunku stopu. v Strona 4
Rozwązywane zadań optymalzacj w środowsku programu MATLAB Porównane metod gradentu optymalnego sprzężonego: Dla funkcj: f = + + 3 3, przy ogranczenu: + 3 +, za pomocą programu Matlab, została przygotowana prezentacja metody gradentu optymalnego oraz gradentu sprzężonego. Do oblczeń została zastosowana metoda zamrażana zmennej. Ponższe wykresy przedstawają krok wykonane przy mnmalzacj funkcj. Poszukwane mnmum przebega weloetapowo, przy czym w każdym etape realzowana jest mnmalzacja w przestrzen wymarowej. Stąd trajektore na rysunkach ne są cągłe. Ogranczene jest uwzględnone metodą funkcj kary. Dla punktu startowego X =[ 3] oraz zastosowanej regule stopu eps>(f *+f *, gdze eps=,, otrzymane zostały następujące wynk w postac grafcznej: Metoda gradentu optymalnego: 3.5 X X3.5 X.5.5 X.5 X.5.3.. X3 wynk oblczeń: =,4395; =,5574; 3 =,544 f*(x=.945 lość wywołań funkcj (lość kroków: 75 Strona 5
Rozwązywane zadań optymalzacj w środowsku programu MATLAB Metoda gradentu sprzężonego: 3.5 X X3.5 X.5.5 X.5 X.5.4.3.. X3 wynk oblczeń: =.464; =.4668; 3 =.375 f*(x=.93 lość wywołań funkcj (lość kroków: 5 stosunkowo duża lczba kroków jest wynkem zastosowana metody funkcj kary punkt stacjonarny praktyczne pokrywa sę z rozwązanem analtycznym Z otrzymanych wynków można zauważyć, że metoda gradentu sprzężonego jest szybsza dokładnejsza. Algorytmy mnmalzacj w Matlabe: Matlab oferuje do mnmalzacj m.n. następujące algorytmy: mnmalzacja funkcj jednej zmennej (fmn algorytm smple bez ogranczeń (fmns quasnewtona (reguła BFGS bez ogranczeń (fmnu SQP (metoda kolejnych aproksymacj kwadratowych z regułą BFGS z ogranczenam równoścowym nerównoścowym (constr algorytm mnmalzacj sumy kwadratów Levenberga Marquardta bez ogranczeń (leastsq Strona 6
Rozwązywane zadań optymalzacj w środowsku programu MATLAB Przykład problemu optymalzacj parametrów równana funkcj Należy wyznaczyć optymalne parametry funkcj, tak aby przebeg funkcj był dopasowany do zadanych punktów (,Y na rysunku. Na funkcję są narzucone warunk ogranczające. Y.9.8.7.6.5.4.3.. Y3..4.6.8 X Y,,9,,88,3333,68,4444,553,5556,43,6667,349,7778,894,8889,76,69 W badanym obszarze funkcja została podzelona w punktach oraz na trzy częśc. Założone równana tych funkcj są następujące: W przedzale (, : W przedzale (, : y = + a a y = a 3 3 + a4 + a5 + a6 W przedzale (,: y = Y 3 + a 7 a9 ( + a 8 Strona 7
Rozwązywane zadań optymalzacj w środowsku programu MATLAB F Przebeg funkcj wymusł ogranczena parametrów optymalzowanych. Równeż punkty sklejena przedzałów są zmennym optymalzacj. y ( = y ( (warunk na wartośc funkcj y ( = y ( = = d d ( ( = d = a = d = a ( ( (warunk na sze pochodne Funkcję celu oblcza sę z następującej zależnośc: ( [ d ( d ( ] y Y + ε [ d ( d ( +. ] + ε Ogranczena: a a a 3 a 4 a 5 a 6 a 7 a 8 a 9. a 7 a 8 [ d ( d ( ] [ d ( d ( +. ] Korzystając z paketu Optmzaton Toolbo oraz programu constr, zostały uzyskane następujące wynk: =,5 =,6948 Optymalne parametry: a 3,695 a,399 a3,4 a4,866 a5,9 a6,434 a7,55 a8 57,78 a9 5,3976 a,5 a,6948 Strona 8
Rozwązywane zadań optymalzacj w środowsku programu MATLAB Porównane wynków: Y y obl błąd δ%,,,9,97,8,,88,847,43,3333,68,6859,54,4444,553,558,7,5556,43,3985,45,6667,349,345,7,7778,894,96,46,8889,76,79,34,69,69, Ponżej jest przebeg funkcj uzyskany po zoptymalzowanu parametrów. Poneważ jest ona okresowa, można ją przedstawć w wększym przedzale. Tak, jak było założone, funkcja posada ekstrema w punktach krańcowych rozpatrywanego przebegu (zeruje sę pochodna na następnym rysunku. Optymalne dopasowane funkcj Y.9.8.7.6.5.4.3...5.5.5 3 X Strona 9
Rozwązywane zadań optymalzacj w środowsku programu MATLAB Aby optymalzacja parametrów dokonana była prawdłowo, funkcja jej perwsza pochodna mus być cągła w całym rozpatrywanym przedzale. Jak wdać na ponższej charakterystyce, warunek ten jest spełnony. Pochodna funkcj optymalnej dy..4.6.8..4.6.8.5.5.5 3 X Środowsko programu Matlab pozwala na: Wnosk: zrealzowane stosunkowo łatwej przejrzystej procedury rozwązana problemu optymalzacj, wykonane oblczeń optymalzacyjnych uwzględnających wzualzacje procesu rozwązana, skorzystane ze skutecznego oprogramowana w pakece Optmzaton Toolbo umożlwającego rozwązane nawet skomplkowanych problemów optymalzacj. Strona