wlplan


Namewlplan JSON
Version 2.1.0 PyPI version JSON
download
home_pageNone
SummaryWLPlan: Relational Features for PDDL Planning
upload_time2025-10-11 11:54:08
maintainerNone
docs_urlNone
authorDillon Z. Chen
requires_python>=3.10
licenseMIT License
keywords wlplan automated planning machine learning
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            <p align="center">
    <img src="docs/source/_static/logo.png" alt="WLPlan Logo" style="height:256px; width:auto;">
</p>

------

WLPlan
======

[![PyPI version](https://badge.fury.io/py/wlplan.svg)](https://pypi.org/project/wlplan/)
[![License](https://img.shields.io/pypi/l/wlplan)](https://github.com/DillonZChen/wlplan/LICENSE)

<p class="flex-wrapper"><img src="docs/source/_static/favicon.png" style="height:1em; display:inline; padding-right:0.1em;">Plan is a library for generating graph representations and feature embeddings of PDDL planning problems and states for machine learning tasks. WLPlan currently supports both classical and numeric planning problems.</p>

The main pipeline in WLPlan consists of (1) converting planning problems and states into graphs, and (2) synthesising feature embeddings by running a variant of the Weisfeiler-Leman (WL) algorithm on the resulting graph.

<p align="center">
    <img src="docs/source/_static/pipeline.svg" alt="WLPlan" title="WLPlan"/>
</p>

Detailed documentation for WLPlan can be found in the official website available [here](https://dillonzchen.github.io/wlplan).

## Installation
### Python Interface
The Python interface can be installed simply with

    pip install wlplan

The PyPI release only supports `python>=3.10`. Alternatively, you can also install the package from the source code with the `install.sh` script.

### C++ Interface
The C++ interface can be installed in your project by running

    ./cmake_build.py <path/to/installation>

and adding the following to the root CMakeLists.txt file of your project

    list(APPEND CMAKE_PREFIX_PATH "<path/to/installation>")
    find_package(wlplan)
    ...
    target_link_libraries(<your_project> PRIVATE wlplan)

## References
### Academic Publications
Some academic publications which use WLPlan are listed as follows.
- Daniel Höller. **Learning Heuristic Functions for HTN Planning**. In ICAPS 2025 Workshop on Bridging the Gap Between AI Planning and Reinforcement Learning (PRL), 2025.
- Dillon Z. Chen. **Symmetry-Invariant Novelty Heuristics via Unsupervised Weisfeiler-Leman Features**. In ICAPS 2025 Workshop on Heuristics and Search for Domain-independent Planning (HSDIP), 2025.
- Dillon Z. Chen. **Weisfeiler-Leman Features for Planning: A 1,000,000 Sample Size Hyperparameter Study**. In 28th European Conference on Artificial Intelligence (ECAI), 2025.
- Mingyu Hao, Dillon Z. Chen, Felipe Trevizan, and Sylvie Thiébaux. **Effective Data Generation and Feature Selection in Learning for Planning**. In 28th European Conference on Artificial Intelligence (ECAI), 2025.
- Rebecca Eifler, Nika Beriachvili, Arthur Bit-Monnot, Dillon Z. Chen, Jan Eisenhut, Jörg Hoffmann, Sylvie Thiébaux, and Florent Teichteil-Königsbuch. **An Operator-Centric Trustable Decision-Making Tool for Planning Ground Logistic Operations of Beluga Aircraft**. In 28th European Conference on Artificial Intelligence (ECAI), 2025.
- Dillon Z. Chen and Sylvie Thiébaux. **Graph Learning for Numeric Planning**. In 38th Conference on Neural Information Processing Systems (NeurIPS), 2024.
- Dillon Z. Chen, Felipe Trevizan, and Sylvie Thiébaux. **Return to Tradition: Learning Reliable Heuristics with Classical Machine Learning**. In 34th International Conference on Automated Planning and Scheduling (ICAPS), 2024.

### Bibtex
The academic reference for WLPlan is given by the bibtex entry
```
@article{chen-wlplan-2024,
  author       = {Dillon Z. Chen},
  title        = {WLPlan: Relational Features for Symbolic Planning},
  journal      = {CoRR},
  volume       = {abs/2411.00577},
  year         = {2024},
}
```

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "wlplan",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.10",
    "maintainer_email": null,
    "keywords": "wlplan, automated planning, machine learning",
    "author": "Dillon Z. Chen",
    "author_email": "\"Dillon Z. Chen\" <dillon.chen1@gmail.com>",
    "download_url": null,
    "platform": null,
    "description": "<p align=\"center\">\n    <img src=\"docs/source/_static/logo.png\" alt=\"WLPlan Logo\" style=\"height:256px; width:auto;\">\n</p>\n\n------\n\nWLPlan\n======\n\n[![PyPI version](https://badge.fury.io/py/wlplan.svg)](https://pypi.org/project/wlplan/)\n[![License](https://img.shields.io/pypi/l/wlplan)](https://github.com/DillonZChen/wlplan/LICENSE)\n\n<p class=\"flex-wrapper\"><img src=\"docs/source/_static/favicon.png\" style=\"height:1em; display:inline; padding-right:0.1em;\">Plan is a library for generating graph representations and feature embeddings of PDDL planning problems and states for machine learning tasks. WLPlan currently supports both classical and numeric planning problems.</p>\n\nThe main pipeline in WLPlan consists of (1) converting planning problems and states into graphs, and (2) synthesising feature embeddings by running a variant of the Weisfeiler-Leman (WL) algorithm on the resulting graph.\n\n<p align=\"center\">\n    <img src=\"docs/source/_static/pipeline.svg\" alt=\"WLPlan\" title=\"WLPlan\"/>\n</p>\n\nDetailed documentation for WLPlan can be found in the official website available [here](https://dillonzchen.github.io/wlplan).\n\n## Installation\n### Python Interface\nThe Python interface can be installed simply with\n\n    pip install wlplan\n\nThe PyPI release only supports `python>=3.10`. Alternatively, you can also install the package from the source code with the `install.sh` script.\n\n### C++ Interface\nThe C++ interface can be installed in your project by running\n\n    ./cmake_build.py <path/to/installation>\n\nand adding the following to the root CMakeLists.txt file of your project\n\n    list(APPEND CMAKE_PREFIX_PATH \"<path/to/installation>\")\n    find_package(wlplan)\n    ...\n    target_link_libraries(<your_project> PRIVATE wlplan)\n\n## References\n### Academic Publications\nSome academic publications which use WLPlan are listed as follows.\n- Daniel H\u00f6ller. **Learning Heuristic Functions for HTN Planning**. In ICAPS 2025 Workshop on Bridging the Gap Between AI Planning and Reinforcement Learning (PRL), 2025.\n- Dillon Z. Chen. **Symmetry-Invariant Novelty Heuristics via Unsupervised Weisfeiler-Leman Features**. In ICAPS 2025 Workshop on Heuristics and Search for Domain-independent Planning (HSDIP), 2025.\n- Dillon Z. Chen. **Weisfeiler-Leman Features for Planning: A 1,000,000 Sample Size Hyperparameter Study**. In 28th European Conference on Artificial Intelligence (ECAI), 2025.\n- Mingyu Hao, Dillon Z. Chen, Felipe Trevizan, and Sylvie Thi\u00e9baux. **Effective Data Generation and Feature Selection in Learning for Planning**. In 28th European Conference on Artificial Intelligence (ECAI), 2025.\n- Rebecca Eifler, Nika Beriachvili, Arthur Bit-Monnot, Dillon Z. Chen, Jan Eisenhut, J\u00f6rg Hoffmann, Sylvie Thi\u00e9baux, and Florent Teichteil-K\u00f6nigsbuch. **An Operator-Centric Trustable Decision-Making Tool for Planning Ground Logistic Operations of Beluga Aircraft**. In 28th European Conference on Artificial Intelligence (ECAI), 2025.\n- Dillon Z. Chen and Sylvie Thi\u00e9baux. **Graph Learning for Numeric Planning**. In 38th Conference on Neural Information Processing Systems (NeurIPS), 2024.\n- Dillon Z. Chen, Felipe Trevizan, and Sylvie Thi\u00e9baux. **Return to Tradition: Learning Reliable Heuristics with Classical Machine Learning**. In 34th International Conference on Automated Planning and Scheduling (ICAPS), 2024.\n\n### Bibtex\nThe academic reference for WLPlan is given by the bibtex entry\n```\n@article{chen-wlplan-2024,\n  author       = {Dillon Z. Chen},\n  title        = {WLPlan: Relational Features for Symbolic Planning},\n  journal      = {CoRR},\n  volume       = {abs/2411.00577},\n  year         = {2024},\n}\n```\n",
    "bugtrack_url": null,
    "license": "MIT License",
    "summary": "WLPlan: Relational Features for PDDL Planning",
    "version": "2.1.0",
    "project_urls": {
        "Documentation": "https://dillonzchen.github.io/comingsoon.html",
        "Homepage": "https://dillonzchen.github.io/comingsoon.html",
        "Source": "https://github.com/dillonzchen/wlplan"
    },
    "split_keywords": [
        "wlplan",
        " automated planning",
        " machine learning"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "a3feb6d585e6244c4efed935352bb16719b661523b5d623bda7595f983961e64",
                "md5": "91cc785930f0e9147771bdc2462ee0cf",
                "sha256": "ab2f1b6d863be561c4280ddd2e19f8e39b99df1a3df8e460196f7007641fa424"
            },
            "downloads": -1,
            "filename": "wlplan-2.1.0-cp310-cp310-manylinux_2_34_x86_64.whl",
            "has_sig": false,
            "md5_digest": "91cc785930f0e9147771bdc2462ee0cf",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.10",
            "size": 628018,
            "upload_time": "2025-10-11T11:54:08",
            "upload_time_iso_8601": "2025-10-11T11:54:08.935033Z",
            "url": "https://files.pythonhosted.org/packages/a3/fe/b6d585e6244c4efed935352bb16719b661523b5d623bda7595f983961e64/wlplan-2.1.0-cp310-cp310-manylinux_2_34_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "b38d5e8e6c796e46d60878f14c8ab0d1ccd7082ab89230b3a6deec2c62430517",
                "md5": "bbb95fa13fe70619210ca05f6c7b78f3",
                "sha256": "50e2376cadc3646c682e92e3a768ce57bbd428c3172702751d82a0934f23c42d"
            },
            "downloads": -1,
            "filename": "wlplan-2.1.0-cp311-cp311-manylinux_2_34_x86_64.whl",
            "has_sig": false,
            "md5_digest": "bbb95fa13fe70619210ca05f6c7b78f3",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.10",
            "size": 630542,
            "upload_time": "2025-10-11T11:52:07",
            "upload_time_iso_8601": "2025-10-11T11:52:07.521914Z",
            "url": "https://files.pythonhosted.org/packages/b3/8d/5e8e6c796e46d60878f14c8ab0d1ccd7082ab89230b3a6deec2c62430517/wlplan-2.1.0-cp311-cp311-manylinux_2_34_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "ed233e571ad768309e6ee5453f08859594d4691025ce9fa5c03781ffcbf2de90",
                "md5": "e75f14fc2fab65763de721597f553268",
                "sha256": "c21e46a5f0f4dc71bca73206811eee1261b0e4e3756c433b266384ce753971f0"
            },
            "downloads": -1,
            "filename": "wlplan-2.1.0-cp312-cp312-manylinux_2_34_x86_64.whl",
            "has_sig": false,
            "md5_digest": "e75f14fc2fab65763de721597f553268",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.10",
            "size": 631192,
            "upload_time": "2025-10-11T11:52:52",
            "upload_time_iso_8601": "2025-10-11T11:52:52.134340Z",
            "url": "https://files.pythonhosted.org/packages/ed/23/3e571ad768309e6ee5453f08859594d4691025ce9fa5c03781ffcbf2de90/wlplan-2.1.0-cp312-cp312-manylinux_2_34_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-10-11 11:54:08",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "dillonzchen",
    "github_project": "wlplan",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "wlplan"
}
        
Elapsed time: 2.74660s