Skip to main content

Integration of Spiderplan with the Unified Planning Library

A constraint-based planning engine for unified planning.

Try it out!

Note: This requires docker desktop >= 4.0.0 to be installed (this means that docker compose V2 should be available via docker compose rather than the stand-alone docker-compose).

Create and activate a Python 3.7 environment. Here we use conda:

conda create --name up-sp-test python=3.7
conda activate up-sp-test

Install up-spiderplan:

pip install up-spiderplan

Clone the up-spiderplan repository to get a test case:

git clone https://github.com/aiplan4eu/up-spiderplan.git
cd up-spiderplan

Finally, we can run the test:

python tests/test.py

This will build and run a docker container that hosts the spiderplan server. Therefore it will take a bit of time on the first run.

Default Configuration

Spiderplan solves hybrid planning problems by combining preprocessors, propagators and solvers for all required constraint types. Temporal propgatation is needed even for classical planning because under the hood Spiderplan is a temporal interval based planner.

  • Search space: graph
  • Heuristic: Fast forward
  • Preprocessors: temporal propagation, constraints processing and operator grounding.
  • Propagators: pruning, domain constraints, temporal constraints, motion planning
  • Solvers: constraint processing, forward goal resolver

Planning Approaches of UP supported

Combined task and motion planning with Reeds Shepp car motion model.

Operation Modes

Oneshot planning

Version History

0.6.4 Added Docker Overhead to Result Object

  • Measuring docker overhead for AIPlan4EU evaluation
  • Moving measurement of internal engine time

0.6.3 Fixed non-existing folder bug

  • The gRPC server is now stopped from withing the correct folder if build_docker is set to false.
  • Added a verbose option

0.6.2 run_docker option used again

  • Removed issue where the run_rocker option was ignored for testing purposes
  • Added option to set build_docker to true to force building docker instead of using the image from docker hub

0.6.1 docker-compose backwards compatability

0.6.0 Running SpiderPlan from docker image

  • Fixed issue where the internal engine time would be wrong run
  • Using image on docker.io instead of building container to reduce time to run for the first time

0.5.1 Fixes

  • Removed letter 's' from reported times
  • Fixed issue with new UP test cases

0.5.0 Added Internal Engine Time to Result Metric

  • Adding internal engine time to result metric

0.4.0 Fixes for Unified Planning 1.0.0 and UP test cases

  • UP dependency
  • Removed circular dependency which makes it impossible to load up-spiderplan as a up engine.
  • Fixed EngineImpl to extend OneShotMixin

0.3.0 Running the Engine in the UP

  • Fix spiderplan grpc server in docker
  • Use docker to run server through up-spiderplan

0.2.0 Motion Planning

  • Motion planning constraints extracted from UP problem
  • Solve problem with motion constraints and get a plan with paths
  • Fix Spiderplan motion planner to use correct motion model
  • Allow configuration with available motion planning algorithms
  • Convert plan into UP plan with motion

0.1.0 Basic UP Support

  • UP problems can be converted to constraint databases
    • Classical plannning
  • Call spiderplan to produce a solution/failure
  • Answer translated to a UP result

Issues

  • Waiting for docker container does not work

Metadata

Release files for up-spiderplan 0.6.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for up-spiderplan 0.6.4
File Size Uploaded Provenance
up_spiderplan-0.6.4.tar.gz 27.6 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for up-spiderplan 0.6.4
File Interpreter ABI Platform
up_spiderplan-0.6.4-py3-none-any.whl Python 3 none any Details

Total release size: 53.3 kB

Release files / up_spiderplan-0.6.4.tar.gz

Download URL up_spiderplan-0.6.4.tar.gz
Size 27.6 kB
Tags Source
SHA-256 checksum
How to use checksums
ed88834ff3ef49e4b9cbc8a28940f430e52983e22ed2fb4e786acd496f1dc887
BLAKE2b-256 checksum
How to use checksums
303628f899e8e7309b3facc9fac0ed72362609e3eb007cac697df7cecc251dea
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.8.0 colorama/0.4.4 importlib-metadata/6.8.0 keyring/24.3.0 pkginfo/1.9.6 readme-renderer/34.0 requests-toolbelt/0.9.1 requests/2.28.2 rfc3986/1.5.0 tqdm/4.57.0 urllib3/1.26.5 CPython/3.10.12

Release files / up_spiderplan-0.6.4-py3-none-any.whl

Download URL up_spiderplan-0.6.4-py3-none-any.whl
Size 25.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
6f0a15b21003abd949545f8db7fe356486208b88fb3eebf17c7faedc60e947e5
BLAKE2b-256 checksum
How to use checksums
091993b989ea53fec3f84449f796a4ca298b7067aafcfa99571106a61b3dd34b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.8.0 colorama/0.4.4 importlib-metadata/6.8.0 keyring/24.3.0 pkginfo/1.9.6 readme-renderer/34.0 requests-toolbelt/0.9.1 requests/2.28.2 rfc3986/1.5.0 tqdm/4.57.0 urllib3/1.26.5 CPython/3.10.12

Security for up-spiderplan 0.6.4

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page