File Exchange

image thumbnail

Solving Optimal Control Problems using Simscape Models for State Derivatives

version 1.1 (503 KB) by

This code replicates the results found in a tech report by the same name



View License

Here I demonstrate an approach to calculate derivative functions for Simscape models and use them to solve optimal control problems.

Although this approach is less efficient than analytic expression for the derivatives, not every problem will have these directly available due to a variety of reasons, including multidomain, multibody, large-scale, automatically generated, or proprietary models.

A step-by-step procedure is presented to assist utilizing this approach. The canonical Bryson-Denham state-constrained double integrator optimal control problem is used as a test optimal control problem.

A number of control formulations are compared to demonstrate the computational expense of this approach compared to analytic expressions of the state derivatives and additional benefits including improved final solutions and execution time over more traditional formulations. In particular, direct transcription solutions are decidedly more efficient than the common shooting approach.

The code is complementary material for the following publication:

Daniel R. Herber. 'Solving Optimal Control Problems using Simscape Models for State Derivatives.' Technical Report UIUC-ESDL-2014-01, July 2014.

which can be obtained by going to:

Please see the readme file for usage details.

GPOPS-II, an additional commercial MATLAB software package, is required to run all the methods (although the results for each method are included):

% BrysonDenhamMain.m
% Solve the problem with a number of methods
% [] = BrysonDenhamMain()
% Some methods utilize a Simscape model for state derivatives
% Bryson-Denham state-constrained double integrator problem optimal
% control problem
% Problem formulation and solution using GPOPS
% Method of optimal control and derivative source
% method : control : derivatives
% 1 : shooting : analytic
% 2 : shooting : simscape
% 3 : direct transcription : analytic
% 4 : direct transcription : simscape
% 5 : pseudospectral (GPOPS-II) : analytic
% 6 : pseudospectral (GPOPS-II) : simscape
% Author: Daniel R. Herber, Graduate Student, University of Illinois at
% Urbana-Champaign
% Date: 07/22/2014

Comments and Ratings (0)



Minor description update.

MATLAB Release
MATLAB 8.3 (R2014a)

Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.

» Watch video