# TOMLAB  
# REGISTER (TOMLAB)
# LOGIN  
# myTOMLAB
TOMLAB LOGO

« Previous « Start » Next »

1  Introduction to TOMLAB /SOCS

1.1  Overview

Welcome to the TOMLAB /SOCS User's Guide. TOMLAB /SOCS provides an interface between MATLAB, by MathWorks', and the SOCS solver from The Boeing Company.

The Sparse Optimal Control Software (SOCS) solver suite serves for the analysis and solution of general nonlinear optimal control (OC) problems with equality and inequality constraints. SOCS is documented elsewhere in detail: see for example, Betts (2001, 2004). [1, 2]

In SOCS, optimal control problems are solved using a direct transcription method. The basic steps in the approach are as follows:

  1. Direct Transcription. Transcribe the optimal control problem into a nonlinear programming (NLP) problem by discretization;
  2. Sparse Nonlinear Program. Solve the sparse NLP using either a sequential quadratic programming (SQP) or an interior-point (barrier) method;
  3. Mesh Refinement. Assess the accuracy of the approximation (i.e. the finite dimensional problem), and if necessary refine the discretization, and then repeat the optimization steps.

SOCS also includes the following:

  • SQP and interior-point NLP solvers
  • Finite differences (combined with seeding) for evaluating derivatives
  • A mechanism for solving multiphase problems
  • Spline interpolation

TOMLAB /SOCS does not rely on any sub-solvers, and it does not require any in-depth structural information about the model. It is particularly suited to solve multi-phase problems, where different dynamics apply in distinct phases. TOMLAB /SOCS needs only computable function values (without a need for higher order analytical information).

1.2  Contents of this manual

  • Section 1 provides a basic overview of the TOMLAB /SOCS solver package.
  • Section 2 provides a mathematical description of the optimal control problems that TOMLAB /SOCS solves.
  • Section 3 provides information on how to set up a TOMLAB /SOCS problem.
  • Section 4 describes how to set TOMLAB /SOCS solver options.
  • Section 5 provides information on how to solve a TOMLAB /SOCS problem and how to get the solution.
  • Section 6 provides information about the print and error files.
  • Section 7 describes how to interpret the error status codes.

1.3  More information

Please visit the following links for more information and see the illustrative references at the end of this manual.

1.4  Prerequisites

In this manual we assume that the user is familiar with principles of optimal control of dynamical systems, discretization and nonlinear programming, setting up problems in TOMLAB and with the Matlab language

« Previous « Start » Next »