
Files | |
| motion_benchmaker_demo.py | |
| MotionBenchmakerDemo.cpp | |
| MotionBenchmakerDemo.h | |
| MotionBenchmakerDemoMain.cpp | |
| Example program demonstrating how to use the Motion Benchmaker with OMPL and VAMP for evaluating motion planning on MBM problems. | |
| vamp_planning.py | |
| vamp_state_space.py | |
| VAMPPlanning.cpp | |
Detailed Description
VAMP-OMPL Demos
This directory includes demos using VAMP SIMD-accelerated state validity checks. VAMP uses robot-specific compiled forward kinematics operations and vectorized collision checking for state and motion validation.
C++
Geometric Planning
Run the simple geometric planning example from VAMPPlanning.cpp:
This will run a single plan instance on a spherized collision environment. To run OMPL's benchmarking on this, run:
This will run the benchmark for the specified number of trials with planners specified in VAMPPlanning.cpp and output the results in a .log file.
MotionBenchmaker
First, extract the json motionbenchmaker from the included VAMP submodule, from your ompl directory:
This will generate a file in <ompl_directory>/external/vamp/resources/panda/problems.json. Check the problem_tar_to_pkl_json.py script for more details and how to use with other robots.
Go back to your OMPL build directory and run the benchmark:
This will run the specified planner on all 100 problems for each 7 problem types from the MotionBenchmaker dataset. To run OMPL's benchmark:
This will run a benchmark for <number_of_trials> trials on one problem for each of the 7 MotionBenchmaker problem types, and output the results as a .log file.
Using log files from Benchmark
Use the provided Python script to analyze the generated .log files from the benchmark runs:
These can be uploaded to PlannerArena for visualization
Python
Requirements
Install the required dependencies:
Geometric Planning
A simple script is provided to demonstrate the usage of VAMP with OMPL using Python bindings. Run the script from the demos subdirectory:
Run a benchmark with multiple planners and planning iterations:
If PlannerArena is installed, you can visualize at localhost:8888 or the port printed in the terminal output.
Visualize the robot, environment and planned trajectory at localhost:8080:
Motion Benchmaker Dataset
A script solving the 700 problems from 7 different problem sets on the MotionBenchmaker dataset. It supports Panda, UR5 and Fetch robots, changing the robot argument to panda, ur5 or fetch. The VAMP submodule at external/vamp is required. To run:
To run a benchmark with multiple planners, on one of the problems for each set: