KEMBAR78
Ppt on chapter 3 made by students in python | PPT
Formal Description of a Problem
• In AI, we will formally define a problem as
– a space of all possible configurations where each
configuration is called a state
• thus, we use the term state space
– an initial state
– one or more goal states
– a set of rules/operators which move the problem from one
state to the next
• In some cases, we may enumerate all possible states
(see monkey & banana problem on the next slide)
– but usually, such an enumeration will be overwhelmingly
large so we only generate a portion of the state space, the
portion we are currently examining
The Monkey & Bananas Problem
• A monkey is in a cage and bananas are suspended from the
ceiling, the monkey wants to eat a banana but cannot reach
them
– in the room are a chair and a stick
– if the monkey stands on the chair and waves the stick, he can
knock a banana down to eat it
– what are the actions the monkey should take?
Initial state:
monkey on ground
with empty hand
bananas suspended
Goal state:
monkey eating
Actions:
climb chair/get off
grab X
wave X
eat X
Missionaries and Cannibals
• 3 missionaries and 3 cannibals are on one side of the river with a
boat that can take exactly 2 people across the river
– how can we move the 3 missionaries and 3 cannibals across the river
– with the constraint that the cannibals never outnumber the missionaries on
either side of the river (lest the cannibals start eating the missionaries!)??
• We can represent a state as a 6-item tuple:
– (a, b, c, d, e, f)
• a/b = number of missionaries/cannibals on left shore
• c/d = number of missionaries/cannibals in boat
• e/f = number of missionaries/cannibals on right shore
• where a + b + c + d + e + f = 6
• and a >= b unless a = 0, c >= d unless c = 0, and e >= f unless e = 0
• Legal operations (moves) are
– 0, 1, 2 missionaries get into boat (c + d must be <= 2)
– 0, 1, 2 missionaries get out of boat
– 0, 1, 2 cannibals get into boat (c + d must be <= 2)
– 0, 1, 2 missionaries get out of boat
– boat sails from left shore to right shore (c + d must be >= 1)
– boat sails from right shore to left shore (c + d must be >= 1)
8 Puzzle
The 8 puzzle search space consists of 8! states (40320)
Search
• Given a problem expressed as a state space (whether
explicitly or implicitly)
– with operators/actions, an initial state and a goal state, how do
we find the sequence of operators needed to solve the problem?
– this requires search
• Formally, we define a search space as [N, A, S, GD]
– N = set of nodes or states of a graph
– A = set of arcs (edges) between nodes that correspond to the
steps in the problem (the legal actions or operators)
– S = a nonempty subset of N that represents start states
– GD = a nonempty subset of N that represents goal states
• Our problem becomes one of traversing the graph from a
node in S to a node in GD
– we can use any of the numerous graph traversal techniques for
this but in general, they divide into two categories:
• brute force – unguided search
• heuristic – guided search
Consequences of Search
• As shown a few slides back, the 8-puzzle has over 40000 different
states
– what about the 15 puzzle?
• A brute force search means try all possible states blindly until you
find the solution
– if a problem has a state space that consists of n moves where each move
has m possible choices, then there are 2m*n
states
– two forms of brute force search are: depth first search, breath first search
• A guided search examines a state and uses some heuristic (usually
a function) to determine how good that state is (how close you
might be to a solution) to help determine what state to move to
– hill climbing
– best-first search
– A/A* algorithm
– Minimax
• While a good heuristic can reduce the complexity from 2m*n
to
something tractable, there is no guarantee so any form of search is
O(2n
) in the worst case
Forward vs Backward Search
• The common form of reasoning starts with data and leads to
conclusions
– for instance, diagnosis is data-driven – given the patient symptoms, we
work toward disease hypotheses
• we often think of this form of reasoning as “forward chaining” through rules
• Backward search reasons from goals to actions
– Planning and design are often goal-driven
• “backward chaining”
Depth-first Search
Starting at node A, our search gives us:
A, B, E, K, S, L, T, F, M, C, G, N, H, O, P,
U, D, I, Q, J, R
Depth-first Search Example
Traveling Salesman Problem
Breadth-First Search
Starting at node A, our search would generate the
nodes in alphabetical order from A to U
Breadth-First Search Example

