Efektivní paralelizace evolučních algoritmů
Effective Parallelization of Evolutionary Algorithms
diploma thesis (DEFENDED)

View/ Open
Permanent link
http://hdl.handle.net/20.500.11956/120915Identifiers
Study Information System: 199616
Collections
- Kvalifikační práce [11325]
Author
Advisor
Referee
Neruda, Roman
Faculty / Institute
Faculty of Mathematics and Physics
Discipline
Artificial Intelligence
Department
Department of Theoretical Computer Science and Mathematical Logic
Date of defense
14. 9. 2020
Publisher
Univerzita Karlova, Matematicko-fyzikální fakultaLanguage
Czech
Grade
Excellent
Keywords (Czech)
evoluční algoritmy, paralelizace, vytížení CPUKeywords (English)
evolutionary algorithms, paralellization, CPU utilizationEvoluční algoritmy se často používají na těžké optimalizační problémy. Jejich řešení trvá netriviální čas a proto tu je tlak na efektivní paralelizaci těchto algoritmů. Bohužel klasické metody paralelizace nefungují moc dobře v případech, kdy jednotlivá ohodnocení problémů trvají výrazně různou dobu. V této práci se pokusíme rozšířit evoluční algoritmus s prokládáním generací, který nabízí lepší využití výpočetních zdrojů než klasické paralelní evoluční algoritmy, o spekulativní vyhodnocení. Spekulativním vyhodnocením mys- líme odhad fitness funkce jedince a předpočítání následujících kroků, které v případě správného odhadu později využijeme. V sérii experimentů porov- náme algoritmus se spekulativním vyhodnocením s originální verzí a podí- váme se na vliv přesnosti ve spekulativním kroku na výkon algoritmus. 1
Evolutionary algorithms are often used for hard optimization problems. Solving time of this problems is long, so we want effective parallelization for this algorithms. Unfortunately, classical methods of parallelization do not work very well in cases where the individual evaluations of problems take significantly different times. In this project, we will try to extend the evolu- tionary algorithm with interleaving generations, which offers a better use of computational resources than classical parallel evolutionary algorithms, by speculative evaluation. Speculative evaluation means the estimation of an in- dividual's fitness function and the prediction of the following steps, which we will use later in the case of a correct estimate. We compare the algorithm with speculative evaluation with the original version in a series of experi- ments and we look at the effect of accuracy in the speculative step on the performance of the algorithm. 1