# Dynamic Optimization Using Local Collocation Methods and Improved Multiresolution Technique
## 3 Improved Multiresolution Technique
### Improved Multiresolution Technique  
Several parameters must be specified for the improved multiresolution technique; that is, the parameter \(N\) for the initial mesh \(V_{0,\,N}\); the mesh refinement tolerance \(\varepsilon\), the mesh resolution \(J_{\max}\) and the mesh refinement iteration \(I_{\max}\) (\(I_{\max}\geq J_{\max}+1\). The default value is \(J_{\max}+1\)). The proposed improved multiresolution technique contains three major steps. First of all, the dynamic optimization problem is transcribed into an NLP problem using one of the RK discretization schemes described earlier. Second, set \(I=1\), initialize \(\text{Gold}=V_{0,\,N}\), and let \(\chi_{\text{old}}\) denote the initial guesses for the NLP decision variables. Then, the improved multiresolution technique proceeds as follows. 1. Solve the discretized dynamic optimization problem on mesh \(G_{\text{old}}\) with \(\chi_{\text{old}}\) as the initial values for the NLP variables. If \(I\geq I_{\max}\), terminate; otherwise move on to the next step. 2. Refine the mesh \(G_{\text{old}}\) via the following steps (step 2a to step 2f): 1. \[\text{Let}\ \mathbf{\Phi}_{\text{old}}=\Big{\{}\mathbf{u}(\tau_{j,k}):\tau_{j,k} \in G_{\text{old}}\Big{\}}=\Big{\{}\phi_{I}(\tau_{j,\,k})\ :\tau_{j,\,k}\in G_{\text{old}},I=1,2,\cdots,m\Big{\}}.\] 2. \[\text{Initialize}\ \text{Gint}=V_{0,\,N},\ \mathbf{\Phi}_{\text{int}}=\big{\{}\phi_{I}(\tau_{0,\,k}),\ \tau_{0,\,k}\in G_{\text{int}},I=1,2,\cdots,m\big{\}},\ \text{and}\ j=-1.\] 3. \[\text{Mesh refinement algorithm I (MRA-I)}.\] 4. \[\text{Mesh refinement algorithm II (MRA-II)}.\] 5. \[\text{Mesh refinement algorithm III (MRA-III)}.\] 6. \[\text{The refined mesh is}\ G_{\text{new}}=G_{\text{int}},\ \text{with the control values}\ \mathbf{\Phi}_{\text{new}}=\mathbf{\Phi}_{\text{int}}.\]
3. Set \(I=I+1\). If \(G_{\text{new}}\) is the same as \(G_{\text{old}}\), stop; otherwise, renew \(\chi_{\text{old}}\) by interpolating the NLP solution that is solved in step 1 on \(G_{\text{new}}\), set \(G_{\text{old}}=G_{\text{new}}\), and go to step 1. The MRA-I in step 2c is similar to the MRT of [25] except that the MRA-I is based on the new generalized dyadic meshes described in Section 3.1. Because of this improvement, the MRA-I overcomes the dyadic limitation on the number of points in the initial mesh and the inconsistency between the initial mesh and the coarsest mesh. Figure 3a gives the flowchart of MRA-I. It should be noted that the interpolated function values \(\hat{\mathbf{\Phi}}(\hat{\tau}_{j,\,k_{i}})\) in Figure 3a is calculated from the neighboring points of \(\hat{\tau}_{j,\,k_{i}}\in\hat{T}_{j}\) in Gint (but not including \(\hat{\tau}_{j,\,k_{i}}\) itself) and the corresponding function values in \(\mathbf{\Phi}_{\text{int}}\) using the \(p\)th-order essentially non-oscillatory (ENO) interpolation [39]. The MRA-II in step 2d is used to overcome the omission or failure of mesh refinement in MRA-I. It was found that the multiresolution technique may fail to refine the mesh adequately in some special regions if only the control variables are used in mesh refinement [27]. The present paper uses the mesh checking algorithm of [27] as MRA-II. The mesh checking algorithm checks the interpolation errors at all the points in the mesh refined by MRA-I, and adds some mesh points where needed. The details of the mesh checking algorithm are given in [27]. The MRA-III of step 2e is responsible for removing the redundant mesh points in the constant control regions by analyzing control slopes. Figure 3b gives the flowchart of MRA-III. It should be noted that the MRTs of [25,26] are based on dyadic meshes and are similar to MRA-I. They do not involve MRA-II and MRA-III. As a result, the MRTs of [25,26] suffer from dyadic restriction on initial meshes. Furthermore, they may fail to refine the mesh adequately in some special regions and generate some redundant mesh points in the constant control regions.