192.137 Heuristic Optimization Techniques
This course is in all assigned curricula part of the STEOP.
This course is in at least 1 assigned curriculum part of the STEOP.

2023W, VU, 3.0h, 4.5EC


  • Semester hours: 3.0
  • Credits: 4.5
  • Type: VU Lecture and Exercise
  • Format: Presence

Learning outcomes

After successful completion of the course, students are able to...

understand diverse heuristic algorithms for solving hard optimization problems, to apply them in practice, and to adapt them to new problems.

Subject of course

This lecture deals with heuristic methods to solve optimization problems. The presented approaches are especially suitable for problems arising in practice. On the one hand such problems are often too complex to be solved in an exact way because of the increasing amount of computation time needed by conventional exact techniques. On the other hand it is often sufficient or even required to come up with a good solution in reasonable time.

In this course we primarily focus on discrete application problems and application in areas such as transport optimization, scheduling, network design, cutting and packing.

The methods considered in the course include:

  • Construction Heuristics
  • Local Search
  • Simulated Annealing
  • Tabu-Search
  • Guided Local Search
  • Variable Neighborhood Search
  • Very Large Neighborhood Search
  • Greedy Randomized Adaptive Search Procedure
  • Genetic Algorithms
  • Evolutionary Strategies
  • Ant Colony Optimization
  • Hybridization of different approaches, parallelization
  • Analysis and Tuning of metaheuristics

Beside the theoretical basics this lecture focuses on practical applications and the connection of metaheuristics with problem-specific heuristics as well as some examples of suitable combinations with exact methods.

Also we will discuss how to properly tune heuristics and to evaluate and compare them by means of experiments and appropriate statistical methods.

Teaching methods

Introduction and explanation of general methods, discussion of examples, theoretical exercises, hands-on programming exercises, presentation and discussion of solutions.

Mode of examination


Additional information


 20.0h Lectures
 50.0h Exercises and recap of the lecture contents
 40.0h Programming exercises
   2.5h Exercise interviews / Examination

Hotline for any questions concerning this course: heuopt (at) ac.tuwien.ac.at



Course dates

Tue11:00 - 13:0003.10.2023 - 19.12.2023EI 3A Hörsaal Vorlesung
Heuristic Optimization Techniques - Single appointments
Tue03.10.202311:00 - 13:00EI 3A Hörsaal Lecture
Tue10.10.202311:00 - 13:00EI 3A Hörsaal Vorlesung
Tue17.10.202311:00 - 13:00EI 3A Hörsaal Vorlesung
Tue24.10.202311:00 - 13:00EI 3A Hörsaal Vorlesung
Tue31.10.202311:00 - 13:00EI 3A Hörsaal Vorlesung
Tue07.11.202311:00 - 13:00EI 3A Hörsaal Vorlesung
Tue14.11.202311:00 - 13:00EI 3A Hörsaal Vorlesung
Tue21.11.202311:00 - 13:00EI 3A Hörsaal Vorlesung
Tue28.11.202311:00 - 13:00EI 3A Hörsaal Vorlesung
Tue12.12.202311:00 - 13:00EI 3A Hörsaal Vorlesung
Tue19.12.202311:00 - 13:00EI 3A Hörsaal Vorlesung

Examination modalities

Assignments / Oral Exam / Grading

During the course five assignments are given out:

  • Three pen & paper exercise sheets with theoretical tasks and
  • two programming exercises where you solve an optimization problem by implementing optimization algorithms.

The pen & paper exercises should be solved alone while the programming exercises are meant to be solved in teams of two students. For all five assignments concise reports should be prepared and handed in.

The five assignments are discussed in three interview sessions:

  • First interview session between 8th and 9th of November 2023: pen & paper sheet 1
  • Second interview session between 06th and 7th of December 2023: pen & paper sheet 2 + programming exercise 1
  • Third interview session between 17th and 18th of January 2024: pen & paper sheet 3 + programming exercise 2

In each of the interview sessions, the assignments are discussed - based on the uploaded reports. Additionally, in the course of the discussion of the pen & paper sheets, questions about the corresponding course topics are asked. Each of the five assignments contributes 20% to the final grade. To pass the course you need to achieve at least 50% of the points of the 3 pen & paper sheets and at least 50% of the points of the 2 programming exercises.

The registration for the interview sessions is possible on TUWEL where several time slots for each interview session will be offered.

Course registration

Begin End Deregistration end
11.09.2023 00:00 15.10.2023 23:55 15.10.2023 23:55


Study CodeObligationSemesterPrecon.Info
066 504 Master programme Embedded Systems Not specified
066 645 Data Science Not specified
066 646 Computational Science and Engineering Not specified
066 931 Logic and Computation Mandatory elective
066 932 Visual Computing Mandatory elective
066 937 Software Engineering & Internet Computing Not specified
066 938 Computer Engineering Mandatory elective


  • F. Glover, G. A. Kochenberger: Handbook of Metaheuristics, Kluwer Academic Publishers, 2003
    (comprehensive, recent standard work on metaheuristics)
  • M. Gendreau, J.-Y. Potvin: Handbook of Metaheuristics, 2nd edition, Springer, 2010
    (describes various methods in addition to the first version)
  • E. Talbi: Metaheuristics: From Design to Implementation, J. Wiley and Sons, 2009
    (new and detailed work about metaheuristics)

Previous knowledge

Basic knowledge in algorithms and data structures, programming skills

Preceding courses

Accompanying courses

Continuative courses