An object-oriented framework for spatial motion planning of multibody systems
This work presents an approach for handling optimal motion planning problems with direct methods which integrates motion interpolation tools, multibody dynamics methods, as well as nonlinear programming routines. Spatial path parametrization is hereby formulated in Euclidean space, providing a geometry-oriented user interface with intuitive visualization of the differential geometric properties of the motion, thus opening new ways for spatial path optimization. In particular, two main topics are explored in detail: the computation of time-optimal motions along given paths, including their extension to no-slip conditions and overall power consumption constraints, and the optimization of spatial path geometries with B-splines and nonlinear optimization routines. General optimal motion planning problems are discretized into nonlinear optimization problems by decomposing multibody motion in two main components, namely, the spatial path followed by the multibody system and the one-dimensional motion of the system along this path. The geometry of the spatial path is parametrized using curve fitting with B-splines, allowing for the path’s via-points and boundary conditions to be used as the design parameters of the optimization problem. The motion along the path is then computed by integrating the projected equations of motion or by solving the optimal problem along the path, and the simulated kinematic and dynamic time histories – measured at different poses on the multibody system – are passed to state-of-the-art gradient-based optimization routines in the form of cost and constraint functions. The user is enabled to choose the relevant design parameters, as well as to prescribe kinematic and dynamic cost and constraint functions with different levels of complexity. This novel approach for spatial path planning is of advantage in applications where the non-convexity and nonlinearity of the problem make automatic optimization difficult or even impossible. Its practical applicability is illustrated by theoretical examples such as the brachistochrone problem and the generalized rocket-car problem, as well as by applications stemming from robotics, the roller-coaster industry, and the mining industry. Moreover, all concepts have been implemented in a general-purpose object-oriented multibody path planning C++ library.
Die vorliegende Arbeit beschreibt einen direkten Ansatz zur Bearbeitung von Bahnplanungsproblemen unter Verwendung von allgemeinen Methoden der Bewegungsinterpolation, der Mehrkörperdynamik und der nichtlinearen Optimierung. Dabei erfolgt die Bahnparametrisierung im Euklidischen Raum, so dass eine geometrische Benutzerschnittstelle für die Visualisierung der differentialgeometrischen Eigenschaften der Mehrkörperbewegung bereitgestellt wird, die neuartige Ansätze bei der Bahnplanung ermöglicht.
Zwei Themen werden im Detail untersucht: Die Berechnung von zeitoptimalen Bewegungen entlang vorgegebenen Bahnen unter Berücksichtigung von trockener Reibung und Leistungsgrenzen sowie die Bahnplanung mittels B-Splines und Ansätze der nichtlinearen Optimierung.
Zur Lösungsfindung der dabei auftretenden optimalsteuerungsproblemen wird die Bewegung in zwei Anteilen unterteilt:
Die Geometrie der vom Mehrkörpersystem zu folgenden Starkörperbahn und die eindimensionale Bewegung des Systems entlang dieser Bahn.
Die Geometrie der Starkörperbahn wird mittels Fitting-Methoden der B-Splines so beschrieben, dass die Bahnstützstellen und -randbedingungen als Optimierungsparameter verwendet werden können. Die Bewegung entlang der Bahn wird dann entweder über Integration der projizierten Bewegungsgleichungen oder über die Lösung des Optimalsteuerungsproblems entlang der Bahn berechnet. Die simulierten Zeitverläufte werden anschließend nichtlinearen Optimierungsroutinen in Form von kinematischen und dynamischen Nebenbedingungen sowie Kostenfunktionen übergeben. Die Vorgabe der relevanten Optimierungsparameter, Kostenfunktionen und Nebenbedingungen erfolgt dabei durch den Benutzer, so dass er die Komplexität jedes Optimierungsschrittes steuern kann.
Der hier beschriebene Ansatz der Bahnplanung von Mehrkörpersystemen ist von Vorteil gegenüber automatischen Routinen, welche bei nichtlinearen und nichtkonvexen Optimierungsproblemen in der Regel keine Lösung finden. Die praktische Anwendbarkeit des vorgestellten Ansatzes wird anhand von theoretischen Fragestellungen, wie dem Brachistochrone-Problem und dem verallgemeinerten Raketenauto-Problem, sowie industriellen Beispielen aus der Robotik, der Vergnügungsindustrie und der Bergbauindustrie demonstriert. Alle Konzepte sind in einer generischen objektorientierten C++ Mehrkörperbibliothek implementiert.
Zwei Themen werden im Detail untersucht: Die Berechnung von zeitoptimalen Bewegungen entlang vorgegebenen Bahnen unter Berücksichtigung von trockener Reibung und Leistungsgrenzen sowie die Bahnplanung mittels B-Splines und Ansätze der nichtlinearen Optimierung.
Zur Lösungsfindung der dabei auftretenden optimalsteuerungsproblemen wird die Bewegung in zwei Anteilen unterteilt:
Die Geometrie der vom Mehrkörpersystem zu folgenden Starkörperbahn und die eindimensionale Bewegung des Systems entlang dieser Bahn.
Die Geometrie der Starkörperbahn wird mittels Fitting-Methoden der B-Splines so beschrieben, dass die Bahnstützstellen und -randbedingungen als Optimierungsparameter verwendet werden können. Die Bewegung entlang der Bahn wird dann entweder über Integration der projizierten Bewegungsgleichungen oder über die Lösung des Optimalsteuerungsproblems entlang der Bahn berechnet. Die simulierten Zeitverläufte werden anschließend nichtlinearen Optimierungsroutinen in Form von kinematischen und dynamischen Nebenbedingungen sowie Kostenfunktionen übergeben. Die Vorgabe der relevanten Optimierungsparameter, Kostenfunktionen und Nebenbedingungen erfolgt dabei durch den Benutzer, so dass er die Komplexität jedes Optimierungsschrittes steuern kann.
Der hier beschriebene Ansatz der Bahnplanung von Mehrkörpersystemen ist von Vorteil gegenüber automatischen Routinen, welche bei nichtlinearen und nichtkonvexen Optimierungsproblemen in der Regel keine Lösung finden. Die praktische Anwendbarkeit des vorgestellten Ansatzes wird anhand von theoretischen Fragestellungen, wie dem Brachistochrone-Problem und dem verallgemeinerten Raketenauto-Problem, sowie industriellen Beispielen aus der Robotik, der Vergnügungsindustrie und der Bergbauindustrie demonstriert. Alle Konzepte sind in einer generischen objektorientierten C++ Mehrkörperbibliothek implementiert.
Preview
Cite
Citation style:
Could not load citation form.