Flatland ASP deals with the application of Answer Set Programming techniques to the Flatland environment.
Its first goal is to provide a short introduction to Flatland as well as to Answer Set Programming, more precisely Clingo, with the help of documentation and examples.
The second and more exciting goal is to explore various ASP instantiations and encodings of the Flatland environment in order to find solutions to the problems Flatland tries to help to solve.
For any information that goes beyond this README, please visit the FlatlandASP Wiki or refer to the Link section
Table of Contents
To get this project up and running, just follow these simple steps.
In order to get FlatlandASP up and running the only prerequisite is Python. To avoid conflicts with Flatland it is currently recommended to use Python 3.10.
- Clone this repository
git clone https://github.com/VictosVertex/flatland-asp.git
- Create a new python virtual environment (or use an existing one)
py -m venv my_new_python_environment
-
Activate the virtual environment
Windows
cmd.exe
source my_new_python_environment/Scripts/activate.bat
PowerShell
source my_new_python_environment/Scripts/activate.ps1
Linux
(depending on distribution):
bash
source my_new_python_environment/bin/activate
-
Go into cloned repository directory
-
Install the project as an editable package
pip install -e .
The project is now ready to be used in any project using the python virtual environment.
data/
data/encodings/
ASP encodingsdata/environments/
Environment data (.json
) and environments (.pkl
)
examples/
Examples for Flatland and ASP (Clingo)src/flatlandasp
src/flatlandasp/core/flatland
Flatland related classes, schemas, mappings, static maps, etc.src/flatlandasp/core/asp
ASP/Clingo related instance descriptions, generators, etc.src/flatlandasp/core/utils
Utility functions for files, images, etc.src/flatlandasp/features/
Modular features building oncore
/each other,API endpoints
Useful links for more information on Flatland and Clingo
- Flatland
- Official Flatland website: https://www.flatland-association.org/
- Flatland on pypi: https://pypi.org/project/flatland-rl/
- Flatland on github: https://github.com/flatland-association/flatland-rl
- Clingo
- Clingo: https://potassco.org/clingo/
- Potassco Guide on github: https://github.com/potassco/guide/releases/