1 Search Problems (Where reasoning consists of exploring alternatives) R&N: Chap. 3, Sect. 3.1–

Презентация:



Advertisements
Похожие презентации
Bubble Sort. Bubble Sort Example 9, 6, 2, 12, 11, 9, 3, 7 6, 9, 2, 12, 11, 9, 3, 7 6, 2, 9, 12, 11, 9, 3, 7 6, 2, 9, 11, 12, 9, 3, 7 6, 2, 9, 11, 9, 12,
Advertisements

Denis Sahaidakov BA-51. 1) Identify ways you waste time 2) Organize your workday more efficiently 3) Keep to your schedule 4) Identify personal and organizational.
What points should we consider when choosing a career? Yurina Anzhelika 11 A.
The waterfall model is a popular version of the systems development life cycle model for software engineering. Often considered the classic approach to.
Influence of video’s sound quality on its positions in YouTube search results - SeeZisLab
The waterfall model is a popular version of the systems development life cycle model for software engineering. Often considered the classic approach to.
UNIT 2. Introduction to Computer Programming. COM E 211: Basic Computer Programming UNIT 2. Introduction to Computer Programming Algorithm & Flowcharting.
By Savruyeva Alima. Study schedule strategy That Actually Works!
Electricity Electric circuits
Relation properties in graphs. Reflexive relation All nodes have loops ReflexiveNot reflexiveReflexive
Influence of property optimization of the uploaded file on its positions in Youtube search results - SeeZisLab
Creating Grammar Activities and Tasks BY JOSH GASTON.
Mass Media. Whats the news?. The mass media play an important part in our lives. Newspaper, radio and especially TV inform us of what is going on in this.
8 -1 Dynamic Programming Khujaev Otabek Fibonacci sequence Fibonacci sequence: 0, 1, 1, 2, 3, 5, 8, 13, 21, … F i = i if i 1 F i = F i-1 + F i-2.
Choosing the right career to follow is probably one of the most important decisions people ever make. For that reason we should do a lot of thinking about.
Incoterms
Influence of video name blurring onto its YouTube search result ranking - SeeZisLab
Mathematical modeling in Power Engineering. Mathematical model A mathematical model is a description of a system using mathematical concepts and language.
THE HLB SYSTEM Done by: Abdykadyrkyzy A., Nurkair A.
Sequences Sequences are patterns. Each pattern or number in a sequence is called a term. The number at the start is called the first term. The term-to-term.
Транксрипт:

1 Search Problems (Where reasoning consists of exploring alternatives) R&N: Chap. 3, Sect. 3.1–

2 Declarative knowledge creates alternatives: Which pieces of knowledge to use? How to use them? Search is a about exploring alternatives. It is a major approach to exploit knowledge Search Knowledge rep. Planning Reasoning Learning Agent Robotics Perception Natural language... Expert Systems Constraint satisfaction

3 Example: 8-Puzzle Initial stateGoal state State: Any arrangement of 8 numbered tiles and an empty tile on a 3x3 board

4 8-Puzzle: Successor Function Search is about the exploration of alternatives SUCC(state) subset of states The successor function is knowledge about the 8-puzzle game, but it does not tell us which outcome to use, nor to which state of the board to apply it.

5 Across history, puzzles and games requiring the exploration of alternatives have been considered a challenge for human intelligence: Chess originated in Persia and India about 4000 years ago Checkers appear in 3600-year-old Egyptian paintings Go originated in China over 3000 years ago So, its not surprising that AI uses games to design and test algorithms

6

7 (n 2 -1)-puzzle

8 15-Puzzle Introduced (?) in 1878 by Sam Loyd, who dubbed himself Americas greatest puzzle-expert

9 15-Puzzle Sam Loyd offered $1,000 of his own money to the first person who would solve the following problem: ?

10 But no one ever won the prize !!

11 Stating a Problem as a Search Problem State space S Successor function: x S SUCCESSORS (x) 2 S Initial state s 0 Goal test: x S GOAL? (x) =T or F Arc cost S 1 3 2

