OMPL

Last updated
OMPL
Initial releaseOctober 15, 2010;13 years ago (2010-10-15)
Stable release
1.5.2 / January 31, 2021;2 years ago (2021-01-31)
Repository
Operating system Linux, Mac OS X, Microsoft Windows
License BSD
Website ompl.kavrakilab.org

OMPL (Open Motion Planning Library) is a software package for computing motion plans using sampling-based algorithms. The content of the library is limited to motion planning algorithms, which means there is no environment specification, no collision detection or visualization. This is intentional as the library is designed to be easily integrated into systems that already provide the additional needed components. [1] For example, OMPL is integrated with ROS and MoveIt!. In 2012 OMPL won the Grand Prize at the Open Source Software World Challenge.

Contents

Implementation

OMPL is written in C++ but also offers Python bindings. The library includes implementations for a large number of planning algorithms, all of these being implemented on top of the same base functionality. The base functionality OMPL provides for planners is thread safe. Adding new motion planning algorithms to OMPL is easy, thus facilitating comparisons between existing algorithms and evaluations of new ideas.

Target audience

Teaching

One of the design goals for OMPL is clarity of concepts used. This equates to having C++ classes that correspond to concepts found in the literature. Such a design facilitates using OMPL for education. Furthermore, the authors provide free course materials and assignments for use in conjunction with OMPL. [2] [3]

Industrial use

The first use for OMPL was actually at Willow Garage, where the library was started, to do motion planning for the PR2 arms. As such, the library was hardened to run reliably and efficiently. Afterwards OMPL started to be used (via ROS and MoveIt!) for hundreds of different types of robots [4] . [5]

Research

OMPL includes tools for benchmarking, [6] providing a common platform for easily developing and testing new algorithms.

Related Research Articles

Markus Hendrik Overmars is a Dutch computer scientist and teacher of game programming known for his game development application GameMaker. GameMaker lets people create computer games using a drag-and-drop interface. He is the former head of the Center for Geometry, Imaging, and Virtual Environments at Utrecht University, in the Netherlands. This research center concentrates on computational geometry and its application in areas like computer graphics, robotics, geographic information systems, imaging, multimedia, virtual environments, and games.

Motion planning, also path planning is a computational problem to find a sequence of valid configurations that moves the object from the source to destination. The term is used in computational geometry, computer animation, robotics and computer games.

Modular self-reconfiguring robotic systems or self-reconfigurable modular robots are autonomous kinematic machines with variable morphology. Beyond conventional actuation, sensing and control typically found in fixed-morphology robots, self-reconfiguring robots are also able to deliberately change their own shape by rearranging the connectivity of their parts, in order to adapt to new circumstances, perform new tasks, or recover from damage.

The following outline is provided as an overview of and topical guide to automation:

Adaptable Robotics refers to a field of robotics with a focus on creating robotic systems capable of adjusting their hardware and software components to perform a wide range of tasks while adapting to varying environments. The 1960s introduced robotics into the industrial field. Since then, the need to make robots with new forms of actuation, adaptability, sensing and perception, and even the ability to learn stemmed the field of adaptable robotics. Significant developments such as the PUMA robot, manipulation research, soft robotics, swarm robotics, AI, cobots, bio-inspired approaches, and more ongoing research have advanced the adaptable robotics field tremendously. Adaptable robots are usually associated with their development kit, typically used to create autonomous mobile robots. In some cases, an adaptable kit will still be functional even when certain components break.

<span class="mw-page-title-main">Rapidly exploring random tree</span> Search algorithm

A rapidly exploring random tree (RRT) is an algorithm designed to efficiently search nonconvex, high-dimensional spaces by randomly building a space-filling tree. The tree is constructed incrementally from samples drawn randomly from the search space and is inherently biased to grow towards large unsearched areas of the problem. RRTs were developed by Steven M. LaValle and James J. Kuffner Jr. They easily handle problems with obstacles and differential constraints and have been widely used in autonomous robotic motion planning.

<span class="mw-page-title-main">Probabilistic roadmap</span> Probabilistic motion planning algorithm

The probabilistic roadmap planner is a motion planning algorithm in robotics, which solves the problem of determining a path between a starting configuration of the robot and a goal configuration while avoiding collisions.

Seth A. Hutchinson is an American electrical and computer engineer. He is the Executive Director of the Institute for Robotics and Intelligent Machines at the Georgia Institute of Technology, where he is also Professor and KUKA Chair for Robotics in the School of Interactive Computing. His research in robotics spans the areas of planning, sensing, and control. He has published widely on these topics, and is coauthor of the books "Robot Modeling and Control," published by Wiley, Principles of Robot Motion - Theory, Algorithms, and Implementations, with Howie Choset, Kevin M. Lynch, George Kantor, Wolfram Burgard, Lydia E. Kavraki and Sebastian Thrun.

<span class="mw-page-title-main">OpenRAVE</span>

Open Robotics Automation Virtual Environment (OpenRAVE) provides an environment for testing, developing, and deploying motion planning algorithms in real-world robotics applications. The main focus is on simulation and analysis of kinematic and geometric information related to motion planning. OpenRAVE's stand-alone nature allows it to be easily integrated into existing robotics systems. It provides many command-line tools to work with robots and planners, and the run-time core is small enough to be used inside controllers and bigger frameworks.

Matthew Thomas Mason is an American roboticist and the former Director of the Robotics Institute at Carnegie Mellon University. Mason is a researcher in the area of robotic manipulation, and is the author of two highly cited textbooks in the field.

