Skip to main content

Convert PDDL planning problems to HOA (Hanoi Omega Automata) format

Project description

pddl2hoa

pddl2hoa is a Python tool that converts PDDL (Planning Domain Definition Language) planning problems into HOA (Hanoi Omega Automata) format. This enables downstream analysis with formal methods tools and automata-based verification frameworks.


Features

  • Parse and analyze PDDL domain and problem files
  • Convert planning goals into equivalent HOA automata
  • Generate Strategy Templates for PDDL domains and problems (must install Pestel seperately)
  • Compatible with tools that support HOA format (e.g., Spot, Pestel)
  • Designed for integration into formal methods pipelines

Installation

Install via uv (recommended):

uv pip install pddl2hoa

Or from source:

git clone https://github.com/yourusername/pddl2hoa.git
cd pddl2hoa
uv pip install .

Usage

After installation, use the CLI tool:

pddl2hoa domain.pddl problem.pddl > edge_labeled_HOA.hoa

Or use it as a Python library:

from pddl2hoa import convert_pddl_to_hoa

convert_pddl_to_hoa("domain.pddl", "problem.pddl")

Converting from other formats to HOA

This library is designed to be extensible. You can convert almost any domain with a graph-based structure into an HOA representation by subclassing the TurnBasedGame abstract base class in game.py. Once your game format is implemented, you can call the format_hoa method from generate_hoa.py to produce a corresponding HOA graph.


Contributing

Pull requests are welcome! For major changes, please open an issue first to discuss what you’d like to change.


Links

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pddl2hoa-0.1.0.tar.gz (7.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pddl2hoa-0.1.0-py3-none-any.whl (7.5 kB view details)

Uploaded Python 3

File details

Details for the file pddl2hoa-0.1.0.tar.gz.

File metadata

  • Download URL: pddl2hoa-0.1.0.tar.gz
  • Upload date:
  • Size: 7.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.12

File hashes

Hashes for pddl2hoa-0.1.0.tar.gz
Algorithm Hash digest
SHA256 94c40705d45fdea17a696b4c1cab9219566d455656bf43fb8aa8b8cf3cc6dea7
MD5 876dc3d93eb232d62a8de73f9b2da761
BLAKE2b-256 28bc265c54aa5ba544046720642f8aae966c02f687128b2b86920b3d493dabc0

See more details on using hashes here.

File details

Details for the file pddl2hoa-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: pddl2hoa-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 7.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.12

File hashes

Hashes for pddl2hoa-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1f42db00a0a8038fff9f13d9af59ce3595311a6eca04d6fcb0783f7286350f84
MD5 101db9fbf544132d86141f0f818493d9
BLAKE2b-256 17529619e3d4e12f74331347e7d0775ed255df52e29470b731a6bbaceca9f93a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page