Jump to content

Lotka Shared OED: Difference between revisions

From mintOC
 
(11 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{Dimensions
{{Dimensions
|nd        = 1
|nd        = 1
|nx        = 11
|nx        = 21
|nw       = 2
|nw        = 4}}
|nc       = 4
|nre      = 11
}}


The '''Lotka Shared Experimental Design problem''' looks for an optimal strategy to be performed on a fixed time horizon to control the biomasses multiple species as described in [[:LV Shared Resource]]. The goal here, however, is to minimize the uncertainty of a follow-up parameter estimation problem. When measurements of the three state variables are performed becomes a degree of freedom.
The '''Lotka Shared Experimental Design problem''' looks for an optimal strategy to be performed on a fixed time horizon to control the biomasses multiple species as described in [[:LV Shared Resource]]. The goal here, however, is to minimize the uncertainty of a follow-up parameter estimation problem. When measurements of the three state variables are performed becomes a degree of freedom.
Line 15: Line 12:
== Mathematical formulation ==
== Mathematical formulation ==


We are interested in estimating the parameters <math>p_2</math> and <math>p_4</math> of the Lotka-Volterra type predator-prey fish initial value problem
We are interested in estimating the parameters <math>\alpha_0, \alpha_1,</math> and <math>\alpha_2</math> of the Lotka-Volterra type predator-prey initial value problem
<p>
<p>
<math>
<math>
\begin{array}{rcl}
\begin{array}{rcl}
\dot{x}_0(t) & = &  x_0(t) - \alpha_0 x_0(t) x_1(t) - x_0(t) x_2(t), \\
\dot{x}_0(t) & = &  x_0(t) - \alpha_0 x_0(t) x_1(t) - x_0(t) x_2(t), && t \in [0,t_f], \quad x_0(0) = 1.5, \\
\dot{x}_1(t) & = & - x_1(t) + \alpha_1 x_0(t) x_1(t) - c_1 x_1(t) u(t), \\
\dot{x}_1(t) & = & - x_1(t) + \alpha_1 x_0(t) x_1(t) - c_1 x_1(t) u(t), && t \in [0,t_f], \quad x_1(0) = 0.5, \\
\dot{x}_2(t) & = & -x_2(t) + \alpha_2 x_0(t) x_2(t) - c_2 x_2(t) u(t),
\dot{x}_2(t) & = & -x_2(t) + \alpha_2 x_0(t) x_2(t) - c_2 x_2(t) u(t), && t \in [0,t_f], \quad x_2(0) = 1,
\end{array}  
\end{array}  
</math>
</math>
</p>
</p>
where <math>u(\cdot)</math> is a control that may or may not be fixed. The other parameters, the initial values and <math>t_f = 20</math> are fixed. We are interested in how to choose <math>u</math> and when to measure, with an upper bound <math>M</math> on the measuring time. We can measure the states directly, i.e., <math>h^i(x(t)) = x_i(t), \ i=0,1,2</math>. We use three different sampling functions, <math>w^i(\cdot), i=0,1,2,</math> in the same experimental setting. This can be seen either as a three-dimensional measurement function <math>h(x(t))</math>, or as a special case of a multiple experiment, in which <math>u(\cdot), x(\cdot)</math>, and <math>G(\cdot)</math> are identical.
where <math>u(\cdot)</math> is a control that may or may not be fixed. The other parameters, the initial values and <math>t_f = 20</math> are fixed. We are interested in how to choose <math>u</math> and when to measure, with an upper bound <math>M</math> on the measuring time. We can measure the states directly, i.e., <math>h^i(x(t)) = x_i(t), \ i=0,1,2</math>. We use three different sampling functions, <math>w_i(\cdot), i=0,1,2,</math> in the same experimental setting. This can be seen either as a three-dimensional measurement function <math>h(x(t))</math>, or as a special case of a multiple experiment, in which <math>u(\cdot), x(\cdot)</math>, and <math>G(\cdot)</math> are identical.


