Subject description - A0M33EOA

Summary of Study | Summary of Branches | All Subject Groups | All Subjects | List of Roles | Explanatory Notes               Instructions
A0M33EOA Evolutionary Optimization Algorithms
Roles:  Extent of teaching:2P+2C
Department:13133 Language of teaching:CS
Guarantors:Pošík P. Completion:Z,ZK
Lecturers:Pošík P. Credits:6
Tutors:Pošík P. Semester:Z

Web page:

https://cw.fel.cvut.cz/wiki/courses/A0M33EOA

Anotation:

Evolutionary algorithms are stochastic optimization techniques based on analogies with natural evolution. The goal of this course is to introduce this class of algorithms, their features, issues that may arise when applying them, and present methods how to solve them. Individual algorithms will be introduced during the lectures, including their application areas. During computer labs, students will implement an evolutionary algorithm to solve a non-trivial optimization problem.

Study targets:

The main goal of this course is to introduce several forms of evolutionary optimization algorithms in detail along with suitable application areas. The emphasis is given to problems encountered when applying the evolutionary algorithms, and on the methods usable to overcome them.

Course outlines:

1. Standard evolutionary algorithms (EAs). A relation of EAs to the classical optimization techniques.
2. No-Free-Lunch theorem. Evaluation EAs performance.
3. Working with constraints -- special representation, penalization, decoders and repairing algorithms, multiobjective approach.
4. EA's control parameters -- tuning and adaptation.
5. Statistical dependence of solution components. Perturbation methods.
6. Estimation of distribution algorithms (EDA).
7. Evolutionary strategy with covariance matrix adaptation.
8. Parallel EAs.
9. Genetic programming (GP) -- representation, initialization, genetic operators, typed GP, automatically defined functions.
10. Grammatical evolution, gene expression programming.
11. Linear genetic programming, graph-based genetic programming.
12. GP issues -- 'bloat', diversity preservation.
13. Coevolution.
14.

Exercises outline:

1. Implementation of simple genetic algorithm (SGA). Influence of individual parameter values.
2. Analysis of the topics for the seminar project.
3. Seminar project elaboration. Part I - local optimization algorithm.
4. Seminar project elaboration. Part I - local optimization algorithm.
5. Hand-in of the seminar project I.
6. Seminar project elaboration. Part II - a simple EA vs. specialized EA or memetic algorithm.
7. Seminar project elaboration. Part II - a simple EA vs. specialized EA or memetic algorithm.
8. Seminar project elaboration. Part II - a simple EA vs. specialized EA or memetic algorithm.
9. Successful applications of EAs.
10. Seminar project elaboration. Part II - a simple EA vs. specialized EA or memetic algorithm.
11. Hand-in of the seminar project and presentations of the results.
12. Test.
13. Hand-in of the seminar project and presentations of the results.
14.

Literature:

- Luke, S.: Essentials of Metaheuristics, 2009 http://cs.gmu.edu/~sean/book/metaheuristics/ - Poli, R., Langdon, W., McPhee, N.F.: A Field Guide to Genetic Programming, 2008 http://www.gp-field-guide.org.uk/

Requirements:

Basic understanding of optimization and optimization methods. Course info: https://cw.fel.cvut.cz/wiki/courses/a0m33eoa/start

Keywords:

Evolutionary algorithms, genetic programming, evolution strategies, optimization.

Subject is included into these academic programs:

Program Branch Role Recommended semester


Page updated 16.4.2024 07:53:09, semester: L/2023-4, Z/2024-5, Z/2023-4, Send comments about the content to the Administrators of the Academic Programs Proposal and Realization: I. Halaška (K336), J. Novák (K336)