Planning Flashcards
What is planning in the context of AI?
The task of coming up with a sequence of actions that will achieve a goal starting from an initial state.
What are the key components involved in a planning problem?
- initial state
- set of actions
- goal state (predicate)
What does a plan consist of?
A sequence of actions that change the initial state to satisfy the goal-state description.
How are goals typically specified in planning?
As a conjunction of subgoals.
In problem solving, how are actions, states, and goals typically represented?
As black boxes, with each problem having its own representation.
How does Planning work in terms of representation?
- Explicit representations of states, actions and goals
- typically in some form of logical calculus
Problem solving + Logic representation = Planning
What is the principal idea behind planning in First-Order Logic (FOL)?
Planning problems are formulated in FOL, where
* states and goals are conjunctions of literals
* and actions are logical rules.
What are key problems in Planning?
- Find relevant actions
- Pick good heuristic
- Decompose the problem
What is the principal idea behind planning in First-Order Logic?
- Formulate planning problem in First-Order Logic (FOL)
- Use theorem prover to find a proof for the goal (e.g. PROLOG)
What is the key problem with planning in FOL?
The representation of change
- add & delete sentences from the Knowledge Base (KB) to reflect changes
- all facts are indexed by a situation variable → situation calculus
What is the Situation Calculus and how does it represent states and actions in planning?
A logical framework for representing states and changes caused by actions in AI planning.
It allows for Logical reasoning by providing
- State representation (additional arguments for literals, to specify the state where they are true)
- Action rules (define how aspects of the world change with an action)
For example, “at(grocery, s1)” means “In state s1, we are at the grocery store.”
For example, “have(milk, result(buy(milk),S)) :- at(grocery,S)” means “The result of buying milk in a state S, in which we are in a grocery store, is that we then have milk.”
What is the Frame Problem in planning?
The need for rules that describe what doesn’t change when an action is performed
Related to the Frame Problem, what is the issue with frame axioms?
Frame axioms track how all states s need to be updated after an action a.
They are necessary for all possible combinations of s and a, but…
- we don’t want to represent each such possible combination (representational frame problem)
- we don’t want to re-evaluate every proposition in the KB after each action (inferential frame problem)
- most of the work will be spent in deriving that nothing changes
What are criteria for a good Representation Language?
- Expressive enough to describe a wide variety of problems
- Restrictive enough to allow efficient algorithms
A Planning algorithm should be able to take advantage of the logical structure of the problem
What is STRIPS in the context of planning?
STanford Research Institute Problem Solver, a classical planning system.
What is the closed world assumption in STRIPS?
What is not known to be true is assumed to be false.
How does State Representation work in STRIPS?
The world is decomposed into logical conditions and State is represented as conjunction of positive literals:
- Propositional literals e.g., rich ∧ famous
- First-Order literals e.g. at(plane1, melbourne) ∧ at(plane2, sydney)
fol: e.g., grounded i.e, no variables and function-free, no function symbols)
How does Action Representation work in STRIPS?
An action is applicable if the preconditions match the current state. The resulting state changes *) are described by the effects, divided into ADD- and DELETE-list
*) Facts that become true/false
How does Goal Representation work in STRIPS?
Like any other state, a goal is a conjunction of positive ground literals. It is satisfied if the goal state contains all literals.
What are partially instantiated first-order predicates and how do they help with goal achievement?
Logical statements with variables which allow flexible goal-setting and matching without specifying all details up front.
- at(P,paris) ∧ plane(P)
- at(spirit_of_st_louis,paris) ∧
plane(spirit_of_st_louis) - satisfies the goal with the substitution θ = {P/spiritofstlouis}
Explain the semantics of the STRIPS language
- States are represented as conjunctions of positive literals, with closed-world assumption
- Actions are defined by preconditions, add lists, and delete lists
- Effects of actions modify the state by adding and removing literals
What are the ADD-list and DELETE-list in STRIPS?
They describe the state change (= effects) after executing an action:
- ADD-list: facts that become True
- DELETE-list: facts that become False
How does the STRIPS language avoid the representational frame problem?
By assuming that every literal not in the effect (ADD, DEL) remains unchanged.
How? The result of executing action a in state s is the state t.
C.p. t is same as s except:
* any literal P in the ADD-list is added
* any literal P in the DELETE-list is removed
What is the Blocks World in AI planning?
A famous AI toy domain consisting of a table, a set of blocks, and a robot hand.
What can the robot hand do in the Blocks World?
- Grasp a single block
- Move over the table
- Release a block it is holding
- Stack blocks if the top is clear
What is the initial state of the Blocks World?
Conditions describing which blocks are on the table and their clear status.
What is the goal representation in the Blocks World?
A conjunction of literals that describes the desired arrangement of blocks.