From 6889e97f47073b50343a90fe6c8287964f6d80aa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Patrick=20L=C3=BChne?= Date: Thu, 16 Nov 2017 18:16:55 +0100 Subject: [PATCH] Updated readme for release 3.1.0. This adds a section about the new commands, updates out-of-date references, and highlights the translator as the currently most interesting component. --- README.md | 74 +++++++++++++++++++---------------- doc/building.md | 43 ++++++++++---------- doc/command-line-interface.md | 18 --------- 3 files changed, 63 insertions(+), 72 deletions(-) delete mode 100644 doc/command-line-interface.md diff --git a/README.md b/README.md index 8c34d7f..fcd6b40 100644 --- a/README.md +++ b/README.md @@ -4,66 +4,72 @@ ## Overview -`plasp` 3 is in early development and not intended for productive use yet. +`plasp` is a tool collection for planning in [*answer set programming*](https://en.wikipedia.org/wiki/Answer_set_programming). +`plasp` 3 supports the input languages [PDDL 3.1](https://helios.hud.ac.uk/scommv/IPC-14/software.html) (except for advanced features such as durative actions, numerical fluents, and preferences) and [SAS](http://www.fast-downward.org/TranslatorOutputFormat) (full support of SAS 3), which is used by [Fast Downward](http://www.fast-downward.org/). -`plasp` translates planning problem instances to ASP facts. -`plasp` 3 supports the input languages [PDDL 3.1](https://helios.hud.ac.uk/scommv/IPC-14/software.html) (only basic features currently) and [SAS](http://www.fast-downward.org/TranslatorOutputFormat) (full support of SAS 3), which is used by [Fast Downward](http://www.fast-downward.org/). +The most notable tool provided by `plasp` is `plasp translate`, which translates PDDL descriptions to ASP facts. -Please get in touch with [Patrick Lühne](https://www.luehne.de) if you have any suggestions. - -## Usage - -### Translating PDDL to ASP Facts +## Translating PDDL to ASP Facts PDDL instances are translated to ASP facts as follows: -```bash -$ plasp domain.pddl problem.pddl +```sh +plasp translate domain.pddl problem.pddl ``` Alternatively, PDDL instances may first be translated to SAS, the output format of [Fast Downward](http://www.fast-downward.org/). -```bash -$ ./fast-downward.py --translate --build=release64 domain.pddl problem.pddl +```sh +./fast-downward.py --translate --build=release64 domain.pddl problem.pddl ``` -This creates a file called `output.sas`, which may now be translated by `plasp`. +This creates a file called `output.sas`, which may now be translated by `plasp` as well. -```bash -$ plasp output.sas +```sh +plasp translate output.sas ``` ### Solving the Translated Instance The translated instance can finally be solved incrementally with `clingo` and a meta encoding, for instance, [`sequential-incremental.lp`](encodings/sequential-incremental.lp): -```bash -$ plasp domain.pddl problem.pddl > instance.lp -$ clingo encodings/sequential-incremental.lp instance.lp +```sh +plasp translate domain.pddl problem.pddl > instance.lp +clingo encodings/sequential-incremental.lp instance.lp ``` -## Command-Line Interface - -```bash -$ plasp [options] file... -``` - -`plasp` automatically detects the language of the input program. - -See [command-line interface](doc/command-line-interface.md) for more details. - -## Output Format - -`plasp` provides a uniform output format for SAS and PDDL input problems. +### Translator Output Format +`plasp translate` provides a uniform output format for SAS and PDDL input problems. See [output format](doc/output-format.md) for more details. -If you want to write your own meta encoding for `plasp`’s output, this [simple example encoding](encodings/sequential-incremental.lp) gets you started. +If you want to write your own meta encoding for `plasp translate`’s output, this [simple example encoding](encodings/sequential-incremental.lp) gets you started. + +## Provided Tools + +```sh +plasp [