Planning
Definition
Factored represenation of the world - each state in the world represented by a set of variables.
Planning
coming up with sequence of actions that will achieve a goal.
Reasoning about the results of actions
frame problem ... what are things that stay unchanged after action?
would require a lot of axioms to describe.
ramification problem ... what are the implicit effects?
qualification problem ... what are preconditions for actions?
deals with a correct conceptualisation of things (no answer).
Classical Planning Environments
Used in classical planning:
- fully observable
- deterministic, finite
- static (change happens only when the agent acts)
- discrete in time, actions, objects, and effects
STRIPS
Is a representation / planning language.
Describes the 4 things needed to define a search problem:
- Initial state
- Actions available in a state
- Result of applying action
- Goal state
Representations in STRIPS
states
conjunction of positive literals (atoms) that represent a state.
Any unmentioned state is assumed false (= closed world assumption).
literals are atomic fomulas or their negation - can be propositional-logic or first-order-logic.
literals must be ground (= variable free) and function free.
Example
Allowed
No allowed or
goals
Is a state. Cannot contain negative literals
Example
The state satisfies the goal .
actions
action schemas represent all different actions that can occur if we instatiate the variables with constants and consist of:
- action name, parameter list
-
precondition (cannot contain negative literals)
stating what must be true in a state before the action can be executed - then the action is applicable.
Can only contain variables in the parameter list.
-
effect
describing how the state changes when the action is executed.
Can only contain variables in the parameter list
Some planning systems divide the effect into add list for positive literals and delete list for negative literals.
Example
action schema for flying a plane from one location to another:
Setting values for variables:
results
The result of executing an action in state is a state :
- adding all positive literals from the effect of (only added once)
- removing all positive literals where their negation appears in the effect of
Every unmentioned literal remains unchanged (= STRIPS assumption)
Example
With the action
solution
action sequence that when executed in the initial state - results in a state that satisfies the goal.
Every action sequence that maintains the partial order is a solution. (see: partially ordered sets)
Language variants
Action Description Language ADL
Variant of STRIPS.
Allows typing - means .
Allows preconditions such as .
Allows quantors such as .
example
STRIPS vs. ADL
STRIPS
- only positive literals in states
- closed-world-assumption: unmentioned literals are false
- Effect means add and delete
- only ground atoms in goals
- Effects are conjunctions
- No support for equality or types
ADL
- positive and negative literals in states
- open-world-assumption: unmentioned literals are unknown
- Effect means add and delete and
- goals contain quantor
- goals allow conjunction and disjunction
- conditional effects are allowed: means is only an effect if is satisfied
- equality and types built in
Planning Domain Definition Language PDDL
includes sublanguages for STRIPS and ADL
Restrictions of ADL and STRIPS
- cant derive other effects from more complex ones
- classical planning systems do not attempt to address the qualification problem