This library is a collection of ROS Catkin Packages that provides the classes you need to pose and solve a Trajectory Optimization problem for your robot. It is written in C++11 and tested on Ubuntu 14.04.
This library will compile even if you do not have a solver installed in your system. However, YOU NEED at least one of the following proprietary solvers for this library to solve Trajectory Optimization problems:
Note: Previous versions of SNOPT are not supported
The library automatically detects the solvers installed in your system. You can always select what solver to use in your application.
After the installation is finished, you could run the following toy examples:
1. An acrobot robot moving to the upright position using direct collocation
rosrun direct_trajectory_optimization acrobot_snopt_example 0
2. the same problem can be solved using multiple shooting method,
rosrun direct_trajectory_optimization acrobot_snopt_example 1
at the end of these executions you should see the summary of the solution.
3. A “single point foot leg” robot executing a small jump,
rosrun dt_examples pointFootLeg_squad 0
4. if you want to visualize the resulting trajectory after the optimization procedure
roslaunch pointfootleg_visualization pointfootleg.launchrosrun dt_examples pointFootLeg_squad 1
You should be able to see the single-legged robot jumping:
Enjoy!