Conference Paper

OOPS for Motion Planning: An Online, Open-source, Programming System

Dept. of Comput. Sci., Rice Univ., Houston, TX
DOI: 10.1109/ROBOT.2007.364047 Conference: Robotics and Automation, 2007 IEEE International Conference on
Source: IEEE Xplore

ABSTRACT The success of sampling-based motion planners has resulted in a plethora of methods for improving planning components, such as sampling and connection strategies, local planners and collision checking primitives. Although this rapid progress indicates the importance of the motion planning problem and the maturity of the field, it also makes the evaluation of new methods time consuming. We propose that a systems approach is needed for the development and the experimental validation of new motion planners and/or components in existing motion planners. In this paper, we present the online, open-source, programming system for motion planning (OOPSMP), a programming infrastructure that provides implementations of various existing algorithms in a modular, object-oriented fashion that is easily extendible. The system is open-source, since a community-based effort better facilitates the development of a common infrastructure and is less prone to errors. We hope that researchers will contribute their optimized implementations of their methods and thus improve the quality of the code available for use. A dynamic Web interface and a dynamic linking architecture at the programming level allows users to easily add new planning components, algorithms, benchmarks, and experiment with different parameters. The system allows the direct comparison of new contributions with existing approaches on the same hardware and programming infrastructure

  • Source
    [Show abstract] [Hide abstract]
    ABSTRACT: Developing robot agnostic software frameworks involves synthesizing the disparate fields of robotic theory and software engineering while simultaneously accounting for a large variability in hardware designs and control paradigms. As the capabilities of robotic software frameworks increase, the setup difficulty and learning curve for new users also increase. If the entry barriers for configuring and using the software on robots is too high, even the most powerful of frameworks are useless. A growing need exists in robotic software engineering to aid users in getting started with, and customizing, the software framework as necessary for particular robotic applications. In this paper a case study is presented for the best practices found for lowering the barrier of entry in the MoveIt! framework, an open-source tool for mobile manipulation in ROS, that allows users to 1) quickly get basic motion planning functionality with minimal initial setup, 2) automate its configuration and optimization, and 3) easily customize its components. A graphical interface that assists the user in configuring MoveIt! is the cornerstone of our approach, coupled with the use of an existing standardized robot model for input, automatically generated robot-specific configuration files, and a plugin-based architecture for extensibility. These best practices are summarized into a set of barrier to entry design principles applicable to other robotic software. The approaches for lowering the entry barrier are evaluated by usage statistics, a user survey, and compared against our design objectives for their effectiveness to users.
  • [Show abstract] [Hide abstract]
    ABSTRACT: Teachers and students often consider learning programming a difficult pursuit. Face-to-face learning alone cannot provide effective teaching or efficient solutions for learning. A case teaching model can make students active in programming courses, even as it relies on solid learning theory and pedagogical strategies. This paper reports a study based on a case teaching model in C/C++ programming. The Laboratory Animal System (LAS) is a standalone case for management of laboratory animals. This paper includes an overview of LAS architectural design and user interface by C/C++ and presents the design, implementation, and evaluation of the model, as well as its implications for learning computer programming. The case method provides an interactive learning environment for students. Based on a survey of student feedback, students can learn C/C++ programming and gain knowledge more quickly and effectively using the case teaching model than through some traditional methods of teaching.
    Computers & Education 08/2014; 77:39–49. DOI:10.1016/j.compedu.2014.04.003 · 2.63 Impact Factor
  • [Show abstract] [Hide abstract]
    ABSTRACT: The Cloud infrastructure and its extensive set of Internet-accessible resources has potential to provide significant benefits to robots and automation systems. We consider robots and automation systems that rely on data or code from a network to support their operation, i.e., where not all sensing, computation, and memory is integrated into a standalone system. This survey is organized around four potential benefits of the Cloud: 1) Big Data: access to libraries of images, maps, trajectories, and descriptive data; 2) Cloud Computing: access to parallel grid computing on demand for statistical analysis, learning, and motion planning; 3) Collective Robot Learning: robots sharing trajectories, control policies, and outcomes; and 4) Human Computation: use of crowdsourcing to tap human skills for analyzing images and video, classification, learning, and error recovery. The Cloud can also improve robots and automation systems by providing access to: a) datasets, publications, models, benchmarks, and simulation tools; b) open competitions for designs and systems; and c) open-source software. This survey includes over 150 references on results and open challenges. A website with new developments and updates is available at:
    IEEE Transactions on Automation Science and Engineering 01/2015; 12(2):1-12. DOI:10.1109/TASE.2014.2376492 · 2.16 Impact Factor


Available from