1. General Dynamic Optimization Problem Minimize an objective function $J$ subject to constraints: $$ \min_{u(t)} J[x(t_f)] $$ Subject to: State dynamics: $\dot{x}(t) = f[t, x(t), u(t)]$, with initial condition $x(0) = X_0$ Equality constraints: $h[t, x(t), u(t)] = 0$ Inequality constraints: $g[t, x(t), u(t)] \leq 0$ State bounds: $x^L(t) \leq x(t) \leq x^U(t)$ Control bounds: $u^L(t) \leq u(t) \leq u^U(t)$ Where: $J[x(t_f)]$ - objective function (final conditions) $f$ - vector of differential equations $h$ - vector of equality constraints $g$ - vector of inequality constraints $x(t)$ - state vector $u(t)$ - control vector $X_0$ - initial conditions $L, U$ - lower and upper profile bounds 2. Orthogonal Collocation on Finite Elements To convert the continuous problem into a Nonlinear Programming (NLP) problem, state and control variables are approximated using basis functions (Lagrange polynomials) over finite elements. State Variable Approximation For element $i$, $i = 1, \dots, NE$: $$ X_{K+1}(t) = \sum_{j=0}^{K} x_{ij} \phi_j(t); \quad \phi_j(t) = \prod_{k=0, k \neq j}^{K} \frac{(t - t_{ik})}{(t_j - t_{ik})} $$ Control Variable Approximation For element $i$, $i = 1, \dots, NE$: $$ u_K(t) = \sum_{j=1}^{K} u_{ij} \theta_j(t); \quad \theta_j(t) = \prod_{k=1, k \neq j}^{K} \frac{(t - t_{ik})}{(t_j - t_{ik})} $$ Where $t_{ij}$ are roots of Legendre polynomials on interval $[0,1]$. 3. NLP Formulation (Discretized Problem) $$ \min_{x_{ij}, u_{ij}, \Delta \zeta_i} J(x_f) $$ Subject to: Initial state: $x_{10} - X_0 = 0$ Final time: $t_f - \sum_{i=1}^{NE} \Delta \zeta_i = 0$ Collocation equations: $\Delta \zeta_i \dot{x}_{K+1}(t_{ij}) - \Delta \zeta_i f(t_{ij}, x_{ij}, u_{ij}) = 0$, for $i = 1, \dots, NE$, $j = 1, \dots, K$ Continuity conditions: $x_{i0} - x_{K+1}(S_i) = 0$, for $i = 2, \dots, NE$ Terminal state: $x_f - x_{K+1}(S_{NE+1}) = 0$ Control bounds: $u^L_k(\zeta_i) \leq u_k(\zeta_i) \leq u^U_k(\zeta_i)$, for $i = 1, \dots, NE$ Element length bounds: $\Delta \zeta^L \leq \Delta \zeta_i \leq \Delta \zeta^U$, for $i = 1, \dots, NE$ Equality constraints: $h(t_{ij}, x_{ij}, u_{ij}) = 0$ Inequality constraints: $g(t_{ij}, x_{ij}, u_{ij}) \leq 0$ State variable bounds: $x^L_j \leq x_{K+1}(t_{ij}) \leq x^U_j$, for $i = 1, \dots, NE$, $j = 0, \dots, K$ Control variable bounds: $u^L_j \leq u_K(t_{ij}) \leq u^U_j$, for $i = 1, \dots, NE$, $j = 1, \dots, K$ 4. Example Problems 4.1 Car Optimization Minimize time $J = t_f$ subject to: $\dot{x}_1 = u$ $\dot{x}_2 = x_1$ $x_1(0) = 0$, $x_2(0) = 0$ $x_1(t_f) = 0$, $x_2(t_f) = 300$ $u \in [-2, 1]$ Where $x_1(t)$ is velocity, $x_2(t)$ is distance, $u(t)$ is acceleration. 4.2 Tubular Reactor Maximize $J = x_2(t_f)$ for reactions $A \to B$, $A \to C$ subject to: $\dot{x}_1 = -(u + 0.5u^2)x_1$ $\dot{x}_2 = ux_1$ $x_1(0) = 1$, $x_2(0) = 0$ $t_f = 1$ $u \in [0, 5]$ Where $x_1(t)$ is concentration of A, $x_2(t)$ is concentration of B, $u(t)$ is control variable. 4.3 Batch Reactor Maximize $J = x_2(t_f)$ for consecutive reactions $A \to B \to C$ subject to: $\dot{x}_1 = -k_1 x_1$ $\dot{x}_2 = k_1 x_1 - k_2 x_2$ $k_1 = 4000 e^{(-2500/T)}$ $k_2 = 620000 e^{(-5000/T)}$ $x_1(0) = 1$, $x_2(0) = 0$ $t_f = 1$ $T \in [298, 398]$ (temperature, control variable) 4.4 Plug Flow Reactor Maximize $J = 1 - x_1(t_f) - x_2(t_f)$ for reaction $A \to B \to C$ subject to: $\dot{x}_1 = u(10x_2 - x_1)$ $\dot{x}_2 = -u(10x_2 - x_1) - (1 - u)x_2$ $x_1(0) = 1$, $x_2(0) = 0$ $t_f = 12$ $u \in [0, 1]$ (fraction of catalyst) Where $x_1(t)$ is mole fraction of A, $x_2(t)$ is mole fraction of B, $u(t)$ is fraction of type 1 catalyst. 4.5 CSTR (Continuously Stirred Tank Reactor) Maximize $J = \int_0^{0.2} (5.8(qx_1 - 44) - 3.7x_1 - 4.1x_2 + q(23x_4 + 11x_5 + 28x_6 + 35x_7) - 5.0x_3 - 0.099) dt$ subject to: $\dot{x}_1 = 44 - qx_1 - 17.6x_1x_2 + 23x_1x_6x_7$ $\dot{x}_2 = 41 - qx_2 - 17.6x_1x_2 - 146x_2x_3$ $\dot{x}_3 = 42 - qx_3 - 73x_2x_3$ $\dot{x}_4 = -qx_4 + 35.2x_1x_2 - 51.3x_4x_5$ $\dot{x}_5 = -qx_5 + 219x_2x_3 - 51.3x_4x_5$ $\dot{x}_6 = -qx_6 + 102.6x_4x_5 - 23x_1x_6x_7$ $\dot{x}_7 = -qx_7 + 46x_1x_6x_7$ Initial conditions $x(0) = [0.1883, 0.2507, 0.0467, 0.0899, 0.1804, 0.1394, 0.1046]^T$ $q = u_1 + u_2 + 44$ Control bounds: $0 \leq u_1 \leq 20$, $0 \leq u_2 \leq 6$, $0 \leq u_3 \leq 4$, $0 \leq u_4 \leq 20$ $t_f = 0.2$ The cost function is typically rewritten into Meyer form by introducing an additional state variable for the integral.