Download ECE 4524 Artificial Intelligence and Engineering Applications

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

History of artificial intelligence wikipedia , lookup

Existential risk from artificial general intelligence wikipedia , lookup

Logic programming wikipedia , lookup

Embodied cognitive science wikipedia , lookup

Embodied language processing wikipedia , lookup

Transcript
ECE 4524 Artificial Intelligence and Engineering
Applications
Lecture 15: Classical Planning
Reading: AIAMA 10.1.-10.2
Today’s Schedule:
I
Planning using Search-Based Agents
I
STRIPS
I
PDDL
I
Heuristics
Planning using Search-Based Agents
Our search-based agents can be applied directly to planning. For
example the sliding tile puzzle is a form of a plan (no physical
action is taken ahead of time).
The underlying issue of fluents is called the Frame
Problem.
McCarthy, Hayes, 1969, ”Some Philosophical Problems from the
Standpoint of Artificial Intelligence”. How should AI capture the
common-sense notion that aspects of the world, not involved in an
action should not change?
This is a big topic in philosophy, with several proposed solutions
I
fluent occlusion
I
predicate completion
I
successor state axioms
I
fluent calculus
I
event calculus
I
default logic - this is the one we will use
I
answer set programming
STRIPS, Fikes and Nilsson 1971
Basic STRIPS uses set semantics and propositional logic.
I
I
The world state is a set of positive literals (fluents)
Actions are specified by a name (or label, or index) and three
sets
I
I
I
I
Preconditions: the set of fluents that must be in the state for
the action to be applied
Add Set: the set of fluents to add to the state
Delete Set: the set of fluents to delete from the state
The goal state is a set of fluents that specify the desired state
of the world.
Exercise
Consider the following world, described using the STRIPS.
Fluents: A B C D E F G
Actions (op={ {preconditions} {additions} {deletions} } ):
α = { {A} {B D} {} }
β = { {B D} {G} {A D} }
δ = { {G} {A} {} }
Given the following initial state, S1, and the sequence of actions,
α, β, δ, β (in that order), determine the states S2 through S5
after applying each action. If an operation cannot be applied
indicate so and stop the process.
S1: { A }
S2:
S3:
S4:
S5:
The Planning Domain Definition Language (PDDL)
PDDL uses FOL with function-less definite clauses.
I
I
The state of the world is a conjunction of fluents that are
grounded, function-less atomic sentences.
Actions are specified by the schema
I
I
I
Action name and list of (assumed universally quantified)
variables
Preconditions: conjunctions of (possibly ungrounded) positive
or negated atoms
Effects: conjunctions of (possibly ungrounded) positive or
negated atoms
Set Semantics for PDDL
PDDL can use set semantics similar to STRIPS.
I
states, preconditions, and effects are sets of atomic sentences
assumed connected by conjunction.
I
the effects are split into an Add set, all positive atoms in the
effects, and
I
the Del set, all negated atoms in the effects.
The result of an effect is to remove negated atoms from the set,
and add positive atoms to the set.
Result(s, a) = (s − Del(a)) ∪ Add(a)
Exercise
Define the 8-puzzle problem using the PDDL schema.
Another Example: Blocks World
Exercise
Given the actions in the simplified blocks world
Action: Move(b, x, y )
Precondition:
On(b, x), Clear (b), Clear (y ), Block(b), Block(y ), b 6= x, b 6= y , x 6=
y
Effect: On(b, y ), Clear (x), ¬On(b, x), ¬Clear (y )
and
Action: MoveToTable(b, x)
Precondition: On(b, x), Clear (b), Block(b), b 6= x
Effect: On(b, Table), Clear (x), ¬On(b, x)
What plan would stack the blocks A,B,C initially on the table into
a single stack C,A,B with C on the bottom?
Forward and Backward Planning
I
Forward Planning searches from the initial state to the goal.
I
I
I
often explores states unrelated to the goal
branching factor is a problem
Backward Planning searches from the goal to the initial state.
I
I
only states related to the goal state
requires the ability to invert the action schema,
s = (s − Add(a)) ∪ Preconditions(a)
Heuristics are used in both types of planning, but it is harder to
find heuristics for backward planning.
Heuristics for Forward Planning
One approach is to solve an easier, relaxed, problem
I
ignore preconditions
I
ignore the delete list
Another approach is to decompose the goal into sub-goals.
This concludes Part II of the course.
What we have learned in this part
I How to represent state using
I
I
Propositional Logic
First-Order Logic
I
How to reason about state using inference
I
Applications of logic to planning
Now we move on to using uncertainty to deal with hidden and
stochastic environments · · · .
Next Actions
I
Reading on Uncertainty and Probability, AIAMA 13.1-13.4
I
Complete warmup before noon on Thursday 3/19
Reminder: PS 2 is due 3/23.