ROL
Classes
Functional Interface

ROL's functional interface. More...

Classes

class  ROL::Objective< Real >
 Provides the interface to evaluate objective functions. More...
 
class  ROL::BoundConstraint< Real >
 Provides the interface to apply upper and lower bound constraints. More...
 
class  ROL::EqualityConstraint< Real >
 Defines the equality constraint operator interface. More...
 
class  ROL::LinearOperator< Real >
 Provides the interface to apply a linear operator. More...
 
class  ROL::Objective_SimOpt< Real >
 Provides the interface to evaluate simulation-based objective functions. More...
 
class  ROL::EqualityConstraint_SimOpt< Real >
 Defines the equality constraint operator interface for simulation-based optimization. More...
 
class  ROL::Reduced_Objective_SimOpt< Real >
 Provides the interface to evaluate simulation-based reduced objective functions. More...
 

Detailed Description

ROL's functional interface.

ROL is used for the numerical solution of smooth optimization problems

\[ \begin{array}{rl} \min_{x} & f(x) \\ \mbox{subject to} & c(x) = 0 \,, \\ & a \le x \le b \,, \end{array} \]

where:

This formulation encompasses a variety of useful problem scenarios.

First, the vector spaces \(\mathcal{X}\) and \(\mathcal{C}\), to be defined by the user through the Linear Algebra Interface, can represent real spaces, such as \(\mathcal{X} = \mathbb{R}^n\) and \(\mathcal{C} = \mathbb{R}^m\), and function spaces, such as Hilbert and Banach function spaces. ROL's vector space abstractions enable efficent implementations of general optimization algorithms, spanning traditional nonlinear programming (NLP), optimization with partial differential equation (PDE) or differential algebraic equation (DAE) constraints, and stochastic optimization.

Second, ROL's core methods can solve four types of smooth optimization problems, depending on the structure of the constraints.

Third, ROL's design enables streamlined algorithmic extensions, such as the Stochastic Optimization capability.