Souběžné učení v koevolučních algoritmech

Loading...
Thumbnail Image

Date

Authors

Wiglasz, Michal

Mark

A

Journal Title

Journal ISSN

Volume Title

Publisher

Vysoké učení technické v Brně. Fakulta informačních technologií

ORCID

Abstract

Kartézské genetické programování je druh genetického programování, ve kterém jsou kandidátní programy reprezentovány jako orientované acyklické grafy. Bylo ukázáno, že je možné evoluci kartézských programů urychlit použitím koevoluce, kde se ve druhé populaci vyvíjí prediktory fitness. Prediktory fitness slouží k přibližnému určení kvality kandidátních řešení. Nevýhodou koevolučního přístupu je nutnost provést mnoho časově náročných experimentů pro určení nejvýhodnější velikosti prediktoru pro daný problém. V této práci je představena nová reprezentace prediktorů fitness s plastickým fenotypem, založená na principech souběžného učení v evolučních algoritmech. Plasticita fenotypu umožňuje odvodit různé fenotypy ze stejného genotypu. Díky tomu je možné adaptovat velikost prediktoru na současný průběh evoluce a obtížnost řešeného problému. Navržený algoritmus byl implementován v jazyce C a optimalizován pomocí vektorových instrukcí SSE2 a AVX2. Z experimentů vyplývá, že použitím plastického fenotypu lze dosáhnout srovnatelné kvalitních obrazových filtrů jako u standardního CGP při kratší době běhu programu (průměrné zrychlení je 8,6násobné) a zároveň odpadá nutnost hledání nejvýhodnější velikosti prediktoru jako u koevoluce s prediktory s fixní velikostí.
Cartesian genetic programming (CGP) is a form of genetic programming where candidate programs are represented in the form of directed acyclic graphs. It was shown that CGP can be accelerated using coevolution with a population of fitness predictors which are used to estimate the quality of candidate solutions. The major disadvantage of the coevolutionary approach is the necessity of performing many time-consuming experiments to determine the best size of the fitness predictor for the particular task. This project introduces a new fitness predictor representation with phenotype plasticity, based on the principles of colearning in evolutionary algorithms. Phenotype plasticity allows to derive various phenotypes from the same genotype. This allows to adapt the size of the predictors to the current state of the evolution and difficulty of the solved problem. The proposed algorithm was implemented in the C language and optimized using SSE2 and AVX2 vector instructions. The experimental results show that the resulting image filters are comparable with standard CGP in terms of filtering quality. The average speedup is 8.6 compared to standard CGP. The speed is comparable to standard coevolutionary CGP but it is not necessary to experimentally determine the best size of the fitness predictor while applying coevolution to a new, unknown task.

Description

Citation

WIGLASZ, M. Souběžné učení v koevolučních algoritmech [online]. Brno: Vysoké učení technické v Brně. Fakulta informačních technologií. 2015.

Document type

Document version

Date of access to the full text

Language of document

cs

Study field

Bioinformatika a biocomputing

Comittee

prof. Ing. Lukáš Sekanina, Ph.D. (předseda) doc. Ing. František Zbořil, Ph.D. (místopředseda) Ing. Vladimír Bartík, Ph.D. (člen) doc. Mgr. Lukáš Holík, Ph.D. (člen) doc. Ing. Tomáš Martínek, Ph.D. (člen) doc. RNDr. Petr Šaloun, Ph.D. (člen)

Date of acceptance

2015-06-24

Defence

Student nejprve prezentoval výsledky, kterých dosáhl v rámci své práce. Komise se poté seznámila s hodnocením vedoucího a posudkem oponenta práce. Student následně odpověděl na otázky oponenta a na další otázky přítomných. Komise se na základě posudku oponenta, hodnocení vedoucího, přednesené prezentace a odpovědí studenta na položené otázky rozhodla práci hodnotit stupněm " A ". Otázky u obhajoby: Experimentálne výsledky ukázali, že výpočtový čas sa zmení súčasne so zmenenými parametrami pritom kvalita riešení sa zachováva. Ako je to možné? V práci nebolo uvedený súvis medzi dĺžkou prediktorov a dobou vyhodnotenia. Aké zmeny treba vykonať, aby sa toto riešenie dalo použiť na iný typ úlohy evolučného návrhu? Aké sú vaše odporúčania? Ako obtiažne by bolo implementácia podobného riešenia pre FPGA alebo grafickú kartu? V čom vidíte hlavné problémy, ktoré by bolo treba riešiť? Aké sú možnosti rozšírenia práce? Identifikovali ste nejakú nevýhodu navrhnutého riešenia, čo by bolo treba ďalej riešiť?

Result of defence

práce byla úspěšně obhájena

DOI

Collections

Endorsement

Review

Supplemented By

Referenced By

Citace PRO