PowerPoint CS570 Artificial Intelligence Solving Problems By Searching and by pengtt


									CS570 Artificial Intelligence

Solving Problems By Searching and
 Constraint Satisfaction Problem

                            2001. 4. 18.

                          20015087 김한성
                          20013460 이은영

    Solving Problem by Searching
         Problem solving agents
         Problem types
         Problem formulation
         Example problems
         Searching Strategies(Basic search algorithms)
    Constraint Satisfaction Problem
         Solving Techniques

April 18, 2001                                           Page 1
Problem-Solving Agents

    Problem-Solving Agents
         one kind of goal-based agent
         finding sequences of actions that lead to desirable
         Goal Formulation
                 limiting the objectives
         Problem Formulation
                 deciding what actions and states to consider
                 looking for the possible action sequence

April 18, 2001                                                  Page 2
Formulating Problem - Example

    The eight possible states of the simplified vacuum
             1                  2

             3                  4

             5                  6

             7                  8

April 18, 2001                                      Page 3
Properties of environment

    Accessible vs. Inaccessible
    Deterministic vs. Nonderterministic
    Episodic vs. Nonepisodic
    Static vs. Dynamic
    Discrete vs. Continuaous

April 18, 2001                            Page 4
Knowledge and Problem Types (1)

      Single-state problem
      1.   accessible - the agent’s sensor knows
                 which state it is in.
      2.   deterministic - the agent knows
                 what each of its actions does
           Action sequence can be completely planned.
                 example: [Right, Suck]

  5                            6                  8

April 18, 2001                                          Page 5
Knowledge and Problem Types (2)

    Multiple-state problem
     1.   inaccessible
                 limited access to the world state
     2.   deterministic
          The agent must reason about sets of states that it
          mignt get to.
           [Right, Suck, Left, Suck]          reach a Goal

April 18, 2001                                                 Page 6
Knowledge and Problem Types (3)

    Contingency problem
     1.   inaccessible
     2.   non-deterministic
          sensing during the execution phase.
          most of the real, physical world problems
                 Keep your eyes open while walking!
          The agent must calculate a whole tree of actions,
          rather than a single action sequence.

             1                          3

April 18, 2001                                                Page 7
Knowledge and Problem Types (4)

    Exploration problem
         unknown state space (no map, no sensor)
         The agent must experiment, gradually discovering
         what its actions do and what sorts of states exist.

April 18, 2001                                                 Page 8
single-state problem

       Well-defined Problems and Solutions

                 a collection of information that the agent will use to
                 decide what to do
           the basic elements of a problem definition
                 initial state
                 operator (or successor function S)
                 goal test
                 path cost function(g)
                                               state space

       April 18, 2001                                                Page 9
Problem-Solving Agents - Example

    A simplified road map of Romania


     Arad                 Sibiu                                                  Vaslui


    Timisoara                     Rimnicu Vilcea

                 Dobreta                                  Giurgiu

April 18, 2001                                                                       Page 10
Problem-Solving Agents – Example

         On holiday in Romania: currently in Arad.
         Flight leaves tomorrow from Bucharest.
    Formulate goal:
         be in Bucharest             Abstraction

    Formulate problem:
         initial state: be in Arad
         state: various cities
         operators: driving between cities
    Find solution:
         sequence of cities, e.g., Arad, Sibiu, Fagaras,

April 18, 2001                                             Page 11
Measuring Problem-Solving Performance

     Effectiveness of a search
          Does it find a solution at all?
          Is it a good solution (one with low path cost)?
          What is the search cost associated with the time and
          memory required to find a solution?
                  total cost = path cost + search cost

 April 18, 2001                                             Page 12
Example Problems

    Toy Problems
         concise and exact description
         abstract version of real problem

    Real-World Problem
         no single agreed-upon description

April 18, 2001                               Page 13
The 8-puzzle

    problem formulation
         State : the location of each of the eight tiles in one of
         the nine squares
         Operators: blank moves left, right, up, or down
         Goal test: state matches the right figure
         Path cost: each step costs 1, that is the length of the

                 5    4                    1      2         3

                 6    1        8           8                4

                 7    3        2           7      6         5

                 Start state                   Goal state

