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.3.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.3-py3-none-any.whl (7.6 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for pddl2hoa-0.1.3.tar.gz
Algorithm Hash digest
SHA256 049fe858441329b3b77e640f6407c60e1afe622bf0746b3129af04657d75425c
MD5 52c34c833c4e765332935a5451630f7c
BLAKE2b-256 3900d9c913b77eac1eb7acbd3434262001ceb8feb0ddb5c6b506f70dfd4b3fb0

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for pddl2hoa-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 ec66019da531856ae47d07c232e8a0ed010eac19e56c951e70f7d3ce041a4c62
MD5 d9156efe3312898804a38d4e86dd0ba9
BLAKE2b-256 4d69999b45abe2a8240eec9c5b7afe889427a237bd7111914f05b03f19b4e0ad

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