Skip to content

fbk-pso/up-pddl-stream

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

up-pddl-stream

This repository contains an integration of PDDLStream as a planning engine for the Unified Planning framework.

This integration has been developed to support the experimental evaluation of the following paper:

E. Tosello, A. Valentini, A. Micheli. A Meta-Engine Framework for Interleaved Task and Motion Planning using Topological Refinements. ECAI 2024


Requirements

up-pddl-stream relies on PDDLStream (follow the instruction inside the pddlstream submodule) and TAMPEST.

Usage

up-pddl-stream is integrated with the Unified Planning framework. You must register the planner engines with the Unified Planning environment:

from unified_planning.shortcuts import *

# Register the engine
env = get_environment()
env.factory.add_engine("pddlstream", "up_pddl_stream.engine", "PDDLStreamEngine")

problem = ...  # your task and motion planning problem

# Solve the problem
with OneshotPlanner(name="pddlstream") as planner:
    result = planner.solve(problem)
    print(result.plan)

Reproducing Results from ECAI 2024

To reproduce the experimental results from the ECAI 2024 paper, use the following command-line interface:

python3 test.py --domain <domain-name> --dim <dim> --d <n> --c <m> --tp <task-planner-name> --mp <motion-planner>

The possible domains are: doors, maze, rover.

The possible dimensions are: 2D, 3D. 3D setups are available only for maze and rover.

The possible set of benchmark options are:

  • doors: --d [1 2 4 6 8 10] --c [0 1 2 3]

  • maze: --d [1 2 3 4 5 6 7 8 9 10] --c [0 1 2 3 4 5 6 7 8 9 10]

  • rover: --d [2 4 6 8 10] --c [0 1 2 3 4]

The possible task planners are: incremental, binding, focused, adaptive.

The possible motion planners are: LazyRRT, RRT.

Refer to the paper for the detailed meaning of the domain parameters.

License

up-pddl-stream is released under the Apache-2.0 License. See the LICENSE file for full details.

Contact

For questions, bug reports, or contributions, please open an issue on GitHub or contact the maintainers.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages