Title: UMEL
1UMELÁ INTELIGENCIA prednáška c. 9
Prírodne inšpirované prehladávacie
algoritmy Marian.Mach_at_tuke.sk http//neuron.tuke
.sk/machm
2Osnova prednášky
- Úvod
- Požiadavky na riešenú úlohu
- Priestor prehladávania
- Všeobecný prehladávací algoritmus
- Sledovanie cinnosti algoritmu
- Aplikácie
- Ukážky algoritmov
- (prehladávanie v akcii - SU)
- Záver
3Prehladávanie inšpirované prírodou
- Postupné generovanie a testovanie riešení
(kandidátov) - potrebné preskúmat velké množstvá kandidátov pre
nájdenie riešenia (typickytisíce až milióny) - Prírodná inšpirácia
- je chápaná volne (a môže byt realizovaná v
širokom rozsahu) - nesnaží sa modelovat prírodné procesy
- cielom je použit vynálezy prírody pre riešenie
úloh - soft computing, computational intelligence
4Požiadavky na riešenú úlohu
- tvar riešenia (prirodzený alebo transformácia)
- rozklad na zložky (atribúty a ich hodnoty)
- možnost ohodnotenia pokusu o riešenie
- porovnávanie riešení pomocou globálneho kritéria
(A1h1i),...,(Anhnk)
5Metódy slabé a silné
Background (domain) knowledge
Silná metóda
Ideálna slabá metóda
Slabá metóda
Slabá metóda
Silná
- neexistuje silná metóda
- silná metóda z praktických dôvodov nepoužitelná
- postacuje výkonnost slabej metódy
6Priestor prehladávania
- N-rozmerný priestor (N pocet atribútov)
- atribút súradná os
- hodnoty atribútu mapované na hodnotyna súradnej
osi - body priestoru reprezentujú potenciálne riešenia
(kandidátov riešení)
7Plocha vhodnosti
- (N1)-vá súradná os reprezentuje (ne)vhodnost
riešení - vhodnost nemusí byt definovaná (zakázaná oblast)
- hladáme extrém (podla definície vhodnosti)
h21
h22
h23
A2
h24
h11
h14
h13
h12
A1
8Ukážka reprezentácie
Priestor riešení
- všeobecná úloha
- pevný pocet krokov
- triediaca úloha
- premenlivý pocet krokov
- selekcná úloha
Priestor prehladávania
0321224250
9Všeobecný prehladávací algoritmus
- Pocet jedincov
- populacný alg.
- individuálny alg.
- Spôsob tvorby novej populácie
- exploration (random search)
- exploitation (gradient search)
Populácia jedincov
Koniec ?
Nová populácia
10Sledovanie cinnosti algoritmu
- Individuálny / štatistický pohlad na populáciu
- Vývoj vhodnosti (priemernej, max. a min, ...)
- Iné miery (konvergencia, pokrytie priestoru
prehladávania)
11Aplikácie
- PIPA sa vo všeobecnosti používajú pre riešenie
- syntetických úloh
- (pseudo)optimalizacných úloh
- Castý výskyt ako pomocnej metódy (v pozadí)
- strojové ucenie / dolovanie dát
- neurónové siete
- úlohy s ohraniceniami
- KKUI
- Zostavovanie krmnych dávok hovädzieho dobytka
12GECCO99
- 73 príspevkov v sekcii Real World Applications
- riadenie (riadenie skleníka, znalostné bázy pre
fuzzy regulátory, optimálna priepustnost výrobnej
linky) - predikcia (magnetoencefalogramy epileptických
pacientov, zhoršovanie vizuálneho pola pacientov) - robotika (úchop predmetov, optimálna cesta)
- alokácia zdrojov (priradovanie frekv. kanálov)
- návrh (analógové a digitálne elektronické obvody)
- plánovanie (vzdušné hliadkovanie, casové rozvrhy)
- modelovanie (preteky v zbrojení - India a
Pakistan)
13Evolucný algoritmus
- Populacný (paralelný) algoritmus
- Pseudostochastický algoritmus
- Široká skupina algoritmov
- genetické algoritmy
- evolucné stratégie
- evolucné programovanie
- genetické programovanie
- diferenciálna evolúcia
- eugenická evolúcia
Inšpirácia
- Prirodzený výber (Darwin)
- Génová dedicnost (Mendel)
14Selekcia
- Prehladávanie je riadené umelou evolúciou
tvoriacou selekcný tlak - kto sa reprodukuje
- vhodnejší jedinci majú väcšiu šancu než menej
vhodní - kto prežije
- oddelené generácie vs. viacgeneracné spolocenstvá
15Tvorba potomkov
- Jedince (chromozómy) majú tvar genetického kódu
reprezentovaného riešenia
- Typicky viacstupnový proces
- Premiešavanie genetického materiálu rodicov
- Zmena genetického materiálu (jeden alebo viac/
mnoho rodicov)
Rodicia
kríženie
Genetické operátory
mutácia
Potomkovia
16Základná štruktúra EA
Tvorba potomkov
Generovanie jedincov
Nová populácia
Vyhodnotenie potomkov
T T 1
Vyhodnotenie jedincov
Koniec ?
Výber rodicov
17EA demo - pôvodná populácia
C
B
B SZ J J SV SZ JZ S J S
S C JZ SV JZ S JV SZ JZ JV JV SV
18EA demo - nová populácia
B SZ J J SV SZ JZ S J S
S C JZ SV JZ S JV SZ JZ JV JV SV
C
B
B SZ J J SV SZ JZ S JV JV
SV C JZ S JV SZ JZ J S S SV
JZ
19Anjeli Smrtelníci
- Populacný (paralelný) algoritmus
- Stochastický algoritmus
- Dva typy jedincov
- smrtelníci (body v priestore prehladávania)
- anjeli (riadia beh vecí)
- Prehladávanie riadené umelým svetom
- Vhodnost dlžka života
Inšpirácia
- Komplexné chovanie ekologických systémov
20Svet AS
- svet má konecné rozmery
- je uzavretý (toroidálny tvar)
21Základná štruktúra AS
Pozbieranie mrtvych
Generovanie smrtelníkov
Klonovanie
Pohyb
Mutácia
Rozmiestnenie jedincov
Koniec ?
Skrátenie života
22AS demo
D
D SZ SZ SV JV J SV JZ J J SZ
D
23Umelé mravce (mravcie kolóny)
- Populacný (paralelný) algoritmus
- Pseudostochastický algoritmus
- Umelý mravec
- kladie a orientuje sa podla feromónovej stopy
- nie je úplne slepý
- stochastický výber cesty
- má pamät (nikdy nejde tam kde už bol)
Inšpirácia
- Kolektívne chovanie mravcích kolónií
24Hladanie najkratšej cesty
- Charakter kladnej spätnej väzby
25Prehladávanie
- Prehladávanie je vykonávané v umelom svete (v
ktorom sa hladá najkratšia cesta) - bod v pôvodnom priestore prehladávania je cestou
v mravcom svete - Je možné definovat vzdialenosti medzi bodmi
- Vhodnost sa použije na update feromónových stôp
pozdlž ciest v mravcom svete - Jedinec sa generuje ako náhodná cesta
- závisí od feromónovej stopy a od vzdialeností
26Základná štruktúra UM
Kladenie ferom. stopy
Rozmiestnenie mravcov
Generovanie ciest
Rozmiestnenie mravcov
Vyhodnotenie ciest
Generovanie ciest
Koniec ?
Vyprchávanie feromónu
Vyhodnotenie ciest
27UM demo
Vzdialenosti
Štart
Feromón
Štart
28Simulované žíhanie
- Nie je populacným algoritmom
- Stochastický algoritmus
- Nezávisle objavený aj Cerným z Katedry
teoretickej fyziky MFF UK v Bratislave - Metóda vhodná na hladanie globálneho minima
- je to vlastne horolezecký algoritmus umožnujúci
únik z lokálneho extrému
Inšpirácia
- Fyzikálna evolúcia makroskopic-kých systémov
29Akceptácia nového riešenia
- Nové riešenie je akceptované podla vhodnosti na
pravdepodobnostnom základe - pre dosiahnutie rovnováhy systém zotrváva na
každej teplote urcitý cas
30Základná štruktúra SŽ
Generovanie jedinca
Koniec ?
Akceptácia
Vyhodnotenie jedinca
Vyhodnotenie
Generovanie jedinca
Koniec ?
Nastavenie teploty
31SŽ demo
D
D SZ SZ SV JV J SV JZ J J SZ
D1
D2
D1 ... JV ...
D2 ... SV ...
32Dynamické urcovanie vhodnosti
- Nie je samostatným algoritmom ale rozšírením
iných algoritmov
- Urcovanie vhodnosti (tvar plochy vhodnosti)
spôsobuje - úloha je príliš lahká - nie je tlak na
pokracovanie vývoja - úloha je príliš obtiažna - algoritmus sa nevie
zachytit
Inšpirácia
33Koevolucné urcovanie vhodnosti
- Sútaženie (najcastejšie) dvoch populácií
- obe sa vyvíjajú
- jedna je stabilná (aktivujú sa jej rôzne casti)
- Dvojité prehladávanie
- toho istého priestoru prehladávania
- rôznych priestorov - každá populácia má svoj
(jedna reprezentuje riešenia, druhá nejaké
pomocné objekty)
34Základná koevolucná štruktúra
...
...
Koniec ?
Koniec ?
...
...
Vyhodnotenie
Vyhodnotenie
Súboj
...
...