Prof. Dr. Tobias Friedrich

Dr. Timo Kötzing

Chair for Algorithm Engineering
Hasso Plattner Institute
Prof.-Dr.-Helmert-Str. 2-3
D-14482 Potsdam

Office: A-1.12
Tel.: +493315509-418
E-Mail: Timo.Koetzing(at)hpi.de

Research Interest

  • Bio-Inspired Computing (Theoretical Foundations, Swarm Intelligence, Evolutionary Computation,...)
  • Computational Learning Theory (Limit Learning, Stochastic Learning, Query Learning,...)


A list of my publications can be found here or on dblp.


Just as important as research is teaching. The following gives an overview over my teaching-related activities.

Teaching Teaching

I have recently started to teach how to teach university courses.

Teaching Meetings

An effective way to improve teaching is to talk with colleagues about challenges.

  • April 2014 to February 2015, University of Jena: Co-Organizer for a "Stammtisch Lehren"

Courses taught at the HPI, Potsdam, Germany

Courses taught at the University of Jena, Jena, Germany

Courses taught at the Universität des Saarlandes, Saarbrücken, Germany

Courses taught at the University of Delaware, Newark, DE, USA

  • Spring 2009 CISC 303 -- Automata Theory (an introductory course for theoretical computer science)

Also in 2009 at the University of Delaware I got awarded the "Computer and Information Sciences Teaching Assistant Award" awarded for achievements in teaching.


The following tools I programmed because I couldn't find an appropriate tool online. I give no warranty on what actually happens when you use them, but feel free to send me bugs. Use a Java VM to execute.

  • Stopwatch. Very small tool to time talks. Counts down minutes and seconds from a specified time, resettable and resizable; counter will turn orange when at most five minutes are left, and red when at most one is left. Accurate to within about one tenth of a second.
  • LaTeXInOneCompiler. Small tool to compile a latex driver file to a single .tex file, recurses down through \include and \input commands and builds a new file called "<filename>InOne.tex". Use by dragging file on the program frame and then dropping. BibTeX inlining optional, %-comments will be removed. Optionally, you get cleaned output, which removes unused commands and useless newlines. This is great when your submission software gives you trouble with multiple source files. Note that this will not change any of your files.
  • LaTeXCompileLock. Another small tool to keep on latex'ing a file whenever it changes (i.e., whenever you saved changes in your editor). This is great when your pdf viewer automatically refreshes (I use it with SumatraPDF). It also recompiles when another .tex-file in the directory changes, in case you spread your sources over several files (looking for files also in subdirectories is optional). Use by dragging driver file on the program frame and then dropping. Stops when you close it. This jar requires Java 7.

Recent Positions

  • Currently (2016-2019) I am working on my DFG grant "Eigene Stelle" on "The Structure of Algorithmic Learning".
  • June 2015 - present:
    Postdoctoral Researcher at the Hasso Plattner Institute, Potsdam, Germany
  • January 2013 - May 2015:
    Senior Researcher at the University of Jena, Germany
  • September 2009 - December 2012:
    Post-Doc at the Max-Planck-Institut für Informatik, Saarbrücken, Germany


Other Scientific Activities

Member of the following program committees.

  • GECCO (2010-present); chair of the PC (theory track) in 2016;
  • PPSN (2012-present);
  • FOGA (2015-present);
  • ALT (2012 - 2015);
  • CEC (2012-2013).

 Invited speaker at the following event.