Ppt on chapter 3 made by students in python

  • 1.
    Formal Description ofa Problem • In AI, we will formally define a problem as – a space of all possible configurations where each configuration is called a state • thus, we use the term state space – an initial state – one or more goal states – a set of rules/operators which move the problem from one state to the next • In some cases, we may enumerate all possible states (see monkey & banana problem on the next slide) – but usually, such an enumeration will be overwhelmingly large so we only generate a portion of the state space, the portion we are currently examining
  • 2.
    The Monkey &Bananas Problem • A monkey is in a cage and bananas are suspended from the ceiling, the monkey wants to eat a banana but cannot reach them – in the room are a chair and a stick – if the monkey stands on the chair and waves the stick, he can knock a banana down to eat it – what are the actions the monkey should take? Initial state: monkey on ground with empty hand bananas suspended Goal state: monkey eating Actions: climb chair/get off grab X wave X eat X
  • 3.
    Missionaries and Cannibals •3 missionaries and 3 cannibals are on one side of the river with a boat that can take exactly 2 people across the river – how can we move the 3 missionaries and 3 cannibals across the river – with the constraint that the cannibals never outnumber the missionaries on either side of the river (lest the cannibals start eating the missionaries!)?? • We can represent a state as a 6-item tuple: – (a, b, c, d, e, f) • a/b = number of missionaries/cannibals on left shore • c/d = number of missionaries/cannibals in boat • e/f = number of missionaries/cannibals on right shore • where a + b + c + d + e + f = 6 • and a >= b unless a = 0, c >= d unless c = 0, and e >= f unless e = 0 • Legal operations (moves) are – 0, 1, 2 missionaries get into boat (c + d must be <= 2) – 0, 1, 2 missionaries get out of boat – 0, 1, 2 cannibals get into boat (c + d must be <= 2) – 0, 1, 2 missionaries get out of boat – boat sails from left shore to right shore (c + d must be >= 1) – boat sails from right shore to left shore (c + d must be >= 1)
  • 4.
    8 Puzzle The 8puzzle search space consists of 8! states (40320)
  • 5.
    Search • Given aproblem expressed as a state space (whether explicitly or implicitly) – with operators/actions, an initial state and a goal state, how do we find the sequence of operators needed to solve the problem? – this requires search • Formally, we define a search space as [N, A, S, GD] – N = set of nodes or states of a graph – A = set of arcs (edges) between nodes that correspond to the steps in the problem (the legal actions or operators) – S = a nonempty subset of N that represents start states – GD = a nonempty subset of N that represents goal states • Our problem becomes one of traversing the graph from a node in S to a node in GD – we can use any of the numerous graph traversal techniques for this but in general, they divide into two categories: • brute force – unguided search • heuristic – guided search
  • 6.
    Consequences of Search •As shown a few slides back, the 8-puzzle has over 40000 different states – what about the 15 puzzle? • A brute force search means try all possible states blindly until you find the solution – if a problem has a state space that consists of n moves where each move has m possible choices, then there are 2m*n states – two forms of brute force search are: depth first search, breath first search • A guided search examines a state and uses some heuristic (usually a function) to determine how good that state is (how close you might be to a solution) to help determine what state to move to – hill climbing – best-first search – A/A* algorithm – Minimax • While a good heuristic can reduce the complexity from 2m*n to something tractable, there is no guarantee so any form of search is O(2n ) in the worst case
  • 7.
    Forward vs BackwardSearch • The common form of reasoning starts with data and leads to conclusions – for instance, diagnosis is data-driven – given the patient symptoms, we work toward disease hypotheses • we often think of this form of reasoning as “forward chaining” through rules • Backward search reasons from goals to actions – Planning and design are often goal-driven • “backward chaining”
  • 8.
    Depth-first Search Starting atnode A, our search gives us: A, B, E, K, S, L, T, F, M, C, G, N, H, O, P, U, D, I, Q, J, R
  • 9.
  • 10.
  • 11.
    Breadth-First Search Starting atnode A, our search would generate the nodes in alphabetical order from A to U
  • 12.