PROPT Hyper Sensitive Optimal Control

From TomWiki
Jump to navigationJump to search

Notice.png

This page is part of the PROPT Manual. See PROPT Manual.

Eigenvector approximate dichotomic basis method for solving hyper-sensitive optimal control problems 2000, Anil V. Rao and Kenneth D. Mease

3.1. Motivating example, a hyper-sensitive HBVP

Problem Formulation

Find u(t) over t in [0; t_f ] to minimize


subject to:


% Copyright (c) 2007-2008 by Tomlab Optimization Inc.

Problem setup

toms t
p = tomPhase('p', t, 0, 10, 50);
setPhase(p);

tomStates x
tomControls u

% Initial guess
x0 = {icollocate(x == 0)
    collocate(u == 0)};

% bounds and ODEs
bceq = {collocate(dot(x) == -x.^3+u)
    initial(x) == 1; final(x) == 1.5};

% Objective
objective = integrate(x.^2+u.^2);

Solve the problem

options = struct;
options.name = 'Hyper Sensitive';
solution = ezsolve(objective, bceq, x0, options);
t = subs(collocate(t),solution);
x = subs(collocate(x),solution);
u = subs(collocate(u),solution);
Problem type appears to be: qpcon
Time for symbolic processing: 0.080469 seconds
Starting numeric solver
===== * * * =================================================================== * * *
TOMLAB - TOMLAB Development license  999007. Valid to 2011-12-31
=====================================================================================
Problem: ---  1: Hyper Sensitive                f_k       6.723925391388339900
                                       sum(|constr|)      0.000000002440693436
                              f(x_k) + sum(|constr|)      6.723925393829033800
                                              f(x_0)      0.000000000000000000

Solver: snopt.  EXIT=0.  INFORM=1.
SNOPT 7.2-5 NLP code
Optimality conditions satisfied

FuncEv    1 ConstrEv   26 ConJacEv   26 Iter   21 MinorIter   70
CPU time: 0.031200 sec. Elapsed time: 0.031000 sec. 

Plot result

subplot(2,1,1)
plot(t,x,'*-');
legend('x');
title('Hyper Sensitive state variables');

subplot(2,1,2)
plot(t,u,'+-');
legend('u');
title('Hyper Sensitive control');

HyperSensitive 01.png