CSE 151 Lecture Notes

INTRODUCTION TO ARTIFICIAL INTELLIGENCE

Solving Problems with Search

Administrivia:

The first programming assignment is being handed out today. It is due at the beginning of class in two weeks on Thursday, April 25.

  1. Problem-Solving Agents

  2. Formulating Problems

  3. Example Problems:

  4. Searching for Solutions

  5. Some search strategies:
    1. Evaluation criteria:
      1. completeness: will it find a solution if one exists?
      2. time efficiency:
      3. space efficiency:
      4. optimality of solution:
    2. Uninformed or blind searches:
      1. Breadth first: (FIFO queuing strategy)
        • complete: yes
        • time and space: O(branch_factor^depth) (empirically space a larger problem than time)
        • optimality: yes, if path cost non-decreasing with depth.
      2. Uniform Cost (expand lo cost fringe node)
        • optimal: yes, if no negative costs
        • a generalization of Breadth first.
      3. Depth-first (uses a stack)
        • completeness: no! may go down and not come back
        • time: O(branch_factor^depth)
        • space: O(depth)
        • optimality: no! returns first found, not necessarily ideal
      4. depth-limited (DFS down to some cutoff)
        • completeness: yes, provided solution exists before cutoff
        • time: O(branch_factor^depth_limit)
        • space: O(depth_limit)
        • optimality: no!
      5. Iterative Deepening (successively increasing depth-limited)
        • diameter of state space: max anticipated path length for most problems.
        • completeness: yes (like Breadth-first)
        • time: O(branch_factor^diameter)
        • space: O(diameter) (like Depth 1st)
        • optimality: yes (like Breadth-first)

    Problem solving agents

    ~