Skip to main content
Log in

A dynamical system approach to realtime obstacle avoidance

  • Published:
Autonomous Robots Aims and scope Submit manuscript

Abstract

This paper presents a novel approach to real-time obstacle avoidance based on Dynamical Systems (DS) that ensures impenetrability of multiple convex shaped objects. The proposed method can be applied to perform obstacle avoidance in Cartesian and Joint spaces and using both autonomous and non-autonomous DS-based controllers. Obstacle avoidance proceeds by modulating the original dynamics of the controller. The modulation is parameterizable and allows to determine a safety margin and to increase the robot’s reactiveness in the face of uncertainty in the localization of the obstacle. The method is validated in simulation on different types of DS including locally and globally asymptotically stable DS, autonomous and non-autonomous DS, limit cycles, and unstable DS. Further, we verify it in several robot experiments on the 7 degrees of freedom Barrett WAM arm.

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
Algorithm 1
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16
Fig. 17
Fig. 18
Fig. 19
Fig. 20

Similar content being viewed by others

Notes

  1. The development of Eq. (4) was partly inspired by the complex potential function that models the uniform flow around a circular cylinder (Milne-Thomson 1960). In both formulations the modulation of the flow due to the object’s presence decreases quadratically with the distance to the center of the object (see the second term in Eq. (4)). The main difference between the two approaches lies in their functionality. Equation (4) is a d-dimensional vector and its Jacobian is a d×d matrix which can be used to modulate the original flow. In contrast, the complex potential function is a scalar value, and its derivative directly gives the modified flow in the presence of the obstacle.

  2. In case \(\partial\varGamma (\tilde{\xi}) / \partial\xi_{1}\) vanishes, the vectors are no longer linearly independent and one should choose another index for the derivative which is non-zero.

  3. Derivation of Eqs. (15)–(16) are inspired from the proof of Theorem 1. For a spherical obstacle, these equations yield to the same result given by Eq. (6).

  4. From Theorem 2 we know that the normal velocity at the boundary points vanishes. Hence, if f(ξ) is aligned with the normal vector of the tangential hyperplane at a boundary point, we have \(M(\tilde{\xi })f(\xi)=0\).

  5. One can also define different safety factors along the positive and negative directions of each object’s axis by considering an if-else condition on the sign of each \(\tilde{\xi}_{i}\).

  6. Equation (25) is in spirit very similar to the weighting coefficients proposed in Waydo and Murray (2003) with the difference that we use Γ k(ξ) to compute weights (rather than the distance between the obstacles).

  7. For example, we consider the k-th obstacle is locally relevant in the current position of the robot if: \(| \lambda_{i}^{k}(\tilde{\xi}^{k}) - 1 | > \varsigma, \forall i = 1..d\), where ς is a small positive threshold.

  8. The same principle can be used if the SEDS motions are modeled with a second or higher order DS.

  9. Note that the motions across θ i , i=3..7 would become uncoupled if the obstacles were placed at θ o,1=[−100;45;0;60;0;−30;0] and θ o,2=[−80;45;0;60;0;−30;0].

  10. Note that this paper does not claim that the cyclic behavior is always preserved in the presence of the obstacles.

