TABLE III:
Detailed MPC algorithm.
| 1 | Initialization: j = 0 |
| (1a) | Set the convergence tolerance εj. |
| (1b) | Measure . |
| (1c) | Use virtual constraint and feedback controller to get , and T1(τ), where τ ∊ [tk, tk + TN]. |
| (1d) | Choose initial control trajectory where τ ∊ [tk, tk + TN]. |
| (1e) | Use and to obtain , therefore, J(j)(tk) where τ ∊ [tk, tk + TN]. |
| 2 | Optimal Solution Searching: |
| (2a) | Integrate backwards in time to solve for the costates l(j)(τ) by minimizing the Hamiltonian H = Jmpc + lTΦμ that . |
| (2b) | Compute the search direction, a(j)(τ), from the Hamiltonian . |
| (2c) | Compute the optimal step size, σ(j), with adaptive setting in [39]. |
| (2d) | Update the control trajectory |
| where ψ denotes the constraints. | |
| (2e) | Use to get J(j+l)(tk). |
| (2f) | Check Quit Conditions |
| (i) quit if , | |
| (ii) quit if j has exceeded the max iteration limit, Nt, | |
| (iii) otherwise set j = j + 1 and reiterate gradient step from (2a). |