Search
Cílem této domácí úlohy je implementovat a porovnat dva přístupy pro řešení optimalizačních úloh s omezeními pomocí evolučních algoritmů. V rámci této úlohy zhodnotíte úsilí, které jste vložili do implementace algoritmů na předchozích dvou cvičeních.
Porovnejte metody implementované na předchozích cvičeních na již známých problémech optimalizace reálných funkcí se spojitými parametry, g06, g08, g11 a g24, viz minulé cvičení.
První přístup využívá metodu Stochastic Ranking pro uspořádání a porovnání jedinců v populaci. V ideálním případě byste evoluční algoritmus s metodou Stochastic Ranking již měli mít naimplementovaný.
Druhý přístup je založený na tom, že se úloha s omezeními převede na dvoukriteriální úlohu, ve které vystupují tato kritéria:
Tento přístup budete realizovat pomocí vícekriteriálního evolučního algoritmu NSGA-II, který byste také již měli mít naimplementovaný.
Zahrňte do porovnání ještě jeden přístup využívající multikriteriální EA:
Implementujte funkci, jak si graficky znázornit dosažená řešení vzhledem ke známému optimálnímu řešení a k daným oblastem přípustných a nepřípustných řešení.
Porovnejte metody alespoň na jednom problému s více než 3 proměnnými a více než 3 omezeními. Nabízí se např. g04, g05, g09 a g21.
Implementujte binární turnajový operátor pro algoritmus NSGA-II, který zohledňuje přípustná/nepřípustná řešení, viz přednáška, slajd 32: NSGA-II: Constraint Handling Approach. Porovnejte NSGA-II s tímto upraveným turnajovým operátorem se zadanými dvěma přístupy.
Implementujte, popiště a zahrňte do porovnání nějakou další metodu pro práci s omezeními, kromě těch, které jsme již zmínili.
Implementujte jiný typ MOEA než NSGA-II a použijte ho ve dvoj nebo multikriteriálním přístupu pro práci s omezeními místo NSGA-II. Algoritmus popište a zahrňte do porovnání.
Podobně jako u první domácí úlohy i teď bude nutné splnit jisté minimální požadavky, jejichž splněním si zajistíte minimální potřebný počet bodů. Každé další vylepšení vám přinese body navíc, až do maximálního počtu 10 bodů.
Abychom tuto úlohu považovali za splněnou, musíte
DO BRUTE do úlohy DU2 Budete odevzdávat ZIP archiv obsahující
Součástí hodnocení může být předvedení funkčnosti implementace na některém cvičení. Pokud jste si pro implementaci vybrali jiný jazyk než Python, Javu, nebo C/C++, bude předvedení funkčnosti povinné.
Očekávaný obsah reportu:
Za úlohu můžete získat maximálně 10 bodů.