Now we formulate the OED problem with <math>\theta := (\alpha_0, \alpha_1, \alpha_2)</math>:
Now we formulate the OED problem with <math>\theta := (\alpha_0, \alpha_1, \alpha_2)</math>:
Line 35: Line 32:
\quad \dot{x}(t) & = & f(x(t),u(t),\theta) \\
\quad \dot{x}(t) & = & f(x(t),u(t),\theta) \\
\quad \dot{G}(t) & = & f_x(x(t),u(t),\theta) G(t) + f_\theta(x(t),u(t),\theta) \\
\quad \dot{G}(t) & = & f_x(x(t),u(t),\theta) G(t) + f_\theta(x(t),u(t),\theta) \\
\quad \dot{F}(t) & = & \sum_{i=1}^{n_o} w_i(t)(h^i_x(x(t))G(t))^T(h^i_x(x(t))G(t)) \\
\quad \dot{F}(t) & = & \sum_{i=0}^{2} w_i(t)(h^i_x(x(t))G(t))^T(h^i_x(x(t))G(t)) \\
\quad \dot{z}(t) & = & w(t), \\
\quad \dot{z}(t) & = & w(t) \\
\quad x(0) & = & x_0 \\
\quad x(0) & = & (1.5, 0.5, 1)^T \\
\quad G(0) & = & \frac{\partial x(0)}{\partial \theta} \\
\quad G(0) & = & \frac{\partial x(0)}{\partial \theta} \\
\quad F(0) & = & I \cdot \varepsilon_{\mathrm{reg}}, \\  
\quad F(0) & = & I \cdot \varepsilon_{\mathrm{reg}}, \\  
Line 48: Line 45:
</p>
</p>


The evolution of the symmetric matrix <math>F: \left[0,t_f \right] \rightarrow \mathbb{R}^{2 \times 2}</math> is given by the weighted sum of observability Gramians
The evolution of the symmetric matrix <math>F: \left[0,t_f \right] \rightarrow \mathbb{R}^{3 \times 3}</math> is given by the weighted sum of observability Gramians
<math>h^i_x (x(t)) G(t), \ i = 1,2</math> for each observed function of states.
<math>h^i_x (x(t)) G(t), \ i = 0,1,2,</math> for each observed function of states.


== Parameters ==
== Parameters ==
Line 73: Line 70:
| align=center | <math>\varepsilon_\mathrm{reg}</math> || align=right | 0.1 || Regularization of Fisher matrix
| align=center | <math>\varepsilon_\mathrm{reg}</math> || align=right | 0.1 || Regularization of Fisher matrix
|-  
|-  
| align=center | <math>\mathcal{U}</math> || align=right | [0,1] || Bounds of control function
| align=center | <math>\mathcal{U}</math> || align=right | <math>[0,1]^3</math> || Bounds of control function
|-  
|-  
| align=center | <math>\mathcal{W}</math> || align=right | [0,1] || Bounds of measurement function
| align=center | <math>\mathcal{W}</math> || align=right | <math>[0,1]^3</math> || Bounds of measurement function
|-  
|-  
| align=center | <math>M_1, M_2, M_3</math> || align=right | 4 || Maximum measurement time
| align=center | <math>M_0, M_1, M_2</math> || align=right | 4 || Maximum measurement time
|}
|}


Line 84: Line 81:
Here is one local solution to the above control problem.
Here is one local solution to the above control problem.


<gallery caption="Reference solution plots" widths="180px" heights="140px" perrow="2">
<gallery caption="Reference solution plots" widths="500px" heights="300px" perrow="1">
  Image:vplotkaUStates.png| States and fishing control.
  Image:Lotka_Shared_OED.png| States, control, and sampling functions for a local optimum.
Image:vplotkaUSensitivities.png| Sensitivities G().
Image:vplotkaUMeas1.png| Sampling function for first state.
Image:vplotkaUMeas2.png| Sampling function for second state.
</gallery>
</gallery>


Line 95: Line 89:
Model descriptions are available in
Model descriptions are available in


* [[:Category:AMPL | AMPL]] at [[Lotka Experimental Design (AMPL)]]
* [[:Category:Casadi | CasADi]] at https://github.com/rlampel/PySHeRLOC
* [[:Category: VPLAN | VPLAN code]] at [[Lotka Experimental Design (VPLAN)]]
 
== Variants ==
 
There are several alternative formulations and variants of the above problem, in particular
 
* a prescribed time grid for the control function <bib id="Sager2006" />, see also [[Lotka Experimental Design (AMPL)]],
* no fishing, i.e., <math>u \equiv 0</math>,
* different fishing control functions for the two species,
* different parameters and start values.


== Miscellaneous and Further Reading ==
== Miscellaneous and Further Reading ==

Latest revision as of 10:16, 26 March 2026

Lotka Shared OED
State dimension: 1
Differential states: 21
Discrete control functions: 4


The Lotka Shared Experimental Design problem looks for an optimal strategy to be performed on a fixed time horizon to control the biomasses multiple species as described in LV Shared Resource. The goal here, however, is to minimize the uncertainty of a follow-up parameter estimation problem. When measurements of the three state variables are performed becomes a degree of freedom.

