https://mintoc.de/index.php?title=Lotka_Volterra_(terminal_constraint_violation)&feed=atom&action=history Lotka Volterra (terminal constraint violation) - Revision history 2021-09-23T17:53:04Z Revision history for this page on the wiki MediaWiki 1.25.2 https://mintoc.de/index.php?title=Lotka_Volterra_(terminal_constraint_violation)&diff=2317&oldid=prev ClemensZeile: Created page with "{{Dimensions |nd = 1 |nx = 2 |nw = 1 |nre = 2 |nri = 1 }}<!-- Do not insert line break here or Dimensions Box moves up in the layout... -->Th..." 2019-10-14T11:48:38Z <p>Created page with &quot;{{Dimensions |nd = 1 |nx = 2 |nw = 1 |nre = 2 |nri = 1 }}&lt;!-- Do not insert line break here or Dimensions Box moves up in the layout... --&gt;Th...&quot;</p> <p><b>New page</b></p><div>{{Dimensions<br /> |nd = 1<br /> |nx = 2<br /> |nw = 1<br /> |nre = 2<br /> |nri = 1<br /> }}&lt;!-- Do not insert line break here or Dimensions Box moves up in the layout...<br /> <br /> --&gt;This site describes a Lotka Volterra variant where a terminal inequality constraint on the differential states is added. A violation of this constraint is penalized as part of the Mayer objective.<br /> <br /> == Mathematical formulation ==<br /> <br /> The mixed-integer optimal control problem is given by<br /> <br /> &lt;p&gt;<br /> &lt;math&gt;<br /> \begin{array}{llclr}<br /> \displaystyle \min_{x, w, s} &amp; x_2(t_f) + 10s \\[1.5ex]<br /> \mbox{s.t.} <br /> &amp; \dot{x}_0 &amp; = &amp; x_0 - x_0 x_1 - \; c_0 x_0 \; w, \\<br /> &amp; \dot{x}_1 &amp; = &amp; - x_1 + x_0 x_1 - \; c_1 x_1 \; w, \\<br /> &amp; \dot{x}_2 &amp; = &amp; (x_0 - 1)^2 + (x_1 - 1)^2, \\[1.5ex]<br /> &amp; x_0 &amp; \geq &amp; 1.1 - s, \\<br /> &amp; x(0) &amp;=&amp; (0.5, 0.7, 0)^T, \\<br /> &amp; w(t) &amp;\in&amp; \{0, 1\}, \\<br /> &amp; s &amp; \geq &amp; 0.<br /> \end{array} <br /> &lt;/math&gt;<br /> &lt;/p&gt;<br /> <br /> Here the differential states &lt;math&gt;(x_0, x_1)&lt;/math&gt; describe the biomasses of prey and predator, respectively. The third differential state is used here to transform the objective, an integrated deviation, into the Mayer formulation &lt;math&gt;\min \; x_2(t_f)&lt;/math&gt;. This problem variant penalizes a biomass x(0) that is below 1.1 at the end of the time horizon.<br /> <br /> == Parameters ==<br /> <br /> These fixed values are used within the model.<br /> <br /> &lt;math&gt;<br /> \begin{array}{rcl}<br /> [t_0, t_f] &amp;=&amp; [0, 12],\\<br /> (c_{0}, c_{1}) &amp;=&amp; (0.4, 0.2),<br /> \end{array}<br /> &lt;/math&gt;<br /> <br /> == Reference Solutions ==<br /> <br /> If the problem is relaxed, i.e., we demand that &lt;math&gt;w(t)&lt;/math&gt; is in the continuous interval &lt;math&gt;[0, 1]&lt;/math&gt; rather than being binary, the optimal solution can be determined by means of direct optimal control. <br /> <br /> The optimal objective value of the relaxed problem with &lt;math&gt; n_t=12000, \, n_u=200 &lt;/math&gt; is &lt;math&gt;x_2(t_f) =1.36548113&lt;/math&gt;. The objective value of the solution with binary controls obtained by Combinatorial Integral Approximation (CIA) is &lt;math&gt;x_2(t_f) =1.38756111&lt;/math&gt;. <br /> <br /> &lt;gallery caption=&quot;Reference solution plots&quot; widths=&quot;180px&quot; heights=&quot;140px&quot; perrow=&quot;2&quot;&gt;<br /> Image:Lotka_term_ineq_Relaxed_12000_200.pdf| Optimal relaxed controls and states determined by an direct approach with ampl_mintoc (Radau collocation) and &lt;math&gt;n_t=12000, \, n_u=200&lt;/math&gt;.<br /> Image:Lotka_term_ineq_CIA_12000_200.pdf| Differential states and binary cotnrol determined by an direct approach (Radau collocation) with ampl_mintoc and &lt;math&gt;n_t=12000, \, n_u=200&lt;/math&gt;. The relaxed controls were approximated by Combinatorial Integral Approximation.<br /> &lt;/gallery&gt;<br /> <br /> <br /> <br /> <br /> <br /> <br /> <br /> <br /> &lt;!--List of all categories this page is part of. List characterization of solution behavior, model properties, ore presence of implementation details (e.g., AMPL for AMPL model) here --&gt;<br /> [[Category:MIOCP]]<br /> [[Category:ODE model]]<br /> [[Category:Tracking objective]]<br /> [[Category:Chattering]]<br /> [[Category:Sensitivity-seeking arcs]]<br /> [[Category:Population dynamics]]<br /> <br /> <br /> &lt;!--Testing Graphviz<br /> &lt;graphviz border='frame' format='svg'&gt;<br /> digraph G {Hello-&gt;World!}<br /> &lt;/graphviz&gt;<br /> --&gt;</div> ClemensZeile