References

  • Barbehenn, M., Chen, P. C., & Hutchinson, S. (1994). An efficient hybrid planner in changing environments. In IEEE int. conf. on robotics and automation (Vol. 4, pp. 2755–2760).

    Google Scholar 

  • Benallegue, M., Escande, A., Miossec, S., & Kheddar, A. (2009). Fast C1 proximity queries using support mapping of sphere-torus-patches bounding volumes. In Proc. IEEE int. conf. on robotics and automation (pp. 483–488).

    Google Scholar 

  • Borenstein, J., & Koren, Y. (1991). The vector field histogram—fast obstacle avoidance for mobile robots. IEEE Transactions on Robotics and Automation, 7, 278–288.

    Article  Google Scholar 

  • Brock, O., & Khatib, O. (2002). Elastic strips: A framework for motion generation in human environments. The International Journal of Robotics Research, 21(12), 1031–1052.

    Article  Google Scholar 

  • Burns, B., & Brock, O. (2005). Toward optimal configuration space sampling. In Proc. of robotics: science and systems.

    Google Scholar 

  • Diankov, R., & Kuffner, J. (2007). Randomized statistical path planning. In Proc. of IEEE/RSJ int. conf. on robots and systems (IROS) (pp. 1–6).

    Google Scholar 

  • Feder, H. J. S., & Slotine, J.-J. E. (1997). Real-time path planning using harmonic potentials in dynamic environments. In Proc. of IEEE int. conf. on robotics and automation (ICRA) (Vol. 1, pp. 874–881).

    Google Scholar 

  • Fraichard, T., Hassoun, M., & Laugier, C. (1991). Reactive motion planning in a dynamic world. In Proc. of the IEEE int. conf. on advanced robotics (pp. 1028–1032).

    Google Scholar 

  • Hoffmann, H., Pastor, P., Park, D.-H., & Schaal, S. (2009). Biologically-inspired dynamical systems for movement generation: automatic real-time goal adaptation and obstacle avoidance. In Proc. of int. conf. on robotics and automation (pp. 2587–2592).

    Google Scholar 

  • Iossifidis, I., & Schöner, G. (2006). Dynamical systems approach for the autonomous avoidance of obstacles and joint-limits for a redundant robot arm. In Proc. of the IEEE int. conf. on intelligent robots and systems (IROS) (pp. 580–585).

    Google Scholar 

  • Kavraki, L. E., Svestka, P., Latombe, J.-C., & Overmars, M. H. (1996). Probabilistic roadmaps for path planning in high-dimensional configuration spaces. IEEE Transactions on Robotics and Automation, 12(4), 566–580.

    Article  Google Scholar 

  • Khansari-Zadeh, S. M., & Billard, A. (2011). Learning stable nonlinear dynamical systems with Gaussian mixture models. IEEE Transactions on Robotics, 27(5), 943–957. ISSN 1552-3098. doi:10.1109/TRO.2011.2159412.

    Article  Google Scholar 

  • Khatib, O. (1986). Real-time obstacle avoidance for manipulators and mobile robots. The International Journal of Robotics Research, 5, 90–98.

    Article  Google Scholar 

  • Kim, J.-O., & Khosla, P. K. (1992). Real-time obstacle avoidance using harmonic potential functions. IEEE Transactions on Robotics and Automation, 8(3), 338–349.

    Article  Google Scholar 

  • Kuffner, J. J., & LaValle, S. M. (2000). RRT-connect: An efficient approach to single-query path planning. In Proc. of IEEE int. conf. on robotics and automation (Vol. 2, pp. 995–1001).

    Google Scholar 

  • Lahanas, M., Kemmerer, T., Milickovic, N., Karouzakis, K., Baltas, D., & Zamboglou, N. (2000). Optimized bounding boxes for three-dimensional treatment planning in brachytherapy. Medical Physics, 27(10), 2333–2342.

    Article  Google Scholar 

  • Lozano-Perez, T. (1983). Spatial planning: A configuration space approach. IEEE Transactions on Computers, 30, 108–120.

    Article  MathSciNet  Google Scholar 

  • Lumelsky, V., & Skewis, T. (1990). Incorporating range sensing in the robot navigation function. IEEE Transactions on Systems, Man, and Cybernetics, 20, 1058–1069.

    Article  Google Scholar 

  • Maciejewski, A. A., & Klein, C. A. (1985). Obstacle avoidance for kinematically redundant manipulators in dynamically varying environments. The International Journal of Robotics Research, 4, 109–116.

    Article  Google Scholar 

  • Milne-Thomson, L. M. (1960). Theoretical hydrodynamics (4th edn.) London: Macmillan.

    MATH  Google Scholar 

  • Park, D.-H., Hoffmann, H., Pastor, P., & Schaal, S. (2008). Movement reproduction and obstacle avoidance with dynamic movement primitives and potential fields. In Proc. of the IEEE int. conf. on humanoid robotics (pp. 91–98).

    Google Scholar 

  • Quinlan, S., & Khatib, O. (1993). Elastic bands: connecting path planning and control. In Proc. of the IEEE int. conf. on robotics and automation (ICRA) (Vol. 2, pp. 802–807).

    Google Scholar 

  • Shilane, Ph., Min, P., Kazhdan, M., & Funkhouser, Th. (2004). The Princeton shape benchmark. In Shape modeling international, Italy.

    Google Scholar 

  • Simmons, R. (1996). The curvature-velocity method for local obstacle avoidance. In Proc. of the IEEE int. conf. on robotics and automation (Vol. 4, pp. 3375–3382).

    Google Scholar 

  • Sprunk, Ch., Lau, B., Pfaffz, P., & Burgard, W. (2011). Online generation of kinodynamic trajectories for non-circular omnidirectional robots. In Proc. of IEEE int. conf. on robotics and automation (ICRA) (pp. 72–77).

    Google Scholar 

  • Toussaint, M. (2009). Robot trajectory optimization using approximate inference. In 25th int. conf. on machine learning (ICML) (pp. 1049–1056).

    Google Scholar 

  • Vannoy, J., & Xiao, J. (2008). Real-time adaptive motion planning (ramp) of mobile manipulators in dynamic environments with unforeseen changes. IEEE Transactions on Robotics, 24, 1199–1212.

    Article  Google Scholar 

  • Waydo, S., & Murray, R. M. (2003). Vehicle motion planning using stream functions. In Proc. of the IEEE int. conf. on the robotics and automation (ICRA) (Vol. 2, pp. 2484–2491).

    Google Scholar 

  • Welzl, E. (1991). Smallest enclosing disks (balls and ellipsoids). In H. Maurer (Ed.), New results and new trends in computer science (Vol. 555, pp. 359–370). Berlin/Heidelberg: Springer.

    Chapter  Google Scholar 

  • Yang, Y., & Brock, O. (2007). Elastic roadmaps: Globally task-consistent motion for autonomous mobile manipulation in dynamic environments. In Proc. robotics: science and systems.

    Google Scholar 

  • Yoshida, E., & Kanehiro, F. (2011). Reactive robot motion using path replanning and deformation. In Proc. IEEE int. conf. on robotics and automation (pp. 5457–5462).

    Google Scholar 

