Recently, I had the great pleasure of teaching my short course Metaheuristics for Smart Manufacturing [智能制造的元启发式算法] at the Quanzhou University of Information Engineering [泉州信息工程学院] in Quanzhou city [泉州市] in the Fujian province [福建省] as part of the 2019 Teacher Training Program of the Sino-German Center for Education Cooperation and Development of the Fujian Province [中德(福建)教育合作与发展中心师资培训项目].
Giving this course the second time in Quanzhou was, again, a great experience. Like last year, the audiences were very kind and interested in the topic. And again, the translation provided was excellent. We started the course with an introduction of the basic concepts of what optimization is and how it is necessary for intelligent production. We then approached the structure of optimization problems on the example for a real task in smart manufacturing, namely the Job Shop Scheduling Problem (JSSP). Here, the goal is to assign production tasks to machines in such a way that they can finish fast. After we discussed the general concepts of search and solution space as well as objective function based on this real example, we moved on to how to solve such problems after the lunch break. We began with the most trivial approach, randomly sampling solutions. After discussing this trivial algorithm and its shortcomings, we moved on to stochastic local search, namely hill climbing. We discussed two ways to improve this first simple local search and how they can be combined to achieve even better results. We then delved into population-based metaheuristics on the example of Evolutionary Algorithms. As last optimization method, we investigated the Simulated Annealing algorithm, which could provide the best results of any method taught during this class. The last tier of the course was focused on how we can evaluate the performance of optimization algorithms in a statistically sound and rigorous way. The goal of the lecture was to introduce the concept of optimization and the workings of the basic algorithms in the field by using concrete examples, clear visualizations, and also an actual implementation.
This second time of giving the course, I think that I had much better material: Although my book the "Introduction to Optimization Algorithms" is still work in progress, it already contains detailed in-depth discussions of all the contents of the book and it is also linked to a source code repository, where you can find implementations of all discussed algorithms. Together with a complete overhaul of the slides, this allowed for a much clearer and much more comprehensive presentation of the field, with more content and better explanations (I hope).
Like last year, giving my course at the Quanzhou University of Information Engineering [泉州信息工程学院] was a pleasure. The students (actually, teachers taking part in this further education training) were a very nice audience and the hospitality of the university is absolutely outstanding. I am thankful for the chance to be a guest teacher in such a great environment.
- the course book,
- the implementations of the algorithms, and
- the lecture slides