Vysoké učení technické v Brně. Fakulta informačních technologií
Abstract
Tato práce se zabývá návrhem řadicích sítí pomocí kartézskeho genetického programovaní s využitím koevoluce. Řadicí sítě jsou abstraktní modely schopné seřadit posloupnost čísel. Výhodou řadicích sítí je snadná implementovatelnost do hardware, ale jejich návrh je velmi složitý. Jednou z nekonvečních a efektivních možností jak navrhovat řadicí sítě je pomocí kartézskeho genetického programování (CGP). CGP je algoritmus patřící do skupiny evolučních algoritmů inspirovaných Darwinovou evoluční teorii. Efektivitu CGP algoritmu je možno zvýšit použitím koevoluce. Koevoluce je přístup, který pracuje s více populacemi, které se vzájemně ovlivňují a neustále vyvíjejí, čímž zabraňují uváznutí prohledávání v lokálním optimu. V práci je ukázané, že pomocou koevolúcie je možné dosiahnuť takmer dvojnásobné urýchlenie v porovnaní s evolučným návrhom.This paper deals with sorting networks design using Cartesian Genetic Programming and coevolution. Sorting networks are abstract models capable of sorting lists of numbers. Advantage of sorting networks is that they are easily implemented in hardware, but their design is very complex. One of the unconventional and effective ways to design sorting networks is Cartesian Genetic Programming (CGP). CGP is one of evolutionary algorithms that are inspired by Darwinian theory of evolution. Efficiency of the CGP algorithm can be increased by using coevolution. Coevolution is an approach that works with multiple populations, which are influencing one another and constantly evolving, thus prevent the local optima deadlock. In this work it is shown, that with the use of coevolution, it is possible to achieve nearly twice the acceleration compared to evolutionary design.