# Inertial Parameter Identification in Robotics: A Survey
## 5 The Output Error (OE) and Input Error (IE) Identification Approaches  
### Closed-Loop Output Error (CLOE)  
As indicated by its name, an Output Error method consists of finding the parameter vector \(\mathbf{\beta}\) that minimizes the value function \(J(\mathbf{\beta})\) defined as the squared L2-norm of the error between the output \(\mathbf{y}\) of a system to be identified and the output \(\mathbf{y}_{s}\) of its model (see [72,73] and the references therein)  
\[J(\mathbf{\beta})=\|\mathbf{y}-\mathbf{y}_{s}\|_{2}^{2}\,, \tag{37}\]  
In the case of a robot we define \(\mathbf{y}=[\mathbf{q}(t_{1})^{\top}\cdots\mathbf{q}(t_{N})^{\top}]\in\mathbb{R}^{nN}\) (resp. \(\mathbf{y}_{s}=[\mathbf{q}_{s}(t_{1})^{\top}\cdots\mathbf{q}_{s}(t_{N})^{\top}]\)\(\in\mathbb{R}^{n\cdot N}\)). Please note that Cartesian space formulations of the error function are also possible, see for instance [74]. The minimization of (37) is a nonlinear LS-optimization problem solved by running iterative algorithms such as the gradient or Newton methods which are based on a first- or a second-order [PERSON]'s expansion of the value function \(J(\mathbf{\beta})\). The unknown parameters are therefore updated iteratively so that the simulated model output fits the measured system output, with  
\[\mathbf{\beta}^{i+1}=\mathbf{\beta}^{i}+\mathbf{\Delta}\mathbf{\beta}^{i}\,, \tag{38}\]  
where \(\mathbf{\Delta}\mathbf{\beta}^{i}\in\mathbb{R}^{b}\) is the innovation vector at iteration \(i\). Output Error identification can be carried out in Open-Loop or in Closed-Loop. However, robots being double-integrator systems, Open-Loop Output Error (OLOE) turn out to be seldom used in practice compared to Closed-Loop Output Error (CLOE) as it is highly sensitive to initial conditions (c.f. [43] for a more detailed discussion on the topic). In CLOE, the simulated data are obtained by integrating the DDM in (3) assuming the same control law for both the actual and simulated robots--without gain adjustments--and using \(\mathbf{\beta}_{i-1}\) the estimate of \(\mathbf{\beta}\) calculated at iteration \(i-1\). The general principle of the CLOE method is illustrated in Figure 2. Let the simulated joint positions \(\mathbf{q}_{s}\) be the model outputs. At time \(t_{k}\) the error to be minimized is given by  
\[\mathbf{e}_{CLOE}(t_{k},\mathbf{\beta})=\mathbf{q}(t_{k})-\mathbf{q}_{s}(t_{k},\mathbf{\beta})\,, \tag{39}\]  
Then, if a classical Gauss-Newton algorithm is chosen, after data sampling and data-filtering, the following over-determined system is obtained at iteration \(i\):  
\[\mathbf{\Delta}\mathbf{y}(\mathbf{q})=\mathbf{\Phi}_{CLOE}^{i}\mathbf{\Delta}\mathbf{\beta}_{CLOE}^{i }+\mathbf{e}_{CLOE}^{i}\,, \tag{40}\]  
where \(\mathbf{\Delta}\mathbf{y}(\mathbf{q})\in\mathbb{R}^{r}\) is the vector built from the sampling of \(\mathbf{e}_{CLOE}(t,\mathbf{\beta})\); \(\mathbf{\Phi}_{CLOE}^{i}\in\mathbb{R}^{(r\times b)}\) is the matrix built from the sampling of \(\mathbf{G}_{\mathbf{q}_{s}}=\left.\partial\mathbf{q}_{s}/\partial\mathbf{\beta}\right|_{\mathbf{ \beta}=\mathbf{\beta}_{CLOE}^{i}}\in\mathbb{R}^{(n\times b)}\), the Jacobian matrix of \(\mathbf{q}_{s}\) evaluated at \(\mathbf{\hat{\beta}}_{CLOE}^{i}\); and the term \(\epsilon_{CLOE}^{i}\in\mathbb{R}^{r}\) is the vector built from the sampling of the residuals of the Taylor series expansion. Then, \(\mathbf{\Delta\beta}^{i}\), the LS estimate of \(\mathbf{\Delta\beta}_{CLOE}^{i}\) at iteration \(i\) is calculated with (40). Please note that numerically computing the Jacobian \(\mathbf{G}_{\mathbf{q}_{s}}\) with finite differences requires \(b+1\) model simulations. Therefore, CLOE is expected to be computationally expensive compared to IDIM-OLS or IDIM-IV. Once CLOE has converged, the covariance matrix of the CLOE estimates is given by  
\[\mathbf{\Sigma}_{CLOE}=\left(\mathbf{\Phi}_{CLOE}^{\top}\mathbf{\Sigma}_{q}^{-1}\mathbf{\Phi}_{ CLOE}\right)^{-1}, \tag{41}\]  
where \(\mathbf{\Sigma}_{q}\) is the variance matrix of the joint position measurement noise.