Skip to main content
Log in

Generation of human walking paths

  • Published:
Autonomous Robots Aims and scope Submit manuscript

Abstract

This work investigates the way humans plan their paths in a goal-directed motion, assuming that a person acts as an optimal controller that plans the path minimizing a certain (unknown) cost function. Taking this viewpoint, the problem can be formulated as an inverse optimal control one, i.e., starting from control and state trajectories one wants to figure out the cost function used by a person while planning the path. The so-obtained model can be used to support the design of safe human–robot interaction systems, as well as to plan human-like paths for humanoid robots. To test the envisaged ideas, a set of walking paths of different volunteers were recorded using a motion capture facility. The collected data were used to compare two solutions to the inverse optimal control problem coming from the literature to a novel one. The obtained results, ranked using the discrete Fréchet distance, show the effectiveness of the proposed approach.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14

Similar content being viewed by others

Notes

  1. This conclusion has been however the subject of some criticisms in Bretl et al. (2010).

  2. Note that, considering the assumption of natural forward locomotion, the unicycle and the extended unicycle are the only models that appeared in the literature on planning human walking paths.

  3. Given two curves \(\phi :\left[ a,b\right] \rightarrow V\) and \(\gamma :\left[ a',b'\right] \rightarrow V\), their Fréchet distance is defined as

    $$\begin{aligned} \delta _F(\phi ,\gamma ) = \underset{\alpha ,\beta }{\inf }~ \underset{t\in \left[ 0,1\right] }{\max }\quad d\left( \phi \left( \alpha \left( t\right) \right) ,\gamma \left( \beta \left( t\right) \right) \right) \end{aligned}$$
    (11)

    where \(\alpha \) and \(\beta \) are arbitrary continuous non-decreasing function from \(\left[ 0,1\right] \) onto \(\left[ a,b\right] \) and \(\left[ a',b'\right] \) respectively.

