CSE 592 INTERNET CENSORSHIP (FALL 2015) LECTURE 20 PHILLIPA GILL - STONY BROOK U.
Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence...
-
Upload
emerald-garrison -
Category
Documents
-
view
215 -
download
2
Transcript of Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence...
![Page 1: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/1.jpg)
Sessions 1 & 2Introduction to AI;Planning & Search
Sessions 1 & 2Introduction to AI;Planning & Search
CSE 592
Applications of Artificial Intelligence
Henry Kautz
Winter 2003
![Page 2: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/2.jpg)
What is Intelligence?What is Artificial Intelligence?
What is Intelligence?What is Artificial Intelligence?
![Page 3: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/3.jpg)
What is Artificial Intelligence?
• The study of the principles by which natural or artificial machines manipulate knowledge:– how knowledge is acquired– how goals are generated and
achieved– how concepts are formed– how collaboration is achieved
![Page 4: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/4.jpg)
. . . Exactly what the computer provides is the ability not to be rigid and unthinking but, rather, to behave conditionally. That is
what it means to apply knowledge to action: It means to let the
action taken reflect knowledge of the situation, to be sometimes this way, sometimes that, as
appropriate. . . .
-Allen Newell
![Page 5: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/5.jpg)
• Classical AIDisembodied Intelligence
• Autonomous SystemsEmbodied Intelligence
![Page 6: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/6.jpg)
Classical AI
• The principles of intelligence are separate from any hardware / software / wetware implementation– logical reasoning– probabilistic reasoning– strategic reasoning– diagnostic reasoning
• Look for these principles by studying how to perform tasks that require intelligence
![Page 7: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/7.jpg)
Success Story: Medical Expert Systems
• Mycin (1980) – Expert level performance in diagnosis of
blood infections• Today: 1,000’s of systems
– Everything from diagnosing cancer to designing dentures
– Often outperform doctors in clinical trials– Major hurdle today – non-expert part –
doctor/machine interaction
![Page 8: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/8.jpg)
Success Story:Chess
I could feel – I could smell – a
new kind of intelligence across
the table- Kasparov
•Examines 5 billion positions / second
•Intelligent behavior emerges from brute-force search
![Page 9: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/9.jpg)
Autonomous Systems
• In the 1990’s there was a growing concern that work in classical AI ignored crucial scientific questions:– How do we integrate the components of
intelligence (e.g. learning & planning)?– How does perception interact with reasoning?– How does the demand for real-time
performance in a complex, changing environment affect the architecture of intelligence?
![Page 10: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/10.jpg)
• Provide a standard problem where a wide range of technologies can be integrated and examined
• By 2050, develop a team of fully autonomous humanoid robots that can win against the human world champion team in soccer.
![Page 11: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/11.jpg)
courtesy JPL
Started: January 1996Launch: October 15th, 1998Experiment: May 17-21
![Page 12: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/12.jpg)
Speed & CapacitySpeed & Capacity
![Page 13: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/13.jpg)
Not Speed Alone…Not Speed Alone…
• Speech Recognition
• “Word spotting” feasible today
• Continuous speech – rapid progress
• Turns out that “low level” signal not as ambiguous as we once thought
• Translation / Interpretation / Question-answering
• Very limited progress
The spirit is willing but the flesh is weak. (English)
The vodka is good but the meat is rotten. (Russian)
![Page 14: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/14.jpg)
Varieties of KnowledgeVarieties of Knowledge
What kinds of knowledge required to understand –
• Time flies like an arrow.
• Fruit flies like a banana.
• Fruit flies like a rock.
![Page 15: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/15.jpg)
1940's - 1960's: Artificial neural networks • McCulloch & Pitts 1943
1950's - 1960's: Symbolic information processing• General Problem Solver – Simon & Newell• "Weak methods“ for search and learning• 1969 - Minsky's Perceptrons
1940’s – 1970’s: Control theory for adaptive (learning) systems• USSR – Cybernetics – Norbert Weiner• Japan – Fuzzy logic
1970's – 1980’s: Expert systems • “Knowledge is power" – Ed Feigenbaum• Logical knowledge representation• AI Boom
1985 – 2000: A million flowers bloom• Resurgence of neural nets – backpropagation• Control theory + OR + Pavlovian conditioning = reinforcement learning• Probabilistic knowledge representation – Bayesian Nets – Judea Pearl• Statistical machine learning
2000’s: Towards a grand unification• Unification of neural, statistical, and symbolic machine learning• Unification of logic and probabilistic KR• Autonomous systems
Historic Perspective
Historic Perspective
![Page 16: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/16.jpg)
… In sum, technology can be controlled especially if it is
saturated with intelligence to watch over how it goes, to keep accounts, to prevent errors, and
to provide wisdom to each decision.
-Allen Newell
![Page 17: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/17.jpg)
Course MechanicsCourse Mechanics
Topics• What is AI?• Search, Planning, and Satisfiability• Bayesian Networks• Statistical Natural Language Processing• Decision Trees and Neural Networks• Data Mining: Pattern Discovery in Databases• Planning under Uncertainty and Reinforcement Learning• Autonomous Systems Case Studies• Project Presentations
Assignments• 4 homeworks• Significant project & presentation
Information• http://www.cs.washington.edu/education/courses/592/03wi/
![Page 18: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/18.jpg)
Planning & SearchPlanning & Search
Search – the foundation for all work in AI
• Deduction
• Probabilistic reasoning
• Perception
• Learning
• Game playing
• Expert systems
• Planning
R&N Ch 3, 4, 5, 11
![Page 19: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/19.jpg)
19
Planning• Input
– Description of set of all possible states of the world (in some knowledge representation language)
– Description of initial state of world– Description of goal– Description of available actions
• May include costs for performing actions
• Output– Sequence of actions that convert the initial state into
one that satisfies the goal– May wish to minimize length or cost of plan
![Page 20: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/20.jpg)
Classical Planning
• Simplifying assumptions– Atomic time– Actions have deterministic effects – Agent knows complete initial state of the world– Agent knows the effects of all actions– States are either goal or non-goal states, rather
than numeric utilities or rewards– Agent is sole cause of change
• All these assumptions can be relaxed, as we will see by the end of the course…
![Page 21: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/21.jpg)
Example: Route
Planning
Example: Route
Planning
Input:
• State set
• Start state
• Goal state test
• Operators
Output:
![Page 22: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/22.jpg)
Example: Robot Control (Blocks World)
Example: Robot Control (Blocks World)
Input:
• State set
• Start state
• Goal state test
• Operators (and costs)
Output:
![Page 23: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/23.jpg)
Implicitly Generated Graphs• Planning can be viewed as finding paths in a graph, where the graph is
implicitly specified by the set of actions
• Blocks world:
– vertex = relative positions of all blocks
– edge = robot arm stacks one block
stack(blue,red)
stack(green,red)
stack(green,blue)
stack(blue,table)
stack(green,blue)
How many states for K
blocks?
![Page 24: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/24.jpg)
24
Missionaries and Cannibals
• 3 missionaries M1, M2, M3• 3 cannibals C1, C2, C3• Cross in a two person boat, so that
missionaries never outnumber cannibals on either shore
• What is a state? How many states? M1 M2 M3
C1 C2 C3
![Page 25: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/25.jpg)
STRIPS Representation
• Description of initial state of worldSet of propositions that completely describes a world
{ (block a) (block b) (block c) (on-table a) (on-table b) (clear a) (clear b) (clear c) (arm-empty) }
• Description of goal (i.e. set of desired worlds)Set of propositions that partially describes a world
{ (on a b) (on b c) }
• Description of available actions
![Page 26: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/26.jpg)
How Represent Actions?
• World = set of propositions true in that world• Actions:
– Precondition: conjunction of propositions– Effects: propositions made true & propositions made
false (deleted from the state description)
operator: stack_B_on_R
precondition: (on B Table) (clear R)
effect: (on B R) (:not (clear R))
![Page 27: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/27.jpg)
Action Schemata
(:operator pickup :parameters ((block ?ob1)) :precondition (:and (clear ?ob1) (on-table ?ob1)
(arm-empty)) :effect (:and (:not (on-table ?ob1))
(:not (clear ?ob1)) (:not (arm-empty))
(holding ?ob1)))
• Compact representation of a large set of actions
![Page 28: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/28.jpg)
Search AlgorithmsSearch Algorithms
Backtrack Search1. DFS 2. BFS / Dijkstra’s Algorithm3. Iterative Deepening4. Best-first search5. A*
Constraint Propagation1. Forward Checking2. k-Consistency3. DPLL & Resolution
Local Search1. Hillclimbing2. Simulated annealing3. Walksat
![Page 29: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/29.jpg)
Depth First Search
a
b
d e
c
f g h
• Maintain stack of nodes to visit• Evaluation
– Complete?
– Time Complexity?
– Space Complexity?Not for infinite spaces
O(b^d)
O(d)
![Page 30: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/30.jpg)
Breadth First Search
a
b c
d e f g h
• Maintain queue of nodes to visit• Evaluation
– Complete?
– Time Complexity?
– Space Complexity?Yes
O(b^d)
O(b^d)
![Page 31: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/31.jpg)
Iterative Deepening Search
• DFS with limit; incrementally grow limit• Evaluation
– Complete?
– Time Complexity?
– Space Complexity?Yes
O(b^d)
O(d)b
d e
c
f g h
a
b c
a
![Page 32: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/32.jpg)
Dijkstra’s Shortest Path Algorithm
• Like breadth-first search, but uses a priority queue instead of a FIFO queue:– Always select (expand) the vertex that has a lowest-
cost path from the initial state
• Correctly handles the case where the lowest-cost path to a vertex is not the one with fewest edges– Handles actions planning with costs, with same
advantages / disadvantages of BFS
![Page 33: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/33.jpg)
Pseudocode for Dijkstra
• Initialize the cost of each vertex to • cost[s] = 0;• heap.insert(s);• While (! heap.empty())
n = heap.deleteMin()
For (each vertex a which is adjacent to n along edge e)
if (cost[n] + edge_cost[e] < cost[a]) then
cost [a] = cost[n] + edge_cost[e]
previous_on_path_to[a] = n;
if (a is in the heap) then heap.decreaseKey(a)
else heap.insert(a)
![Page 34: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/34.jpg)
Important Features
• Once a vertex is removed from the head, the cost of the shortest path to that node is known
• While a vertex is still in the heap, another shorter path to it might still be found
• The shortest path itself from s to any node a can be found by following the pointers stored in previous_on_path_to[a]
![Page 35: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/35.jpg)
Edsger Wybe Dijkstra (1930-2002)Edsger Wybe Dijkstra (1930-2002)
• Invented concepts of structured programming, synchronization, weakest precondition, and semaphores
• 1972 Turing Award
• “In their capacity as a tool, computers will be but a ripple on the surface of our culture. In their capacity as intellectual challenge, they are without precedent in the cultural history of mankind.”
![Page 36: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/36.jpg)
Heuristic Search
• A heuristic is:– Function from a state to a real number
• Low number means state is close to goal• High number means state is far from the goal
Designing a good heuristic is very important!
(And often hard! Later we will see how
some heuristics can be created automatically)
![Page 37: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/37.jpg)
An Easier Case
• Suppose you live in Manhattan; what do you do?
52nd St
51st St
50th St
10th A
ve
9th A
ve
8th A
ve
7th A
ve
6th A
ve
5th A
ve
4th A
ve
3rd A
ve
2nd A
ve
S
G
![Page 38: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/38.jpg)
Best-First Search
• The Manhattan distance ( x+ y) is an estimate of the distance to the goal– a heuristic value
• Best-First Search– Order nodes in priority to minimize estimated distance
to the goal h(n)
• Compare: BFS / Dijkstra– Order nodes in priority to minimize distance from the
start
![Page 39: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/39.jpg)
Best First in Action
• Suppose you live in Manhattan; what do you do?
52nd St
51st St
50th St
10th A
ve
9th A
ve
8th A
ve
7th A
ve
6th A
ve
5th A
ve
4th A
ve
3rd A
ve
2nd A
ve
S
G
![Page 40: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/40.jpg)
Problem 1: Led Astray
• Eventually will expand vertex to get back on the right track
52nd St
51st St
50th St
10th A
ve
9th A
ve
8th A
ve
7th A
ve
6th A
ve
5th A
ve
4th A
ve
3rd A
ve
2nd A
ve
S G
![Page 41: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/41.jpg)
Problem 2: Optimality
• With Best-First Search, are you guaranteed a shortest path is found when– goal is first seen?
– when goal is removed from priority queue (as with Dijkstra?)
![Page 42: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/42.jpg)
Sub-Optimal Solution• No! Goal is by definition at distance 0: will be
removed from priority queue immediately, even if a shorter path exists!
52nd St
51st St
9th A
ve
8th A
ve
7th A
ve
6th A
ve
5th A
ve
4th A
veS
G
(5 blocks)
h=2
h=1h=4
h=5
![Page 43: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/43.jpg)
Synergy?
• Dijkstra / Breadth First guaranteed to find optimal solution
• Best First often visits far fewer vertices, but may not provide optimal solution
– Can we get the best of both?
![Page 44: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/44.jpg)
A* (“A star”)
• Order vertices in priority queue to minimize• (distance from start) + (estimated distance to goal)
• f(n) = g(n) + h(n)
• f(n) = priority of a node• g(n) = true distance from start• h(n) = heuristic distance to goal
![Page 45: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/45.jpg)
Optimality• Suppose the estimated distance (h) is
always less than or equal to the true distance to the goal– heuristic is a lower bound on true distance– heuristic is admissible
• Then: when the goal is removed from the priority queue, we are guaranteed to have found a shortest path!
![Page 46: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/46.jpg)
Problem 2 Revisited
52nd St
51st St
9th A
ve
8th A
ve
7th A
ve
6th A
ve
5th A
ve
4th A
ve
S
G
(5 blocks)
50th St
vertex g(n) h(n) f(n)
52nd & 9th 0 5 5
![Page 47: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/47.jpg)
Problem 2 Revisited
52nd St
51st St
9th A
ve
8th A
ve
7th A
ve
6th A
ve
5th A
ve
4th A
ve
S
G
(5 blocks)
50th St
vertex g(n) h(n) f(n)
52nd & 4th 5 2 7
51st & 9th 1 4 5
![Page 48: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/48.jpg)
Problem 2 Revisited
52nd St
51st St
9th A
ve
8th A
ve
7th A
ve
6th A
ve
5th A
ve
4th A
ve
S
G
(5 blocks)
50th St
vertex g(n) h(n) f(n)
52nd & 4th 5 2 7
51st & 8th 2 3 5
50th & 9th 2 5 7
![Page 49: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/49.jpg)
Problem 2 Revisited
52nd St
51st St
9th A
ve
8th A
ve
7th A
ve
6th A
ve
5th A
ve
4th A
ve
S
G
(5 blocks)
50th St
vertex g(n) h(n) f(n)
52nd & 4th 5 2 7
51st & 7th 3 2 5
50th & 9th 2 5 7
50th & 8th 3 4 7
![Page 50: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/50.jpg)
Problem 2 Revisited
52nd St
51st St
9th A
ve
8th A
ve
7th A
ve
6th A
ve
5th A
ve
4th A
ve
S
G
(5 blocks)
50th St
vertex g(n) h(n) f(n)
52nd & 4th 5 2 7
51st & 6th 4 1 5
50th & 9th 2 5 7
50th & 8th 3 4 7
50th & 7th 4 3 7
![Page 51: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/51.jpg)
Problem 2 Revisited
52nd St
51st St
9th A
ve
8th A
ve
7th A
ve
6th A
ve
5th A
ve
4th A
ve
S
G
(5 blocks)
50th St
vertex g(n) h(n) f(n)
52nd & 4th 5 2 7
51st & 5th 5 0 5
50th & 9th 2 5 7
50th & 8th 3 4 7
50th & 7th 4 3 7
![Page 52: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/52.jpg)
Problem 2 Revisited
52nd St
51st St
9th A
ve
8th A
ve
7th A
ve
6th A
ve
5th A
ve
4th A
ve
S
G
(5 blocks)
50th St
vertex g(n) h(n) f(n)
52nd & 4th 5 2 7
50th & 9th 2 5 7
50th & 8th 3 4 7
50th & 7th 4 3 7
DONE!
![Page 53: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/53.jpg)
What Would Dijkstra Have Done?
52nd St
51st St
9th A
ve
8th A
ve
7th A
ve
6th A
ve
5th A
ve
4th A
ve
S
G
(5 blocks)
50th St
49th St
48th St
47th St
![Page 54: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/54.jpg)
Proof of A* Optimality
• A* terminates when G is popped from the heap.
• Suppose G is popped but the path found isn’t optimal:
priority(G) > optimal path length c
• Let P be an optimal path from S to G, and let N be the last vertex on that path that has been visited but not yet popped.
There must be such an N, otherwise the optimal path would have been found.
priority(N) = g(N) + h(N) c
• So N should have popped before G can pop. Contradiction.
S
N
Gnon-optimal path to G
portion of optimal path found so far
undiscovered portion of shortest path
![Page 55: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/55.jpg)
What About Those Blocks?
• “Distance to goal” is not always physical distance• Blocks world:
– distance = number of stacks to perform
– heuristic lower bound = number of blocks out of place
# out of place = 1, true distance to goal = 3
![Page 56: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/56.jpg)
3-Blocks State Space Graph
ABCh=2
CABh=3
BACh=2
ABCh=1
CBAh=3
ACBh=2
BCAh=1
BCAh=3
CBAh=3
CABh=3
ACBh=3
BACh=2
ABCh=0
start goal
![Page 57: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/57.jpg)
3-Blocks Best First Solution ABC
h=2
CABh=3
BACh=2
ABCh=1
CBAh=3
ACBh=2
BCAh=1
BCAh=3
CBAh=3
CABh=3
ACBh=3
BACh=2
ABCh=0
start goal
![Page 58: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/58.jpg)
3-Blocks BFS Solution
ABCh=2
CABh=3
BACh=2
ABCh=1
CBAh=3
ACBh=2
BCAh=1
BCAh=3
CBAh=3
CABh=3
ACBh=3
BACh=2
ABCh=0
expanded, but not in solution
start goal
![Page 59: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/59.jpg)
3-Blocks A* Solution
ABCh=2
CABh=3
BACh=2
ABCh=1
CBAh=3
ACBh=2
BCAh=1
BCAh=3
CBAh=3
CABh=3
ACBh=3
BACh=2
ABCh=0
expanded, but not in solution
start goal
![Page 60: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/60.jpg)
Maze Runner Demo
![Page 61: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/61.jpg)
Other Real-World Applications
• Routing finding – computer networks, airline route planning
• VLSI layout – cell layout and channel routing• Production planning – “just in time” optimization• Protein sequence alignment• Many other “NP-Hard” problems
– A class of problems for which no exact polynomial time algorithms exist – so heuristic search is the best we can hope for
![Page 62: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/62.jpg)
Importance of Heuristics
D IDS A*(h1) A*(h2) 2 10 6 6 4 112 13 12 6 680 20 18 8 6384 39 2510 47127 93 3912 364404 227 7314 3473941 539 11318 3056 36324 39135 1641
• h1 = number of tiles in the wrong place
• h2 = sum of distances of tiles from correct location
7 2 3
8 5
4 1 6
![Page 63: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/63.jpg)
A* STRIPS Planning
• Is there some general way to automatically create a heuristic for a given set of STRIPS operators?
1. Count number of false goal propositions in current stateAdmissible?
2. Delete all preconditions from actions, solve easier relaxed problem (why easier?), use lengthAdmissible?
3. Delete negative effects from actions, solve easier relaxed problem, use lengthAdmissible?
![Page 64: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/64.jpg)
Planning as A* Search
• HSP (Geffner & Bonet 1999), introduced admissible “ignore negative effects” heuristic
• FF (Hoffman & Nebel 2000), used a modified non-admissible heuristic– Often dramatically faster, but usually non-optimal
solutions found
– Best overall performance AIPS 2000 planning competition
![Page 65: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/65.jpg)
Search AlgorithmsSearch Algorithms
Backtrack Search1. DFS 2. BFS / Dijkstra’s Algorithm3. Iterative Deepening4. Best-first search5. A*
Constraint Propagation1. Forward Checking2. k-Consistency3. DPLL & Resolution
Local Search1. Hillclimbing2. Simulated annealing3. Walksat
![Page 66: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/66.jpg)
Guessing versus InferenceGuessing versus Inference
All the search algorithms we’ve seen so far are variations of guessing and backtracking
But we can reduce the amount of guesswork by doing more reasoning about the consequences of past choices
• Example: planning a trip
Idea:• Problem solving as constraint
satisfaction• As choices (guesses) are made,
propagate constraints
![Page 67: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/67.jpg)
Map ColoringMap Coloring
![Page 68: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/68.jpg)
CSPCSP
• V is a set of variables v1, v2, …, vn
• D is a set of finite domains D1, D2, …, Dn
• C is a set of constraints C1, C2, …, Cm
Each constraint specifies a restriction over joint values of a subset of the variables
E.g.:
v1 is Spain, v2 is France, v3 is Germany, …
Di = { Red, Blue, Green} for all i
For each adjacent vi, vj there is a constraint Ck
(vi,vj) { (R,G), (R,B), (G,R), (G,B), (B,R), (B,G) }
![Page 69: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/69.jpg)
VariationsVariations
• Find a solution that satisfies all constraints
• Find all solutions
• Find a “tightest form” for each constraint(v1,v2) { (R,G), (R,B), (G,R), (G,B), (B,R), (B,G) }
(v1,v2) { (R,G), (R,B), (B,G) }
• Find a solution that minimizes some additional objective function
![Page 70: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/70.jpg)
Chinese Dinner Constraint Network
Soup
Total Cost< $30
ChickenDish
Vegetable
RiceSeafood
Pork Dish
Appetizer
Must beHot&Sour
No Peanuts
No Peanuts
NotChow Mein
Not BothSpicy
![Page 71: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/71.jpg)
Exploiting CSP StructureExploiting CSP Structure
Interleave inference and guessing
• At each internal node:
• Select unassigned variable
• Select a value in domain
• Backtracking: try another value– Branching factor?
• At each node:
• Propagate Constraints
![Page 72: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/72.jpg)
Running Example: 4 QueensRunning Example: 4 Queens
Variables:
Q1 {1,2,3,4}
Q2 {1,2,3,4}
Q3 {1,2,3,4}
Q3 {1,2,3,4}
Q
Q
Q
Q
Q1 Q2
1 3
1 4
2 4
3 1
4 1
4 2
Constraints:
![Page 73: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/73.jpg)
Constraint CheckingConstraint Checking
Q
Q
x
Q x
x
Q x
x x
Q x x
Q
x
x
Q x
Q
x
x Q
Q x x
Q x
x x
x Q x
Q x x x
Takes 5 guesses to determine first guess was wrong
![Page 74: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/74.jpg)
Forward CheckingForward Checking
x
x
x
Q x x x
x x
Q x x
x x x
Q x x x
Q x x
x x
x x
Q x x x
Q x x
x x x
x Q x
Q x x x
Takes 3 guesses to determine first guess was wrong
When variable is set, immediately remove inconsistent values from domains of other variables
![Page 75: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/75.jpg)
Arc ConsistencyArc Consistency
x
x
x
Q x x x
x
x
x
Q x x x
x
x
x x
Q x x
x x
x x
x x
Q x x
Iterate forward checking
Propagations:
1. Q3=3 inconsistent with Q4 {2,3,4}
2. Q2=1 and Q2=2 inconsistent with Q3 {1}
Inference alone determines first guess was wrong!
![Page 76: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/76.jpg)
Huffman-ClowesLabelingHuffman-ClowesLabeling
++++
++-
![Page 77: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/77.jpg)
Waltz’s Filtering: Arc-Consistency
Waltz’s Filtering: Arc-Consistency
•Lines: variables
•Conjunctions: constraints
•Initially Di = {+,-, , )
•Repeat until no changes:
Choose edge (variable)
Delete labels on edge not consistent with both endpoints
![Page 78: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/78.jpg)
No labeling!No labeling!
![Page 79: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/79.jpg)
Path ConsistencyPath Consistency
Path consistency (3-consistency):• Check every triple of variables• More expensive!• k-consistency:
• n-consistency: backtrack-free search
1
| | k-tuples to check
Worst case: each iteration eliminates 1 choice
| || | iterations
| || | steps! (But usually not this bad)
k
k
V
D V
D V
![Page 80: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/80.jpg)
Variable and Value SelectionVariable and Value Selection
• Select variable with smallest domain– Minimize branching factor
– Most likely to propagate: most constrained variable heuristic
• Which values to try first?– Most likely value for solution
– Least propagation! Least constrained value
• Why different?– Every constraint must be eventually satisfied
– Not every value must be assigned to a variable!
• Tie breaking?– In general randomized tie breaking best – less likely
to get stuck on same bad pattern of choices
![Page 81: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/81.jpg)
CSPs in the real world
• Scheduling Space Shuttle Repair
• Transportation Planning
• Computer Configuration– AT&T CLASSIC Configurator
• #5ESS Switching System
• Configuring new orders: 2 months 2 hours
![Page 82: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/82.jpg)
CPGomes - AAAI00
Quasigroup Completion Problem (QCP)
Quasigroup Completion Problem (QCP)
Given a partial assignment of colors (10 colors in this case), can the partial quasigroup (latin square) be completed so we obtain a full quasigroup?
Example:
32% preassignment
(Gomes & Selman 97)
![Page 83: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/83.jpg)
CPGomes - AAAI00
QCP Example Use: Routers in Fiber Optic Networks
QCP Example Use: Routers in Fiber Optic Networks
Dynamic wavelength routing in Fiber Optic Networks can be directly mapped into the Quasigroup Completion Problem.
(Barry and Humblet 93, Cheung et al. 90, Green 92, Kumar et al. 99)
•each channel cannot be repeated in the same input port (row constraints);• each channel cannot be repeated in the same output port (column constraints);
CONFLICT FREELATIN ROUTER
Inp
ut
po
rts
Output ports
3
1
2
4
Input Port Output Port
1
2
43
![Page 84: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/84.jpg)
CPGomes - AAAI00
QCP as a CSPQCP as a CSP
• Variables -
• Constraints -
}...,,2,1{, njix
....,,2,1,;,, njijicellofcolorjix
....,,2,1);,,...,2,
,1,
( ninixix
ixalldiff
....,,2,1);,,...,,2
,,1
( njjnxj
xj
xalldiff
)2(nO
)(nO
row
column
![Page 85: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/85.jpg)
Hill Climbing
• Idea– Always choose best child,
no backtracking
• Evaluation– Complete?
– Space Complexity?
– Complexity of random restart hillclimbing, with success probability P
![Page 86: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/86.jpg)
Simulated Annealing / Random Walk• Objective: avoid local minima• Technique:
– For the most part use hill climbing– Occasionally take non-optimal step– Annealing: Reduce probability (non-optimal) over time
• Comparison to Hill Climbing– Completeness?– Speed?– Space Complexity?
Time
Temperature
Objective
![Page 87: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/87.jpg)
Backtracking with Randomized Restarts
• Idea:– If backtracking algorithm does not find solution quickly, it
is like to be stuck in the wrong part of the search space• Early decisions were bad!
– So kill the run after T seconds, and restart• Requires randomized heuristic, so choices not always the same
– Why does it often work?• Many problems have a small set of “backdoor” variables – guess them on a
restart, and your are done! (Andrew, Selman, Gomes 2003)
– Completeness?
![Page 88: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/88.jpg)
Demos!
• N-QueensBacktracking vs. Local Search
• Quasigroup CompletionRandomized Restarts
• Travelling SalesmanSimulated Annealing
![Page 89: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/89.jpg)
ExerciseExercise
Peer interviews: Real-world constraint satisfaction problems
1. Break into pairs2. 7 minute interview – example of needing to
solve a CSP type problem (work or life). Interviewer takes notes:
• Describe problem• What techniques actually used• Any techniques from class that could have been used?
3. Switch roles4. A few teams present now5. Hand in notes (MSR – have someone collect
and mail to me at dept)
![Page 90: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/90.jpg)
Planning as CSP• Phase 1 - Convert planning problem in a CSP
• Choose a fixed plan length• Boolean variables
– Action executed at a specific time point
– Proposition holds at a specific time point
• Constraints – Initial conditions true in first state, goals true in final state
– Actions do not interfere
– Relation between action, preconditions, effects
• Phase 2 - Solution Extraction• Solve the CSP
![Page 91: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/91.jpg)
91
Planning Graph Representation of CSP
PropositionInit State
ActionTime 1
PropositionTime 1
ActionTime 2
Precondition constraints
Effect constraints
![Page 92: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/92.jpg)
Constructing the planning graph…
• Initial proposition layer– Just the initial conditions
• Action layer i– If all of an action’s preconditionss are in i-1– Then add action to layer I
• Proposition layer i+1– For each action at layer i– Add all its effects at layer i+1
![Page 93: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/93.jpg)
93
Mutual Exclusion
• Actions A,B exclusive (at a level) if– A deletes B’s precondition, or – B deletes A’s precondition, or – A & B have inconsistent preconditions
• Propositions P,Q inconsistent (at a level) if– All ways to achieve P exclude all ways to achieve Q
• Constraint propagation (arc consistency)– Can force variables to become true or false– Can create new mutexes
![Page 94: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/94.jpg)
94
Solution Extraction
• For each goal G at last time slice N:
• Solve( G, N )
• Solve( G, t ):CHOOSE action A making G true @t that is not
mutex with a previously chosen action
If no such action, backtrack to last choice point
For each precondition P of A:Solve(P, t-1)
![Page 95: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/95.jpg)
95
Graphplan
• Create level 0 in planning graph
• Loop– If goal contents of highest level (nonmutex)– Then search graph for solution
• If find a solution then return and terminate
– Else Extend graph one more level
A kind of double search: forward direction checks necessary
(but insufficient) conditions for a solution, ...
Backward search verifies...
![Page 96: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/96.jpg)
Dinner Date
Initial Conditions: (:and (cleanHands) (quiet))
Goal: (:and (noGarbage) (dinner) (present))
Actions:(:operator carry :precondition
:effect (:and (noGarbage) (:not (cleanHands)))(:operator fire :precondition
:effect (:and (noGarbage) (:not (paper)))(:operator cook :precondition (cleanHands)
:effect (dinner))(:operator wrap :precondition (paper)
:effect (present))
![Page 97: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/97.jpg)
Planning Graph noGarb
cleanH
paper
dinner
present
carry
fire
cook
wrap
cleanH
paper
0 Prop 1 Action 2 Prop 3 Action 4 Prop
![Page 98: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/98.jpg)
Are there any exclusions? noGarb
cleanH
paper
dinner
present
carry
noopfire
noopcook
wrap
cleanH
paper
0 Prop 1 Action 2 Prop 3 Action 4 Prop
![Page 99: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/99.jpg)
Do we have a solution? noGarb
cleanH
paper
dinner
present
cleanH
paper
0 Prop 1 Action 2 Prop 3 Action 4 Prop
carry
noopfire
noopcook
wrap
![Page 100: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/100.jpg)
Extend the Planning Graph noGarb
cleanH
paper
dinner
present
noopcarry
noopfire
noopcook
noopwrap
noop
cleanH
paper
noGarb
cleanH
paper
dinner
present
0 Prop 1 Action 2 Prop 3 Action 4 Prop
carry
noopfire
noopcook
wrap
![Page 101: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/101.jpg)
One (of 4) Solutions noGarb
cleanH
paper
dinner
present
noopcarry
noopfire
noopcook
noopwrap
noop
cleanH
paper
noGarb
cleanH
paper
dinner
present
0 Prop 1 Action 2 Prop 3 Action 4 Prop
carry
noopfire
noopcook
wrap
![Page 102: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/102.jpg)
Search AlgorithmsSearch Algorithms
Backtrack Search1. DFS 2. BFS / Dijkstra’s
Algorithm3. Iterative Deepening4. Best-first search5. A*
Constraint Propagation1. Forward Checking2. k-Consistency3. DPLL & Resolution
Local Search1. Hillclimbing2. Simulated annealing3. Walksat
![Page 103: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/103.jpg)
Representing Knowledge in Propositional Logic
Representing Knowledge in Propositional Logic
R&N Chapter 7
![Page 104: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/104.jpg)
Basic Idea of LogicBasic Idea of Logic
By starting with true assumptions, you can deduce true conclusions.
![Page 105: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/105.jpg)
TruthTruth
Francis Bacon (1561-1626) No pleasure is comparable to the standing upon the vantage-ground of truth.
Thomas Henry Huxley (1825-1895) Irrationally held truths may be more harmful than reasoned errors.
John Keats (1795-1821) Beauty is truth, truth beauty; that is allYe know on earth, and all ye need to know.
Blaise Pascal (1623-1662) We know the truth, not only by the reason, but also by the heart.
François Rabelais (c. 1490-1553) Speak the truth and shame the Devil.
Daniel Webster (1782-1852) There is nothing so powerful as truth, and often nothing so strange.
![Page 106: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/106.jpg)
Propositional LogicPropositional Logic
Ingredients of a sentence:1. Propositions (variables)2. Logical Connectives , , ,
literal = a variable or a negated variable
• A possible world assigns every proposition the value true or false
• A truth value for a sentence can be derived from the truth value of its propositions by using the truth tables of the connectives
• The meaning of a sentence is the set of possible worlds in which it is true
![Page 107: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/107.jpg)
Truth Tables for ConnectivesTruth Tables for Connectives
0 0
0 1
1 0
1 1
0 0
0 1
1 0
1 1
0 0
0 1
1 0
1 1
0
1
![Page 108: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/108.jpg)
Special Syntactic FormsSpecial Syntactic Forms
• General PL:
((q r) s)) (s t)• Conjunction Normal Form (CNF)
( q r s ) ( s t)
Set notation: { ( q, r, s ), ( s, t) }
empty clause () = false
• Binary clauses: 1 or 2 literals per clause
( q r) ( s t)
• Horn clauses: 0 or 1 positive literal per clause
( q r s ) ( s t)
(qr) s (st) false
![Page 109: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/109.jpg)
Satisfiability, Validity, & EntailmentSatisfiability, Validity, & Entailment
• S is satisfiable if it is true in some world
• Example:
• S is unsatisfiable if it is false all worlds
• S is valid if it is true in all worlds
• S1 entails S2 if wherever S1 is true S2 is true
![Page 110: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/110.jpg)
Reasoning TasksReasoning Tasks
• Model finding
KB = background knowledge
S = description of problem
Show (KB S) is satisfiable
A kind of constraint satisfaction
• Deduction
S = question
Prove that KB S
Two approaches:1. Rules to derive new formulas from old (inference)
2. Show (KB S) is unsatisfiable
![Page 111: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/111.jpg)
InferenceInference
• Mechanical process for computing new sentences
• Resolution
{ (p ), ( p ) } R ( )
• Correctness
If S1 R S2 then S1 S2
• Refutation Completeness:
If S is unsatisfiable then S R ()
![Page 112: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/112.jpg)
ResolutionResolution
( A H)
(M A)
( H) (I H)
( M)
( M I)(I)(A)
(M)
()
If the unicorn is mythical, then it is immortal, but if it is not mythical, it is a mammal. If the unicorn is either immortal or a mammal, then it is horned.
Prove: the unicorn is horned.
M = mythical
I = immortal
A = mammal
H = horned
![Page 113: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/113.jpg)
New Variable TrickNew Variable Trick
Putting a formula in clausal form may increase its size exponentially
But can avoid this by introducing dummy variables(abc)(def) {(ad),(ae),(af),
(bd),(be),(bf), (cd),(ce),(cf) }
(abc)(def) {(gh),(abcg),(ga),(gb),(gc), (defh),(hd),(he),(hf)}
Dummy variables don’t change satisfiability!
![Page 114: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/114.jpg)
DPLLDavis Putnam Loveland Logmann
DPLLDavis Putnam Loveland Logmann
• Model finding: Backtrack search over space of partial truth assignments
DPLL( wff ):
Simplify wff: for each unit clause (Y)
Remove clauses containing Y
if no clause left then return true (satisfiable)
Shorten clauses contain Y
if empty clause then return false
Choose a variable
Choose a value (0/1) – yields literal X
if DPLL( wff, X ) return true (satisfiable)
else return DPLL(wff, X)
![Page 115: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/115.jpg)
DPLLDavis Putnam Loveland Logemann
DPLLDavis Putnam Loveland Logemann
• Backtrack search over space of partial truth assignments
DPLL( wff ):
Simplify wff: for each unit clause (Y)
Remove clauses containing Y
if no clause left then return true (satisfiable)
Shorten clauses contain Y
if empty clause then return false
Choose a variable
Choose a value (0/1) – yields literal X
if DPLL( wff, X ) return true (satisfiable)
else return DPLL(wff, X)
unit propagation
= arc consistency
![Page 116: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/116.jpg)
Horn TheoriesHorn Theories
Recall the special case of Horn clauses:
{ ( q r s ), ( s t) }
{ ((qr) s ), ((st) false) }
Many problems naturally take the form of such if/then rules
• If (fever) AND (vomiting) then FLU
Unit propagation is refutation complete for Horn theories
• Good implementation – linear time!
![Page 117: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/117.jpg)
CPGomes - AAAI00
DPLLDPLL
• Developed 1962 – still the best complete algorithm for propositional reasoning
• State of the art solvers use:
Smart variable choice heuristics
“Clause learning” – at backtrack points, determine minimum set of choices that caused inconsistency, add new clause
Limited resolution (Agarwal, Kautz, Beame 2002)
Randomized tie breaking & restarts
• Chaff – fastest complete SAT solver
Created by 2 Princeton undergrads, for a summer project!
Superscaler processor verification
AI planning - Blackbox
![Page 118: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/118.jpg)
CPGomes - AAAI00
ExerciseExercise
• How could we represent the Quasigroup Completion Problem as a Boolean formula in CNF form?
(take 10 minutes to sketch solution)
![Page 119: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/119.jpg)
CPGomes - AAAI00
WalkSatWalkSat
Local search over space of complete truth assignments
With probability P: flip any variable in any unsat clause
With probability (1-P): flip best variable in any unsat clause
Like fixed-temperature simulated annealing
• SAT encodings of QCP, N-Queens, scheduling
• Best algorithm for random K-SAT
Best DPLL: 700 variables
Walksat: 100,000 variables
![Page 120: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/120.jpg)
Random 3-SAT
Random 3-SAT sample uniformly from
space of all possible 3-clauses
n variables, l clauses
Which are the hard instances? around l/n = 4.3
![Page 121: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/121.jpg)
Random 3-SAT
Varying problem size, n
Complexity peak appears to be largely invariant of algorithm backtracking algorithms
like Davis-Putnam local search procedures
like GSAT
What’s so special about 4.3?
![Page 122: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/122.jpg)
Random 3-SAT
Complexity peak coincides with solubility transition
l/n < 4.3 problems under-constrained and SAT
l/n > 4.3 problems over-constrained and UNSAT
l/n=4.3, problems on “knife-edge” between SAT and UNSAT
![Page 123: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/123.jpg)
Real-World Phase Transition Phenomena
Many NP-hard problem distributions show phase transitions - job shop scheduling problems TSP instances from TSPLib exam timetables @ Edinburgh Boolean circuit synthesis Latin squares (alias sports scheduling)
Hot research topic: predicting hardness of a given instance, & using hardness to control search strategy (Horvitz, Kautz, Ruan 2001-3)
![Page 124: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/124.jpg)
Logical Reasoning about Time &
Change
AKA
Planning as Satisfiability
Salvidor Dali, Persistance of Memory
![Page 125: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/125.jpg)
ActionsActions
We want to relate changes in the world over time to actions associated with those changes
How are actions represented?
1. As functions from one state to another
2. As predicates that are true in the state in which they (begin to) occur
![Page 126: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/126.jpg)
Actions as Functions: “Situation Calculus”
Actions as Functions: “Situation Calculus”
On(cat, mat, S0)
Happy(cat, S0) On(cat, mat, kick(S0)) Happy(cat, kick(S0))
Happy(cat, pet(kick(S0)))
Branching time:
kickpet
kick
kick
pet
pet
S0
![Page 127: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/127.jpg)
Actions as Predicates:“Action Calculus”
Actions as Predicates:“Action Calculus”
On(cat, mat, S0) Happy(S0)
Kick(cat, S0) On(cat, mat, S1) Happy(CAT99, S1)
Pet(CAT99, S1) On(CAT99, MAT37, S2) Happy(CAT99, S2)
Linear time:
kick pet
S0 S1 S2
![Page 128: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/128.jpg)
Relating Actions to Preconditions & Effects
Relating Actions to Preconditions & Effects
Strips notation:Action: Fly( plane, start, dest )Precondition: Airplane(plane), City(start), City(dest),
At(plane, start)Effect: At(plane, dest), At(plane, start)
Pure strips: no negative preconditions!
Need to represent logically:• An action requires it’s predications• An action causes it’s effects• Interfering actions do not co-occur• Changes in the world are the result of actions.
![Page 129: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/129.jpg)
Preconditions & EffectsPreconditions & Effects
plane, start, dest, s . Fly(plane, start, dest, s) [ At(plane, start, s)
Airplane(plane,s) City(start) City(dest) ]
• Note: state indexes on predicates that never change not necessary.
plane, start, dest, s . Fly(plane, start, dest, s) At(plane, dest, s+1)
• In action calculus, the logical representation of “requires” and “causes” is the same!
• Not a full blown theory of causation, but good enough…
![Page 130: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/130.jpg)
Interfering ActionsInterfering Actions
Want to rule out:
Fly( PLANE32, NYC, DETROIT, S4) Fly( PLANE32, NYC, DETROIT, S4)
Actions interfere if one changes a precondition or effect of the other
They are mutually exclusive – “mutex”
p, c1, c2, c3, c4, s . [Fly(p, c1, c2, s) (c1 c3 c2 c4) ]
Fly(p, c3, c4, s)
(Similar for any other actions Fly is mutex with)
![Page 131: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/131.jpg)
Explanatory AxiomsExplanatory Axioms
• Don’t want world to change “by magic” – only actions change things
• If a proposition changes from true to false (or vice-versa), then some action that can change it must have occurred
plane, start, s . [ Airplane(plane) City(start) At(plane,start,s) At(plane,city,s+1) ] dest . [ City(dest) Fly(plane, start, dest, s) ]
plane, dest, s . [ Airplane(plane) City(start) At(plane,dest,s) At(plane,dest,s+1) ] start . [ City(start) Fly(plane, start, dest, s) ]
![Page 132: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/132.jpg)
The Frame ProblemThe Frame Problem
General form of explanatory axioms:[ p(s) p(s+1) ] [ A1(s) A2(s) … An(s) ]
As a logical consequence, if none of these actions occurs, the proposition does not change
[A1(s) A2(s) … An(s) ] [ p(s) p(s+1) ]
This solves the “frame problem” – being able to deduce what does not change when an action occurs
![Page 133: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/133.jpg)
Frame Problem in AIFrame Problem in AI
• Frame problem identified by McCarthy in his first paper on the situation calculus (1969)
667 papers in researchindex !
• Lead to a (misguided?) 20 year effort to develop non-standard logics where no frame axioms are required (“non-monotonic”)
7039 papers!
• 1990 - Haas and Schubert independently pointed out that explanatory axioms are pretty easy to write down
![Page 134: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/134.jpg)
Planning as SatisfiabilityPlanning as Satisfiability
• Idea: in action calculus assert that initial state holds at time 0 and goal holds at some time (in the future):
• Axioms Initial s . Goal(s)
• Any model that satisfies these assertions and the axioms for actions corresponds to a plan
• Bounded model finding, i.e. satisfiability testing:
1. Assert goal holds at a particular time K
2. Ground out (instantiate) the theory up to time K
3. Try to find a model; if so, done!
4. Otherwise, increment K and repeat
![Page 135: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/135.jpg)
Reachability AnalysisReachability Analysis
• Problem: many irrelevant propositions, large formulas
• Reachability analysis: what propositions actually connect to initial state or goal in K steps?
• Graphplan’s plan graph computes reachable set!
• Blackbox (Kautz & Selman 1999)
• Run graphplan to generate plan graph• Translate plan graph to CNF formula• Run any SAT solver
![Page 136: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/136.jpg)
Translation of Plan GraphTranslation of Plan Graph
Fact Act1 Act2
Act1 Pre1 Pre2
¬Act1 ¬Act2
Act1
Act2
Fact
Pre1
Pre2
![Page 137: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/137.jpg)
Improved EncodingsImproved Encodings
Translations of Logistics.a:
STRIPS Axiom Schemas SAT
• 3,510 variables, 16,168 clauses
• 24 hours to solve
STRIPS Plan Graph SAT(Blackbox)
• 2,709 variables, 27,522 clauses
• 5 seconds to solve!
![Page 138: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/138.jpg)
Model-Based DiagnosisModel-Based Diagnosis
Idea:
• Create a logical model of the correct functioning of a device
• When device is broken, observations + model is inconsistent
• Create diagnosis by restoring consistency
![Page 139: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/139.jpg)
Simplified KBSimplified KB
Knowledge Base:SignalValueA ValveAok ValveAopenSignalValueB ValveBok ValveBopenSignalValueC ValveCok ValveCopen ValveAopen EngineHasFuelValveBopen EngineHasFuelValveCopen EngineHasOxyEngineHasFuel EngineHasOxy EngineFires
Normal Assumptions:ValveAok, ValveBok, ValveCok
Direct Actions (cannot fail):SignalValveA, SignalValveB, SignalValveC
Observed: EngineFires
![Page 140: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/140.jpg)
Diagnosis: 1Diagnosis: 1
Knowledge Base:SignalValueA ValveAok ValveAopenSignalValueB ValveBok ValveBopenSignalValueC ValveCok ValveCopen ValveAopen EngineHasFuelValveBopen EngineHasFuelValveCopen EngineHasOxyEngineHasFuel EngineHasOxy EngineFires
Normal Assumptions:ValveAok, ValveBok, ValveCok
Direct Actions (cannot fail):SignalValveA, SignalValveB, SignalValveC
Observed: EngineFires Inconsistent by Unit
Propagation
![Page 141: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/141.jpg)
Diagnosis: 2Diagnosis: 2
Knowledge Base:SignalValueA ValveAok ValveAopenSignalValueB ValveBok ValveBopenSignalValueC ValveCok ValveCopen ValveAopen EngineHasFuelValveBopen EngineHasFuelValveCopen EngineHasOxyEngineHasFuel EngineHasOxy EngineFires
Normal Assumptions:ValveAok, ValveBok, ValveCok
Direct Actions (cannot fail):SignalValveA, SignalValveB, SignalValveC
Observed: EngineFires Still Inconsistent
![Page 142: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/142.jpg)
Diagnosis: 3Diagnosis: 3
Knowledge Base:SignalValueA ValveAok ValveAopenSignalValueB ValveBok ValveBopenSignalValueC ValveCok ValveCopen ValveAopen EngineHasFuelValveBopen EngineHasFuelValveCopen EngineHasOxyEngineHasFuel EngineHasOxy EngineFires
Normal Assumptions:ValveAok, ValveBok, ValveCok
Direct Actions (cannot fail):SignalValveA, SignalValveB, SignalValveC
Observed: EngineFires Consistency Restored!
Diagnosis: Valve A and Valve B broken (double fault)
![Page 143: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/143.jpg)
Diagnosis: 4Diagnosis: 4
Knowledge Base:SignalValueA ValveAok ValveAopenSignalValueB ValveBok ValveBopenSignalValueC ValveCok ValveCopen ValveAopen EngineHasFuelValveBopen EngineHasFuelValveCopen EngineHasOxyEngineHasFuel EngineHasOxy EngineFires
Normal Assumptions:ValveAok, ValveBok, ValveCok
Direct Actions (cannot fail):SignalValveA, SignalValveB, SignalValveC
Observed: EngineFires
A different way to restore consistency
Diagnosis: Valve C broken (single fault)
![Page 144: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/144.jpg)
Diagnostic Engine for NASA’s Deep Space One
•2,000 variable CNF formula
•Real-time planning and diagnosis
![Page 145: Sessions 1 & 2 Introduction to AI; Planning & Search CSE 592 Applications of Artificial Intelligence Henry Kautz Winter 2003.](https://reader030.fdocuments.in/reader030/viewer/2022032605/56649e7f5503460f94b838e4/html5/thumbnails/145.jpg)
Beyond LogicBeyond Logic
• Often you want most likely diagnosis rather than all possible diagnoses
• Can assign probabilities to sets of fault, and search for most likely way to restore consistency
• But suppose observations and model of the device are also uncertain?
• Next: Probabilistic Reasoning in Bayesian Networks