470 likes | 598 Views
Estimation of Distribution Algorithms. Petr Pošík Prezentace pro předmět Kognitivní procesy 6. dubna 2006. Úvod. Úvod >. Black-box optimalizace (BBO). Optimalizace typu „černá skříňka“: Vstupy: Jak vypadají potenciální řešení problému? Jak se ohodnocuje kvalita potenciálního řešení?
E N D
Estimation of Distribution Algorithms Petr Pošík Prezentace pro předmětKognitivní procesy 6. dubna 2006
Úvod> Black-box optimalizace (BBO) Optimalizace typu „černá skříňka“: • Vstupy: • Jak vypadají potenciální řešení problému? • Jak se ohodnocuje kvalita potenciálního řešení? • Výstup: • Co nejlepší řešení (ve smyslu ohodnocení) • Apriorní znalosti o hodnotící funkci: žádné! • může být nediferencovatelná, nespojitá, mulitmodální, zašuměná, můžeme mít několik měřítek kvality (i protichůdných), ...
Úvod> Řešení BBO • Hill-climbing, simulované žíhání, ... • Genetické algoritmy (GA) jsou skvělé, ale mohly by být ještě lepší! • GA jsou oblíbené, protože • se snadno používají, • lze je aplikovat bez apriorních znalostí, • lze je snadno paralelizovat, ... • Problémy s tradičními operátory GA • adaptace (mohly by problém řešit, ale nevyřeší) • flexibilita (složité interakce)
Úvod> Genetický algoritmus • Initialization: Inicializuj a ohodnoť populaci • Selection: Vyber rodiče • Crossover: Proveď křížení • Mutation: Proveď mutaci • Evalutation: Ohodnoť potomky • Replacement: Zařaď potomky do populace • Go to 2.
Úvod> Rekombinace Pravděpodobnostní model • Nepoužívejte jednobodové nebo rovnoměrné křížení... • Naučte pstní model a vzorkujte z něj! • vyšší flexibilita • schopnost adaptace • Estimation of Distribution Algorithms (EDAs) přesně tohle dělají!
Úvod> Estimation of Distribution Algorithm • Initialization: Inicializuj a ohodnoť populaci • Selection: Vyber rodiče • Learning: Nauč se pstní model • Sampling: Navzorkuj potomky z modelu • Evalutation: Ohodnoť potomky • Replacement: Zařaď potomky do populace • Go to 2.
Úvod> Názvy EDAs mají různé názvy: • EDAsEstimation of Distribution AlgorithmsAlgoritmy odhadující rozdělení • PMBGAsProbabilistic Model-Building Genetic AlgorithmsGenetické algoritmy vytvářející pravděpodobnostní modely • IDEAsIterated Density Estimation AlgorithmsAlgoritmy s iterovaným odhadováním rozdělení
Úvod> Obsah přednášek • EDAs pro vektory diskrétních hodnot (např. binární) • Motivační příklad • Bez interakcí • Párové interakce • Vyšší interakce • EDAs pro vektory reálných čísel • Evoluční strategie • Histogramy • Gaussovo rozdělení a jeho směsi
Binární řetězce> Motivační příklad 5-bitový OneMax problém • Optimum: 11111, fitness: 5 Algoritmus: Univariate Marginal Distribution Alg. (UMDA) • Velikost populace: N=6 • Párová turnajová selekce • Model: vektor pravděpodobností • každý je pravděpodobnost, že se na daném místě nachází 1 • Učení modelu: • vypočti ze slibných řešení • Vzorkování z modelu: • vygeneruj 1 na d-té pozici s pstí
Binární řetězce>Motivační příklad Selekce Původní populace Vybrané turnaje 11001 (3) 00010 (1) 11101 (4) 10111 (4) 00001 (1) 10010 (2) 11101 (4) vs. 10111 (4) 10111 (4) vs. 11101 (4) 11101 (4) vs. 00001 (1) 10010 (2) vs. 00010 (1) 00010 (1) vs. 00010 (1) 00010 (1) vs. 11001 (3)
Binární řetězce>Motivační příklad Rekombinace Vybraní rodiče Populace potomků 11101 (4) 10111 (4) 11101 (4) 10010 (2) 00010 (1) 11001 (3) 10100 (2) 10101 (3) 11011 (4) 00011 (2) 10001 (2) 10011 (3) Vzorkování 5 3 3 3 4 - - - - - 6 6 6 6 6 Pravděpodobnostní vektor
Binární řetězce>Motivační příklad Chování UMDA pro OneMax problém • „1“ jsou průměrně lepší než „0“...... selekce zvyšuje podíl „1“ • Rekombinace zachovává a kombinuje „1“...... podíl „1“ v průběhu času stoupá • Když máme hodně „1“ v populaci, nemůžeme optimum minout
Binární řetězce>Motivační příklad UMDA a 50-bitový OneMax problém
Binární řetězce>Motivační příklad UMDA a D-bitový OneMax problém Počet ohodnocení pro spolehlivou konvergenci: • UMDA: • Ostatní: • Hill-climber: • GA s rovnoměrným křížením: přibl. • GA s 1-bodovým křížením: o trochu pomalejší • UMDA se chová přibližně stejně jako GA s rovnoměrným křížením!
Binární řetězce>Motivační příklad Bude to fungovat vždycky? • Asi vás zklamu, ale nebude. • Problém: Spojené 5-bitové pastičky • Pastička je definována jako
Binární řetězce>Motivační příklad 5-bitová pastička
Binární řetězce>Motivační příklad UMDA selhává na spojených pastičkách • OneMax • Optimum v bodě 1111...1 • „1“ jsou průměrně lepší než „0“ • Pastičky • Optimum v bodě 1111...1 • Ale • Jednorozměrné psti vedou GA špatným směrem! • Exponenciálně se zvyšující velikost populace, jinak GA nenalezne optimum!
Binární řetězce>Motivační příklad UMDA a 10 5-bitových pastiček
Binární řetězce>Motivační příklad Jak to napravit? • Pastička je klamná funkce: • Statistiky nad 1**** a 0**** nevedou k cíli • Podobně i statistiky na 11*** a 00***, 111** a 000**, 1111* a 0000* • Ale: ... 11111 bude průměrně lepší než 00000 • 5-bitové statistiky by pro 5-bitové pastičky měly fungovat stejně, jako 1-bitové statistiky pro OneMax problém
Binární řetězce>Motivační příklad Řešení spojených pastiček • Připomeňme: • Učení modelu: • pro všechny pětice bitů zvlášť • vypočítat p(00000), p(00001), ... , p(11111) • Vzorkování • Každá pětice se generuje nezávisle • Vygeneruj 00000 s pstí p(00000), 00001 s pstí p(00001), atd.
Binární řetězce>Motivační příklad Dobré statistiky a pastičky jsou snadné
Binární řetězce>Motivační příklad Dobré zprávy • Dobré statistiky fungují skvěle! • Optimum nalezeno za ohodnocení • Stejné jako u OneMax problému • Ostatní: • Hill-climber: , k=5 • GA s rovnoměrným křížením: přibl. • GA s 1-bodovým křížením: podobně jako s rovnoměrným křížením
Binární řetězce>Motivační příklad Co stojí před námi? • Pokud budeme umět • najít dobré statistiky s malou režií a • využít je v rámci UMDA, • pak budeme umět řešit separabilní problémy řádu k za maximálně O(D2) ohodnocení • a takových problémů není málo • Řešení problému se úzce vztahuje k tzv. linkage learning, tj. hledání vazeb mezi proměnnými
Binární řetězce> Diskrétní EDAs: přehled • Přehled • Jednorozměrné (bez interakcí) • Dvojrozměrné (párové interakce) • Mnoharozměrné (interakce vyšších řádů) • Závěry a praktická doporučení
Binární řetězce> EDAs bez interakcí • Population-based incremental learning (PBIL) • Baluja, 1994 • Univariate marginal distribution alg. (UMDA) • Muehlenbein, Paass, 1996 • Compact genetic algorithm (cGA) • Harik, Lobo, Goldberg, 1998
Binární řetězce>Bez interakcí Porovnání • Podobnosti: • všechny používají vektor pravděpodobností • Rozdíly: • PBIL a cGA nepoužívají populaci, jen vektor p;UMDA používá populaci • PBIL a cGA používají odlišná pravidla pro adaptaci vektoru p
Binární řetězce>Bez interakcí Souhrn • Výhody: • Jednoduchost • Rychlost • Jednoduše se simulují veliké populace • Omezení • Spolehlivě řeší pouze problémy rozložitelné na podproblémy řádu 1
Binární řetězce> Diskrétní EDAs: přehled • Přehled • Jednorozměrné (bez interakcí) • Dvojrozměrné (párové interakce) • Mnoharozměrné (interakce vyšších řádů) • Závěry a praktická doporučení
Binární řetězce>Párové interakce Od jednotlivých bitů k párovým modelům • Jak posuzovat dvě pozice dohromady? • Dát je do souvislosti pomocí závislosti A B A B
Binární řetězce>Párové interakce Příklad párového modelu: strom závislostí • Dependency tree • Uzly jsou jednotlivé binární proměnné (pozice chromozomu) • Hrany vyjadřují závislost mezi proměnnými • Vlastnosti: • Každý uzel závisí maximálně na 1 dalším uzlu • Graf neobsahuje cykly • Graf je souvislý
Binární řetězce>Párové interakce Učení struktury stromu závislostí • Významnost hrany = vzájemná informace • Algoritmus pro hledání maximální kostry grafu (Prim, 1957) • Ohodnoťte hrany vzájemnou informací • Začněte stavět strom z libovolného uzlu • K hranám a uzlům již zařazeným do kostry přidejte vždy ten uzel, který je k nim připojen nejlépe ohodnocenou hranou
Binární řetězce>Párové interakce Strom závislostí: Příklad 1
Binární řetězce>Párové interakce Strom závislostí: pravděpodobnosti
Binární řetězce>Párové interakce Algoritmy s modely párových interakcí • MIMIC • Mutual Information Maximization for Input Clustering • de Bonet et al., 1996 • Řetězce • COMIT • Combining Optimizers with Mutual Information Trees • Baluja & Davies, 1997 • Stromy • BMDA • Bivariate Marginal Distribution Algorithm • Pelikan & Muehlenbein, 1998 • Lesy
Binární řetězce>Párové interakce Shrnutí • Výhody • Stále ještě jednoduchost • Stále ještě rychlost • Umí se něco naučit o struktuře • Omezení • Spolehlivě řeší pouze problémy rozložitelné na podproblémy maximálně řádu 2
Binární řetězce> Diskrétní EDAs: přehled • Přehled • Jednorozměrné (bez interakcí) • Dvojrozměrné (párové interakce) • Mnoharozměrné (interakce vyšších řádů) • Závěry a praktická doporučení
Binární řetězce>Interakce vyšších řádů Extended Compact GA • ECGA (Harik, 1999) • Využívá tzv. součin marginálních modelů (MPM) • Skupiny proměnných jsou považovány za celky • Skupiny se hledají adaptivně v průběhu evoluce • Skupiny jsou považovány za vzájemně nezávislé • Každá skupina se modeluje sdruženou hustotou psti • OneMax: [1][2][3][4][5][6][7][8][9][10] • Trap: [1 2 3 4 5][6 7 8 9 10]
Binární řetězce>Interakce vyšších řádů ECGA: Učení struktury • Dvě součásti • Hodnotící metrika: Minimum Description Length (MDL) • Prohledávací procedura: Hladový algoritmus • Prohledávací procedura • Začíná se skupinami o 1 proměnné (1 bitu) jako PBIL • Provede spojení dvou skupin, které přinese největší užitek • Končí, pokud žádné spojení není užitečné
Binární řetězce>Interakce vyšších řádů ECGA: Hodnocení struktury • MDL: minimální délka popisu • Minimalizuj počet bitů potřebných k uložení modelu a dat • Délka popisu modelu: • Každá skupina g má |g| rozměrů, tj. 2|g|četností, které mohou nabývat hodnoty až N • Délka popisu populace při daném modelu: • Definována pomocí entropie marginálních distribucí, Xg je |g|-rozměrný náhodný vektor, xg je jeho realizace
Binární řetězce>Interakce vyšších řádů Bayesian Optimization Algorithm • BOA (Pelikan, Goldberg, Cantú-Paz, 1998) • Využívá Bayesovské sítě • Podmíněné závislosti místo skupin • Řetězec, strom, les – spec. případy Bayes. sítí • Trap: • Stejný model byl nezávisle použit také v: • EBNA – Estimation of Bayesian Network Alg. (Etxeberria et al., 1999) • LFDA – Learning Factorized Density Alg. (Muehlenbein et al., 1999)
Binární řetězce>Interakce vyšších řádů BOA: Učení struktury • Dvě součásti • Hodnotící metrika: Bayesian-Dirichlet nebo Bayes. inf. kritérium (BIC) • Prohledávací procedura: Hladový algoritmus • Prohledávací procedura • Začni s prázdným grafem • Aplikuj tu z následujících operací, která nejvíc zlepšuje hodnocení (skonči, pokud nelze zlepšit) • Přidej hranu • Odstraň hranu • Otoč hranu
Binární řetězce>Interakce vyšších řádů BOA: Vlastnosti • Teorie (Pelikan, Goldberg, Harik a další): • Velikost populace: • Počáteční přísun, správné rozhodnutí mezi část. řešeními, drift, učení modelu • Počet generací do konvergence • Rovnoměrné a exponenciální škálování • BOA řeší problémy rozložitelné na podproblémy řádu k za méně než O(D2) ohodnocení!
Binární řetězce>Interakce vyšších řádů Porovnání modelů BMDA ECGA BOA, EBNA, LFDA Flexibilita modelů se zvyšuje
Binární řetězce>Interakce vyšších řádů Souhrn • Modely • Bayesovské sítě jsou nejobecnější • Mnoharozměrné modely se hůře učí • Jsou ovšem mnohem schopnější • Omezení • Řeší problémy rozložitelné na podproblémy omezeného řádu • Neumí uspokojivě řešit problémy, které nejsou rozložitelné na podproblémy logaritmické velikosti
Binární řetězce> Doporučení pro diskrétní EDA • Jednoduché problémy • PBIL, UMDA, cGA • Složitější problémy • MIMIC, COMIT, BMDA • Složité problémy • BOA, ECGA, EBNA, LFDA • Ještě složitější problémy • hBOA (Hierarchical BOA)