Skip to main content

Action Model Learning from Noisy Traces: a Probabilistic Approach.

Project description

Action Model Learning from Noisy Traces: a Probabilistic Approach

License: MIT

This repository contains the official code of the Noisy Offline Learning of Action Models (NOLAM) algorithm.

Installation

pip install nolam

Example usage

from nolam.algorithm.Learner import Learner
noise_rate = 0.1
model = Learner().learn('path/to/domain.pddl', ['path/to/trace0', 'path/to/trace1'], e=noise_rate)
print(model)

Custom domain learning

The NOLAM algorithm can be run for learning from traces with noisy states with an observation noise varying from 0 to 1. For running NOLAM on a custom domain, you need to provide an input domain file 'path/to/domain.pddl', a list of plan trace files ['path/to/trace0', 'path/to/trace1', etc.], and the (possibly estimated) observation noise. The input planning domain must contain the predicates, object types, and operator signatures. Note NOLAM does not yet exploit input knowledge in terms of preconditions and effects, hence providing such input domain knowledge does not currently affect the learning process. NOLAM can learn a planning domain from plan traces of different environments (e.g. it is possible to learn a planning domain from small environments and exploit the learned domain in large environments).

Citations

If you find this repository useful, please consider citing the related paper.

@article{lamanna2024action,
  title={Lifted Action Models Learning from Partial Traces},
  author={Lamanna, Leonardo and Serafini, Luciano},
  booktitle={Proceedings of the International Conference on Automated Planning and Scheduling},
  volume={34},
  pages={342--350},
  year={2024}
}

License

This project is licensed under the MIT License - see the LICENSE file for details.

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

nolam-1.0.0.tar.gz (16.3 kB view details)

Uploaded Source

Built Distribution

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

nolam-1.0.0-py3-none-any.whl (17.2 kB view details)

Uploaded Python 3

File details

Details for the file nolam-1.0.0.tar.gz.

File metadata

  • Download URL: nolam-1.0.0.tar.gz
  • Upload date:
  • Size: 16.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.13

File hashes

Hashes for nolam-1.0.0.tar.gz
Algorithm Hash digest
SHA256 e670e8ef807001cada6612fc3f01e0f1d80757d6c150f63cbc9db83f7a69a7f3
MD5 2ae52aa9919c7c880389431b376d5592
BLAKE2b-256 630ce9ff7f22d6101aca68271731730ac21de04fb8fa2f7b6accbe5354bfb1e7

See more details on using hashes here.

File details

Details for the file nolam-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: nolam-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 17.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.13

File hashes

Hashes for nolam-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9ab71a9a6b38feff7d5886282b9e7d00845d374aa68dea29fe3d648614505f9d
MD5 60315aa53dce9112d4836b2ddeb4fbe6
BLAKE2b-256 fc86086a4c4ff9952d2ed0116e59ed71941cfb407c85960ccc5a5e5dddb447fe

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