The goal of the seminar is to experiment with the evolutionary algorithms and find out how they behave while solving simple tasks. To this end, we will use a simple Python library. Your goal will be to augment/create an operator to make the algorithm perform better. You will not need a deep understanding of Python - only the basics which are required.

Credit requirements

There will be 12 lessons during the semester. In 11 of these lessons, there will be an assignment and it will be possible to get 5 points for each assignment, i.e. 55 points for the whole term. Additionally, many of the assignments will contain bonus questions (e.g. for solving an extended version of the assignments, or for having a good solution compared to the rest of the class).

You will submit the solutions to the assignments after we finish a group of assignments on a single topic. For example, there will be three lessons on continuous optimization, so you will submit all continuous optimization assignments after the third lesson. The deadline for the submission will be two weeks after the last lesson in each group. Instead of submitting to Moodle, you can also show me your solution in the lesson. 

In order to get the credit for the seminar, you need to have at least 36 points.

Each submission should contain a short description of what you did, a plot comparing the convergence of various versions of the algorithm and a commentary why you think the results are what they are. Try to be as concise as possible.

Submit your solutions directly in Moodle, either as a text written in the submission form with attached images, or as a single pdf. Use zip archives (and similar) only when it is not possible to submit otherwise. If you use Jupyter notebook, export them to pdf before submission. (These requirements make the grading easier for me, if there are good reasons do submit something differently, it is possible.)

A detailed guide how to create plots is on a separate page.

Naposledy změněno: pondělí, 13. října 2025, 12.13