Both sides previous revision
Previous revision
Next revision
|
Previous revision
Last revision
Both sides next revision
|
en:dydaktyka:planning:pddl2 [2017/04/23 16:09] msl [4 First Puzzle: Bruce Willis Has a Problem] |
en:dydaktyka:planning:pddl2 [2019/06/27 15:49] 127.0.0.1 external edit |
====== - Extending Planning Domains with Fluents ====== | ====== - Extending Planning Domains with Fluents ====== |
| |
This class covers usage of the PDDL 2.1 main feature --- so called ''fluents''. Student is expected to understand it's notion and use it to solve some popular logical puzzles. | This class covers usage of the PDDL 2.1 main feature --- so called ''fluents''. Student is expected to understand the new construct and use it to solve some popular logical puzzles. |
| |
===== - Preliminaries ===== | ===== - Preliminaries ===== |
| |
===== - Tools ===== | ===== - Tools ===== |
Please download {{ :en:dydaktyka:planning:metric-ff-lab.zip |source code of PDDL 2.1 solver}}. The package includes also some examples we will refer to during the class. Please run to terminal and switch to the root folder of the package and then try: | Please clone [[https://gitlab.com/agh-krr/pddl |repository with the PDDL 2.1 solver]]. The package includes also ''pddl'' files in the ''lab2'' directory, related to this class. Please run to terminal and switch to the root folder of the package and then try: |
| |
<code bash> | <code bash> |
./ff -o ./examples/hanoi/problem.pddl -f ./examples/hanoi/instance.pddl | ./ff -o ./lab2/hanoi/domain.pddl -f ./lab2/hanoi/problem.pddl |
</code> | </code> |
If command fails, try to recompile the solver (you can refer to [[pddl#automated_solving_of_problems_written_in_pddl|the analogical section of the previous class]]). | |
| Replace ''ff'' with appropriate one, e.g. ''ff-macos'' on macOS. In case, none of the binaries works for you, you can build the planner according to the instruction in the repo's ''README.md''. |
| |
===== - Example: Hanoi ===== | ===== - Example: Hanoi ===== |
| |
The new solver supports some new statements. Please check the files: ''./examples/hanoi/problem.pddl'' i ''./examples/hanoi/instance.pddl''. The new things include: | The new solver supports some new statements. Please check the files: ''./lab2/hanoi/domain.pddl'' i ''./lab2/hanoi/problem.pddl''. The new things include: |
| |
* ''(:requirements :fluents)'' --- informs solver that we want to use fluents | * ''(:requirements :fluents)'' --- informs solver that we want to use fluents |
| |
<code bash> | <code bash> |
./ff -o ./examples/hanoi/problem.pddl -f ./examples/hanoi/instance.pddl -s 0 | ./ff -o ./examples/hanoi/domain.pddl -f ./examples/hanoi/problem.pddl -s 0 |
</code> | </code> |
| |
| |
{{ youtube>BVtQNK_ZUJg }} | {{ youtube>BVtQNK_ZUJg }} |
Please watch fragment of the Die Hard 3 movie above. The puzzle depicted there belongs to a quite popular family of "water pouring'" puzzles. The ''./examples/jugs'' folder contains a model of a [[http://www.riddleministry.com/riddles/water-puzzle-19-13-7/1246/|very similar problem]]. | |
| \\ |
| Please watch fragment of the Die Hard 3 movie above. The puzzle depicted there belongs to a quite popular family of "water pouring'" puzzles. The ''./lab2/jugs'' folder contains a model of a [[http://www.riddleministry.com/riddles/water-puzzle-19-13-7/1246/|very similar problem]]. |
| |
==== Assignments ==== | ==== Assignments ==== |
| |
- Fill missing lines of the ''problem.pddl'', so you can solve ''instance.pddl'' in 16 steps. | - Fill missing lines of the ''domain.pddl'', so you can solve ''problem.pddl'' in 16 steps. |
- Remodel the problem so it would us only one action | - Remodel the problem so it would use only one action |
- Modify the problem to include the fountain and help Bruce Willis! | - Modify the problem to include the fountain and help Bruce Willis! |
| |
{{ youtube>7yDmGnA8Hw0 }} | {{ youtube>7yDmGnA8Hw0 }} |
| |
Watch two first minutes of the movie above. ''./examples/zombie-escape'' folder contains file related to this puzzle. Then check the assignments and save yourself! | \\ |
| Watch two first minutes of the movie above. ''./lab2/zombie-escape'' folder contains file related to this puzzle. Then check the assignments and save yourself! |
| |
| |
| |
- Fill missing lines of the ''problem.pddl'', so you can solve ''instance.pddl'' | - Fill missing lines of the ''problem.pddl'', so you can solve ''instance.pddl'' |
- Remodel the problem so it would us only one action | - Remodel the problem so it would use only one action |
- Solve the similar [[http://www.learn4good.com/games/puzzle/boat.htm|problem of missionaries and cannibals]] | - Solve the similar [[http://www.learn4good.com/games/puzzle/boat.htm|problem of missionaries and cannibals]] |