Holes URUKH-AI Planning Domain Definition Language
PDDL is a standard encoding language for “classical”
planning tasks. Component of a PDDL planning task are: Objects: things in the world that interest us. Predicates: properties of objects, can be true or false. Initial State: the state of the world at the beginning. Goal: things that we want to be true. Actions: ways of changing the state of the world. Knight Tour with Holes
The environment is represented by a chessboard, but in
our scenario we used a 4x4 matrix, in order to simplify the computation. We want to move the knight in each cell of the matrix according to chess rules. When this goal is reached the knight must return in starting position. Our Encoding
Objects in Knight domain:
Cell Our Encoding
Predicates in Knight domain:
Our Encoding
Initial State in Knight domain:
Our Encoding
Goal in Knight domain:
Our Encoding
Action in Knight domain:
Full-logical approach vs Search approach Planning using Boolean Satisfiability
We can translate a PDDL description into a form that can
be processed by SAT. We can replace each action with a set of ground actions formed by substituting constants for each of the variables. Define the initial state: assert every instance in initial state as true and false otherwise. Planning using Boolean Satisfiability Translating the goal: we need that the clause must be ground. For example, in our scenario this is the translation:
Precondition and the effects: like an implication, if a
precondition is true the effect must be true. Precondition → Effect Planning using a graph We can build a graph that takes as input a planning problem and produces a sequence of operations for reaching a goal state. The graph is composed by: Nodes: are possible states. Edges: indicate reachability through a certain action. The first level represents the initial state, and the last level contains all the facts that appear in the goal state. Lists of incompatible facts that cannot be true at the same time and incompatible actions that cannot be executed together. Full-logic vs Search Full-logic: we describe the solution and the actions throught rules, but we don’t decribe how to reach solution.
Search: we define the algorithm that we use to reach the
Speech by His Excellency The Governor of Vihiga County (Rev) Moses Akaranga During The Closing Ceremony of The Induction Course For The Sub-County and Ward Administrators.