April 18, 2001                                                  Page 14
The 8-queens problem(1)

    problem formulation
         Goal test: 8 queens on board, none attacked
         Path cost: zero

         States : any arrangement of 0 to 8 queens on board
         Operators : add a queen to any square

         States :arrangements of 0 to 8 queens with none
         Operators :place a queen in the left-most empty
         column such that is not attacked by any other queen

April 18, 2001                                             Page 15
The 8-queens problem(2)

         States : arrangements of 8queens, one in each column
         Operators :move any attacked queen to another
         square in the same column

April 18, 2001                                           Page 16

    problem formulation
         State : a cryptarithmetic puzzle with some letters
         replaced by digits
         Operators: replace all occurrences of a letter with a
         digit not already appearing in the puzzle
         Goal test: puzzle contains only digits, and represents a
         correct sum
         Path cost: zero

                   FORTY        Solution: 29786       F=2, O=9, R=7, etc.
                 + TEN                       850
                 + TEN                       850
                 ------------             ---------
                    SIXTY                 31486

April 18, 2001                                                              Page 17
    The vaccum world

        problem formulation ( a single state problem)
             State : one of the eight states shown in Figure
             Operators: move left, move right, suck
             Goal test: no dirt left in any square
             Path cost: each action costs 1                      R
                         S               R       L               S
                             R                               R

                             L                               L

            S                        S               S               R    S


    April 18, 2001               S                       S               Page 18
Missionaries and cannibals

    problem formulation
         State : the number of missionaries, cannibals and
         boats on the bank of the river from which they
         Operators: either 1 missionary, 1 cannibal, 2
         missionaries, 2 cannibals, or one of each across in the
         Goal test: 3 missionaries and 3 cannibals in the other
         side of the river (0,0,0)
         Path cost: the number of crossings

April 18, 2001                                               Page 19
Example Real-World Problems

    Route finding
    Touring and travelling salesperson problems
    VLSI layout
    Robot navigation
    Assembly sequencing

April 18, 2001                                    Page 20
Searching for Solutions

    Partial search tree for route finding from Arad to
                                                                      goal test
  (a) The initial state (search node)

                                                                 generating a new
  (b) After expanding Arad                                       state
                                        Sibiu        Timisoara       Zerind

                         choosing                        Arad
  (c) After expanding Sibiu             Sibiu        Timisoara       Zerind

                       Sibiu   Timisoara        Oradea

April 18, 2001                                                                Page 21
Search Strategies

         Time complexity
         Space complexity
         Uninformed search (= blind search)
                 have no information about the number of steps or
                 the path cost from the current state to the goal
         Informed search (= heuristic search)
                 have some information
                 example: Bucharest is southeast of Arad.

April 18, 2001                                               Page 22
                                                     Searching Strategies

