Safe Action Model Learning
SAM learner is an algorithm to efficiently and safely learn action models of STRIPS problems.
This repository contains two variations of the algorithm:
- The classic SAM learning algorithm.
- Lightweight version of ESAM learning algorithm.
The code is also available as a package to download in PyPI.
Requirements:
The repository's code is currently running using Python >= 3.8.
In addition, This code is currently depending on the on version 1.3 of pyperplan.
Installation:
From the Python package index (PyPI):
pip install sam-learner
Features:
The repository offers two variants of the SAM learning algorithm, the classical SAM learning algorithm as well as a
lightweight version of the Extended SAM learning algorithm.
Classical SAM Learning:
- Learn lifted action model of classical PDDL problems.
- Currently, supports PDDL-1.2 only.
- Export learned domain via domain export functionality.
Extended SAM Learning:
- Learn lifted action model of classical PDDL problems.
- Extends SAM to also learn action models in case that there is an ambiguity in the actions' execution process.
- Currently, supports PDDL-1.2 only.
- Export learned domain via domain export functionality.
New Feature:
Now the code outputs trajectories in a format that FAMA action model learning can read and translate.