Stáhnout prezentaci
Prezentace se nahrává, počkejte prosím
1
Genetické algoritmy a jejich využití při hledání rovnovážných struktur
Bc. Lucie Zárubová Vedoucí práce: Mgr. Karel Oleksy, Doc. RNDr. René Kalus, Ph.D.
2
OBSAH Cíle Evoluční algoritmy Genetické algoritmy Testovaná nastavení
Závěr Vyhlídky
3
CÍLE Nalézt vhodné hodnoty parametrů algoritmu
Nalézt vhodné evoluční operátory, zjistit jejich interakce a ověřit optimální nastavení programu
4
EVOLUČNÍ ALGORITMY Algoritmy používající pro řešení dané úlohy postupy napodobující evoluční procesy známé z biologie (dědičnost, mutace, přirozený výběr, křížení) Například tzv. genetický algoritmus
5
GENETICKÉ ALGORITMY Pomocí aplikací principů evoluční biologie se snaží nalézt řešení složitých problémů neřešitelných exaktními algoritmy Jedinec většinou reprezentován binárními čísly (řetězcem nul a jedniček), ale i jinak (např. stromem, maticí….) V praxi využívány k řešení různých optimalizačních úloh
6
VYTVOŘENÍ NOVÉ GENERACE VYPOČTENÍ FITNESS NOVÝCH JEDINCŮ
Fáze algoritmu VYTVOŘENÍ NOVÉ GENERACE ZAČÁTEK CYKLU INICIALIZACE Tvorba nulté generace (náhodně vygenerovaní jedinci) Výběr několika jedinců s vysokou fitness funkcí využití křížení, mutace, reprodukce Při nesplnění zastavovací podmínky Výstupem jedinec s nejvyšší hodnotou fitness funkce VYPOČTENÍ FITNESS NOVÝCH JEDINCŮ KONEC ALGORITMU KONEC CYKLU
7
VÝPOČETNÍ PROGRAM V našem výpočetním programu lze provést několik změn nastavení. Lze nastavit počet optimalizací a počet generací v jedné optimalizaci nastavit různé pravděpodobnosti různých evolučních operátorů nastavit různý typ interakčního modelu v klastru vody (TIP3P, TIP4P, TIP5P) nastavit různý počet molekul v klastru
8
TESTOVANÁ NASTAVENÍ Testovali jsme výpočetní program pro různé druhy nastavení pro různé velikosti klastrů Test paralelizace – závislost počtu optimalizací na počtu procesorů Test průběhu optimalizací – závislost vývoje energie na chodu programu Test vhodnosti použití různých evolučních operátorů Test interakce evolučních operátorů Ověření našeho optimálního nastavení
9
TEST PARALELIZACE Pro Lennard-Jonesovy klastry o 10 a 30 atomech
Pro 1-8 procesorů Na frontě teri na VŠB – omezeno časem 72 hodin Při ideálním programu, kdy by se daly paralelizovat všechny výpočty – závislost počtu optimalizací by byla lineární V našem případě se počet optimalizací bude blížit k určité konečné hodnotě – určité části programu paralelizovat nelze
10
Počet procesorů Počet optimalizací Za 1 hodinu 1 1545 21,46 22 0,31 2
10 atomů 30 atomů Počet procesorů Počet optimalizací Za 1 hodinu 1 1545 21,46 22 0,31 2 2610 36,25 42 0,58 3 3805 52,85 64 0,89 4 4629 64,29 85 1,18 5 5702 79,19 106 1,47 6 6598 91,64 126 1,75 7 7363 102,26 148 2,06 8 7635 106,04 168 2,33
12
TEST PRŮBĚHU OPTIMALIZACÍ
Pro klastry vody s 2-13 atomy Sledovaná závislost vývoje energie během chodu programu Snaha nalézt co nejstabilnější konfigurace během každé optimalizace Následně porovnáváno s dostupnými výsledky D.J.Wales and M. P. Hodges, Chem. Phys. Lett., 286, 65 (1998)
13
Energy [∙10-2 eV] n Literature 2 27,038 27,036 3 72,544 72,537 4
120,837 120,827 5 157,650 157,636 157,637 156,637 156,636 6 204,985 204,967 203,423 7 252,445 252,423 8 316,647 316,619 316,508 308,613 9 356,982 356,951 356,018 356,101 10 405,266 405,231 405,163 403,520 395,110 11 447,207 445,812 444,101 445,199 444,198 443,078 445,336 444,74 443,864 445,022 445,006 12 510,863 496,336 495,383 506,176 493,457 490,722 506,037 490,292 487,809 493,287 13 552,385 552,335 550,725 536,591 540,721 552,336 529,799 547,310 550,446 530,508 552,164
14
TEST VHODNOSTI POUŽITÍ RŮZNÝCH EVOLUČNÍCH OPERÁTORŮ
Testovali jsme vhodnost použití genotypové a fenotypové mutace, křížení pomocí řezu rovinou, pravděpodobnost křížení jednotlivých proměnných či pravděpodobnost křížení na úrovni molekul Vždy jsme testy prováděli pouze pro jeden operátor, ostatní se nepoužívaly Testováno pro klastr o 11 molekulách vody
15
Pravděpodobnost genotypové mutace
Dochází k náhodnému vybrání molekuly, poté se náhodně vygeneruje přirozené číslo od 1 do počtu souřadnic (které popisují polohu těžiště molekuly), poté se náhodně tolikrát zvolí některá souřadnice těžiště molekuly, ta se změní Testováno pro pravděpodobnost 0,05; 0,1; 0,2; 0,3; 0,4; 0,5
17
Pravděpodobnost fenotypové mutace
Dochází k náhodnému výběru molekuly, ta se náhodně umístí do nové polohy (změní se souřadnice těžiště molekuly), zjistí se zda nová poloha molekuly není špatná (například molekuly jsou příliš blízko u sebe) Testováno pro pravděpodobnost 0,01; 0,05; 0,1; 0,2; 0,3
19
Pravděpodobnost křížení jednotlivých proměnných
Každá souřadnice je v tomto případě reprezentována binárním řetězcem; pro dvě molekuly dojde k rozdělení těchto řetězců, ty se navzájem zkříží; toto se provede nad každou souřadnicí např I vznik nových: 100 I Testováno pro pravděpodobnost 0,0; 0,5; 1,0
21
Pravděpodobnost křížení na úrovni molekul
Vezmou se souřadnice těžiště jednotlivých molekul z klastrů, vygenerují se dvě roviny křížení, poté dojde k výměně souřadnic např. S1 I S2 S3 …….S10 I S11 S1´ I S2´ S3´…...S10´ I S11´ vytvoření S1 S2´ S3´….S10´ S11 S1´ S2 S3 …. S10 S11´ Testováno pro pravděpodobnost 0,0; 0,01; 0,05; 0,1; 0,2
23
Křížení pomocí řezu rovinou
Zvolí se náhodně orientovaná rovina, pomocí ní dochází k rozdělení 2 klastrů na 4 části (každý se rozdělí na 2 části), ty se poté skombinují do dvou nových potomků Testováno pro pravděpodobnost 0,2; 0,4; 0,6; 0,8; 1,0
25
Jako nejvhodnější nastavení se jeví nastavení s pravděpodobností
genotypové mutace ,1 fenotypové mutace ,01 křížení pomocí řezu rovinou ,0 křížení jednotlivých proměnných nenulová křížení na úrovni molekul nedůležitá Je ale třeba ověřit, zda tyto operátory mezi sebou neinteragují a jestli jejich použitím získáme lepší výsledky než s původním nastavením programu
26
TEST INTERAKCE OPERÁTORŮ
Testujeme, zda při různých nastaveních pravděpodobností jednotlivých evolučních operátorů nedochází k interakci mezi nimi a zjišťujeme, zda optimální nastavení, které jsme našli, je opravdu nejvhodnější Třeba otestovat všechny možné kombinace nastavení operátorů mnoho možností provedli jsme zjednodušení
27
Testujeme pro každý operátor pouze 3 možnosti nastavení – optimální a minimální a maximální hodnoty pravděpodobnosti V současnosti probíhají testy
28
OVĚŘENÍ OPTIMÁLNÍHO NASTAVENÍ
Zjišťujeme, zda s pomocí nastavení, o kterém si myslíme, že je optimální, získáme lepší výsledky než s použitím původního nastavení programu Pomocí porovnání s našimi původními výsledky a rovněž s dostupnými výsledky - D.J.Wales and M. P. Hodges, Chem. Phys. Lett., 286, 65 (1998)
29
n Wales Naše I. Naše II. [eV] 2 11 3 12 4 13 5 14 6 15 7 16 8 17 9 18
0,27038 0,27036 11 4,47207 4,45006 4,47109 3 0,72544 0,72537 12 5,10864 4,93287 5,10799 4 1,20838 1,20827 13 5,52385 5,52164 5,44637 5 1,57645 1,57636 1,57637 14 6,04228 5,94573 6 2,04985 2,04967 15 6,51262 6,34390 7 2,52445 2,52423 16 7,06007 6,72378 8 3,16648 3,16619 17 7,50174 7,25051 9 3,56982 3,56018 3,50072 18 8,01399 7,61490 10 4,05267 3,95110 4,05231 19 8,50945 8,20342 20 9,04789 8,64608
30
ZÁVĚR Testovali jsme různá nastavení programu pracujícího pomocí genetických algoritmů Při paralelizaci všech výpočtů by byla závislost počtu optimalizací na počtu procesorů lineární – nelze – počet optimalizací se bude blížit k určité konečné hodnotě Pro menší molekulární klastry vody nachází program stabilní konfigurace, pro větší klastry (n>9) třeba provést další testy – testy použití různých evolučních operátorů Testovali jsme různé varianty použití evolučních operátorů
31
Při použití genotypové mutace se jako nejlepší nastavení programu jeví nastavení s pravděpodobností 0,1 Při použití fenotypové mutace je nejvhodnější nastavení programu nastavení s pravděpodobností 0,01 Při použití křížení pomocí řezu rovinou je nejvhodnější co největší pravděpodobnost mutace (tj. 1,0) Pro křížení jednotlivých proměnných je nejlepším nastavením nenulová pravděpodobnost mutace Při použití křížení na úrovni molekul nehraje nastavení pravděpodobnosti důležitou roli Při testování optimálního nastavení jsme naše nynější a předchozí výsledky porovnávali s výsledky Walese – naše současné výsledky jsou lepší než výsledky předchozí, pro klastry vody s více než 13 molekulami se ale od Walesových hodnot liší více
32
VYHLÍDKY Dokončit test interakce mezi jednotlivými evolučními operátory, provést jeho vyhodnocení a podle získaných výsledků upravit program Upravený program poté využít k dalším výpočtům (např. pro větší klastry vody)
33
DĚKUJI ZA POZORNOST
Podobné prezentace
© 2024 SlidePlayer.cz Inc.
All rights reserved.