Download references

Acknowledgements

This work was supported by the European Commission through the EU Project AMARSI (FP7-ICT-248311). The authors kindly thank E. Sauser for providing the RobotToolkit interface to control the Barrett WAM arm, and M. Duvanel for the vision system. The authors also thank M. Benallegue and A. Kheddar for providing the source code of the STP-BV method to generate bounding volumes from the point cloud of objects.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Seyed Mohammad Khansari-Zadeh.

Electronic Supplementary Material

Below is the link to the electronic supplementary material.

(MP4 33.0 MB)

Appendices

Appendix A: Proof of Theorem 1

Consider a hyper-surface corresponding to boundary points of a hyper-sphere obstacle in ℝd with a center ξ o and a radius r o. Impenetrability of the obstacle’s boundaries is ensured if the normal velocity at boundary points vanishes:

(30)

where n(ξ b) is the unit normal vector at a boundary point ξ b:

(31)

The eigenvalue decomposition of the square matrix \(M^{s}(\tilde{\xi },r^{o})\) is given by:

$$M^s\bigl(\tilde{\xi},r^o\bigr) = V^s\bigl(\tilde{\xi},r^o\bigr) \: D^s\bigl(\tilde{\xi },r^o\bigr) \: V^s\bigl(\tilde{\xi},r^o\bigr)^{(-1)} $$
(32)

where \(D^{s}(\tilde{\xi},r^{o})\) is a d×d diagonal matrix composed of the eigenvalues:

$$\begin{cases}\lambda^1 = 1 - \frac{r^2}{\tilde{\xi}^T\tilde{\xi}} \\\lambda^i = 1 + \frac{r^2}{\tilde{\xi}^T\tilde{\xi}} \quad \forall i\in2..d \\\end{cases} $$
(33)

and \(V^{s}(\tilde{\xi},r^{o}) = [\upsilon^{1} \ \cdots\ \upsilon^{d}]\) is the matrix of eigenvectors with:

$$\begin{cases}\upsilon^1 = \tilde{\xi} \\\upsilon^i_j =\begin{cases}-\tilde{\xi}_i & j = 1\\\tilde{\xi}_1 & j = i\\0 & j \neq1,i\\\end{cases} \ \forall i \in2..d , \; j \in1..d\end{cases} $$
(34)

Substituting Eqs. (31), (32) and (7) into Eq. (30) yields:

(35)

Since ξ b is equal to the first eigenvector of \(V^{s}(\tilde{\xi }^{b},r^{o})\), Eq. (35) reduces to:

(36)

where [0] d−1 is a zero column vector of dimension d−1. For all points on the obstacle boundary, the first eigenvalue is zero, i.e. λ 1=0, . Thus, we have:

(37)

Appendix B: Proof of Theorem 2

The proof of Theorem 2 follows directly from that of Theorem 1. Observe that:

$$n\bigl(\xi^b\bigr)^T \: \dot{\xi^b} = n\bigl(\xi^b\bigr) E\bigl(\tilde{\xi}^b,r^o\bigr) \: D\bigl(\tilde{\xi}^b,r^o\bigr) \: E\bigl(\tilde{\xi}^b,r^o\bigr)^{(-1)} f(.) $$
(38)

Considering the fact that n(ξ b) is equal to the first eigenvector of \(E(\tilde{\xi}^{b},r^{o})\), and the first eigenvalue is zero for all points on the obstacle boundary yields:

(39)

Rights and permissions

Reprints and permissions

About this article

Cite this article

Khansari-Zadeh, S.M., Billard, A. A dynamical system approach to realtime obstacle avoidance. Auton Robot 32, 433–454 (2012). https://doi.org/10.1007/s10514-012-9287-y

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10514-012-9287-y

Keywords

Navigation