Metody gradentowe... Metody gradentowe poszukwana ekstremum Korzystają z nformacj o wartośc funkcj oraz jej gradentu. Wykazując ch zbeŝność zakłada sę, Ŝe funkcja celu jest ogranczona od dołu funkcją wypukłą klasy C taką, Ŝe moŝna ją aproksymować formą kwadratową o postac : gdze: A - f() = c + b + / A oznacza macerz symetryczną dodatno określoną, której elementam są druge pochodne cząstkowe funkcj f(). Na przykład, dla funkcj celu zdefnowanej jako błąd średnokwadratowy dwóch napęć w układze: otrzymuje sę: czyl U f( ) = W( U U) + W( U U), =, U Ŝądana wartość napęca, U W U U f U U W U W U W U W U W U U () = {, } {, } + ( + ) W W U, A=, b=, c= W U + W U W W U Podana forma kwadratowa moŝe zostać zmnmalzowana poprzez rozwązane układu równań A - b=. JeŜel jest rozwązanem tego równana wprowadzmy odchyłkę e, to f ( + e) = ( + e) A( + e) + b ( + e) + c (z defncj formy kwadratowej), = A + e A + e Ae + b + b e + c (na podstawe symetr A), = A + b + c e b + e Ae + b e = f ( ) + e Ae. Gdy A jest dodatno określona, ostatn składnk jest dodatn dla e. Ogólny algorytm: " wyznaczene kerunku poszukwań, " określene mnmum w tym kerunku (np. nterpolacja kwadratowa lub sześcenna).. K.M.Gawrylczyk
Metody gradentowe... Metoda gradentu prostego Jak powyŝej, jednak zamast szukać mnmum wykonywany jest krok o długośc e. Informacje wejścowe : - arbtralne wybrany punkt startowy, e - początkowa długość kroku, β - współczynnk zmnejszena kroku, ε - wymagana dokładność oblczeń mnmum, n - lczba zmennych nezaleŝnych. Algorytm oblczeń : " oblcz w punkce startowym wartość funkcj celu F = f( ) oraz jej gradent g = g( ); " wyznacz kerunek poszukwań ξ = -g ; " wzdłuŝ kerunku ξ wykonaj krok o długośc e oraz określ współrzędne nowego punktu : + = + e ξ, przy czym dla perwszej teracj = ; 4 " oblcz w nowym punkce wartość funkcj F = f( + ) oraz gradentu g = g( + ). Jeśl krok był pomyślny F < F, to powtarzaj od ( " ) podstawając g w mejsce g. Inaczej : 5 " sprawdź, czy osągnęto mnmum. Jeśl ne, wróć do (4 " ) podstawając = + - eξ oraz zmnejsz krok o β. Przejdź do ( " ). K.M.Gawrylczyk
Metody gradentowe... Przebeg algorytmu gradentu prostego Przebeg algorytmu najszybszego spadku K.M.Gawrylczyk
Metody gradentowe... 4 Metoda najszybszego spadku Zastosowano tu dodatkowo mnmalzację funkcj wzdłuŝ wyznaczonego kerunku. ZbeŜność metody ZałóŜmy, Ŝe funkcja celu w poblŝu ekstremum wyraŝa sę przez : wtedy gradent funkcj : Przesunęce od do + moŝna zapsać jako + = - γ A lub ( γ ) f() = / A, Λf() = A. ( A) P() λ P = + A = =, gdyŝ: P( A) v = P( λ) v, P P () gdze: P (λ) = - γ λ, λ, v - wartość własna wektor własny macerzy A ( det(a - λi) = ). Utwórzmy weloman perwszego stopna macerzy A, Q (λ), tak, Ŝe: Q (λ ) = α + α λ = -, Q (λ n ) = α + α λ n =, gdze : λ λ n są najmnejszą najwększą wartoścą własną macerzy A. Dodatno określona macerz A ma dodatne wartośc własne. Rozwązując układ równań otrzymuje sę α α : - λn - λ α = oraz α = λn - λ λn - λ. Stąd λ - ( λ + λ Q n ) P Q ( λ) =, f ( ) = f A f A + λn - λ P(), Q() a rozkładając wzdłuŝ wektorów własnych v j odpowadających wartoścom wł. λ j dla j =,..., n n = a j j j= v Korzystając z formy kwadratowej (funkcj celu) : skąd Q Q Q f ( ) f A = A A + Q() Q() A, Q() f ( ) a Q a Q + j j j j j (). λ λ λ Q() j PonewaŜ z defncj Q (λ j ) #, j =,,..., n węc ostateczne: () + Q + n n f ( λ λ ) f( ) f λ λ. j. K.M.Gawrylczyk
Metody gradentowe... 5 Informacje wejścowe - arbtralne wybrany punkt startowy, e - początkowa długość kroku, ε j - wymagana dokładność oblczeń w aktualne występującym kerunku poszukwań, ε - wymagana dokładność oblczeń mnmum globalnego, n - lczba zmennych nezaleŝnych. Algorytm oblczeń : " oblcz w punkce startowym wartość funkcj celu F = f( ) oraz jej gradent g = g( ) ; " wyznacz kerunek poszukwań ξ = -g ; " wzdłuŝ kerunku ξ określ λ mnmalzujące f( - + λ ξ ) oraz współrzędne nowego punktu = - + λ ξ 4 " oblcz w nowym punkce wartość gradentu g = g( + ). 5 " sprawdź, czy osągnęto mnmum. Jeśl ne, wróć do ( " ) K.M.Gawrylczyk
Metody gradentowe... 6 Przykład Forma kwadratowa: f c, =, = = A b + A b, c=. 6 8 Gradent formy kwadratowej: grad f() = A b (reszta równana). Kerunek poszukwań ξ = grad f() Wyznaczane mnmum na kerunku: = + α ξ () () () W punkce mnmum na kerunku gradent mus być ortogonalny do tego kerunku: ξ () ξ () = ( b A () ) ξ() = ( b A ( () + α ξ ) ξ () = ξ ξ ξ = ( b A ) α( A ) () () ( b A ) α( A ) ξ = ξ ξ () () ξ ξ = α ξ A ξ () () () α= ξ ξ ξ () () () A ξ K.M.Gawrylczyk
Metody gradentowe... 7 Procedura programu Mathcad: S_D := for.. I r b A grad_f r α r r r A r + + α r Przebeg algorytmu: K.M.Gawrylczyk
Metody gradentowe... 8 IERACJE JACOBIEGO Metoda Jacobego słuŝy do rozwązywana zadań równowaŝnych do A = b. Polega ona na rozkładze macerzy A na macerz dagonalną D utworzoną z jej przekątnej głównej oraz na pozostałą część E: Wyprowadzene metody: A = b Wzór ten moŝna zapsać jako: D = E + b A = D + E = D E + D b = B + z B= D E z= D b, gdze:,. Macerz D jest dagonalna łatwa do odwrócena. MoŜna podać wzór teracyjny: Procedura Mathcad a: Jacob := D dag( dag( A) ) E A D B D E z D b for.. I + B + z B z = + + Przebeg algorytmu: Porównane zbeŝnośc metody najszybszego spadku metody Jacobego Error_S_D k Error_Jacob k.. 4 6 8 k K.M.Gawrylczyk
Metody gradentowe... 9 MEODA NEWONA-RAPHSONA Wprowadzene W welu przypadkach równane opsujące obwód nelnowy jest jednorodne, tzn. ma postać (). Metoda Newtona-Raphsona, która naleŝy do klasy metod teracyjnych, pozwala rozwązać równane o postac () przekształcając je do postac () h( ) =, () = g( ) h( ). () Funkcje g() wybera sę tak, aby proces teracyjny był zbeŝny. Spośród welu moŝlwych postac funkcj g() najdogodnej jest wybrać ją jako odwrotność pochodnej funkcj h (), tzn. przyjąć: Wówczas równane () przyjmuje postać: a algorytm jego rozwązana ma postać g( ) =. () h' h =, (4) h' ( n) h = n+ n h'. (5) n Proces rozwązana dany algorytmem (5) moŝna prosto znterpretować grafczne. Przykład takej nterpretacj jest przedstawony na rys.. Rys. Metoda Newtona-Raphsona prowadz do procesu teracyjnego, który jest tym szybcej zbeŝny, m wartość początkowa poszukwanego rozwązana jest blŝsza wartośc rzeczywstej. ZaleŜne od postac funkcj h() proces przy określonej wartośc moŝe być rozbeŝny. JednakŜe podkreślć naleŝy, Ŝe przez odpowedn dobór wartośc początkowej zbeŝność procesu teracj według metody Newtona-Raphsona moŝna zawsze uzyskać. K.M.Gawrylczyk
Metody gradentowe... Przykład rozwązana równana W celu zlustrowana tej metody moŝna rozwązać równane o postac Stąd mamy a: / + 4= (6) / h = + 4 (7) h' = + (8) / Zatem algorytm oblczeń moŝna zapsać, zgodne z zaleŝnoścą (5), w następującej postac: n+ n + = n / + n / n 4 Przyjmując wartość początkową =7 otrzymujemy po ośmu krokach teracyjnych wartość: =.64. PonŜej przedstawone są wynk uzyskane za pomocą programu Mathcad: (9) 7.55-5.97-9 7.495 = -6 h 4.8 - = 4 9-4 -.9978 -.969 -.744 5.97 5 -.9845 6.84 6 -.8 7.56 7 -.85 8.64 8 -.6 ok postępowana w metodze Newtona-Raphsona moŝna usystematyzować:. Wybór w marę dobrej wartośc początkowej do rozwązana równana (). Jeśl h( )=, to przyjęta wartość stanow rozwązane, czyl =. JeŜel h( ) róŝne od, to przechodzmy do drugego kroku. h( n). Przyjmujemy następną wartość; zgodne z zaleŝnoścą : = n + n h' ( n). W przypadku, gdy h( ) jest róŝne od, proces powtarzamy n razy. W praktyce proces powtarzamy tak długo, aŝ wartość h( n ) będze dostateczne mała, tzn. aŝ do spełnena nerównośc: n+ n lub () n h ε. () K.M.Gawrylczyk
Metody gradentowe... Przykład rozwązana obwodu nelnowego Rozpatrzmy teraz przykład rozwązana metoda Newtona-Raphsona obwodu nelnowego przedstawonego na rys.: Nech: R=[Ω], I =[A], a charakterystyka opornka nelnowego jest dana wyraŝenem:, u = e. () Równana opsujące elementy obwodu oraz wyznaczone na podstawe praw Krchhoffa przyjmują postać: u = R, u = e = I = A =, u u =, u u =, Po podstawenu otrzymujemy równane dla poszukwanego napęca, które w postac dogodnej do zastosowana metody Newtona-Raphsona przedstawamy jako h(u)= :, u h( u) = ( e ) u =, (4), u h' ( u ) =, e. Ze względu na występowane funkcj wykładnczej w wyraŝenu h(u) moŝemy stwerdzć, Ŝe funkcja h(u) jest monotonczna, a zatem proces teracj jest zbeŝny. Przyjmujemy wartość początkową u =V Ŝądamy, by oblczena zakończyć dla wartośc bezwzględnej h(u) mnejszej od -8. Wynk jest następujący: () u.8749.8749.8747 = h 4.8747 = 4 -.6997 -.569 -.769-5 -4.4-5.8747 5 6.8747 6 7.8747 7 8.8747 8 śądaną dokładność uzyskujemy po czterech teracjach. K.M.Gawrylczyk
Metody gradentowe... Układy równań nelnowych Metoda Newtona-Raphsona ma równeŝ zastosowane w przypadku algebracznych równań nelnowych, które opsują obwody z elementam welokońcówkowym źródłam sterowalnym. W przypadku układu n równań z n newadomym zapsanym w postac wektora [,,,..., ] = (5) n równane opsujące obwód przedstawamy w postac h( )= (6) gdze = h,h,h,...,h h n (7) Algorytm oblczena rozwązana równana (7) jest następujący gdze J() oznacza macerz Jacobego ma postać: = J h (8) n+ n h h h... n h h h... J (9) = n............ hn hn h n... n gdze: h n n oznaczają n-te elementy wektorów h. K.M.Gawrylczyk
Metody gradentowe... Przykład rozwązana układu równań nelnowych Jako lustrację zastosowana metody Newtona-Raphsona w przypadku wyznaczana welu newadomych moŝna podać ponŝszy przykład: Dane: E = V, E = V, R=Ω, I = (e.u - )[A], I =,5U [A]. Na podstawe drugego perwszego prawa Krchhoffa otrzymujemy równana: U+ U= E, U+ U= E, (,U ) U= R I= R I+ I= R e,5 U +. Stąd otrzymuje sę dwa równana: () (,U ) U+ R e,5 U + = E, (,U ) U+ R e,5 U + = E oraz (,U ) U R e,5u E h + + U= (,U U ) + R e +,5U E Zatem macerz Jacobego dla danego układu ma postać:,u + R e U J U = (),U R e + U Korzystając z równana () pszemy:,u (,U ) U, n U, n R e U U R e,5 U E + + + + =,U. () U (, ),, U n+ U n R e U + U+ R e +,5 U E Przy uŝycu programu Mathcad uzyskujemy następujące wynk:. czyl przyblŝonym wartoścam prądów są: I =5,A oraz I =,599A. K.M.Gawrylczyk
Metody gradentowe... 4 Metoda gradentów sprzęŝonych Opracowana przez Hestensa Stefela w 95 do rozwązywana układów równań lnowych. Kerunk poszukwań tworzone są tak, aby kaŝdy kolejny był sprzęŝony do wszystkch poprzednch. Dwa kerunk ξ oraz ξ j są wzajemne sprzęŝone względem dodatno określonej macerzy Α, jeśl ξαξ j = dla j. Kerunk wzajemne sprzęŝone są lnowo nezaleŝne. Lemat: Jeśl punkt + został osągnęty w rezultace mnmalzacj funkcj f ( ) = a + b + A wzdłuŝ wzajemne sprzęŝonych kerunków ξ, ξ,...,ξ to Dowód ξs f + =, dla s =,,.... gdyŝ: f ( + ) = Α + + b = Α s+ + λ j j + ξ b j= s+ ( ) s+ j=s+ = f + λ Αξ dla s =,,,..., - ale s f( + ) s f( s+ ) λ j s j j ξ = ξ + ξ Αξ = c.n.d. j j= s+ ( ) ξs f + = z warunku mnmalzacj funkcj wzdłuŝ kerunku ξs, ( ) λ jξsαξ j = z warunku sprzęŝena kerunków. j= s+ Po n teracjach f( n+ ) będze ortogonalny do n lnowo nezaleŝnych wektorów, mus węc sę równać zeru. K.M.Gawrylczyk
Metody gradentowe... 5 worzene kerunków sprzęŝonych perwszy kerunek - mnus gradent : ξ = f( ) = Α b, mnmalzacja f() wzdłuŝ tego kerunku : ξ [Α ( + λ ξ ) + b] =, daje wartość λ moŝna określć punkt : = + λ ξ. W drugm kroku nowy kerunek w punkce jest wyznaczany wg reguły: ξ = f( ) + β ξ, a współczynnk β jest tak doberany, aby kerunk ξ, ξ były sprzęŝone : [ β ] [ f β ] = ξ Αξ = ξ Α f ( ) + β ξ Αξ = ξ Α ( ) ξ = = Α f ( ) ξ = [ f ( ) f ( ) [ f ( ) βξ ], ] β f ( ) f ( ) =, gdyŝ : f ( ) f ( ) f ( ) Podobne w -tym kroku : ξ = f( ) + β ξ -, a : Informacje wejścowe : f f β =. f f ( ) ( ) - - f ( ) =. e ε j ε n - punkt startowy, - początkowa długość kroku, - dokładność oblczeń w aktualnym kerunku poszukwań - dokładność oblczeń mnmum globalnego - lczba zmennych nezaleŝnych. Algorytm : () oblczyć f( ) oraz f( ), () wyznaczyć kerunek ξ = f, () wzdłuŝ ξ określć λ mnmalzujące f( - + λ ξ ) oraz = - + λ ξ ; (4) oblczyć f( ), (5) zbadać, czy jest to mnmum, jeŝel tak to SOP. (6) f ( ) f ( ) β =, ξ = f ( ) + βξ f ( -) f ( -) (7) podstawć w mejsce - oraz sprawdzene, czy wykonano n teracj. Jeśl ne, to powrót do kroku () zwększene o. JeŜel wykonano n teracj, podstawć f( ) w mejsce f( ) wrócć do (). Kryterum zbeŝnośc Punkt jest ekstremum, gdy f() f() = (z błędem zaokrągleń). K.M.Gawrylczyk