TRICE DESIGN |
---|

**TRICE** algorithms are designed to solve
optimal control and engineering design problems
* governed by partial differential equations*(PDEs).
In this case, the constraints *c(y,u) = 0*
in the abstract optimization problem

min | f(y,u) , |

s.t. | c(y,u) = 0 , |

e(y,u) = 0 , | |

h(y,u) <= 0 , |

- Typically, the solution of the (linearized) PDEs is very expensive and dominates the cost of the optimization method.
- Often, efficient application dependent solvers for the (linearized) PDEs are available, for example from previous simulation studies.
- The optimization problem to be solved is a discretization of
an infinite dimensional optimization problem, e.g.,
*y*and/or*u*represent functions. It is known that the underlying infinite dimensional problem often dominates the discretized, finite dimensional one.

- The
**structure**of the optimal control problem arising from the partitioning of variables into states*y*and controls*u***is utilized**. - The user is allowed to
**incorporate efficient application dependent solvers**for the (linearized) PDEs.**TRICE**algorithms do*not*insist on specific, in the optimization code included linear system solvers for systems related to the linearization of*c(y,u)*. - The linearized governing equations are often solved iteratively.
Therefore,
**TRICE**allow the use of**inexact solvers**. The accuracy of the solves is adapted to the progress of the optimization algorithm and the quality of the current iterate as an approximate solution to the optimization problem. -
**TRICE**algorithms communicate with the application programs in an**object oriented**way. Given certain data,**TRICE**algorithms only require the results of specified, application related operations on these data, but do not require any knowledge on how these operations are performed. For example, given an iterate*(y,u)*,**TRICE**algorithms require the evaluation of the constrained function*c(y,u)*or the solution of the linearized equation*c'(y,u) s = -c(y,u)*, but do not require knowledge on how these tasks are performed, in particular do not require the Jacobian*c'(y,u)*.

As a consequence,**TRICE**algorithms are potentially useful for**distributed computing**and**multidisciplinary optimization**. Application related operations such as the evaluation of*c(y,u)*or the solution of the linearized equation*c'(y,u) s = -c(y,u)*can be performed on different computers and the result can be exchanged with the**TRICE**algorithm via a network. - The user can
**incorporate and utilize the infinite dimensional structure**of the optimization problem. This is implemented in**TRICE**algorithms by allowing the use of weighted inner products.

TRICE homepage | |||
---|---|---|---|

Design | Algorithms | Applications | Software |