Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
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.