References

  • Alami, R., Albu-Schaeffer, A., Bicchi, A., Bischoff, R., Chatila, R., De Luca, A., De Santis, A., Giralt, G., Guiochet, J., & Hirzinger, G., et al. (2006). Safe and dependable physical human-robot interaction in anthropic domains: State of the art and challenges, In Proceedings of IROS’06 Workshop Physical HumanRobot Interaction(pHRI) in Anthropic Domains, (vol. 6). IEEE Press.

  • Alt, H., & Godau, M. (1995). Computing the Fréchet distance between two polygonal curves. International Journal of Computational Geometry & Applications, 5(1 and 2), 75–91. doi:10.1142/S0218195995000064.

    Article  MATH  MathSciNet  Google Scholar 

  • Arechavaleta, G., Laumond, J.P., Hicheur, & H., Berthoz, A. (2006). The nonholonomic nature of human locomotion: a modeling study. In Biomedical Robotics and Biomechatronics, 2006. BioRob 2006. The First IEEE/RAS-EMBS International Conference on (pp. 158–163). doi:10.1109/BIOROB.2006.1639077.

  • Arechavaleta, G., Laumond, J.P., Hicheur, H., & Berthoz, A. (2006). Optimizing principles underlying the shape of trajectories in goal oriented locomotion for humans. In IEEE/RAS International Conference on Humanoid Robots (pp. 131–136). doi:10.1109/ICHR.2006.321374.

  • Arechavaleta, G., Laumond, J. P., Hicheur, H., & Berthoz, A. (2008). On the nonholonomic nature of human locomotion. Autonomous Robots, 25(1–2), 25–35. doi:10.1007/s10514-007-9075-2.

    Article  Google Scholar 

  • Arechavaleta, G., Laumond, J. P., Hicheur, H., & Berthoz, A. (2008). An optimality principle governing human walking. IEEE Transactions on Robotics, 24(1), 5–14. doi:10.1109/TRO.2008.915449.

    Article  Google Scholar 

  • Bai, Y. B., Yong, J. H., Liu, C. Y., Liu, X. M., & Meng, Y. (2011). Polyline approach for approximating hausdorff distance between planar free-form curves. Computer Aided Design, 43(6), 687–698. doi:10.1016/j.cad.2011.02.008.

    Article  Google Scholar 

  • Bascetta, L., Ferretti, G., Rocco, P., Ardo, H., Bruyninckx, H., Demeester, E., & Di Lello, E. (2011). Towards safe human-robot interaction in robotic cells: an approach based on visual tracking and intention estimation. In 2011 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS) (pp. 2971–2978). doi:10.1109/IROS.2011.6094642.

  • Bayen, T., Chitour, Y., Jean, F., & Mason, P. (2009). Asymptotic analysis of an optimal control problem connected to the human locomotion. In Decision and Control, 2009 held jointly with the 2009 28th Chinese Control Conference. CDC/CCC 2009. Proceedings of the 48th IEEE Conference on (pp. 2248–2253). doi:10.1109/CDC.2009.5400873.

  • Berret, B., Chiovetto, E., Nori, F., & Pozzo, T. (2011). Evidence for composite cost functions in arm movement planning: An inverse optimal control approach. PLoS Computational Biology, 7(10), 1–19. doi:10.1371/journal.pcbi.1002183.

    Article  MathSciNet  Google Scholar 

  • Bretl, T., Arechavaleta, G., Akce, A., & Laumond, J. P. (2010). Comments on An optimality principle governing human walking. IEEE Transactions on Robotics, 26(6), 1105–1106. doi:10.1109/TRO.2010.2082110.

    Article  Google Scholar 

  • Broekens, J., Heerink, M., & Rosendal, H. (2009). Assistive social robots in elderly care: A review. Gerontechnology, 8(2), 94–103. doi:10.4017/gt.2009.08.02.002.00.

    Article  Google Scholar 

  • Castelán, M., & Arechavaleta, G. (2009). Approximating the reachable space of human walking paths: a low dimensional linear approach. In Humanoid Robots, 2009. Humanoids 2009. 9th IEEE-RAS International Conference on (pp. 81–86). doi:10.1109/ICHR.2009.5379595.

  • Casti, J. (1980). On the general inverse problem of optimal control theory. Journal of Optimization Theory and Applications, 32, 491–497. doi:10.1007/BF00934036.

    Article  MATH  MathSciNet  Google Scholar 

  • Ceriani, N., Zanchettin, A., Rocco, P., Stolt, A., & Robertsson, A. (2013). A constraint-based strategy for task-consistent safe human-robot interaction. In Intelligent Robots and Systems (IROS), 2013 IEEE/RSJ International Conference on (pp. 4630–4635). doi:10.1109/IROS.2013.6697022.

  • Chittaro, F., Jean, F., & Mason, P. (2013). On inverse optimal control problems of human locomotion: Stability and robustness of the minimizers. Journal of Mathematical Sciences, 195(3), 269–287. doi:10.1007/s10958-013-1579-z.

    Article  MATH  MathSciNet  Google Scholar 

  • Dvijotham, K., & Todorov, E. (2010). Inverse optimal control with linearly-solvable MDPs. In Proceedings of the 27th International Conference on Machine Learning (ICML-10) (pp. 335–342). Omnipress. http://www.icml2010.org/papers/571.pdf

  • Efrat, Guibas, Har-Peled, S., & Mitchell, Murali. (2002). New similarity measures between polylines with applications to morphing and polygon sweeping. Discrete & Computational Geometry, 28(4), 535–569. doi:10.1007/s00454-002-2886-1.

    Article  MATH  MathSciNet  Google Scholar 

  • Flash, T., & Hogan, N. (1985). The coordination of arm movements: an experimentally confirmed mathematical model. The Journal of Neuroscience 5(7), 1688–1703. http://hdl.handle.net/1721.1/6409

  • Galbraith, G., & Vinter, R. (2003). Lipschitz continuity of optimal controls for state constrained problems. SIAM Journal on Control and Optimization, 42(5), 1727–1744. doi:10.1137/S0363012902404711.

    Article  MATH  MathSciNet  Google Scholar 

  • Hempel, A., Goulart, P., & Lygeros, J. (2015). Inverse parametric optimization with an application to hybrid system control. IEEE Transactions on Automatic Control, 60(1), 1064–1069. doi:10.1109/TAC.2014.2336992.

    Article  MathSciNet  Google Scholar 

  • Hicheur, H., Pham, Q. C., Arechavaleta, G., Laumond, J. P., & Berthoz, A. (2007). The formation of trajectories during goal-oriented locomotion in humans. i. a stereotyped behaviour. European Journal of Neuroscience, 26(8), 2376–2390. doi:10.1111/j.1460-9568.2007.05836.x.

    Article  Google Scholar 

  • Jameson, A., & Kreindler, E. (1973). Inverse problem of linear optimal control. SIAM Journal on Control, 11(1), 1–19. doi:10.1137/0311001.

    Article  MATH  MathSciNet  Google Scholar 

  • Jiang, M., Xu, Y., & Zhu, B. (2008). Protein structure-structure alignment with discrete Fréchet distance. Journal of Bioinformatics and Computational Biology, 06(01), 51–64. doi:10.1142/S0219720008003278.

    Article  Google Scholar 

  • Kalman, R. E. (1964). When is a linear control system optimal? Journal of Basic Engineering, 86(1), 51–60. doi:10.1115/1.3653115.

    Article  MathSciNet  Google Scholar 

  • Keshavarz, A., Wang, Y., & Boyd, S. (2011). Imputing a convex objective function. In IEEE International Symposium on Intelligent Control (ISIC), 2011 (pp. 613–619). doi:10.1109/ISIC.2011.6045410.

  • Knoblauch, R., Pietrucha, M., & Nitzburg, M. (1996). Field studies of pedestrian walking speed and start-up time. Transportation Research Record: Journal of the Transportation Research Board, 1538, 27–38. doi:10.3141/1538-04.

    Article  Google Scholar 

  • Luenberger, D., & Ye, Y. (2008). Linear and nonlinear programming. New York: Springer. doi:10.1007/978-0-387-74503-9.

    MATH  Google Scholar 

  • Mombaur, K., Laumond, J.P., & Yoshida, E. (2008). An optimal control model unifying holonomic and nonholonomic walking. In Humanoids 2008. 8th IEEE-RAS International Conference on Humanoid Robots, 2008 (pp. 646–653). doi:10.1109/ICHR.2008.4756020.

  • Mombaur, K., Truong, A., & Laumond, J. P. (2010). From human to humanoid locomotion-an inverse optimal control approach. Autonomous Robots, 28, 369–383. doi:10.1007/s10514-009-9170-7.

    Article  Google Scholar 

  • Öberg, T., Karsznia, A., & Öberg, K. (1994). Joint angle parameters in gait: reference data for normal subjects, 10–79 years of age. Journal of Rehabilitation Research and Development 31(3), 199–213. http://www.ncbi.nlm.nih.gov/pubmed/7965878

  • Papadopoulos, A., Bascetta, L., & Ferretti, G. (2013). Generation of human walking paths. In IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), 2013 (pp. 1676–1681). doi:10.1109/IROS.2013.6696574.

  • Papadopoulos, A.V., Bascetta, L., & Ferretti, G. (2014). A comparative evaluation of human motion planning policies. In (Proceedings of the 19th IFAC World Congress) (vol. 19, pp. 12,299–12,304). doi:10.3182/20140824-6-ZA-1003.01898.

  • Pham, Q. C., Hicheur, H., Arechavaleta, G., Laumond, J. P., & Berthoz, A. (2007). The formation of trajectories during goal-oriented locomotion in humans. ii. a maximum smoothness model. European Journal of Neuroscience, 26(8), 2391–2403. doi:10.1111/j.1460-9568.2007.05835.x.

    Article  Google Scholar 

  • Puydupin-Jamin, A.S., Johnson, M., & Bretl, T. (2012). A convex approach to inverse optimal control and its application to modeling human locomotion. In IEEE International Conference on Robotics and Automation (ICRA), 2012 (pp. 531–536). doi:10.1109/ICRA.2012.6225317.

  • Ragaglia, M., Bascetta, L., & Rocco, P. (2014a). Multiple camera human detection and tracking inside a robotic cell an approach based on image warping, computer vision, k-d trees and particle filtering. In 11th International Conference On Informatics in Control, Automation and Robotics ICINCO 2014, (pp. 374–381).

  • Ragaglia, M., Bascetta, L., & Rocco, P. (2015). Detecting, tracking and predicting human motion inside an industrial robotic cell using a map-based particle filtering strategy. In International Conference on Advanced Robotics ICAR 2015.

  • Ragaglia, M., Bascetta, L., Rocco, P., & Zanchettin, A. (2014b). Integration of perception, control and injury knowledge for safe human-robot interaction. In IEEE International Conference on Robotics and Automation ICRA 2014 (pp. 1196–1202).

  • Ramirez, C.A., Castelán, M., & Arechavaleta, G. (2010). Multilinear decomposition of human walking paths. In IEEE-RAS International Conference on Humanoid Robots (pp. 492–497). doi:10.1109/ICHR.2010.5686313.

  • Schiavi, R., Bicchi, A., & Flacco, F. (2009). Integration of active and passive compliance control for safe human-robot coexistence. In Robotics and Automation, 2009. ICRA ’09. IEEE International Conference on (pp. 259–264). doi:10.1109/ROBOT.2009.5152571.

  • Sisbot, E., Marin-Urias, L., Alami, R., & Simeon, T. (2007). A human aware mobile robot motion planner. IEEE Transactions on Robotics, 23(5), 874–883. doi:10.1109/TRO.2007.904911.

    Article  Google Scholar 

  • Terekhov, A. V., & Zatsiorsky, V. M. (2011). Analytical and numerical analysis of inverse optimization problems: Conditions of uniqueness and computational methods. Biological Cybernetics, 104(1–2), 75–93. doi:10.1007/s00422-011-0421-2.

    Article  MATH  MathSciNet  Google Scholar 

  • Todorov, E. (2004). Optimality principles in sensorimotor control. Nature neuroscience, 7(9), 907–915. doi:10.1038/nn1309.

    Article  Google Scholar 

  • Todorov, E., & Jordan, M. (1998). Smoothness maximization along a predefined path accurately predicts the speed profiles of complex arm movements. Journal of Neurophysiology 80,696–714. http://www.ncbi.nlm.nih.gov/pubmed/9705462

  • Uno, Y., Kawato, M., & Suzuki, R. (1989). Formation and control of optimal trajectory in human multijoint arm movement. Biological Cybernetics, 61(2), 89–101. doi:10.1007/BF00204593.

    Article  Google Scholar 

  • Viviani, P., & Flash, T. (1995). Minimum-jerk, two-thirds power law, and isochrony: Converging approaches to movement planning. Journal of Experimental Psychology: Human Perception and Performance, 21(1), 32–53. doi:10.1037/0096-1523.21.1.32.

    Google Scholar 

  • Zanchettin, A., Bascetta, L., & Rocco, P. (2013). Achieving humanlike motion: Resolving redundancy for anthropomorphic industrial manipulators. IEEE on Robotics Automation Magazine, 20(4), 131–138. doi:10.1109/MRA.2013.2283650.

    Article  Google Scholar 

