OPTIMICA Compiler Toolkit

The OPTIMICA Compiler Toolkit is a Modelica and FMI-based computational platform for systems design. It offers a versatile environment for posing and solving dynamic and steady-state simulation and optimization problems throughout the product development process. The OPTIMICA Compiler Toolkit comes with a Modelica compiler with capabilities beyond dynamic simulation by offering unique features for optimization and steady-state computations. 

The OPTIMICA Compiler Toolkit builds on Python and MATLAB® for user-interaction. User-friendly scripting APIs pave the ground for custom workflows to support complex design flows that integrate sequences of computations. 

In early stages of the design cycle, steady-state simulation and optimization support architectural exploration and selection. During detailed design, model fidelity is increased and transient simulation and steady-state performance computations are used to refine the design. Dynamic optimization is a valuable tool to assess limits of performance during control systems design and is also a cornerstone in advanced control strategies such as non-linear model predictive control. The OPTIMICA Compiler Toolkit unifies simulation and optimization for transient and steady-state computations throughout the design process.

The OPTIMICA Compiler Toolkit is available for end users as well as for integration in software and custom tool-chains.

The OPTIMICA Compiler Toolkit is based on JModelica.org technology. 


  • Flexibility and interoperability with user-friendly scripting APIs in MATLAB® and Python
  • Model protection through support for encrypted libraries
  • Support for Hand-Guided Tearing to exploit system structure in steady-state computations
  • Dynamic and steady-state optimization for limits of performance analyses and optimal control
  • Transient simulation with Modelica and FMI
  • Industrial grade optimization with third party algorithms
  • Integrates seamlessly with the FMI Toolbox for MATLAB®/Simulink
  • Integrates with user toolchain and development processes for application development and deployment.
The steady-state solver capabilities of the OPTIMICA Compiler Toolkit enables reliable convergence even for challenging physical models.



Power plant optimization

To meet the increased need for regulating power in today’s energy market, start-up optimization of thermal power plants is a key industrial need. Model Predictive Control is implemented in the OPTIMICA Compiler Toolkit and successfully applied on both lignite boilers and combined cycle power plants to optimize the start-up process.

The optimization reduces the start-up time without violating the thermal and mechanical stress constraints that govern the lifetime of the boiler’s critical components.

Heating distribution

Production planning of district heating system is important as the customer heating demand varies throughout the day, and the production units have different production, start-up, and shut-down costs. 

The OPTIMICA Compiler Toolkit is used in conjunction with a mixed-integer linear programming solver to find optimal production schemes of heat and electricity for small to medium sized district heating systems. The optimized schemes demonstrate potential savings while maintaining robustness of heat delivery.

Vehicle trajectory optimization

The OPTIMICA Compiler Toolkit is successfully used for vehicle trajectory optimization. By optimizing the vehicle negotiating a maneuver, we can evaluate the results of different actuator options, actuator performance limitations and also environmental parameters (e.g. road friction). 

The result of the optimization gives valuable insight into what actuator choices best fit the desired use case and provides a performance benchmark useful when tuning controllers. 

All these capabilities contribute to the active safety of the vehicles.

OPTIMICA Compiler Toolkit - Overview

A framework for nonlinear model predictive control in JModelica.org

(Presentation from Modelica Conference 2015)

Technical Articles:

  1. Christian Andersson, Methods and Tools for Co-Simulation of Dynamic Systems with the Functional Mock-up Interface, PhD Thesis, Lund University, Sweden, 2016.
  2. Christian Hartlep, Toivo Henningsson, NMPC Application using JModelica.org: Features and Performance,  In 11th International Modelica Conference, Paris, France, September 2015, pp. 321-327.
  3. Fredrik Magnusson, Johan Åkesson: "Dynamic Optimization in JModelica.org". Processes, 3:2, pp. 471–496, 2015.
  4. Håkan Runvik, Per-Ola Larsson, Stéphane Velut, Jonas Funkquist, Markus Bohlin, Andreas Nilsson and Sara Modarrez Razavi: "Production Planning for Distributed District Heating Networks with JModelica.org". In 11th International Modelica Conference, Paris, France, September 2015, pp. 217-223.
  5. Dietl, K., et al., "Industrial application of optimization with Modelica and Optimica using intelligent Python scripting", In 10th International Modelica Conference, Lund, Sweden, March 2014, pp.777-786
  6. Elin Sällberg, Alexandra Lind, Stéphane Velut, Johan Åkesson, Stephanie Gallardo Yances, Kilian Link: "Start-up Optimization of a Combined Cycle Power Plant". In 9th International Modelica Conference, Munich, Germany, September 2012.
  7. Peter Sundström, Mats Jonasson, Johan Andreasson, Annika Stensson Trigell, Bengt Jacobson  : "Path and control signal optimisation for over-actuated vehicles in two safety-critical maneuvers". In 10th International Symposium on Advanced Vehicle Control (AVEC 10), August 22-26, 2010 in Loughborough, UK. (2010)




OPTIMICA Compiler Toolkit is a product of Modelon and is distributed by Modelon and partners worldwide.

  Make an Inquiry

[We] are integrating Modelon’s OPTIMICA Compiler into the Simplorer environment, providing our customer base with support for creating and simulating a rich collection of Modelica models that span numerous engineering disciplines and applications.

Lee Johnson , Product Manager, Systems Business Unit, ANSYS