Simulation, Motion Planning and Arm Navigation

Kickoff Meeting Minutes (IROS 2011 09/27/2011)

Multiple steps in controlling using dynamics simulation:

  • Collada for geometric modeling / URDF robot models
  • KDL for kinematic solvers/representations (not used in Gazebo)
  • There is a dynamics solver (not really tested)
  • Dynamics engines (ODE/Bullet) for rigid-body simulation with contact modeling and handling
  • Then a motion planner is used

Existing dynamics engines for simulation use penalty-based methods to make sure that joints remain connected - forcing trade-off between accuracy and stability. Not well suited for articulated dynamics.

Focal Points:

  • Focus of effort on articulated dynamics.
  • Solvable for tree-like structures.
  • Questions raised about the presence of closed loops/parallel robots.

DART Discussion

Karen Liu's and Mike Stilman's groups working together on DART - an alternative to the KDL/ODE pipeline, which was presented to the group. Using the FCL (fast collision library) for collision checking. Relies on Eigen. Cross-platform. Early version of docs: http://dart.golems.org/ (Work in progress - many changes already made).

To Do:

  • URDF input
  • Finish LCP (expect ~one month)
  • Benchmarking (in Gazebo, in other ROS tools)

Use:

  • C++ library you can link to
  • Simulator in Gazebo
  • Forward simulation inside motion planners

Questions to be answered:

  • How much faster would it be for the PR2?
  • What are the alternative projects to DART?
  • Alternatives to the numerical integration process: e.g., GSL-based solutions, ODEint

Suggestions/Discussion:

  • Is it possible to have a way to easily define the state update equations of a system?
  • MathML might be helpful in this direction
  • Observation: at some level, it is needed to compile the input into C++ code

Define friction in URDF-like models:

  • Challenge: It is a property that arises between pairs of bodies
  • Description file for scenes - which currently exists in Gazebo
  • Simulation description format (Gazebo): adding on top of URDF, e.g., parameters helpful for visualization and sensing

Issues raised about COLLADA:

  • complex, availability for parser
  • can represent everything that Gazebo is modeling with the exception of sensors
  • URDF is going to stay around for a while - no immediate plans to switch to

COLLADA

  • there are parsers for moving files from COLLADA into a URDF format

Shared interest:

  • Provide a URDF parser that does not depend on ROS

Motion Planning and Arm Navigation

How to store/represent the state of the world for motion planning?

  • current ROS setup -> articulated robot specific

  • challenges: movable/deformable bodies
  • proposal: remember a \DeltaState / differential states

Have a general plan message - We need a way to send plans

  • Planning with controls is interesting to the community and should be supported
  • Suggestion to the community: Develop a messaging framework for planning with controls
  • Better support for replanning

OMPL and SBPL

  • OMPL and SBPL provide a state-space abstraction: the planners are agnostic to the specifics of a system - e.g., there is no collision checker inside OMPL - an OMPL-ROS.app provides interface with ROS and the concrete implementation of the abstract function defined in OMPL.
  • Can OMPL support planners beyond randomized ones? It is written in a general, abstract fashion. Furthermore, there is a ROS planning interface that is more general and talks to other planners as well.
  • Could search-based planners be implemented on OMPL? It was initially the plan.

Suggestion: integrate search-based planners with sampling-based planners Currently, at the ROS level different planners are integrated (search-based, CHOMP, OMPL planners, etc.)

  • A ROS-messaging-indepedent C++ library for planning is currently developed

Suggestion: integrate search-based planners with sampling-based planners Currently, at the ROS level different planners are integrated (search-based, CHOMP, OMPL planners, etc.)

  • Plans for integration of DART with OMPL / SBPL

General

Many interesting challenges beyond basic planning: e.g., distributed planning where communication modeling is necessary - an effort is under development from Rice and Univ. Nevada Reno that integrates OMPL with ns3 (network simulator for modeling realistic network parameters)

What does the ROS user base need from motion planning?

  • Simpler Interfaces
  • Scenes for Planning/Simulation
  • Refine + Standardize Gazebo Scene Description Format format (SDF)

Desired Features:

  • XML
  • Scene Editing

Collada:

  • no standard parser
  • Nate wrote his own (for Gazebo)
  • does not represent sensors - e.g. lasers, contact sensors
  • issues with loading meshes
  • Nate does not use it any more (for Gazebo)
  • Try to use scene descriptions for Gazebo and also use them for motion planning scenes

Wiki: fuerte/Planning/Simulation and Control/JointMeeting (last edited 2011-10-10 01:55:11 by MikeStilman)