Jean-Claude Latombe is a French-American roboticist and the Kumagai Professor Emeritus in the School of Engineering at Stanford University. Latombe is a researcher in robot motion planning, and has authored one of the most highly cited books in the field.

<span class="mw-page-title-main">Robot Operating System</span> Set of software frameworks for robot software development

Robot Operating System is an open-source robotics middleware suite. Although ROS is not an operating system (OS) but a set of software frameworks for robot software development, it provides services designed for a heterogeneous computer cluster such as hardware abstraction, low-level device control, implementation of commonly used functionality, message-passing between processes, and package management. Running sets of ROS-based processes are represented in a graph architecture where processing takes place in nodes that may receive, post, and multiplex sensor data, control, state, planning, actuator, and other messages. Despite the importance of reactivity and low latency in robot control, ROS is not a real-time operating system (RTOS). However, it is possible to integrate ROS with real-time computing code. The lack of support for real-time systems has been addressed in the creation of ROS 2, a major revision of the ROS API which will take advantage of modern libraries and technologies for core ROS functions and add support for real-time code and embedded system hardware.

For robot control, Stochastic roadmap simulation is inspired by probabilistic roadmap methods (PRM) developed for robot motion planning.

Video content analysis or video content analytics (VCA), also known as video analysis or video analytics (VA), is the capability of automatically analyzing video to detect and determine temporal and spatial events.

<span class="mw-page-title-main">Point Cloud Library</span>

The Point Cloud Library (PCL) is an open-source library of algorithms for point cloud processing tasks and 3D geometry processing, such as occur in three-dimensional computer vision. The library contains algorithms for filtering, feature estimation, surface reconstruction, 3D registration, model fitting, object recognition, and segmentation. Each module is implemented as a smaller library that can be compiled separately. PCL has its own data format for storing point clouds - PCD, but also allows datasets to be loaded and saved in many other formats. It is written in C++ and released under the BSD license.

Lydia E. Kavraki is a Greek-American computer scientist, the Noah Harding Professor of Computer Science, a professor of bioengineering, electrical and computer engineering, and mechanical engineering at Rice University. She is also the director of the Ken Kennedy Institute at Rice University. She is known for her work on robotics/AI and bioinformatics/computational biology and in particular for the probabilistic roadmap method for robot motion planning and biomolecular configuration analysis.

<span class="mw-page-title-main">James J. Kuffner Jr.</span> American roboticist

James J. Kuffner Jr. is an American roboticist and chief executive officer (CEO) of Woven by Toyota. Dr. Kuffner is also Chief Digital Officer and a member of the Board of Directors of Toyota Motor Corporation. Kuffner continues to serve as an Adjunct Associate Professor at the Robotics Institute at Carnegie Mellon University and as Executive Advisor to Woven by Toyota. Kuffner earned a Ph.D. from the Stanford University Dept. of Computer Science Robotics Laboratory in 1999.

<span class="mw-page-title-main">Oussama Khatib</span> American Roboticist

Oussama Khatib is a roboticist and a professor of computer science at Stanford University, and a Fellow of the IEEE. He is credited with seminal work in areas ranging from robot motion planning and control, human-friendly robot design, to haptic interaction and human motion synthesis. His work's emphasis has been to develop theories, algorithms, and technologies, that control robot systems by using models of their physical dynamics. These dynamic models are used to derive optimal controllers for complex robots that interact with the environment in real-time.

Cloud robotics is a field of robotics that attempts to invoke cloud technologies such as cloud computing, cloud storage, and other Internet technologies centered on the benefits of converged infrastructure and shared services for robotics. When connected to the cloud, robots can benefit from the powerful computation, storage, and communication resources of modern data center in the cloud, which can process and share information from various robots or agent. Humans can also delegate tasks to robots remotely through networks. Cloud computing technologies enable robot systems to be endowed with powerful capability whilst reducing costs through cloud technologies. Thus, it is possible to build lightweight, low-cost, smarter robots with an intelligent "brain" in the cloud. The "brain" consists of data center, knowledge base, task planners, deep learning, information processing, environment models, communication support, etc.

<span class="mw-page-title-main">Dan Halperin</span> Israeli computer scientist

Dan (Danny) Halperin is an Israeli computer scientist known for his work on computational geometry and robotics. He is currently a Full Professor in the School of Computer Science at Tel Aviv University, and the CTO of Assembrix, a startup company in industrial 3D printing.

References

  1. Ioan A. Şucan; Mark Moll; Lydia Kavraki (December 2011). The Open Motion Planning Library (PDF). IEEE Robotics & Automation Magazine.
  2. Moll, Mark; Janice Bordeaux; Lydia E. Kavraki (2013). "Software for Project-Based Learning of Robot Motion Planning" (PDF). Computer Science Education. 23 (4): 332–348. Bibcode:2013CSEd...23..332M. doi:10.1080/08993408.2013.847167. S2CID   9899694 . Retrieved 8 January 2014.
  3. Mark Moll; Ioan A. Şucan; Janice Bordeaux; Lydia E. Kavraki (September 2011). Teaching Motion Planning Concepts to Undergraduate Students (PDF). Workshop on Advanced Robotics and its Social Impacts (ARSO).
  4. "MoveIt! 2013 Survey" (PDF).
  5. "Robots running ROS".
  6. Mark Moll; Ioan A. Şucan; Lydia Kavraki (September 2015). "Benchmarking Motion Planning Algorithms: An Extensible Infrastructure for Analysis and Visualization". IEEE Robotics & Automation Magazine. 22 (3): 96–102. arXiv: 1412.6673 . doi:10.1109/MRA.2015.2448276. S2CID   1791284.