#include <benchmark_execution.h>
Classes | |
struct | BenchmarkOptions |
struct | ParameterOptions |
Allows for parameter sweeping of the planner configuration. More... | |
Public Member Functions | |
BenchmarkExecution (const planning_scene::PlanningScenePtr &scene, warehouse_ros::DatabaseConnection::Ptr conn) | |
void | printOptions (std::ostream &out) |
bool | readOptions (const std::string &filename) |
void | runAllBenchmarks (BenchmarkType type) |
void | runBenchmark (BenchmarkRequest &req) |
void | runGoalExistenceBenchmark (BenchmarkRequest &req) |
void | runPlanningBenchmark (BenchmarkRequest &req) |
Private Types | |
typedef std::map< std::string, double > | ParameterInstance |
Contains the parameter combination for one test. | |
Private Member Functions | |
void | collectMetrics (std::map< std::string, std::string > &rundata, const planning_interface::MotionPlanDetailedResponse &mp_res, bool solved, double total_time) |
std::size_t | generateParamCombinations () |
Populates the param_combinations_ vector with all combinations of desired parameters to be tested. | |
void | modifyPlannerConfiguration (planning_interface::PlannerManager &planner, const std::string &planner_id, std::size_t param_combinations_id_, RunData ¶meter_data) |
Called within the benchmarking solve loop to allow parameters to be swept/tested. | |
void | printConfigurationSettings (const planning_interface::PlannerConfigurationMap &settings, std::ostream &out) |
Output to console the settings. | |
void | recursiveParamCombinations (int options_id, ParameterInstance param_instance) |
Recursively generates all the combinations of parameters to be tested. | |
Private Attributes | |
std::vector< std::string > | available_plugins_ |
moveit_warehouse::ConstraintsStorage | cs_ |
BenchmarkOptions | options_ |
std::vector< ParameterInstance > | param_combinations_ |
std::vector< ParameterOptions > | param_options_ |
std::map< std::string, planning_interface::PlannerManagerPtr > | planner_interfaces_ |
boost::shared_ptr < pluginlib::ClassLoader < planning_interface::PlannerManager > > | planner_plugin_loader_ |
planning_scene::PlanningScenePtr | planning_scene_ |
moveit_warehouse::PlanningSceneStorage | pss_ |
moveit_warehouse::PlanningSceneWorldStorage | psws_ |
moveit_warehouse::RobotStateStorage | rs_ |
moveit_warehouse::TrajectoryConstraintsStorage | tcs_ |
Definition at line 90 of file benchmark_execution.h.
typedef std::map<std::string, double> moveit_benchmarks::BenchmarkExecution::ParameterInstance [private] |
Contains the parameter combination for one test.
Definition at line 143 of file benchmark_execution.h.
moveit_benchmarks::BenchmarkExecution::BenchmarkExecution | ( | const planning_scene::PlanningScenePtr & | scene, |
warehouse_ros::DatabaseConnection::Ptr | conn | ||
) |
Definition at line 93 of file benchmark_execution.cpp.
void moveit_benchmarks::BenchmarkExecution::collectMetrics | ( | std::map< std::string, std::string > & | rundata, |
const planning_interface::MotionPlanDetailedResponse & | mp_res, | ||
bool | solved, | ||
double | total_time | ||
) | [private] |
(a + b);
Definition at line 807 of file benchmark_execution.cpp.
std::size_t moveit_benchmarks::BenchmarkExecution::generateParamCombinations | ( | ) | [private] |
Populates the param_combinations_ vector with all combinations of desired parameters to be tested.
Definition at line 1446 of file benchmark_execution.cpp.
void moveit_benchmarks::BenchmarkExecution::modifyPlannerConfiguration | ( | planning_interface::PlannerManager & | planner, |
const std::string & | planner_id, | ||
std::size_t | param_combinations_id_, | ||
RunData & | parameter_data | ||
) | [private] |
Called within the benchmarking solve loop to allow parameters to be swept/tested.
planner | - pointer to the current planner we are about to use |
planner_id | - name of planner we are about to use |
param_combinations_id_ | - keeps track of what parameter combo we are currently iterating on |
parameter_data | - used for outputting log information to file (results) |
Definition at line 1403 of file benchmark_execution.cpp.
void moveit_benchmarks::BenchmarkExecution::printConfigurationSettings | ( | const planning_interface::PlannerConfigurationMap & | settings, |
std::ostream & | out | ||
) | [private] |
Output to console the settings.
Definition at line 1505 of file benchmark_execution.cpp.
void moveit_benchmarks::BenchmarkExecution::printOptions | ( | std::ostream & | out | ) |
Definition at line 774 of file benchmark_execution.cpp.
bool moveit_benchmarks::BenchmarkExecution::readOptions | ( | const std::string & | filename | ) |
Definition at line 501 of file benchmark_execution.cpp.
void moveit_benchmarks::BenchmarkExecution::recursiveParamCombinations | ( | int | options_id, |
ParameterInstance | param_instance | ||
) | [private] |
Recursively generates all the combinations of parameters to be tested.
options_id | - where in the recursive loop we are, id is with respect to the n*n*n*... number of tests we are to generate |
param_instance | - holds the generated parameter combinations, the result |
Definition at line 1478 of file benchmark_execution.cpp.
Definition at line 138 of file benchmark_execution.cpp.
Definition at line 799 of file benchmark_execution.cpp.
Definition at line 1225 of file benchmark_execution.cpp.
Definition at line 908 of file benchmark_execution.cpp.
std::vector<std::string> moveit_benchmarks::BenchmarkExecution::available_plugins_ [private] |
Definition at line 179 of file benchmark_execution.h.
Definition at line 184 of file benchmark_execution.h.
Definition at line 175 of file benchmark_execution.h.
std::vector<ParameterInstance> moveit_benchmarks::BenchmarkExecution::param_combinations_ [private] |
Definition at line 177 of file benchmark_execution.h.
std::vector<ParameterOptions> moveit_benchmarks::BenchmarkExecution::param_options_ [private] |
Definition at line 176 of file benchmark_execution.h.
std::map<std::string, planning_interface::PlannerManagerPtr> moveit_benchmarks::BenchmarkExecution::planner_interfaces_ [private] |
Definition at line 189 of file benchmark_execution.h.
boost::shared_ptr<pluginlib::ClassLoader<planning_interface::PlannerManager> > moveit_benchmarks::BenchmarkExecution::planner_plugin_loader_ [private] |
Definition at line 188 of file benchmark_execution.h.
planning_scene::PlanningScenePtr moveit_benchmarks::BenchmarkExecution::planning_scene_ [private] |
Definition at line 180 of file benchmark_execution.h.
Definition at line 182 of file benchmark_execution.h.
Definition at line 183 of file benchmark_execution.h.
Definition at line 186 of file benchmark_execution.h.
moveit_warehouse::TrajectoryConstraintsStorage moveit_benchmarks::BenchmarkExecution::tcs_ [private] |
Definition at line 185 of file benchmark_execution.h.