Note: This content is accessible to all versions of every browser. However, this browser does not seem to support current Web standards, preventing the display of our site's design details.


That's me!

Alexander Domahidi

Dr. sc. ETH Zürich

Automatic Control Laboratory
Swiss Federal Institute of Technology
Physikstr. 3, ETL K10.1
CH-8092 Zurich

Phone: +41 44 632 6298
Fax: +41 44 632 1211
Email: domahidi (at)


I mainly work on methods and tools for embedded model predictive control, with the following specific topics:
  • Learning MPC controllers: function approximation in high dimensional spaces using machine learning techniques
  • Efficient second-order optimization methods for embedded applications. I have authored two solvers that run on embedded systems and solve convex problems very efficiently (see also the Software section below).
Have a look at my publications for more details.

My doctoral thesis can be downloaded here.


The following software can be used to solve small to medium-sized convex problems very efficiently. All solvers are written in ANSI-C, i.e. you can run it on any platform supporting a C-compiler.
  • FORCES: Code generation for convex multistage problems. Solves LPs, QPs and QCQPs whenever the problem has spatial or temporal decoupling in the cost and inequalities, i.e. is a multistage problem. License: GPL3.

  • ECOS: Embedded Conic Solver for solving second-order cone programs. Solves SOCPs (also LPs, QPs, QCQPs of course). No code generation. Very efficient for sparse problems. License: GPL3.


Together with my colleague Juan Jerez, I have founded the Zurich based startup embotech, which provides professional solutions for embedding optimal decision making functionality based on fast numerical optimization methods into a product.

Student Projects and Teaching

Current postings for student projects can be found here.

I have been leading the ORCA (Optimal RC autonomous racing for 1:43 scale race cars) project in 2010-2013, and have been involved in teaching the following undergraduate courses: