5-1 Chapter 5 Tree Searching Strategies. 5-2 Breadth-first search (BFS) 8-puzzle problem The breadth-first search uses a queue to hold all expanded nodes.

Slides:



Advertisements
Similar presentations
Chapter 4: Informed Heuristic Search
Advertisements

Artificial Intelligence Chapter 9 Heuristic Search Biointelligence Lab School of Computer Sci. & Eng. Seoul National University.
5-1 Chapter 5 Tree Searching Strategies. 5-2 Satisfiability problem Tree representation of 8 assignments. If there are n variables x 1, x 2, …,x n, then.
Branch & Bound Algorithms
1 Tree Searching Strategies Updated: 2010/12/27. 2 The procedure of solving many problems may be represented by trees. Therefore the solving of these.
EIE426-AICV 1 Blind and Informed Search Methods Filename: eie426-search-methods-0809.ppt.
CSC 423 ARTIFICIAL INTELLIGENCE
S. J. Shyu Chap. 1 Introduction 1 The Design and Analysis of Algorithms Chapter 1 Introduction S. J. Shyu.
Chapter 3 The Greedy Method 3.
Review: Search problem formulation
Branch and Bound Searching Strategies
6 - 1 § 6 The Searching Strategies e.g. satisfiability problem x1x1 x2x2 x3x3 FFF FFT FTF FTT TFF TFT TTF TTT.
Branch and Bound Similar to backtracking in generating a search tree and looking for one or more solutions Different in that the “objective” is constrained.
3 -1 Chapter 3 The Greedy Method 3 -2 The greedy method Suppose that a problem can be solved by a sequence of decisions. The greedy method has that each.
1 -1 Chapter 1 Introduction Why Do We Need to Study Algorithms? To learn strategies to design efficient algorithms. To understand the difficulty.
Nyhoff, ADTs, Data Structures and Problem Solving with C++, Second Edition, © 2005 Pearson Education, Inc. All rights reserved Graphs.
1 Tree Searching Strategies. 2 The procedure of solving many problems may be represented by trees. Therefore the solving of these problems becomes a tree.
Find a Path s A D B E C F G Heuristically Informed Methods  Which node do I expand next?  What information can I use to guide this.
Using Search in Problem Solving
1 Branch and Bound Searching Strategies 2 Branch-and-bound strategy 2 mechanisms: A mechanism to generate branches A mechanism to generate a bound so.
Using Search in Problem Solving
1 -1 Chapter 1 Introduction Why to study algorithms? Sorting problem: To sort a set of elements into increasing or decreasing order. 11, 7, 14,
Ch 13 – Backtracking + Branch-and-Bound
1 Tree Searching Strategies. 2 The procedure of solving many problems may be represented by trees. Therefore the solving of these problems becomes a tree.
Jin Zheng, Central South University1 Branch-and-bound.
Linear Programming Applications
Backtracking.
Informed Search Strategies
© The McGraw-Hill Companies, Inc., Chapter 3 The Greedy Method.
Fundamentals of Algorithms MCS - 2 Lecture # 7
MODELING AND ANALYSIS OF MANUFACTURING SYSTEMS Session 12 MACHINE SETUP AND OPERATION SEQUENCING E. Gutierrez-Miravete Spring 2001.
Design and Analysis of Algorithms - Chapter 111 How to tackle those difficult problems... There are two principal approaches to tackling NP-hard problems.
Chapter 12 Coping with the Limitations of Algorithm Power Copyright © 2007 Pearson Addison-Wesley. All rights reserved.
BackTracking CS335. N-Queens The object is to place queens on a chess board in such as way as no queen can capture another one in a single move –Recall.
Today’s Topics FREE Code that will Write Your PhD Thesis, a Best-Selling Novel, or Your Next Methods for Intelligently/Efficiently Searching a Space.
Notes 5IE 3121 Knapsack Model Intuitive idea: what is the most valuable collection of items that can be fit into a backpack?
State-Space Searches. 2 State spaces A state space consists of A (possibly infinite) set of states The start state represents the initial problem Each.
3 -1 Chapter 3 The Greedy Method 3 -2 A simple example Problem: Pick k numbers out of n numbers such that the sum of these k numbers is the largest.
Informed search strategies Idea: give the algorithm “hints” about the desirability of different states – Use an evaluation function to rank nodes and select.
For Friday Finish reading chapter 4 Homework: –Lisp handout 4.
For Monday Read chapter 4, section 1 No homework..
Review: Tree search Initialize the frontier using the starting state While the frontier is not empty – Choose a frontier node to expand according to search.
Lecture 3: Uninformed Search
1 Solving problems by searching 171, Class 2 Chapter 3.
1 Branch and Bound Searching Strategies Updated: 12/27/2010.
Integer Linear Programming Terms Pure integer programming mixed integer programming 0-1 integer programming LP relaxation of the IP Upper bound O.F. Lower.
COPING WITH THE LIMITATIONS OF ALGORITHM POWER
Basic Search Procedure 1. Start with the start node (root of the search tree) and place in on the queue 2. Remove the front node in the queue and If the.
Copyright © 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley. Ver Chapter 13: Graphs Data Abstraction & Problem Solving with C++
1 Directed Graphs Chapter 8. 2 Objectives You will be able to: Say what a directed graph is. Describe two ways to represent a directed graph: Adjacency.
Search Techniques CS480/580 Fall Introduction Trees: – Root, parent, child, sibling, leaf node, node, edge – Single path from root to any node Graphs:
Ch22.Branch and Bound.
CSCE350 Algorithms and Data Structure Lecture 21 Jianjun Hu Department of Computer Science and Engineering University of South Carolina
© The McGraw-Hill Companies, Inc., Chapter 1 Introduction.
Chapter 3.5 and 3.6 Heuristic Search Continued. Review:Learning Objectives Heuristic search strategies –Best-first search –A* algorithm Heuristic functions.
Branch and Bound Searching Strategies
1 Tree Searching Strategies 2010/12/03. 2 The procedure of solving many problems may be represented by trees. Therefore the solving of these problems.
Optimization Problems The previous examples simply find a single solution What if we have a cost associated with each solution and we want to find the.
Lecture 2: Problem Solving using State Space Representation CS 271: Fall, 2008.
For Monday Read chapter 4 exercise 1 No homework.
Exhaustive search Exhaustive search is simply a brute- force approach to combinatorial problems. It suggests generating each and every element of the problem.
BackTracking CS255.
Artificial Intelligence Problem solving by searching CSC 361
Analysis and design of algorithm
Branch and Bound.
Applied Combinatorics, 4th Ed. Alan Tucker
Branch and Bound Searching Strategies
EMIS 8373: Integer Programming
Tree Searching Strategies
Lecture 4: Tree Search Strategies
Presentation transcript:

