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:
$ 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
- Planning Domain Description Language (PDDL): http://users.cecs.anu.edu.au/~patrik/pddlman/writing.html
- Derived Predicates: https://www.cs.cmu.edu/afs/cs/project/jair/pub/volume28/coles07a-html/node18.html
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
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
- 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
- Rovers:
$ python -m examples.ipc.rovers.run
- Satellites:
$ python -m examples.ipc.satellites.run
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.
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
STRIPStream: Integrating Symbolic Planners and Blackbox Samplers https://arxiv.org/abs/1802.08705
STRIPStream: Planning In Infinite Domains https://arxiv.org/abs/1701.00287
Caelan R. Garrett, Tomas Lozano-Perez, Leslie P. Kaelbling. STRIPStream: Integrating Symbolic Planners and Blackbox Samplers, 2018.