Breadth-first Search

         Complete: Yes (if b is finite)
         Time complexity: 1+b+b^2+…+b^d = O(b^d)
         Space complexity: O(b^d) (keeps every node in
         Optimal: Yes (if cost=1 per step); not optimal in
                 where b is branching factor and
                 d is the depth of the search tree

April 18, 2001                                                   Page 23
                                                                                   Searching Strategies

Uniform cost Search (1)

    Expand least-cost unexpanded node
         the breadth-first search is just uniform cost search
         with g(n)=DEPTH(n)


                   A                    A       B       C
                                            1       5       15
           1               10
                   B                                                  S
    S          5       5        G
                                                            A         B       C                 S
          15               5                                              5       15
                   C                                        G
                                                                 11                    A        B      C
                                                                                       G        G
                                                                                           11    10

April 18, 2001                                                                                        Page 24
                         Searching Strategies

Depth-first Search (1)

    Depth-first Search

April 18, 2001                       Page 25
                                                      Searching Strategies

Depth-first Search (2)

         Space complexity: O(bm)
                 i.e., linear space
         Time complexity: O(b^m)
                 where m is the maximum depth
         Complete, Optimal : No
                 fails in infinite-depth spaces, spaces with loops
                 Modify to avoid repeated states along path
                 → complete in finite spaces

April 18, 2001                                                    Page 26
                                              Searching Strategies

Depth-limited Search

    Depth-first search with depth limit l
         Complete: Yes
         Time complexity: O(b^l)
                 where l is the depth limit
         Space complexity: O(bl)
         Optimal: No

April 18, 2001                                            Page 27
                                           Searching Strategies

Iterative Deepening Search (1)

    Choose the best depth limit by trying all possible
    depth limit

April 18, 2001                                         Page 28
                            Searching Strategies

Iterative Deepening Search (1)





April 18, 2001                          Page 29
                                                Searching Strategies

Iterative Deepening Search (2)

    Choose the best depth limit by trying all possible depth
    Breadth-first search + Depth-first search
         Optimal , Complete: Yes
         Time complexity:
     (d+1)*b^0+d*b+(d-1)*b^2+…+1*b^d = O(b^d)
         Space complexity: O(bd)

April 18, 2001                                              Page 30
                                                 Searching Strategies

Bidirectional Search (1)

    Simultaneously search
         forward from the initial state
         backward from the goal
         stop when the two searches meet in the middle.

                     Start                Goal

April 18, 2001                                               Page 31
                                                    Searching Strategies

Bidirectional Search (2)

    Several issues
         Operators are reversible.
         Many goal states  multiple state search

         Complete: Yes
         Time complexity: O(2b^(d/2)) = O(b^(d/2))
         Space complexity: O(b^(d/2))
         Optimal: Yes, if step cost = 1
                 Can be modified to explore uniform-cost tree

April 18, 2001                                                  Page 32
                                                                    Searching Strategies

  Comparison Search Strategies

      Evaluation of search strategies.
            b is the branching factor;
            d is the depth of solution;
            m is the maximum depth of the search tree;
            l is the depth limit.

               Breadth-   Uniform-                   Depth-          Iterative Bidirectional
Criterion                            Depth-First
                 First      Cost                     Limited        Deepening (if applicable)

  Time             b^d      b^d         b^m             b^l            b^d       b^(d/2)

 Space             b^d      b^d         bm               bl             bd       b^(d/2)

Optimal?           Yes      Yes          No             No             Yes          Yes

Complete?          Yes      Yes          No        Yes, if l   ≥d      Yes          Yes

  April 18, 2001                                                                 Page 33
Avoiding Repeated States

    Three ways to deal with repeated states
         Do not return to the state you just came from.
         Do not create paths with cycles in them.
         Do not generate any state that was ever generated

April 18, 2001                                            Page 34
Overview – CSP

    Constraint Satisfaction Problem
    The Solution of CSP
    Solving Techniques
         Consistency techniques

April 18, 2001                        Page 35
Constraint Satisfaction Problem(1)

    CSP : A special kind of problem that satisfies some
    additional structural properties beyond the basic
    requirements for problems in general
    CSP is defined as
         a set of variables X = { x1 , x2 , x3 … xn }
         for each variable, xi , a finite domain Di
                 Discrete or continuous
         a set of constraints restricting the values that the
         variables can simultaneously take
                 Unary Constraints
                 Binary Constraints
                 High order Constraints
                 Absolute constraints vs. preference constraints

April 18, 2001                                                  Page 36
Constraint Satisfaction Problem(2)

    Example : 8 queens problem
         Variables : the locations of each of the eight queens
         Domains : squares on the board
         Constraints : no two queens can be in the same row,
         column, or diagonal
                 V1: the row that the           Q
                  first queen occupies              Q
                 V2: the row that the               Q
                  first queen occupies
                 Domain : {1,2,3,…,8}
                 Constraints :

April 18, 2001                                             Page 37
The Solution of CSP

    If use DFS in 8 queens problem : Search space will
    be 88
         Too huge!
    In CSP, the goal test is decomposed into a set of
    constraints on variables rather than being a “black
    Solutions : specifying values for all the variables
    such that the constraints are satisfied

April 18, 2001                                        Page 38
Solving Technology

    Consistency Techniques
    Systematic Search
         Generate-and-Test (GT)
                 Generate each possible combination of the
                 variables and then test to see if it satisfies all the
                 The first combination that satisfies all the
                 constraints is the solution.
                 The number of combinations : the size of the
                 Cartesian product of all the variable domains
         Generator merged with tester
                 Look back schema
                 Look ahead schema

April 18, 2001                                                      Page 39
Consistency Techniques

    Removing inconsistent values from variable domain
    Graph representation - constraint graph
    Consistency Techniques are not complete

                        Consistent pairs
                           of values

           removed by
              AC        a              a
                        b              b
                        c              c
                        Vi            Vj
April 18, 2001                                   Page 40
Systematic Search (1)

    Generator merged with tester
         Look back schema
                 Backtracking, Backjumping, Backmarking,
         Look ahead schema
                 Forward checking (FC) , Look Ahead (LA)

April 18, 2001                                             Page 41
                                           Look Back Schema


    Incrementally extending a partial solution(DFS)
    When conflict occurs, choose another value for
    inconsistent variable
         Redundant work
         Late detection of collision
         Exponential time complexity

April 18, 2001                                       Page 42
Example - Backtracking

    There is no legal position available on the next row on
    the board below
    As a result the queen on the
    fifth row will be removed and
    a new position for it will be sought. Q
    If all legal positions on the row             Q
    lead fail to a solution, the queen                    Q
    on the row above will be moved                    Q
    to a new legal position, and
    the search for a solution
    will proceed.

April 18, 2001                                                Page 43
                                              Look Back Schema


    Avoid trashing
    most recent conflicting variable instead of
    immediate past variable

             Q                    Q
                     Q                    Q
                             Q                Q
                 Q                    Q
                         Q              Q
                                  1 3 2 4 3 1 2 3

April 18, 2001                                         Page 44
                                                 Look Back Schema

Backchecking, Backmarking

    Avoid redundant work

            Q                    Q
                         Q                   Q
                 Q                   Q
                             Q                   Q
                     Q                   X

April 18, 2001                                            Page 45
Look Ahead Schema

    Prevent future conflict
    Examples of Look Ahead Schema
         Forward Checking
                 When an assignment, X/a occurs, temporally
                 delete all values from other variable domain
         Look Ahead

April 18, 2001                                                  Page 46
Example – Forward Checking

         Q                 Q
         X XQ              X   XQ
         X X X X Q         X   X X X Q
         X   X X X X       X   X X X X   X
         X   X   X X X     X     X X X   X X
         X X X   X X X X   X   X X Q X   X X X
         X   X   X   X X   X     X X X     X X
         X   X   X     X   X   X X X X   X   X

April 18, 2001                                   Page 47
  AC Look Ahead

      When a queen is placed on the board all squares that are
      threatened by that queen are marked to be ignored
      When considering where to place the next queen it uses
      Arc Consistency to ensure that there are legitimate
      positions for each pair of queens to be added, and marks
      any positions that fail the test to be ignored.

Q                                         Arc (Vi, Vj ) is arc
                                          consistent if for every
X XQ                  X X   Q
                                          value x in the current
X X X X               X   X X X           domain of Vi there is some
X   X X X             X X   X   X         value y in the domain of Vj
X   X   X X           X     X X   X       such that Vi =x and Vj =y is
X   X     X X         X     X   X   X     permitted by the binary
X   X       X X       X     X     X       constraint between Vi and
X   X         X       X     X       X     Vj

  April 18, 2001                                             Page 48
   already instantiated variables   not yet instantiated variables
                                                                 partial look ahead
                                                                   full look ahead

   checked by

April 18, 2001                                                           Page 49
Systematic Search (2)

    Smart generator
         Heuristic Method
                 Min-conflict (MC)
                 Random walk
                 Tabu search

April 18, 2001                       Page 50

    Traditional Operational Research (OR)

April 18, 2001                              Page 51

To top