Teaching
Alongside my intensive research activities, I have devoted a significant portion of my career to teaching.
Material
- I am the lead author of the CP-SAT Primer.
- I am co-organizer and technical lead of the CG:SHOP Challenges, a yearly competition on optimizing hard problems in computational geometry.
Teaching Experience
Since my postdoctoral tenure, I have had the privilege of independently lecturing and co-designing courses that bridge the gap between theoretical concepts and real-world applications.
- Algorithm Engineering (Co-Lecturer with Phillip Keldenich): This course, which we co-designed, focuses on the efficient implementation of algorithms, emphasizing CPU and memory architecture. It also delves into solving NP-hard optimization problems using various techniques like MIP, CP, SAT, and Heuristics. First offered in the summer term of 2022, it received positive feedback from the participants.
- Algorithms Lab: This practical lab course allows students to tackle a number of optimization problems and finally apply their newly gained skills to a project of their choice. Its popularity and high demand have led to a selective admission process.
As a teaching assistant, I contributed to several courses and supervised various student-led projects. My supervised teams have repeatedly won university-wide competitions.
- Winter 23/24: Supervised and designed Algorithms Lab
- Summer 23: Supervised and designed Algorithms Lab
- Summer 22: Co-Lecturer and Co-Designer of Algorithm Engineering (with Phillip Keldenich)
- Summer 22: Supervised Practical Software Development Training (“Software Entwicklungs Praktikum”)
- Winter 21/22: Supervised and redesigned Algorithms Lab
- Winter 21/22: Tutorials and Exercises for Mathematical Optimization (Linda Kleist)
- Summer 21: Supervised Algorithms Lab
- Summer 21: Tutorials and Exercises for Approximation Algorithms (Sándor Fekete)
- Summer 21: Supervised Practical Software Development Training (“Software Entwicklungs Praktikum”)
- Winter 20/21: Supervised Algorithms Lab
- Winter 20/21: Tutorials and Exercises for Mathematical Optimization (Linda Kleist)
- Summer 20: Supervised Practical Software Development Training (“Software Entwicklungs Praktikum”)
- Winter 19/20: Tutorials and Exercises for Approximation Algorithms (Sándor Fekete)
- Winter 19/20: Tutorials and Exercises for Mathematical Optimization (Linda Kleist)
- Summer 19: Supervised Practical Software Development Training (“Software Entwicklungs Praktikum”)
- Winter 18/19: Tutorials and Exercises for Mathematical Optimization (Sándor Fekete)
- Summer 18: Supervised Practical Software Development Training (“Software Entwicklungs Praktikum”)
- Winter 17/18: Tutorials and Exercises for Mathematical Optimization (Sándor Fekete)
- Summer 17: Tutorials and Exercises for Approximation Algorithms (Sándor Fekete)
- Winter 16/17: Tutorials and Exercises for Introduction to Algorithm Engineering (Victor Alvarez)
Thesis Supervision
Throughout my academic career, I have guided numerous students in their bachelor’s, master’s, and project theses, providing them with insights and methodologies in various areas of computational research.
- 2024 Computing Coverage Paths with Turn Costs using Dense Meshes
- 2024 Computing Point Sets with Maximal Dispersion in Polygons
- 2023 Computing Optimal Solutions for the Traveling Salesman Problem with Dynamic Travel Costs
- 2023 The Close-Enough Traveling Salesman Problem with Turncost
- 2023 A Branch-and-Bound Algorithm for the Traveling Salesman Problem with Neighborhoods
- 2023 Large Neighborhood Search for Pairwise Interaction Sampling of Configurable Systems
- 2022 Computing feasible tilt assembly sequences with minimal auxiliary tiles
- 2022 Computing exact solutions to the Close-Enough TSP
- 2022 Optimierung der Kommunikation in Multi-Hop-Satellitennetzwerken
- 2022 Aggregation of particles in 3d using global inputs
- 2021 Theoretical and practical approaches for optimizing lawn mowing and milling
- 2021 Generating and Classifying Geometric Graphs with high Diversity
- 2021 Minimum Scan Cover in 3D mit Erdumlaufbahnen
- 2021 Algorithmic Methods for Navigating Particle Swarms by Global Force
- 2021 Instance Sparsification for Hard Geometric Optimization Problems
- 2021 Berechnung multikriterieller Lösungen für überdeckende Touren mit Scankosten
- 2021 Berechnung von Farbverläufen mit Multi-Objective Integer Programming
- 2020 Reinforcement Learning for Navigating Particle Swarms by Global Force
- 2020 Algorithmic Problems in Inter-Satellite Communication
- 2019 Evolving Instances for the Experimental Analysis of Algorithms
- 2019 Lösungsansätze für das Budget Travling Salesman Problem mit GPGPUs
- 2018 Automated Analysis for Algorithm Engineering with Machine Learning
- 2017 Algorithmic Methods For Capturing Maximum Weight Geometric Subsets
- … (this list is incomplete)