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.1.tar.gz (6.9 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.1-py3-none-any.whl (7.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: pddl2hoa-0.1.1.tar.gz
  • Upload date:
  • Size: 6.9 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.1.tar.gz
Algorithm Hash digest
SHA256 99c7b04dbc9c9a6dfb3d5adbf04f90918068328d70fa4c02281b93f66457207b
MD5 9248c471a3043282a038314fcad06763
BLAKE2b-256 e366b5d6da21de62397d060a3e9210f75c28bc3f2421d2933d8774e17cd2db56

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pddl2hoa-0.1.1-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.11.13

File hashes

Hashes for pddl2hoa-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 9ff6addf651a599769d80d4cdd4f246c5be6c92e8be9fc81751be17dc60e8903
MD5 dcd1b4c80b9bb2b4a393514c085fcc8b
BLAKE2b-256 e62beff4477b01c19fae6baf3319311e35984fa4e755a0e079bb9f56192c4865

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