5-1 Chapter 5 Tree Searching Strategies

5-2 Breadth-first search (BFS) 8-puzzle problem The breadth-first search uses a queue to hold all expanded nodes.

5-3 Depth-first search (DFS) e.g. sum of subset problem S={7, 5, 1, 2, 10}  S ’  S  sum of S ’ = 9 ? A stack can be used to guide the depth-first search. A sum of subset problem solved by depth-first search.

5-4 Hill climbing A variant of depth-first search The method selects the locally optimal node to expand. e.g. 8-puzzle problem evaluation function f(n) = d(n) + w(n) where d(n) is the depth of node n w(n) is # of misplaced tiles in node n.

5-5 An 8-puzzle problem solved by a hill climbing method.

5-6 Best-first search strategy Combine depth-first search and breadth-first search. Selecting the node with the best estimated cost among all nodes. This method has a global view.

5-7 An 8-puzzle problem solved by a best-first search scheme.

5-8 Best-First Search Scheme Step1: Form a one-element list consisting of the root node. Step2: Remove the first element from the list. Expand the first element. If one of the descendants of the first element is a goal node, then stop; otherwise, add the descendants into the list. Step3: Sort the entire list by the values of some estimation function. Step4: If the list is empty, then failure. Otherwise, go to Step 2.

5-9 Branch-and-bound strategy This strategy can be used to efficiently solve optimization problems. e.g. A multi-stage graph searching problem.

5-10 Solved by branch -and-bound