Download references

Acknowledgments

We thank the Posture and Motion Analysis Laboratory “Luigi Divieti”, and in particular Prof. M. Galli and Prof. V. Cimolin for the fundamental collaboration in the experimental phase of this work. This work was partially supported by the Swedish Research Council (VR) for the projects “Cloud Control” and “Power and temperature control for large-scale computing infrastructures”, through the LCCC Linnaeus and ELLIIT Excellence Centers.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Luca Bascetta.

Appendix

Appendix

This appendix reports the calculation of the matrices required to setup the least-squares optimization problem (10), for each of the cost functions introduced in Sect. 5.2.

1.1 Energy-based cost function

First of all, the unicycle time model in (1) can be discretized yielding

$$\begin{aligned} {\left\{ \begin{array}{ll} x_1(k+1) = x_1(k) + \varDelta t(k)v(k)\cos \left( x_3(k)\right) \\ x_2(k+1) = x_2(k) + \varDelta t(k)v(k)\sin \left( x_3(k)\right) \\ x_3(k+1) = x_3(k) + \varDelta t(k)\omega (k) \end{array}\right. } \end{aligned}$$
(12)

where \(\varDelta t\) is the discrete time step, and \(x_1\), \(x_2\), \(x_3\) are the Cartesian coordinates of point P and the orientation, respectively.

Then, considering a discretised version of the cost function (3) and the model in (12), the inverse optimal control problem can be formulated as follows

$$\begin{aligned} \begin{aligned} \underset{\mathbf {x}(k),v(k),\omega (k)}{\min }&\quad \dfrac{1}{2} \sum _{k=0}^{N-1} \left( \alpha v(k)^2+\omega (k)^2\right) \varDelta t(k)\\ \text {s.t.}&\quad \mathbf {x}(0) - \mathbf {x}_{\text {s}} = 0\\&\quad \mathbf {x}(N-1) - \mathbf {x}_{\text {g}} = 0\\&\quad x_1(k+1) - \left[ x_1(k) + \varDelta t(k)v(k)\cos \left( x_3(k)\right) \right] = 0\\&\quad x_2(k+1) - \left[ x_2(k) + \varDelta t(k)v(k)\sin \left( x_3(k)\right) \right] = 0\\&\quad x_3(k+1) - \left[ x_3(k) + \varDelta t(k)\omega (k)\right] = 0\\&\quad \qquad \forall k=0,\ldots ,N-1 \end{aligned} \end{aligned}$$
(13)

where \(\mathbf {x}=\begin{bmatrix}x_1&x_2&x_3\end{bmatrix}^T\) is the state vector, \(\mathbf {x}_{\text {s}}\) and \(\mathbf {x}_{\text {g}}\) are the initial and the final states, respectively, and N is the number of samples.

Writing, now, the Lagrangian associated with (13), as described in Sect. 6, the residual functions matrices in (10) become where

$$\begin{aligned} z = \begin{bmatrix} \alpha&\lambda _{1}^{0}&\lambda _{2}^{0}&\lambda _{3}^{0}&\cdots&\lambda _{1}^{N-1}&\lambda _{2}^{N-1}&\lambda _{3}^{N-1} \end{bmatrix}^{T}\quad b = \begin{bmatrix} \zeta (0)\\ \zeta (1) \\ \vdots \\ \zeta (N-1) \end{bmatrix} \end{aligned}$$

and

$$\begin{aligned} J= \begin{bmatrix} \psi (0)&I_{5\times 3}&M(0)&\mathbf {0}_{5\times 3}&\mathbf {0}_{5\times 3}&\cdots&\mathbf {0}_{5\times 3}\\ \psi (1)&\mathbf {0}_{5\times 3}&-I_{5\times 3}&M(1)&\mathbf {0}_{5\times 3}&\cdots&\mathbf {0}_{5\times 3}\\ \psi (2)&\mathbf {0}_{5\times 3}&\mathbf {0}_{5\times 3}&-I_{5\times 3}&M(2)&\cdots&\mathbf {0}_{5\times 3}\\ \vdots&\vdots&\vdots&\vdots&\vdots&\ddots&\vdots \\ \psi (N-1)&\mathbf {0}_{5\times 3}&\mathbf {0}_{5\times 3}&\mathbf {0}_{5\times 3}&\mathbf {0}_{5\times 3}&\cdots&-I_{5\times 3} \end{bmatrix} \end{aligned}$$

with

$$\begin{aligned}&\zeta (k) = \begin{bmatrix} 0\\0\\0\\0\\ \varDelta t(k) \omega (k) \end{bmatrix},\quad I_{5\times 3} = \begin{bmatrix} I_{3\times 3}\\ \mathbf {0}_{2\times 3} \end{bmatrix},\quad \psi (k) = \begin{bmatrix} 0 \\ 0 \\ 0 \\ \varDelta t(k) v(k) \\0 \end{bmatrix},\\&M(k) = \begin{bmatrix} 1&0&0\\ 0&1&0\\ -\varDelta t(k) v(k) \sin \left( x_3(k)\right)&\varDelta t(k) v(k) \cos \left( x_3(k)\right)&1\\ \varDelta t(k) \cos \left( x_3(k)\right)&\varDelta t(k) \cos \left( x_3(k)\right)&0\\ 0&0&\varDelta t(k) \end{bmatrix}. \end{aligned}$$

1.2 Hybrid energy/goal-based cost function

Considering a discretised version of the cost function (4) and the discretized unicycle space model in (6), the inverse optimal control problem can be formulated as follows

$$\begin{aligned} \begin{aligned} \underset{\mathbf {x}(k),\sigma (k)}{\min }&\quad \dfrac{1}{2} \sum _{k=0}^{N-1} \sigma (k)^2 \left( 1+\beta ^T\varGamma ^2\right) \varDelta s(k)\\ \text {s.t.}&\quad \mathbf {x}(0) - \mathbf {x}_{\text {s}} = 0\\&\quad \mathbf {x}(N-1) - \mathbf {x}_{\text {g}} = 0\\&\quad x_1(k+1) - \left[ x_1(k) + \varDelta s(k) \cos \left( x_3(k)\right) \right] = 0\\&\quad x_2(k+1) - \left[ x_2(k) + \varDelta s(k) \sin \left( x_3(k)\right) \right] = 0\\&\quad x_3(k+1) - \left[ x_3(k) + \varDelta s(k) \sigma (k)\right] = 0\\&\quad \qquad \forall k=0,\ldots ,N-1 \end{aligned} \end{aligned}$$
(14)

where \(\mathbf {x}=\begin{bmatrix}x_1&x_2&x_3\end{bmatrix}^T\) is the state vector, \(\mathbf {x}_{\text {s}}\) and \(\mathbf {x}_{\text {g}}\) are the initial and the final states, respectively, and N is the number of samples.

Writing, now, the Lagrangian associated with (14), as described in Sect. 6, the residual functions matrices in (10) become

$$\begin{aligned} \begin{aligned} z =&\begin{bmatrix} \beta ^T&\lambda _{1}^{0}&\lambda _{2}^{0}&\lambda _{3}^{0}&\cdots&\lambda _{1}^{N-1}&\lambda _{2}^{N-1}&\lambda _{3}^{N-1} \end{bmatrix}^{T}\\ b =&\begin{bmatrix} \zeta (0)^T&\zeta (1)^T&\cdots&\zeta (N-1)^T \end{bmatrix}^T \end{aligned} \end{aligned}$$

and

$$\begin{aligned} J= \begin{bmatrix} \psi (0)&I_{4\times 3}&M(0)&\mathbf {0}_{4\times 3}&\cdots&\mathbf {0}_{4\times 3}\\ \psi (1)&\mathbf {0}_{4\times 3}&-I_{4\times 3}&M(1)&\cdots&\mathbf {0}_{4\times 3}\\ \psi (2)&\mathbf {0}_{4\times 3}&\mathbf {0}_{4\times 3}&-I_{4\times 3}&\cdots&\mathbf {0}_{4\times 3}\\ \vdots&\vdots&\vdots&\vdots&\ddots&\vdots \\ \psi (N-1)&\mathbf {0}_{4\times 3}&\mathbf {0}_{4\times 3}&\mathbf {0}_{4\times 3}&\cdots&-I_{4\times 3} \end{bmatrix} \end{aligned}$$

with

$$\begin{aligned}&\zeta (k) = \begin{bmatrix} 0\\0\\0\\ \varDelta s(k) \sigma (k) \end{bmatrix},\qquad I_{4\times 3} = \begin{bmatrix} I_{3\times 3}\\ \mathbf {0}_{1\times 3} \end{bmatrix}\\&\begin{aligned} \psi (k) =&\varDelta s(k) \sigma (k) \cdot \\&\begin{bmatrix} \sigma (k) \left( x_1(k)-x_{1_g}\right)&0&0\\ 0&\sigma (k) \left( x_2(k)-x_{2_g}\right)&0\\ 0&0&\sigma (k) \left( x_3(k)-x_{3_g}\right) \\ \left( x_1(k)-x_{1_g}\right) ^2&\left( x_2(k)-x_{2_g}\right) ^2&\left( x_3(k)-x_{3_g}\right) ^2 \end{bmatrix} \end{aligned}\\&M(k) = \begin{bmatrix} 1&0&0\\ 0&1&0\\ -\varDelta s(k) \sin \left( x_3(k)\right)&\varDelta s(k) \cos \left( x_3(k)\right)&1\\ 0&0&\varDelta s(k) \end{bmatrix} \end{aligned}$$

1.3 Normalized hybrid energy/goal-based cost function

Considering a discretised version of the cost function (5) and the discretized unicycle space model in (6), the inverse optimal control problem can be formulated as follows

$$\begin{aligned} \begin{aligned} \underset{\mathbf {x}(k),\sigma (k)}{\min }&\quad \dfrac{1}{2} \sum _{k=0}^{N-1} \sigma (k)^2 \left( 1+\gamma ^T\tilde{\varGamma }^2\right) \varDelta s(k)\\ \text {s.t.}&\quad \mathbf {x}(0) - \mathbf {x}_{\text {s}} = 0\\&\quad \mathbf {x}(N-1) - \mathbf {x}_{\text {g}} = 0\\&\quad x_1(k+1) - \left[ x_1(k) + \varDelta s(k) \cos \left( x_3(k)\right) \right] = 0\\&\quad x_2(k+1) - \left[ x_2(k) + \varDelta s(k) \sin \left( x_3(k)\right) \right] = 0\\&\quad x_3(k+1) - \left[ x_3(k) + \varDelta s(k) \sigma (k)\right] = 0\\&\quad \qquad \forall k=0,\ldots ,N-1 \end{aligned} \end{aligned}$$
(15)

where \(\mathbf {x}=\begin{bmatrix}x_1&x_2&x_3\end{bmatrix}^T\) is the state vector, \(\mathbf {x}_{\text {s}}\) and \(\mathbf {x}_{\text {g}}\) are the initial and the final states, respectively, and N is the number of samples.

Writing, now, the Lagrangian associated with (15), as described in Sect. 6, the residual functions matrices in (10) become

$$\begin{aligned} \begin{aligned} z =&\begin{bmatrix} \gamma ^T&\lambda _{1}^{0}&\lambda _{2}^{0}&\lambda _{3}^{0}&\cdots&\lambda _{1}^{N-1}&\lambda _{2}^{N-1}&\lambda _{3}^{N-1} \end{bmatrix}^{T}\\ b =&\begin{bmatrix} \zeta (0)^T&\zeta (1)^T&\cdots&\zeta (N-1)^T \end{bmatrix}^T \end{aligned} \end{aligned}$$

and

$$\begin{aligned} J= \begin{bmatrix} \psi (0)&I_{4\times 3}&M(0)&\mathbf {0}_{4\times 3}&\cdots&\mathbf {0}_{4\times 3}\\ \psi (1)&\mathbf {0}_{4\times 3}&-I_{4\times 3}&M(1)&\cdots&\mathbf {0}_{4\times 3}\\ \psi (2)&\mathbf {0}_{4\times 3}&\mathbf {0}_{4\times 3}&-I_{4\times 3}&\cdots&\mathbf {0}_{4\times 3}\\ \vdots&\vdots&\vdots&\vdots&\ddots&\vdots \\ \psi (N-1)&\mathbf {0}_{4\times 3}&\mathbf {0}_{4\times 3}&\mathbf {0}_{4\times 3}&\cdots&-I_{4\times 3} \end{bmatrix} \end{aligned}$$

with

$$\begin{aligned}&\zeta (k) = \begin{bmatrix} 0\\0\\0\\ \varDelta s(k) \sigma (k) \end{bmatrix},\qquad I_{4\times 3} = \begin{bmatrix} I_{3\times 3}\\ \mathbf {0}_{1\times 3} \end{bmatrix}, \end{aligned}$$

and, letting \(\delta _{sg,i} = x_{i_s} - x_{i_g}\), \(i\in \{1,2,3\}\) to lighten the notation, the remaining matrices become

$$\begin{aligned}&\begin{aligned} \psi (k) =&\varDelta s(k) \sigma (k)\\&\quad \times \begin{bmatrix} \sigma (k) \dfrac{x_1(k)-x_{1_g}}{\delta _{sg,1}^2 + \delta _{sg,2}^2}&0\\ \sigma (k) \dfrac{x_2(k)-x_{2_g}}{\delta _{sg,1}^2 + \delta _{sg,2}^2}&0\\ 0&\sigma (k) \dfrac{x_3(k)-x_{3_g}}{\delta _{sg,3}^2}\\ \dfrac{\left( x_1(k)-x_{1_g}\right) ^2 + \left( x_2(k)-x_{2_g}\right) ^2}{\delta _{sg,1}^2 + \delta _{sg,2}^2}&\dfrac{\left( x_3(k)-x_{3_g}\right) ^2}{\delta _{sg,3}^2} \end{bmatrix} \end{aligned}\\&M(k) = \begin{bmatrix} 1&0&0\\ 0&1&0\\ -\sigma (k) \sin \left( x_3(k)\right)&\sigma (k) \cos \left( x_3(k)\right)&1\\ 0&0&\sigma (k) \end{bmatrix} \end{aligned}$$

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Papadopoulos, A.V., Bascetta, L. & Ferretti, G. Generation of human walking paths. Auton Robot 40, 59–75 (2016). https://doi.org/10.1007/s10514-015-9443-2

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10514-015-9443-2

Keywords

Navigation