ROL

about docs uses features


Numerical optimization made practical:
Any application, any hardware, any problem size.

Rapid Optimization Library (ROL) is a C++ package for large-scale optimization. It is used for the solution of optimal design, optimal control and inverse problems in large-scale engineering applications. Other uses include mesh optimization and image processing.

ROL aims to combine flexibility, efficiency and robustness.  Key features:

  • Matrix-free application programming interfaces (APIs) —enable direct use of application data structures and memory spaces, linear solvers, nonlinear solvers and preconditioners.
  • State-of-the-art algorithms for unconstrained optimization, constrained optimization and optimization under uncertainty —enable inexact and adaptive function evaluations and iterative linear system solves.
  • Special APIs for simulation-based optimization —enable a streamlined embedding into engineering applications, rigorous implementation verification and efficient use.
  • Modular interfaces throughout the optimization process —enable custom and user-defined algorithms, stopping criteria, hierarchies of algorithms, and selective use of a variety of tools and components.

For details, see ROL_PDF_Slides or ROL_PowerPoint_Slides.


Some use cases: