WYKŁAD r 8 METODY CYFROWE POSZUKIWANIA MINIMUM FUNKCJI Zaaia miimalizacji fucji bez ograiczeń moża yrazić astępująco f ˆ mi f R gzie f : R R, przy czym załaa się, że fucja f jest ograiczoa z ołu. Istieje iele proceur cyfroych zaych algorytmami, tóre roziązują tego typu zaaie. Przez algorytm rozumie się reurecyjy proces obliczeioy, tóry a postaie zajomości bieżącego putu geeruje put astępy. Startując zatem z putu zostaje utorzoy ciąg putó { }. Móimy, że algorytm jest zbieży, jeżeli ąży o o putu miimalego ˆ, bęącego graicą ciągu { }, tz. lim ˆ Κ gzie: Κ : ozacza iesończoy uporząoay zbiór oatich liczb całoitych. Najbarziej rozposzechioe metoy umerycze poszuiaia miimum fucji bez ograiczeń ależą o grupy meto zetermioaych. Metoy zetermioae, tóre przeszuują przestrzeń R złuż prostych zaych ieruami poszuiań moża pozielić a ila typó, przyjmując a ryteria poziału: a sposób torzeia ieruó poszuiań; b sposób zajoaia olejego putu złuż aego ieruu poszuiań. A a Ze zglęu a ryterium a moża yróżić a typy algorytmó: a metoy o moyfioaej bazie, zae bezgraietoymi, a metoy o moyfioaym ieruu, zae graietoymi. a a metoami pierszej grupy ooujemy poszuiań iezależych ieruach, po czym astępuje moyfiacja bazy, tóra realizoaa jest jeyie a postaie iformacji o zmiaach artości fucji f, a a metoach rugiej grupy orzystamy z oatoej iformacji o artości i zmiaach graietu putach bęących rezultatem poszuiaia złuż jeego tylo ieruu, co pozala a bieżąco ustalać ierui poszuiań. A b Poział ze zglęu a ryterium b aje róież a typy meto.
b metoy ysrete metoy poszuiań prostych, tórych baa się zachoaie fucji tylo jeym lub óch putach leżących a ieruu poszuiań, przy czym sposób yboru tych putó, przy aym pucie początoym, jest ustaloy a początu ażej iteracji. Do meto tych ależą algorytmy Rosebroca, Hooa-Jeevsa, b metoy z miimalizacją, zae metoami ieruó popray, tórych oreśla się miimum fucji złuż ieruu poszuiań. Do grupy tej zalicza się metoy Gaussa-Seiela, Poella, ajszybszego spau, graietu sprzężoego itp. W alszej olejości przestaioych zostaie ila meto poszuiaia miimum fucji, charaterystyczych la aych grup.. Metoa Hooa i Jeevesa HJ ysreta W metozie tej olejej iteracji ystępują a sposoby poruszaia się przestrzei yzaczoej przez etor zmieych ecyzyjych: próby i roboczy. A Sposób próby: służy o zbaaia zachoaia się baaej fucji ieielim ybraym obszarze z yorzystaiem roó próbych złuż szystich ieruó ortogoalej bazy. B Sposób roboczy: polega a przejściu ściśle zetermioay sposób o astępego obszaru, tórym rozażay jest olejy etap próby, lecz tylo tym przypau gy przyajmiej jee z yoyaych roó był pomyśly. Kroiem pomyślym azyamy ro, yiu tórego astępuje zmiejszeie się artości baaej fucji f < f gy gzie: ługość rou, baza ortogoala, oolie ybray put startoy. Jeżeli żae z yoyaych roó ie był pomyśly poracamy o poprzeio ybraego obszaru tórym fat tai miał miejsce i cyl poszuiań zaczyamy o oa przy zmiejszoej ługości rou. Iformacje ejścioe: [,,..., ] baza yjścioa utorzoa z zajemie ortogoalych etoró, < β < spółczyi orecyjy zmiejszający, ξ ymagaa ołaość obliczeń miimum, liczba zmieych iezależych.
startoy put bazoy ro - pomyśly ro próby zmiaa ieruu ortogoalej bazy - iepomyśly ro próby f < f - pomyśly ro próby f < f oy put bazoy ro - KROK ROBOCZY - pomyśly ro próby zmiaa ieruu ortogoalej bazy -7 iepomyśly ro próby 7 f < f -8 pomyśly ro próby f < f 8 oy put bazoy ro 8 8-9 KROK ROBOCZY 8 8- iepomyśly ro próby 8- pomyśly ro próby f < f - iepomyśly ro próby -7 pomyśly ro próby f < f 7 oy put bazoy ro 7-8 KROK ROBOCZY 7 8 8 7 9 8 7 8 9- iepomyśly ro próby 9- iepomyśly ro próby 9- iepomyśly ro próby 9- iepomyśly ro próby 9 8-9 iepomyśly ro próby Warue 7 ie został spełioy, zatem porót o putu 8 oraz zmiejszeie rou o spółczyi orygujący β 8- iepomyśly ro próby zmiaa ieruu ortogoalej bazy 8- iepomyśly ro próby 8- pomyśly ro próby f < f 8 - KROK ROBOCZY Rys.. Ilustracja zasay ziałaia metoy Hooa-Jeevesa
Algorytm obliczeń Etap próby. Posta oraz oblicz pucie artość fucji f.. Wzłuż ieruu yoaj ro próby oraz oblicz artość fucji tym pucie f.. Zbaaj czy ro był pomyśly, tz. czy <. Jeżeli ta, to posta miejsce, astępie przejź o yoaia putu, jeżeli ie to przejź o.. Wyoaj ro próby przeciym ieruu oraz oblicz artość fucji tym oym pucie f.. Zbaaj czy te ro był pomyśly. Jeżeli ta, to posta miejsce oraz przejź o yoaia putu, atomiast przeciym razie pozosta bieżący put bez zmia, tz. posta miejsce.. Zbaaj czy yoao roi e szystich ieruach ortogoalej bazy, tz. czy. Jeżeli ie, to posta oraz potórz czyości o putu, atomiast jeśli ta, to przejź o 7. 7. Zbaaj czy yoaiu cylu poszuiań ystąpiły roi pomyśle, tz. czy f B > f, przy czym pierszej iteracji B. Jeżeli ta, to posta miejsce B, tóry azyay jest putem bazoym oraz przejź o yoaia etapu roboczego, przeciym razie postępuj g 8. 8. O ile ie zostało spełioe ryterium a miimum, zbaaj czy zrealizoaa iteracja jest pierszą iteracją. Jeżeli ta, to zmień put startoy i potórz czyości o putu, jeśli atomiast ie, to poróć o poprzeio przeszuiaego obszaru myśl zasay B zmiejsz ługość rou o β, tz. β oraz rozpoczij yoyaie proceury o początu. Etap roboczy Wyoaj ro roboczy eług reguły B B B B B Posta B miejsce B oraz róć o realizacji etapu próbego. Działaie omóioego algorytmu przestaioo a przyłazie fucji u zmieych. Na rysuu.8 poszczególe puty ozaczoo liczbami olejości, jaiej zostały yliczae. Ta ięc, startując z putu
rozpoczyamy realizację etapu próbego, po zaończeiu tórego otrzymujemy put. Put te przyjmujemy jao put bazoy, boiem czasie przebiegu tego etapu miały miejsce a pomyśle roi oraz tylo jee iepomyśly, przy tym., f f < Z olei youjemy etap roboczy, rezultacie otrzymujemy put. Z putu tego rozpoczyamy astępy cyl próby ończący się zalezieiem oego putu bazoego, przy czym. Postępując alej aalogiczy sposób ochozimy trzeciej iteracji o sytuacji gy arue 7 ie jest spełioy, boiem. Wobec tego poracamy o putu bazoego, zmiejszając ługość rou 8 8 f f < 8 f f > 8 i cyl poszuiań rozpoczyamy o oa. Kryterium zbieżości Jao ryterium zaończeia ziałaia proceury przyjęto arue, że atuala ługość rou bęzie miejsza o z góry założoej liczby ξ. Przyła Wyorzystując metoę Hooa-Jeevesa poszuiać bęziemy miimum fucji trzech zmieych postaci F Przyróując pochoe cząstoe o zera łato stierzić, że miimum fucji zajuje się pucie ˆ ˆ ˆ F F F a jego artość yosi F. Przyjmiemy astępujące ae ejścioe ortogoala baza [ ] put startoy B ro obliczeioy, spółczyi orygujący, β
ryterium zbieżości < ξ, ξ, Etap próby ro ozaczeia putó zgoe z rysuiem artość fucji pucie F oraz F ybieramy pierszy ierue z ortogoalej bazy oraz ooujemy przesuięcia o ro złuż tego ieruu.,,,, <? czy ro był pomyśly? TAK o putu NIE o putu poszuiaie przecią stroę złuż tego samego ieruu <,, < zatem put baamy fucję złuż olejego ieruu ortogoalej bazy a jeżeli istieje tym przypau ierue iź o b jeżeli ie istieje astępy ierue iź o 7 przesuięcie o ro złuż ieruu,,,,,,,, <?,9 czy ro był pomyśly? TAK o putu NIE o putu poszuiaie przecią stroę złuż tego samego ieruu <?,,9 >, zatem put ro przecia stroę złuż tego samego ieruu
,,,,8,,,8,8,8 <? czy ro był pomyśly? TAK o putu NIE pozosta początoy put a aym ieruu bez zmia <?,8 <, zatem put baamy fucję złuż olejego ieruu ortogoalej bazy a jeżeli istieje tym przypau ierue iź o a b jeżeli ie istieje astępy ierue iź o 7 a przesuiecie o ro złuż ieruu,,,8,,8,.8. *..7 <? b czy ro był pomyśly? TAK o putu NIE o putu c poszuiaie przecią stroę złuż tego samego ieruu <?,,7 >,8 zatem put c c ro przecia stroę złuż tego samego ieruu...8,.8..8,8,,9 czy ro był pomyśly? <? TAK o putu NIE pozosta początoy put a aym ieruu bez zmia <?,9 <,8 zatem put baamy fucję złuż olejego ieruu ortogoalej bazy A jeżeli istieje tym przypau ierue iź o a B jeżeli ie istieje astępy ierue iź o 7 Poieaż yczerpaliśmy szystie ierui ortogoalej bazy przechozimy o pt. 7, tóry brzmi:
Zbaaj czy yoaiu cylu poszuiań ystąpiły roi pomyśle, tz. czy f B > f, przy czym pierszej iteracji B. Jeżeli ta, to posta miejsce B, tóry azyay jest putem bazoym oraz przejź o yoaia etapu roboczego. W yoaym cylu obliczeń ystąpiły trzy roi pomyśle <,, < <,,8 <, <,,9 <,8 możemy przejść o etapu roboczego przyjmując za, B,8 pamiętając, że B,8 Etap roboczy Wyoaj ro roboczy eług reguły B B B B B,,,8,,8, Posta B miejsce B oraz róć o realizacji etapu próbego Etap próby ro youjemy aalogiczie ja ro potarzając obliczeia iteracyjie aż o osiągięcia ryterium zbieżości jaim jest arue < ξ, ξ,.
ETAP PRÓBNY. put startoy ETAP ROBOCZY mi F la.. Rys.. Ilustracja graficza przyłau. Metoa Rosebroca R ysreta Opis metoy Metoa ta jest barzo pooba o metoy Hooa i Jeevesa tym sesie, że miimum poszuujemy róież zajemie ortogoalych ieruach. Istota różica ti tym, że ierui te ie są stałe, lecz peych przypaach yiu obrotu ulegają zmiaom. Baza yjścioa,,..., torzoa jest zazyczaj z ersoró spółrzęych arteziańsich. Na stępie ażym z tych ieruó youjemy olejo po jeym rou o ługości. Jeżeli esperymet tai ończy się poozeiem, to astępym rou aym ieruu artość zięszamy α, α > razy, atomiast przeciym razie pomożymy przez β, przy czym < β <. Tego rozaju tryb postępoaia potarzamy aż o mometu, gy yoaie rou e szystich ieruach aje iepomyśly yi, tz. f < f. W taiej sytuacji, jeśli jest spełioe ryterium a estremum, to proceura ończy soje ziałaie, jeśli zaś ie, to yoay zostaje algorytm obroty spółrzęych i ziałaie proceury rozpoczya się o początu.
Iformacje ejścioe D [ ] baza ejścioa utorzoa z zajemie ortogoalych etoró, oolie ybray put startoy, ymiaroy etor początoy ługości rou, α spółczyi orecyjy zięszający, α >, β spółczyi orecyjy zmiejszający, < β <, L założoa liczba iteracji, liczba zmieych iezależych, S suma pomyślych roó e szystich ieruach ortogoalej bazy. Algorytm obliczeioy Posta S Dla,,..., oblicz oraz posta f. Jeżeli < to a zięsz sumę pomyślych roó -tym ieruu S S, b posta, c posta α, przeciym razie a b β Jeżeli przyajmiej jeym ieruu ystąpił pomyśly ro tz. f < f to postaiamy oraz potarzamy, przeciym przypau. Jeżeli S, to zmień put startoy, posta f i potórz. Jeżeli S i ie zostało spełioe ryterium zbieżości przechozimy o. Wyoaj algorytm obrotu ortogoalego ułau spółrzęych D g proceury Grama-Schmita oraz poróć o yoyaia czyości o, przy czym posta. Proceura Grama-Schmita przebiega astępująco: a torzymy uła etoró
s s s s s s...... tórym, to sumy pozytyych roó aym ieruu ortogoalej bazy, s s s...,,, b ortoormalizacja ułau etoró przebiega g proceury > < > <,, tórej <,> iloczy salary etoró, orma etoroa p. Euliesoa postaci: i i. Przyła obrotu bazy Jeżeli suma pozytyych roó ieruu yiosła oraz suma pozytyych roó ieruu yiosła S,, S, óczas uła etoró przestaia się astępująco,,,,,, a ortoormalizacja przebiega astępująco
,, <, >,,,,,,98,98,,,98,,99,9 [,],99,9,99,9,,98 Zatem z bazy D [ ] yiu pozytyych roó S, oraz S, otrzymamy oą bazę,98, [ ] D,,98,,98,98, Rys.. Proceura Grama-Schmita Potarzamy opisay cyl obliczeń aż o mometu, tórym spełioe zostaie przyjęte ryterium zbieżości. Wg Rosebroca za miimum uzać moża bieżący put jeżeli pięciu olejych obiegach ie miał miejsca pomyśly ro tz. ie została spełioa zależość <.
startoy put bazoy ro - iepomyśly ro próby - pomyśly ro próby f < f - iepomyśly ro próby spółczyi zieszający α * - iepomyśly ro próby spółczyi zmiejszajacy β * 8 - iepomyśly ro próby spółczyi zmiejszajacy -7 pomyśly ro próby f < f 7 7 zmiaa ieruu ortogoalej bazy 7-8 iepomyśly ro próby 7-9 pomyśly ro próby f 9 < f 7 9 9- iepomyśly ro próby spółczyi zieszajacy - pomyśly ro próby spółczyi zmiejszajacy f < f 9 oy put bazoy ro Obrót BAZY proceura Gramma-Schmita - pomyśly ro próby f < f - iepomyśly ro próby spółczyi zięszajacy - iepomyśly ro próby spółczyi zmiejszający - iepomyśly ro próby spółczyi zmiejszający - pomyśly ro próby spółczyi zmiejszający zmiaa ieruu ortogoalej bazy f < f -7 pomyśly ro próby f < f oy put bazoy ro Obrót BAZY 7 proceura Gramma-Schmita 7-8 iepomyśly ro próby 8-9 iepomyśly ro próby - pomyśly ro próby f < f 9- pomyśly ro próby f < f 7 - iepomyśly ro próby - pomyśly ro próby zmiaa ieruu ortogoalej bazy f < f 9 7 8 - pomyśly ro próby f < f Put tórym spełioe jest ryterium zbieżości a zatem put opoiaa MINIMUM baaej fucji Rys.. Ilustracja zasay ziałaia metoy Rosebroca Przez obieg rozumie się przy tym zespół czyości polegających a yoaiu po jeym rou e szystich ortogoalych ieruach atualie oboiązującej bazy D. Kryterium taie zaczie przełuża czas ziałaia proceury. W oretych realizacjach metoy Rosebroca stosuje się proste ryterium, a miaoicie arzuca się z góry ilość iteracji L, po tórej astępuje automatycze zatrzymaie proceury. Jeżeli po przeaalizoaiu otrzymaych yió oaże się, że
uzysay yi jest zaoalający, to a tym się poprzestaje, przeciym ypau przyjmuje się oą artość a L i startuje z ostatio yliczoego putu. Przyła Wyorzystując metoę Rosebroca zaleźć miimum fucji óch zmieych postaci F Przyróując pochoe cząstoe F zglęem zmieych o zera łato stierzić, że miimum fucji zajuje się pucie F ˆ F a jego artość yosi F. Przyjmiemy astępujące ae ejścioe: ˆ ortogoala baza ejścioa [ ] D put startoy ro obliczeioy, spółczyi zięszający α spółczyi zmiejszający β, ryterium zbieżości L p. 7 suma pomyślych roó e szystich ieruach ortogoalej bazy S.. Kro r ierue poszuiań zgoy z ersorem. Wartość fucji F la putu startoego mi. Atuale spółrzęe putu,,,,, < mi?, < TAK S,, mi Zięszeie ługości rou ustaloym ieruu α,,, Atuale spółrzęe putu,
,,8,,8,8, < mi?, <, TAK S,,,8, mi Zięszeie ługości rou ustaloym ieruu α,,,8 Atuale spółrzęe putu,8,,8,,,, < mi?, <, NIE S,,,8,, mi Zmiejszeie ługości rou ustaloym ieruu β,,,8,9 Atuale spółrzęe putu,,7,9,7,7,9, < mi?,9 <, NIE S,,,8,9,7, mi Zmiejszeie ługości rou ustaloym ieruu β,,,9, Atuale spółrzęe putu,7,,,,, mi < mi,?, <, NIE Zmiejszeie ługości rou ustaloym ieruu β,,,, Atuale spółrzęe putu,,,, S,,,8,9,,,
, < mi?,,, <, TAK S,,,8,9,,,, mi, Zmiejszeie ługości rou ustaloym ieruu β,,,, Atuale spółrzęe putu,,9 7, 7,9,9,7 7 < mi?,7 <, NIE. Poszuiaia spółrzęej putu optymalego zglęem ieruu poszuiań zgoy z ersorem moża uzać za zaończoe, mi, S,,,8,9,,,,,,,,9,,,,,,8,9 Rys.. Poszuiaia ieruu zgoym z ersorem. Kro r ierue poszuiań zgoy z ersorem Atuale spółrzęe putu
,, 7,, 7,,,, 7 < mi?,<, NIE S, mi Zmiaa zrotu poszuiań ustaloym ieruu Atuale spółrzęe putu,, 8,,8 8,,8,8, 8 < mi?,<, TAK S,, mi Zięszeie ługości rou ustaloym ieruu α,,, Atuale spółrzęe putu,, 9 8,,8, 9,,,, 9 < mi?, <, TAK S mi, Zięszeie ługości rou ustaloym ieruu α,,8 S,, Atuale spółrzęe putu,, 9,8,,,,,, < mi?, <, NIE Zmiejszeie ługości rou ustaloym ieruu β,,8,9 S,,9, Atuale spółrzęe putu,,,9,,,,,,9 < mi?,9 <, NIE,,,,,8,,7
Zmiejszeie ługości rou ustaloym ieruu β,,9, S,7,, Atuale spółrzęe putu,,,,,7,,7,7, < mi?, <, NIE Zmiejszeie ługości rou ustaloym ieruu β,,, S,7,,,, Atuale spółrzęe putu,,,,7,97,,97,97,, < mi?, <, TAK mi, S Zmiejszeie ługości rou ustaloym ieruu β,,, S,7,,,,,9 Atuale spółrzęe putu,,,,97,87,,87,87,88 < mi?,88 <, NIE. Poszuiaia spółrzęej putu optymalego zglęem ieruu poszuiań zgoym z ersorem moża uzać za zaończoe, mi, S,,97 7. Algorytm obrotu spółrzęych, tóry yzacza oy uła zajemie ortogoalych etoró jeostoych, torzących oą bazę przestrzei poszuiań, S S,,, S,,
ortoormalizacja przebiega astępująco,, <,, >,,,,778,778,,778,778,,,,77,,,77 [,],,778,778 X,,,,97,97,,, 7,, 8 9,,,,9,8,9,, X Rys.. Poszuiaia ieruu zgoym z ersorem
Zatem z bazy D [ ] yiu pozytyych roó S, oraz S, otrzymamy oą bazę D,778,77 [ ],778,77,77,77,77,77 Rys. 7. Obrót bazy 8. Po obrocie bazy postępujemy pooie zgoie z putem przyjmując: ortogoala baza ejścioa D,77,77 [ ],77,77 T put startoy [,,97] ro obliczeioy, spółczyi zięszający, zmiejszający α, β, ryterium zbieżości L p. suma pomyślych roó e szystich ieruach ortogoalej bazy S 7 mi, 8a. Kro r ierue poszuiań zgoy z ersorem Atuale spółrzęe putu,,77,,,97,77,989,
< mi?, <, TAK S,, mi, Zięszeie ługości rou ustaloym ieruu α,,, 8b. Atuale spółrzęe putu,,77,98,,989,77,,978 < mi?,978<, NIE S,8, mi Zmiejszeie ługości rou ustaloym ieruu β,,,, S,8, 8c. Atuale spółrzęe putu,98,77,9897,,,77,,7 < mi?,7<, TAK S,, mi,,,7 8. Kro r ierue poszuiań zgoy z ersorem Atuale spółrzęe putu,9897,77,978,,,77,999,978,978,999,999, < mi?, <,7 NIE Zmiaa zrotu poszuiań ustaloym ieruu Atuale spółrzęe putu,9897,77,8,,,77,,8,8,,, < mi?, <,7 NIE 9. Wszystie ierui ortogoalej bazy rozpatrzoe.. Zaończeie zaaia ryterium zbieżości.