The mathematical equations form a small-scale ODE model. The ODE from LV Shared Resource is extended such that it also includes state sensitivities, the Fisher information matrix entries and integrated sampling states.

The optimal integer control functions shows bang bang behavior.

Mathematical formulation

We are interested in estimating the parameters α0,α1, and α2 of the Lotka-Volterra type predator-prey initial value problem

x˙0(t)=x0(t)α0x0(t)x1(t)x0(t)x2(t),t[0,tf],x0(0)=1.5,x˙1(t)=x1(t)+α1x0(t)x1(t)c1x1(t)u(t),t[0,tf],x1(0)=0.5,x˙2(t)=x2(t)+α2x0(t)x2(t)c2x2(t)u(t),t[0,tf],x2(0)=1,

where u() is a control that may or may not be fixed. The other parameters, the initial values and tf=20 are fixed. We are interested in how to choose u and when to measure, with an upper bound M on the measuring time. We can measure the states directly, i.e., hi(x(t))=xi(t), i=0,1,2. We use three different sampling functions, wi(),i=0,1,2, in the same experimental setting. This can be seen either as a three-dimensional measurement function h(x(t)), or as a special case of a multiple experiment, in which u(),x(), and G() are identical.

Now we formulate the OED problem with θ:=(α0,α1,α2):

minx,G,F,z,w,utrace(F1(tf))subject tox˙(t)=f(x(t),u(t),θ)G˙(t)=fx(x(t),u(t),θ)G(t)+fθ(x(t),u(t),θ)F˙(t)=i=02wi(t)(hxi(x(t))G(t))T(hxi(x(t))G(t))z˙(t)=w(t)x(0)=(1.5,0.5,1)TG(0)=x(0)θF(0)=Iεreg,z(0)=0u(t)𝒰w(t)𝒲zi(tf)Mi

The evolution of the symmetric matrix F:[0,tf]3×3 is given by the weighted sum of observability Gramians hxi(x(t))G(t), i=0,1,2, for each observed function of states.

Parameters

These fixed values are used within the model:

Symbol Value Description
α0 1.0
α1 1.0
α2 1.2
c1 0.1
c2 0.4
tf 20 Horizon of the control problem
εreg 0.1 Regularization of Fisher matrix
𝒰 [0,1]3 Bounds of control function
𝒲 [0,1]3 Bounds of measurement function
M0,M1,M2 4 Maximum measurement time

Reference Solutions

Here is one local solution to the above control problem.

Source Code

Model descriptions are available in

Miscellaneous and Further Reading

The Lotka Volterra fishing problem was introduced by Sebastian Sager in a proceedings paper [Sager2006]Address: Heidelberg
Author: S. Sager; H.G. Bock; M. Diehl; G. Reinelt; J.P. Schl\"oder
Booktitle: Recent Advances in Optimization
Editor: A. Seeger
Note: ISBN 978-3-5402-8257-0
Pages: 269--289
Publisher: Springer
Series: Lectures Notes in Economics and Mathematical Systems
Title: Numerical methods for optimal control with binary control functions applied to a Lotka-Volterra type fishing problem
Volume: 563
Year: 2009
Link to Google Scholar
and revisited in his PhD thesis [Sager2005]Address: Tönning, Lübeck, Marburg
Author: S. Sager
Editor: ISBN 3-89959-416-9
Publisher: Der andere Verlag
Title: Numerical methods for mixed--integer optimal control problems
Url: http://mathopt.de/PUBLICATIONS/Sager2005.pdf
Year: 2005
Link to Google Scholar
. These are also the references to look for more details. The experimental design problem has been described in the habilitation thesis of Sager, [Sager2011d]Author: S. Sager
How published: University of Heidelberg
Month: August
Note: Habilitation
Title: On the Integration of Optimization Approaches for Mixed-Integer Nonlinear Optimal Control
Url: http://mathopt.de/PUBLICATIONS/Sager2011d.pdf
Year: 2011
Link to Google Scholar
.

References

[Sager2005]S. Sager (2005): Numerical methods for mixed--integer optimal control problems. (%edition%). Der andere Verlag, Tönning, Lübeck, Marburg, %pages%Link to Google Scholar
[Sager2006]S. Sager; H.G. Bock; M. Diehl; G. Reinelt; J.P. Schl\"oder (2009): Numerical methods for optimal control with binary control functions applied to a Lotka-Volterra type fishing problem. Springer, Recent Advances in OptimizationLink to Google Scholar
[Sager2011d]S. Sager: On the Integration of Optimization Approaches for Mixed-Integer Nonlinear Optimal Control, 2011Link to Google Scholar