Wydział Informatyki
Kierunek studiów Informatyka Poziom i forma studiów drugiego stopnia stacjonarne
Specjalność / Ścieżka dyplomowania Inżynieria Oprogramowania Profil kształcenia ogólnoakademicki
Nazwa przedmiotu Algorytmy ewolucyjne Kod przedmiotu INF2AEW
Rodzaj przedmiotu obieralny
Forma zajęć i liczba godzin W Ć L P Ps T S Semestr 2
15 30 Punkty ECTS 3
Przedmioty wprowadzające
Cele przedmiotu

Student jest w stanie zaprojektować i zaimplementować algorytm ewolucyjny do danego problemu.

Treści programowe

Wykład:
Wprowadzenie do metod optymalizacji. Optymalizacja globalna i lokalna. Standardowy algorytm genetyczny. Selekcja. Operatory ewolucyjne. Rozszerzenia algorytmu standardowego. Strategie ewolucyjne i programowanie ewolucyjne. Programowanie genetyczne. Zadania z ograniczeniami. Algorytmy ewolucyjne – porady praktyczne. Algorytmy ewolucyjne dla problemu komiwojazera. Algorytmy ewolucyjne dla problemów kolorowania grafu i szeregowania. Algorytmy ewolucyjne w uczeniu maszynowym. Teoria algorytmów ewolucyjnych. Algorytmy memetyczne. Algorytmy ewolucyjne na maszynach równoległych. Dobór parametrów algorytmu.

Pracownia specjalistyczna:
Implementacja na podstawie literatury wybranego algorytmu ewolucyjnego. Badania symulacyjne algorytmu - dla wybranych problemów testowych.

Metody dydaktyczne

wykład problemowy,   programowanie z użyciem komputera,  

Forma zaliczenia

Wykład - test zaliczający.
Pracownia specjalistyczna - przygotowanie i obrona projektu.

Symbol efektu uczenia się Zakładane efekty uczenia się Odniesienie do kierunkowych efektów uczenia się
EU1 zna problematykę algorytmów ewolucyjnych INF2_W07
EU2 posiada umiejętność doboru algorytmu ewolucyjnego do konkretnego problemu optymalizacji INF2_W07
INF2_U03
EU3 posiada umiejętność implementacji złożonego systemu jakim jest algorytm ewolucyjny INF2_U09
EU4 posiada umiejętność pracy w grupie 2-3 osobowej nad projektem programistycznym INF2_U13
Symbol efektu uczenia się Sposób weryfikacji efektu uczenia się Forma zajęć na której zachodzi weryfikacja
EU1 test zaliczający wykład W
EU2 test zaliczający wykład, prezentacja i obrona projektu programistycznego W, Ps
EU3 prezentacja i obrona projektu programistycznego Ps
EU4 prezentacja i obrona projektu programistycznego Ps
Bilans nakładu pracy studenta (w godzinach) Liczba godz.
Wyliczenie
1 - Udział w wykładach - 15x1h 15
2 - Udział w pracowni specjalistycznej - 15x2h 30
3 - Praca nad projektami w domu/laboratorium (w tym przygotowanie sprawozdania z projektu) 20
4 - Przygotowanie do testu zaliczającego wykład 5
5 - Udział w konsultacjach związany z przygotowaniem projektów 5
RAZEM: 75
Wskaźniki ilościowe GODZINY ECTS
Nakład pracy studenta związany z zajęciami wymagającymi bezpośredniego udziału nauczyciela 50
(1)+(2)+(5)
2.0
Nakład pracy studenta związany z zajęciami o charakterze praktycznym 50
(3)+(2)
2.0
Literatura podstawowa

1. Z. Michalewicz, Algorytmy genetyczne + struktury danych=programy ewolucyjne, WNT, Warszawa, 1996.
2. J. Arabas, Wykłady z algorytmów ewolucyjnych, WNT, Warszawa, 2001.
3. D. E. Goldberg, Algorytmy genetyczne i ich zastosowania, WNT, Warszawa, 1995.
4. K. A. De Jong, Evolutionary Computation: A Unified Approach, MIT Press, 2016.
5. D. Simon, Evolutionary Optimization Algorithms, Wiley, 2013.

Literatura uzupełniająca

1. Z. Michalewicz, D. B. Fogel, Jak to rozwiązać, czyli nowoczesna heurystyka, WNT, Warszawa, 2006.

Jednostka realizująca Katedra Oprogramowania Data opracowania programu
Program opracował(a) 2020.05.22