12 State Graph Each state is represented by a distinct node An arc (or edge) connects a node s to a node s if s SUCCESSORS (s) The state graph may contain more than one connected component

13 Solution to the Search Problem A solution is a path connecting the initial node to a goal node (any one) I G

14 Solution to the Search Problem A solution is a path connecting the initial node to a goal node (any one) The cost of a path is the sum of the arc costs along this path An optimal solution is a solution path of minimum cost There might be no solution ! I G

15 How big is the state space of the (n 2 -1)-puzzle? 8-puzzle ?? states

16 How big is the state space of the (n 2 -1)-puzzle? 8-puzzle 9! = 362,880 states 15-puzzle 16! ~ 2.09 x states 24-puzzle 25! ~ states But only half of these states are reachable from any given state (but you may not know that in advance)

17 Wlg, let the goal be: A tile j appears after a tile i if either j appears on the same row as i to the right of i, or on another row below the row of i. For every i = 1, 2,..., 15, let n i be the number of tiles j < i that appear after tile i (permutation inversions) N = n 2 + n n 15 + row number of empty tile Permutation Inversions n 2 = 0n 3 = 0n 4 = 0 n 5 = 0n 6 = 0n 7 = 1 n 8 = 1n 9 = 1n 10 = 4 n 11 = 0n 12 = 0n 13 = 0 n 14 = 0n 15 = 0 N = 7 + 4

18 Proposition: (N mod 2) is invariant under any legal move of the empty tile Proof: Any horizontal move of the empty tile leaves N unchanged A vertical move of the empty tile changes N by an even increment ( ) s = s = N(s) = N(s)

19 Proposition: (N mod 2) is invariant under any legal move of the empty tile For a goal state g to be reachable from a state s, a necessary condition is that N(g) and N(s) have the same parity It can be shown that this is also a sufficient condition The state graph consists of two connected components of equal size

20 So, the second state is not reachable from the first, and Sam Loyd took no risk with his money... N = 4N = 5

21 What is the Actual State Space? a)The set of all states? [e.g., a set of 16! states for the 15-puzzle] b)The set of all states reachable from a given initial state? [e.g., a set of 16!/2 states for the 15-puzzle] In general, the answer is a) [because one does not know in advance which states are reachable] But a fast test determining whether a state is reachable from another is very useful, as search techniques are often inefficient when a problem has no solution

22 Searching the State Space It is often not feasible (or too expensive) to build a complete representation of the state graph

23 8-puzzle 362,880 states 15-puzzle 2.09 x states 24-puzzle states 100 millions states/sec sec ~ 55 hours > 10 9 years 8-, 15-, 24-Puzzles

24 Searching the State Space Often it is not feasible (or too expensive) to build a complete representation of the state graph A problem solver must construct a solution by exploring a small portion of the graph

25 Searching the State Space Search tree

26 Searching the State Space Search tree

27 Searching the State Space Search tree

28 Searching the State Space Search tree

29 Searching the State Space Search tree

30 Searching the State Space Search tree

31 Simple Problem-Solving-Agent Algorithm 1.I sense/read initial state 2.GOAL? select/read goal test 3.Succ select/read successor function 4.solution search(I, GOAL?, Succ) 5.perform(solution)

32 State Space Each state is an abstract representation of a collection of possible worlds sharing some crucial properties and differing on non-important details only E.g.: In assembly planning, a state does not define exactly the absolute position of each part The state space is discrete. It may be finite, or infinite

33 Successor Function It implicitly represents all the actions that are feasible in each state

34 Successor Function It implicitly represents all the actions that are feasible in each state Only the results of the actions (the successor states) and their costs are returned by the function The successor function is a black box: its content is unknown E.g., in assembly planning, the successor function may be quite complex (collision, stability, grasping,...)

35 Path Cost An arc cost is a positive number measuring the cost of performing the action corresponding to the arc, e.g.: 1 in the 8-puzzle example expected time to merge two sub-assemblies We will assume that for any given problem the cost c of an arc always verifies: c ε 0, where ε is a constant

