LAPKT aims to make your life easier if your purpose is to create, use or extend basic to advanced Automated Planners. It's an open-source Toolkit written in C++ and Python with simple interfaces that give you complete flexibility by decoupling parsers from problem representations and algorithms. It has been succesfully used in embedded systems, webservices, compilations, replanning and contains some of the high-performance planners from the last International Planning Competition 2014.
- Miquel Ramirez [email protected]
- Nir Lipovetzky [email protected]
- Anubhav Singh [email protected]
- Christian Muise [email protected]
LAPKT separates search engines from the data structures used to represent planning tasks. This second component receives the name of 'interface' since it is indeed the interface that provides the search model to be solved.
Search engine components are meant to be modular, allowing users of LAPKT to assemble and combine features of different search engines to come up with customized search strategies, within reason and without sacrificing (much) efficiency. In order to do so, LAPKT makes heavy use of C++ templates and the Static Strategy design pattern. At the time of writing this, the modularity and decoupling of components isn't as high as I would like, there's still a lot of work to do :)
-
Install package
python3 -m pip install lapkt
-
Checkout lapkt options
lapkt_cmd.py -h
@Ubuntu
- The directory where the
pip
command installs the scripts, includinglapkt_cmd.py
, is generally on the systemPATH
, if not, it needs to be added manually. - Python versions:
3.7
,3.8
,3.9
,3.10
,3.11
, and3.12
are supported on Ubuntu 20.04 and 22.04 (and other linux version with the same glibc versions). Python3.7
is not supported on Ubuntu 24.04.
@Windows
- Python versions:
3.9
,3.10
,3.11
, and3.12
are supported. clingo/gringo
python package requiresMSVCP140.dll
which comes with visual studio redistributable. latest vc-redist- To be able to run
lapkt_run.py
script directly from command line, change the default handler for ".py" files to `Python'.
Important
Refer to Developers Guide for build instructions and other helpful instruction on extending LAPKT.
cmake
is the primary tool used to build the LAPKT's C++(backend) source code and generate Python/C++ library package in pypi
package structure.
Apptainer configurations are avaliable for a few planners in ./apptainer_configurations.
To build, execute
apptainer build ApxNovelty.sif Apptainer.ApxNovelty
Lists minor and major revisions. Minor patches are not included.
Version | Change log |
---|---|
0.2.0 | PR |