5-11 Personnel assignment problem A linearly ordered set of persons P={P 1, P 2, …, P n } where P 1 <P 2 < … <P n A partially ordered set of jobs J={J 1, J 2, …, J n } Suppose that P i and P j are assigned to jobs f(P i ) and f(P j ) respectively. If f(P i )  f(P j ), then P i  P j. Cost C ij is the cost of assigning P i to J j. We want to find a feasible assignment with the minimum cost. i.e. X ij = 1 if P i is assigned to J j X ij = 0 otherwise. Minimize  i,j C ij X ij

5-12 e.g. A partial ordering of jobs After topological sorting, one of the following topologically sorted sequences will be generated: One of feasible assignments: P 1 → J 1, P 2 → J 2, P 3 → J 3, P 4 → J 4 J1J1 J2J2 ↓ ↘ ↓ J3J3 J4J4 J1,J1,J2,J2,J3,J3,J4J4 J1,J1,J2,J2,J4,J4,J3J3 J1,J1,J3,J3,J2,J2,J4J4 J2,J2,J1,J1,J3,J3,J4J4 J2,J2,J1,J1,J4J4 J3J3

5-13 A solution tree All possible solutions can be represented by a solution tree. J1J1 J2J2 ↓ ↘ ↓ J3J3 J4J4

5-14 Cost matrix Jobs Persons Cost matrix Apply the best- first search scheme:

5-15 Cost matrix Jobs Persons Reduced cost matrix Jobs Persons (-12) 26102(-26) (-3) 48005(-10) (-3) Reduced cost matrix

5-16 A reduced cost matrix can be obtained: subtract a constant from each row and each column respectively such that each row and each column contains at least one zero. Total cost subtracted: = 54 This is a lower bound of our solution.

5-17 Branch-and-bound for the personnel assignment problem Bounding of subsolutions: Jobs Persons

5-18 Given a set of points and their pairwise distances, the task is to find a shortest tour that visits each point exactly once. It is NP-complete. The traveling salesperson optimization problem

5-19 The traveling salesperson optimization problem A cost matrix jiji ∞ ∞ ∞ ∞ ∞ ∞ ∞

5-20 A reduced cost matrix jiji ∞ (-3) 20∞ (-4) 3291∞200129(-16) ∞49084(-7) ∞032(-25) ∞4(-3) ∞(-26) Reduced: 84

5-21 Another reduced matrix jiji ∞ ∞ ∞ ∞ ∞ ∞ ∞ (-7)(-1) (-4) Total cost reduced: = 96 (lower bound)

5-22 The highest level of a decision tree: If we use arc 3-5 to split, the difference on the lower bounds is 17+1 = 18.

5-23 A reduced cost matrix if arc (4,6) is included in the solution. Arc (6,4) is changed to be infinity since it can not be included in the solution.

5-24 The reduced cost matrix for all solutions with arc 4-6 Total cost reduced: 96+3 = 99 (new lower bound) jiji ∞ ∞ ∞ ∞25(-3) 60858∞ ∞

5-25 A branch-and-bound solution of a traveling salesperson problem.

5-26 The 0/1 knapsack problem Positive integer P 1, P 2, …, P n (profit) W 1, W 2, …, W n (weight) M (capacity)

5-27 e.g. n = 6, M = 34 A feasible solution: X 1 = 1, X 2 = 1, X 3 = 0, X 4 = 0, X 5 = 0, X 6 = 0 -(P 1 +P 2 ) = -16 (upper bound) Any solution higher than -16 can not be an optimal solution. i PiPi WiWi (P i /W i  P i+1 /W i+1 )

5-28 Relax the restriction Relax our restriction from X i = 0 or 1 to 0  X i  1 (knapsack problem)

5-29 Upper bound and lower bound We can use the greedy method to find an optimal solution for knapsack problem: X 1 = 1, X 2 =1, X 3 = 5/8, X 4 = 0, X 5 = 0, X 6 =0 -(P 1 +P 2 +5/8P 3 ) = (lower bound) -18 is our lower bound. (only consider integers)  -18  optimal solution  -16 optimal solution: X 1 = 1, X 2 = 0, X 3 = 0, X 4 = 1, X 5 = 1, X 6 = 0 -(P 1 +P 4 +P 5 ) = -17

5-30 0/1 knapsack problem solved by branch-and-bound strategy. Expand the node with the best lower bound.