Deterministic Global Optimization of Nonlinear Dynamic Systems, Youdong Lin and Mark A. Stadtherr, Department of Chemical and Biomolecular Engineering, University of Notre Dame
Find u over t in [0; 1 ] to minimize:
| J = −x2(tf) |
subject to:
| = −x2+u |
| x(t0) = 9 |
| −5 <= u <= 5 |
Reference: [36]
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)};
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 2011-02-05
=====================================================================================
Problem: --- 1: Global Dynamic System - Trial 13 f_k -8.232621699103969300
sum(|constr|) 0.000000001208069200
f(x_k) + sum(|constr|) -8.232621697895901000
Solver: multiMin with local solver snopt. EXIT=0. INFORM=0.
Find local optima using multistart local search
Did 20 local tries. Found 1 global, 2 minima. TotFuncEv 980. TotConstrEv 941
FuncEv 980 GradEv 940 ConstrEv 941 ConJacEv 33 Iter 489
CPU time: 1.453125 sec. Elapsed time: 1.500000 sec.
figure(1);
subplot(2,1,1);
plot(t,x,'*-');
legend('x');
subplot(2,1,2);
plot(t,u,'*-');
legend('u');