Skip to content

STRIPStream: Integrating Symbolic Planners and Blackbox Samplers

License

Notifications You must be signed in to change notification settings

suddhu/pddlstream

 
 

Repository files navigation

pddlstream

An implementation of STRIPStream that uses PDDL for the specifiation of actions and streams.

This repository is the "third version" of the STRIPStream framework, intended to replace the previous versions:

  1. https://github.com/caelan/stripstream
  2. https://github.com/caelan/ss

Installation

$ git clone https://github.com/caelan/pddlstream.git
$ cd pddlstream
$ git submodule update --init --recursive
$ ./FastDownward/build.py

If ./FastDownward/build.py fails, install FastDownward's dependencies using your package manager:

  • APT (Linux): $ sudo apt-get install cmake g++ g++-multilib make python

If necessary, see FastDownward's documentation for more detailed installation instructions:

http://www.fast-downward.org/ObtainingAndRunningFastDownward

Resources

Examples

Pure Python

These are simple examples that can be run without additional depedencies:

  • Blocksworld: $ python -m examples.blocksworld.blocksworld
  • Blocksworld with Derived Predicates: $ python -m examples.blocksworld.blocksworld_derived
  • Discrete Belief Space: $ python -m examples.discrete_belief.run
  • Kitchen (debug streams): python -m examples.kitchen.run

Python TKinter

Install numpy and Python TKinter on Linux using:

$ pip install numpy
$ sudo apt-get install python-tk

Examples:

  • Discrete TAMP: $ python -m examples.discrete_tamp.run
  • Discrete TAMP with pushing: $ python -m examples.discrete_tamp.run
  • 1D Continuous TAMP: $ python -m examples.continuous_tamp.run
  • 2D Motion Planning: $ python -m examples.motion.run

Advanced Functionality

  • Action Description Language (ADL): $ python -m examples.adl.run
  • Exogenous streams (observations): $ python -m examples.exogenous.run
  • Fluent stream inputs: $ python -m examples.fluent.run

International Planning Competition (IPC)

  • Rovers: $ python -m examples.ipc.rovers.run
  • Satellites: $ python -m examples.ipc.satellites.run

PyBullet

Install PyBullet on OS X or Linux using:

$ pip install numpy pybullet

Examples:

  • Kuka IIWA task and motion planning - python -m examples.pybullet.kuka.run
  • PR2 task and motion planning - python -m examples.pybullet.pr2.run
  • PR2 planning and execution - python -m examples.pybullet.pr2_belief.run

See https://github.com/caelan/ss-pybullet for more information.

Drake

Install Drake on OS X or Ubuntu by following the following instructions: http://drake.mit.edu/installation.html

Examples:

  • Kuka IIWA task and motion planning - python -m examples.drake.run

Publications

STRIPStream: Integrating Symbolic Planners and Blackbox Samplers https://arxiv.org/abs/1802.08705

STRIPStream: Planning In Infinite Domains https://arxiv.org/abs/1701.00287

Citation

Caelan R. Garrett, Tomas Lozano-Perez, Leslie P. Kaelbling. STRIPStream: Integrating Symbolic Planners and Blackbox Samplers, 2018.

About

STRIPStream: Integrating Symbolic Planners and Blackbox Samplers

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%