DOC PREVIEW
CORNELL CS 4700 - Lecture Notes

This preview shows page 1-2-3-19-20-39-40-41 out of 41 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 41 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 41 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 41 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 41 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 41 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 41 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 41 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 41 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 41 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

Problem-Solving as SearchIntelligent Agents Agent: Anything that can be viewed as perceiving its environment through sensors and acting upon that environment through actuators. Agent Function: Agent behavior is determined by the agent function that maps any given percept sequence to an action. Agent Program: The agent function for an artificial agent will be implemented by an agent program.A Simple Reflex Agent Environment What the world is like now What action I should do now Condition-action rules Sensors Agent ActuatorsAgent with Model and Internal State Environment What the world is like now What action I should do now Condition-action rules Sensors Agent Actuators How the world evolvesGoal-Based Agent Environment What the world is like now What action I should do now Goals Sensors Agent Actuators How the world evolves What it will be like if I do action ASchedule • Search • Machine learning • Knowledge based systems • DiscoveryProblem Solving as Search • Search is a central topic in AI – Originated with Newell and Simon's work on problem solving. – Famous book: “Human Problem Solving” (1972) • Automated reasoning is a natural search task • More recently: Smarter algorithms – Given that almost all AI formalisms (planning, learning, etc.) are NP-complete or worse, some form of search is generally unavoidable (no “smarter” algorithm available).Defining a Search Problem State space - described by initial state - starting state actions - possible actions available successor function; operators - given a particular state x, returns a set of < action, successor > pairs Goal test - determines whether a given state is a goal state (sometimes list, sometimes condition). Path cost - function that assigns a cost to a pathThe 8 Puzzle 4 4 5 6 1 7 3 2 8 2 1 8 3 7 6 5 Initial State Goal StateClicker • What is the size of the state space? – A. 4 – B. 3x3 – C. 9! – D. 99 – E. WhateverClicker • How many actions possible for each state (on average)? – A. ~1 – B. ~4 – C. ~9 – D. ~9!Cryptarithmetic SEND + MORE ------ MONEY Find (non-duplicate) substitution of digits for letters such that the resulting sum is arithmetically correct. Each letter must stand for a different digit.Solving a Search Problem: State Space Search Input: – Initial state – Goal test – Successor function – Path cost function Output: – Path from initial state to goal state. – Solution quality is measured by the path cost.Generic Search Algorithm L = make-list(initial-state) loop node = remove-front(L) (node contains path of how the algorithm got there) if goal-test(node) == true then return(path to node) S = successors (node) insert (S,L) until L is empty return failureSearch procedure defines a search tree Search tree root node - initial state children of a node - successor states fringe of tree - L: states not yet expanded Search strategy - algorithm for deciding which leaf node to expand next. stack: Depth-First Search (DFS). queue: Breadth-First Search (BFS).Solving the 8-Puzzle 4 4 5 6 1 7 3 2 8 2 1 8 3 7 6 5 Start State Goal State What would the search tree look like after the start state was expanded?Node Data Structure 4 5 6 1 7 3 2 8 PARENT-NODE ACTION= right DEPTH=6 PATH-COST=6 CHILD-NODE CHILD-NODE NODE STATESliding Block Puzzles • 8-puzzle (on 3x3 grid) has 181,440 states – Easily solvable from any random position • 15-puzzle (on 4x4 grid) has ~1.3 Trillion states – Solvable in a few milliseconds • 24-puzzle (on 5x5 grid) has ~1025 states – Difficult to solveEvaluating a Search Strategy Completeness: Is the strategy guaranteed to find a solution when there is one? Time Complexity: How long does it take to find a solution? Space Complexity: How much memory does it need? Optimality: Does strategy always find a lowest-cost path to solution? (this may include different cost of one solution vs. another).Uninformed search: BFS Consider paths of length 1, then of length 2, then of length 3, then of length 4,....Time and Memory Requirements for BFS – O(bd+1) Let b = branching factor, d = solution depth, then the maximum number of nodes generated is: b + b2 + ... + bd + (bd+1-b)Time and Memory Requirements for BFS – O(bd+1) Example: • b = 10 • 10,000 nodes/second • each node requires 1000 bytes of storage Depth Nodes Time Memory 2 1100 .11 sec 1 meg 4 111,100 11 sec 106 meg 6 107 19 min 10 gig 8 109 31 hrs 1 tera 10 1011 129 days 101 tera 12 1013 35 yrs 10 peta 14 1015 3523 yrs 1 exaUniform-cost Search s s s s 0 A A A A B B B C C C C G G G G 1 5 5 5 5 5 15 15 15 15 11 11 10 s 1 B 10 Requirement: g(Successor(n)) g(n) Use BFS, but always expand the lowest-cost node on the fringe as measured by path cost g(n). Always expand lowest cost node in open-list. Goal-test only before expansion, not after generation.Uninformed search: DFSDFS vs. BFS Time m = d: DFS typically wins m > d: BFS might win m is infinite: BFS probably will do better Space DFS almost always beats BFS Complete Optimal Time Space BFS YES YES O(bd+1) O(bd+1) DFS Finite depth NO O(bm) O(bm) m is maximum search depth d is solution depth b is branching factorWhich search should I use... If there may be infinite paths? B=BFS D=DFSWhich search should I use... If goal is at a known depth? B=BFS D=DFSWhich search should I use... If there is a large (possibly infinite) branching factor? B=BFS D=DFSWhich search should I use... If there are lots of solutions? B=BFS D=DFSBacktracking Search Idea: DFS, but don’t expand all b states before next level Generate the next state as needed (e.g. from previous state) Uses only O(m) storage Important when space required to store each state is very large (e.g. assembly planning)Iterative Deepening [Korf 1985] Idea: Use an artificial depth cutoff, c. If search to depth c succeeds, we're done. If not, increase c by 1 and start over. Each iteration searches using depth-limited DFS.Limit=1 Iterative Deepening Limit=0 Limit=2 Limit=3Cost of Iterative Deepening space: O(bd) as in DFS, time: O(bd) b ratio of IDS to DFS 2 3 3 2 5 1.5 10 1.2 25 1.08 100 1.02Bidirectional SearchComparing Search Strategies ***Note that many of the ``yes's'' above have caveats, which we discussed when covering each of the


View Full Document

CORNELL CS 4700 - Lecture Notes

Download Lecture Notes
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Lecture Notes and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Lecture Notes 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?