Initialize outer-level parallel particle swarm optimization f Minimize outer-level objective function (i.e., 3D marker coordinate errors for all time frames of inner-level optimization) Adjust outer-level design variables (i.e., model parameters) False Initialize inner-level non-linear least squares optimization False Minimize inner-level objective function (i.e., 3D marker coordinate errors for current time frame i) Terminate inner-level non-linear least squares optimization True Terminate outer-level parallel particle swarm optimization Figure 3-10. Two-level optimization approach minimizing the 3D marker coordinate errors between the kinematic model markers and experimental marker data to determine functional joint axes.