Kinodynamic motion planning for quadrotor-like aerial robots
Planification cinématique du mouvement pour robots aériens à quadrotors
Résumé
Motion planning is the field of computer science that aims at developing algorithmic techniques allowing the automatic computation of trajectories for a mechanical system. The nature of such a system vary according to the fields of application. In computer animation it could be a humanoid avatar. In molecular biology it could be a protein. The field of application of this work being aerial robotics, the system is here a four-rotor UAV (Unmanned Aerial Vehicle) called quadrotor. The motion planning problem consists in computing a series of motions that brings the system from a given initial configuration to a desired final configuration without generating collisions with its environment, most of the time known in advance. Usual methods explore the system’s configuration space regardless of its dynamics. By construction the thrust force that allows a quadrotor to fly is tangential to its attitude which implies that not every motion can be performed. Furthermore, the magnitude of this thrust force and hence the linear acceleration of the center of mass are limited by the physical capabilities of the robot. For all these reasons, not only position and orientation must be planned, higher derivatives must be planned also if the motion is to be executed. When this is the case we talk of kinodynamic motion planning. A distinction is made between the local planner and the global planner. The former is in charge of producing a valid trajectory between two states of the system without necessarily taking collisions into account. The later is the overall algorithmic process that is in charge of solving the motion planning problem by exploring the state space of the system. It relies on multiple calls to the local planner. We present a local planner that interpolates two states consisting of an arbitrary number of degrees of freedom (dof) and their first and second derivatives. Given a set of bounds on the dof derivatives up to the fourth order (snap), it quickly produces a near-optimal minimum time trajectory that respects those bounds. In most of modern global motion planning algorithms, the exploration is guided by a distance function (or metric). The best choice is the cost-to-go, i.e. the cost associated to the local method. In the context of kinodynamic motion planning, it is the duration of the minimal-time trajectory. The problem in this case is that computing the cost-to-go is as hard (and thus as costly) as computing the optimal trajectory itself. We present a metric that is a good approximation of the cost-to-go but which computation is far less time consuming. The dominant paradigm nowadays is sampling-based motion planning. This class of algorithms relies on random sampling of the state space in order to quickly explore it. A common strategy is uniform sampling. It however appears that, in our context, it is a rather poor choice. Indeed, a great majority of uniformly sampled states cannot be interpolated. We present an incremental sampling strategy that significantly decreases the probability of this happening.
La planification de mouvement est le domaine de l’informatique qui a trait au développement de techniques algorithmiques permettant la génération automatique de trajectoires pour un système mécanique. La nature d’un tel système varie selon les champs d’application. En animation par ordinateur il peut s’agir d’un avatar humanoïde. En biologie moléculaire cela peut être une protéine. Le domaine d’application de ces travaux étant la robotique aérienne, le système est ici un UAV (Unmanned Aerial Vehicle: véhicule aérien sans pilote) à quatre hélices appelé quadrirotor. Le problème de planification de mouvements consiste à calculer une série de mouvements qui amène le système d’une configuration initiale donnée à une configuration finale souhaitée sans générer de collisions avec son environnement, la plupart du temps connu à l’avance. Les méthodes habituelles explorent l’espace des configurations du système sans tenir compte de sa dynamique. Cependant, la force de poussée qui permet à un quadrirotor de voler est par construction parallèle aux axes de rotation des hélices, ce qui implique que certains mouvements ne peuvent pas être effectués. De plus, l’intensité de cette force de poussée, et donc l’accélération linéaire du centre de masse, sont limitées par les capacités physiques du robot. Pour toutes ces raisons, non seulement la position et l’orientation doivent être planifiées, mais les dérivées plus élevées doivent l’être également si l’on veut que le système physique soit en mesure de réellement exécuter le mouvement. Lorsque c’est le cas, on parle de planification kinodynamique de mouvements. Une distinction est faite entre le planificateur local et le planificateur global. Le premier est chargé de produire une trajectoire valide entre deux états du système sans nécessairement tenir compte des collisions. Le second est l’algorithme principal qui est chargé de résoudre le problème de planification de mouvement en explorant l’espace d’état du système. Il fait appel au planificateur local. Nous présentons un planificateur local qui interpole deux états comprenant un nombre arbitraire de degrés de liberté ainsi que leurs dérivées premières et secondes. Compte tenu d’un ensemble de limites sur les dérivées des degrés de liberté jusqu’au quatrième ordre (snap), il produit rapidement une trajectoire en temps minimal quasi-optimale qui respecte ces limites. Dans la plupart des algorithmes modernes de planification de mouvements, l’exploration est guidée par une fonction de distance (ou métrique). Le meilleur choix pour celle-ci est le cost-to-go, c.a.d. le coût associé à la méthode locale. Dans le contexte de la planification kinodynamique de mouvements, il correspond à la durée de la trajectoire en temps minimal. Le problème dans ce cas est que calculer le cost-to-go est aussi difficile (et donc aussi coûteux) que de calculer la trajectoire optimale elle-même. Nous présentons une métrique qui est une bonne approximation du cost-to-go, mais dont le calcul est beaucoup moins coûteux. Le paradigme dominant en planification de mouvements aujourd’hui est l’échantillonnage aléatoire. Cette classe d’algorithmes repose sur un échantillonnage aléatoire de l’espace d’état afin de l’explorer rapidement. Une stratégie commune est l’échantillonnage uniforme. Il semble toutefois que, dans notre contexte, ce soit un choix assez médiocre. En effet, une grande majorité des états uniformément échantillonnés ne peuvent pas être interpolés. Nous présentons une stratégie d’échantillonnage incrémentale qui diminue considérablement la probabilité que cela ne se produise.
Origine | Fichiers produits par l'(les) auteur(s) |
---|
Loading...