36 Path Cost An arc cost is a positive number measuring the cost of performing the action corresponding to the arc, e.g.: 1 in the 8-puzzle example expected time to merge two sub-assemblies We will assume that for any given problem the cost c of an arc always verifies: c ε 0, where ε is a constant [This condition guarantees that, if path becomes arbitrarily long, its cost also becomes arbitrarily large] Why is this needed?

37 It may be explicitly described: or partially described: or defined by a condition, e.g., the sum of every row, of every column, and of every diagonal equals 30 Goal State aa aa aa (a stands for any other than 1, 5, and 8)

38 Other examples

39 8-Queens Problem Place 8 queens in a chessboard so that no two queens are in the same row, column, or diagonal. A solutionNot a solution

40 Formulation #1 States: all arrangements of 0, 1, 2,..., 8 queens on the board Initial state: 0 queens on the board Successor function: each of the successors is obtained by adding one queen in an empty square Arc cost: irrelevant Goal test: 8 queens are on the board, with no queens attacking each other ~ 64 x 63 x... x 57 ~ 3 x states

41 Formulation #2 States: all arrangements of k = 0, 1, 2,..., 8 queens in the k leftmost columns with no two queens attacking each other Initial state: 0 queens on the board Successor function: each successor is obtained by adding one queen in any square that is not attacked by any queen already in the board, in the leftmost empty column Arc cost: irrelevant Goal test: 8 queens are on the board 2,057 states

42 n-Queens Problem A solution is a goal node, not a path to this node (typical of design problem) Number of states in state space: 8-queens 2, queens But techniques exist to solve n-queens problems efficiently for large values of n They exploit the fact that there are many solutions well distributed in the state space

43 Path Planning What is the state space ?

44 Formulation #1 Cost of one horizontal/vertical step = 1 Cost of one diagonal step = 2

45 Optimal Solution This path is the shortest in the discretized state space, but not in the original continuous space

46 Formulation #2 sweep-line

47 Formulation #2

48 States

49 Successor Function

50 Solution Path A path-smoothing post-processing step is usually needed to shorten the path further

51 Formulation #3 Cost of one step: length of segment

52 Formulation #3 Cost of one step: length of segment Visibility graph

53 Solution Path The shortest path in this state space is also the shortest in the original continuous space

54 Assembly (Sequence) Planning

55 Possible Formulation States: All decompositions of the assembly into subassemblies (subsets of parts in their relative placements in the assembly) Initial state: All subassemblies are made of a single part Goal state: Un-decomposed assembly Successor function: Each successor of a state is obtained by merging two subassemblies (the successor function must check if the merging is feasible: collision, stability, grasping,...) Arc cost: 1 or time to carry the merging

56 A Portion of State Space

57 But the formulation rules out non-monotonic assemblies

58 But the formulation rules out non-monotonic assemblies

59 But the formulation rules out non-monotonic assemblies

60 But the formulation rules out non-monotonic assemblies

61 But the formulation rules out non-monotonic assemblies

62 But the formulation rules out non-monotonic assemblies X This subassembly is not allowed in the definition of the state space: the 2 parts are not in their relative placements in the assembly Allowing any grouping of parts as a valid subassembly would make the state space much bigger and more difficult to search

63 Assumptions in Basic Search The world is static The world is discretizable The world is observable The actions are deterministic But many of these assumptions can be removed, and search still remains an important problem-solving tool

64 Search and AI Search methods are ubiquitous in AI systems. They often are the backbones of both core and peripheral modules An autonomous robot uses search methods: to decide which actions to take and which sensing operations to perform, to quickly anticipate collision, to plan trajectories, to interpret large numerical datasets provided by sensors into compact symbolic representations, to diagnose why something did not happen as expected, etc... Many searches may occur concurrently and sequentially

65 Applications Search plays a key role in many applications, e.g.: Route finding: airline travel, networks Package/mail distribution Pipe routing, VLSI routing Comparison and classification of protein folds Pharmaceutical drug design Design of protein-like molecules Video games