time optimal trajectory planning under dynamics
play

Time-optimal trajectory planning under dynamics constraints Old - PowerPoint PPT Presentation

Time-optimal trajectory planning under dynamics constraints Old algorithm, new applications Quang-Cuong Pham Department of Mechano-Informatics University of Tokyo November 29th, 2012 Workshop on Generating Optimal Paths at


  1. Time-optimal trajectory planning under dynamics constraints Old algorithm, new applications Quang-Cuong Pham Department of Mechano-Informatics University of Tokyo November 29th, 2012 Workshop on “Generating Optimal Paths” at Humanoids’2012 Osaka, Japan

  2. Time-optimal path parameterization algorithm Implementation in OpenRAVE Some applications Time-optimal motion planning ◮ In the literature : minimum energy, minimum torque, maximum smoothness. . . planning algorithms ◮ But what is the most important in industry is time 1 / 20

  3. Time-optimal path parameterization algorithm Implementation in OpenRAVE Some applications Dynamics constraints ◮ In the literature : time-optimal motion planning under velocity and acceleration limits (e.g. Hauser and Ng-Thow-Hing 2010) ◮ These are kinematics constraints ◮ But what physically constraints the performance of the robot is the torque limits (= dynamics constraints) ◮ This case is much harder because of the nonlinearity ! 2 / 20

  4. Outline Time-optimal path parameterization algorithm Implementation in OpenRAVE Some applications

  5. Time-optimal path parameterization algorithm Implementation in OpenRAVE Some applications Outline Time-optimal path parameterization algorithm Implementation in OpenRAVE Some applications 2 / 20

  6. Time-optimal path parameterization algorithm Implementation in OpenRAVE Some applications Time-optimal path parameterization algorithm under torque limits ◮ If the path is fixed, very nice algorithm developed in the 80’s and 90’s by Bobrow, Dubowsky, Gibson, Shin, McKay, Pfeiffer, Johanni, Slotine, Shiller, Zlajpah, Kunz, Stilman. . . and others ◮ Why this algorithn is great: ◮ Fast ( � = iterative optimization) ◮ Exact: true time-optimal solution is attained ( � = iterative optimization) ◮ No need to recheck collisions ◮ Extension to the non-fixed path case: ongoing topic of research 3 / 20

  7. Time-optimal path parameterization algorithm Implementation in OpenRAVE Some applications Path parameterization algorithm ◮ Inputs : ◮ Manipulator equation q ⊤ C ( q )˙ M ( q )¨ q + ˙ q + g ( q ) = τ, ◮ Torque limits for each joint i τ min ≤ τ i ( t ) ≤ τ max i i ◮ A given path q ( s ) s ∈ [0 , L ] (set of points in the joint space) ◮ Output : the time parameterization s : [0 , T ] − → [0 , L ] s ( t ) t �− → that minimizes the traversal time T 4 / 20

  8. Time-optimal path parameterization algorithm Implementation in OpenRAVE Some applications Outline of the algorithm ◮ Time minimal ⇔ highest possible ˙ s (without violating the torque limits) ◮ Express the manipulator equations in terms of s , ˙ s , ¨ s ◮ The torque limits become α ( s , ˙ s ) ≤ ¨ s ≤ β ( s , ˙ s ) , where ◮ α ( s , ˙ s ) is the minimum acceleration at ( s , ˙ s ) ◮ β ( s , ˙ s ) is the maximum acceleration at ( s , ˙ s ) ◮ If α ( s , ˙ s ) > β ( s , ˙ s ) : no possible acceleration ¨ s ◮ Maximum velocity curve defined by α ( s , ˙ s ) = β ( s , ˙ s ) 5 / 20

  9. Time-optimal path parameterization algorithm Implementation in OpenRAVE Some applications Phase plane ( s , ˙ s ) integration 3.0 maximum velocity curve 2.5 2.0 1.5 s ˙ 1.0 maximum acceleration 0.5 minimum acceleration 0.0 0.0 0.2 0.4 0.6 0.8 1.0 s ◮ “Bang-bang” behavior, switch points can be found very efficiently ◮ Computation time O ( n 2 N ) ( � = iterative optimization) ◮ n : number of dofs ◮ N : number of time-discretization steps ◮ Example: n = 4 , N = 500 takes ∼ 2 s in Python 6 / 20

  10. Time-optimal path parameterization algorithm Implementation in OpenRAVE Some applications Outline Time-optimal path parameterization algorithm Implementation in OpenRAVE Some applications 6 / 20

  11. Time-optimal path parameterization algorithm Implementation in OpenRAVE Some applications OpenRAVE ◮ OpenRAVE is “ an environment for testing, developing, and deploying robotics motion planning algorithms ”, mainly developped by Rosen Diankov ◮ Very fast (C++), analytical inverse kinematics solver (IK-fast) ◮ Very easy to use (Python bindings layer) ◮ You can start developping meaningful robotics applications after 1 or 2 days! ◮ Industrially deployed at Mujin Inc. 7 / 20

  12. Time-optimal path parameterization algorithm Implementation in OpenRAVE Some applications Implementation architecture ◮ Open-source MintimeProblemTorque MintimeProblemZMP MintimeProblemXYZ ( http://www. • Compute dynamics of • Compute dynamics of • ... manipulators humanoids • ... normalesup.org/ • Compute max vel profile • Compute max vel profile • ... caused by torque limits caused by ZMP constraints ~pham/code.html ) Inheritance ◮ Modular design MintimeProblemGeneric intended for • Compute max velocity profile re-usability caused by velocity limits • Find switch points ◮ New problems Execution flow simply inherit from MintimeProfileIntegrator MintimeProblemGeneric • Integrate the limiting curves and override • Integrate the optimal velocity profile robots- and constraints-specific Time-optimal path parameterization methods under kinematics and dynamics constraints 8 / 20

  13. Time-optimal path parameterization algorithm Implementation in OpenRAVE Some applications Other features of our implementation ◮ Consideration of velocity limits (correction from Kunz and Stilman 2012 based on Zlajpah 1996) ◮ Correct accelerations at the zero-inertia points (correction from Shiller and Lu 1992 and generalization of Kunz and Stilman 2012) ◮ Features under development ◮ Motor dynamics ◮ Third-order limits (to avoid torque jumps) 9 / 20

  14. Time-optimal path parameterization algorithm Implementation in OpenRAVE Some applications Outline Time-optimal path parameterization algorithm Implementation in OpenRAVE Some applications 9 / 20

  15. Time-optimal path parameterization algorithm Implementation in OpenRAVE Some applications Global time-optimal algorithm ◮ Find the time-optimal trajectory between given initial and final configurations ◮ Generate paths by grid search and apply the path parameterization algorithm on each path Shiller and Dubowsky, 1991 10 / 20

  16. Time-optimal path parameterization algorithm Implementation in OpenRAVE Some applications Trajectory smoothing using time-optimal shortcuts ◮ Grid search does not work in higher dimensions (dof > 3 ) ◮ RRT works well in high-dof, cluttered spaces, but produces non optimal trajectories Karaman and Frazzoli, 2011 ◮ Post-process with shortcuts, e.g. Hauser and Ng-Thow-Hing 2010 (acceleration and velocity limits) ◮ Here we propose to use time-optimal shortcuts with torque limits 11 / 20

  17. Time-optimal path parameterization algorithm Implementation in OpenRAVE Some applications Time-optimal shortcuts Pham, Asian-MMS 2012 12 / 20

  18. Time-optimal path parameterization algorithm Implementation in OpenRAVE Some applications Simulation results See video at http://www.normalesup.org/~pham/videos/manipulator.m4v 13 / 20

  19. Time-optimal path parameterization algorithm Implementation in OpenRAVE Some applications Simulation results Joint angles profiles after ... 0 shortcut 3.0 2.5 2.0 1.5 Joint angles (rad) 1.0 0.5 0.0 � 0.5 � 1.0 0.0 0.5 1.0 1.5 2.0 Time (s) 14 / 20

  20. Time-optimal path parameterization algorithm Implementation in OpenRAVE Some applications Simulation results Joint angles profiles after ... 1 shortcut 3.0 2.5 2.0 1.5 Joint angles (rad) 1.0 0.5 0.0 � 0.5 � 1.0 0.0 0.5 1.0 1.5 2.0 Time (s) 14 / 20

  21. Time-optimal path parameterization algorithm Implementation in OpenRAVE Some applications Simulation results Joint angles profiles after ... 2 shortcuts 3.0 2.5 2.0 1.5 Joint angles (rad) 1.0 0.5 0.0 � 0.5 � 1.0 0.0 0.5 1.0 1.5 2.0 Time (s) 14 / 20

  22. Time-optimal path parameterization algorithm Implementation in OpenRAVE Some applications Simulation results Joint angles profiles after ... 3 shortcuts 3.0 2.5 2.0 1.5 Joint angles (rad) 1.0 0.5 0.0 � 0.5 � 1.0 0.0 0.5 1.0 1.5 2.0 Time (s) 14 / 20

  23. Time-optimal path parameterization algorithm Implementation in OpenRAVE Some applications Simulation results Joint angles profiles after ... 4 shortcuts 3.0 2.5 2.0 1.5 Joint angles (rad) 1.0 0.5 0.0 � 0.5 � 1.0 0.0 0.5 1.0 1.5 2.0 Time (s) 14 / 20

  24. Time-optimal path parameterization algorithm Implementation in OpenRAVE Some applications Simulation results Joint angles profiles after ... 5 shortcuts 3.0 2.5 2.0 1.5 Joint angles (rad) 1.0 0.5 0.0 � 0.5 � 1.0 0.0 0.5 1.0 1.5 2.0 Time (s) 14 / 20

  25. Time-optimal path parameterization algorithm Implementation in OpenRAVE Some applications Simulation results Joint angles profiles after ... 6 shortcuts 3.0 2.5 2.0 1.5 Joint angles (rad) 1.0 0.5 0.0 � 0.5 � 1.0 0.0 0.5 1.0 1.5 2.0 Time (s) 14 / 20

  26. Time-optimal path parameterization algorithm Implementation in OpenRAVE Some applications Simulation results Torques profiles of the final trajectory 15 10 Torque (Nm) 5 0 � 5 � 10 � 15 0.0 0.2 0.4 0.6 0.8 1.0 Time (s) 15 / 20

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend