# Global Dynamic System

Deterministic Global Optimization of Nonlinear Dynamic Systems, Youdong Lin and Mark A. Stadtherr, Department of Chemical and Biomolecular Engineering, University of Notre Dame

## Problem Description

Find u over t in [0; 1 ] to minimize:

subject to:

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


## Problem setup

toms t
p = tomPhase('p', t, 0, 1, 20);
setPhase(p);

tomStates x
tomControls u

% Box constraints, bounds and odo
c = {-10 <= icollocate(x) <= 10
-5  <= collocate(u)  <= 5
initial(x == 9)
collocate(dot(x) == -x.^2+u)};


## Solve the problem

options = struct;
options.name = 'Global Dynamic System';
Prob = sym2prob('con',-final(x)^2, c, [], options);
Prob.xInit = 20;
Result = tomRun('multiMin', Prob, 1);
solution = getSolution(Result);
t = subs(collocate(t),solution);
x = subs(collocate(x),solution);
u = subs(collocate(u),solution);

===== * * * =================================================================== * * *
TOMLAB - Tomlab Optimization Inc. Development license  999001. Valid to 2010-02-05
=====================================================================================
Problem: ---  1: Global Dynamic System          f_k      -8.232621699201864400
sum(|constr|)      0.000000000001350919
f(x_k) + sum(|constr|)     -8.232621699200514300
f(x_0)   -722.770548126228160000

Solver: multiMin with local solver snopt.  EXIT=0.  INFORM=1.
Find local optima using multistart local search
Did 20 local tries. Found 2 local minima

FuncEv   31 GradEv   29 ConstrEv   29 ConJacEv   29 Iter   17 MinorIter  103
CPU time: 0.937500 sec. Elapsed time: 0.953000 sec.


## Plot result

figure(1);
subplot(2,1,1);
plot(t,x,'*-');
legend('x');

subplot(2,1,2);
plot(t,u,'*-');
legend('u');