Lecture 5: Search Algorithms for Discrete Optimization Problems
|
|
- Roland Gibson
- 5 years ago
- Views:
Transcription
1 Lecture 5: Search Algorithms for Discrete Optimization Problems
2 Definitions Discrete optimization problem (DOP): tuple (S, f), S finite set of feasible solutions, f : S R, cost function. Objective: find x opt => f(x opt ) f(x) for all x in S Examples of DOP: Scheduling Optimal layout of VLSI chips Robot motion planning Test-pattern generation for digital circuits DOP are NP-hard problems Need heuristic algorithms => suboptimal solutions
3 Example: 0/1 Integer-linear Programming A mxn, b mx1, c nx1 Objective: min f(x) = min c T x where x is a vector with elements in {0,1} subject to: Ax b S is the set of vectors x satisfying Ax b
4 Example: The 8-puzzle problem S: set of all sequences of moves from the initial to the final configuration Objective: find the shortest sequence of moves from the initial to the final configuration
5 Example: 0/1 Integer-linear Programming 5x 1 + 2x 2 + x 3 + 2x 4 8 x 1 - x 2 -x 3 + 2x 4 2 3x 1 + x 2 + x 3 + 3x 4 5 f(x) = 2x 1 + x 2 -x 3-2x 4 State space graph => Check: \sum {xj free} max{a[i,j], 0} + \sum {xj fixed} A[i,j]x j b i for i = 1,..,m Solution x = (1, 0, 1, 1)
6 Admissible Heuristic Heuristic estimate: the estimate of the cost to reach the goal state from an intermediate state h(x) heuristic estimate of reaching the goal state from x g(x) cost of reaching state x from s h is admissible if h(x) is a lower bound on the cost of reaching the goal state from x, for all x If h(x) admissible => l(x) = g(x) + h(x) is the lower bound on the cost of reaching the goal state from the initial state. Example: Manhattan distance is an admissible heuristic for the 8-puzzle M(i,j) = i - k + j l The sum of the M distances between the initial and final positions of all tiles is an estimate of the number of moves to reach the final positions.
7 Unfolding a State Graph into a Tree
8 Depth-First Search Algorithms solve DOP formulated as trees in each step expand the most recently generated node. If no successor node then backtrack. Simple backtracking: DFS that terminates after finding the first solution. DFS Branch-and-Bound: exhaustively searches the state space for optimal solutions it discards the inferior partial solutions
9 Depth-First Search: The 8-puzzle Successors are ordered as: up, down, left, and right.
10 Depth-First Search Algorithms Iterative Deepening DFS (ID-DFS): a bound is imposed on the depth to which DF searches if the node to be expanded is beyond the depth bound, the node is not expanded and the algorithm backtracks if solution is not found => search again with a larger depth bound Iterative Deepening A* (IDA*): uses l-values of the nodes to bound the depth => performs cost-bounded searches finds the optimal solution if the heuristic function is admissible
11 Representing a DFS Tree Search tree is represented as a stack. The storage cost is O(md) where m is storage for one state and d is the max. depth. Two variants: Untried alternatives only Untried alternatives along with their parent (useful for checking duplicate states)
12 Best-First Search Algorithms solve DOP formulated as both trees and graphs use heuristics to direct the search to portions of the search space likely to produce a solution maintains two lists: open and closed at each step the most promising node from the open list is expanded successors of the newly open node are placed in the open list if: 1) the successor is not in one of the lists 2) the successor is already in one of the lists but has a lower heuristic value. A* algorithm: uses l as a heuristic evaluation function A* finds an optimal solution if l is admissible
13 Best-First Search: the 8-puzzle
14 Best-First Search: the 8-puzzle
15 Search Overhead Factor Sources of overhead in parallel search: Communication overhead Idle time due to load imbalances Contention for shared data structures The amount of work done by the parallel algorithm (W p ) if often different from the that done by the sequential algorithm (W) Search overhead factor = W p /W Upper bound on the speedup: p (W/W p ) Superlinear speedup is possible!
16 Parallel Depth-First Search How to distribute the search space among the processors? Static distribution => load imbalance Solution?
17 Parallel Depth-First Search Dynamic load balancing: when a processor runs out of work it gets more work from another processor that has work. Parallel DFS with dynamic load balancing: Each processor performs DFS on a disjoint part of the search space. When a processor finishes searching its part, it requests an unsearched part from other processors. When goal state is found => terminate (broadcast a message to all processes to terminate). If no solution => processors run out of work and terminate (needs a termination detection algorithm) At the beginning only one processor contains the whole state space. The space is distributed as the processors requests work. Donor and recipient processors. Problems: How to split the work? => work splitting strategies How to determine the donor? => load-balancing schemes
18 Parallel Depth-First Search
19 Work-Splitting Strategies Donor s stack is split into two stacks and one stack is sent to the recipient. If two little work is sent => recipient quickly becomes idle If two much work is sent => donor quickly becomes idle Ideal: split the stack into equal parts => half-split Nodes at the bottom of the stack => roots of bigger subtrees Nodes at the top of the stack => roots of smaller subtrees Nodes beyond a cutoff depth are not sent => Avoids sending to little work Strategies: 1. Send nodes near the bottom of the stack 2. Send nodes near the cutoff depth 3. Send half the nodes between the bottom of the stack and the cutoff depth. 1. and 3. work well for uniform strategy spaces 3. works well for irregular strategy spaces
20 Work-Splitting Strategies Splitting using strategy 3
21 Load-Balancing Schemes Asynchronous Round Robin (ARR): Donor is specified by target variable. When a processor runs out of work it attempts to get work from the processor whose label is target. target = target + 1, each time a request is made. Initially: target = ((label+1) mod p) Global Round Robin (GRR): target is a global variable (stored at P 0 ) Drawback: contention for access target. Random Polling (RP): When a processor becomes idle it randomly selects a donor.
22 Analysis of Parallel DFS Compute the overhead T o Overhead in load balancing: communication (sending and requesting work) idle time (waiting for work) termination detection contention for shared resources Analysis assumes that search overhead factor W p /W = 1 Communication time subsumes the idle time. Communication overhead is dominant.
23 Analysis of Parallel DFS Assumptions: the work at any processor can be partitioned into independent pieces if size > ε a reasonable work-splitting mechanism exist => α-splitting mechanism Work w can be partitioned into ψw and (1- ψ)w, 0 <= ψ <= 1 There exists α (0 < α <= 0.5) such that ψw > αw and (1- ψ)w > αw => both partitions have at least αw work.
24 Analysis of Parallel DFS Donor has w i work => after splitting: w j > αw i and w k > αw i, α < 0.5 After a work transfer, the donor and the recipient have work (1- α)w i Assume there are p pieces of work: w 0,w 1,, w p-1,and the largest piece is of size w. After splitting => 2p pieces: ψ 0 w 0, ψ 1 w 1,, ψ p-1 w p-1, (1- ψ 0 )w 0, (1- ψ 1 )w 1,, (1- ψ p-1 )w p-1 => the size of the largest piece is (1- α)w After V(p) work requests a processor receives at least one request => V(p) p Initially P 0 has W units of work After V(p) work requests => max work remaining at any processor < (1- α)w After 2V(p) => (1- α) 2 W After (log 1/(1- α) (W/ε))V(p) => max work < ε => Total number of requests O(V(p) log W) assuming α=0.5 ε = 1.
25 Analysis of Parallel DFS Assume that amount of data associated with a work transfer is constant T o = t comm V(p) log W E = 1/(1 + T o /W) = 1/(1 + t comm V(p) log W)/W Efficiency depends on: The architecture ( t comm ) Load balancing scheme ( V(p) )
26 Computation of V(p) Asynchronous Round Robin (ARR): Worst case when P p-1 has all the work and local counters of all other processors are 0 P p-1 receives a request after one processor issues (p-1) requests and the other (p-2) processors issue (p-2) requests => V(p) = (p-1) + (p-2)(p-2) = O(p 2 ) Global Round Robin (GRR): After p requests each processor has received one request => O(p) Random Polling (RP); Worst-case => unbounded Average case => O(p log p)
27 Analysis of Load Balancing Schemes T o = O(V(p) log W) Asynchronous Round Robin (ARR): T o = O(p 2 log W) W=O(p 2 log W) = O(p 2 log (p 2 log W))= O(p 2 log p + O(p 2 log log W)) => Isoefficiency function O(p 2 log p) Global Round Robin (GRR): T o = O(p log W) W = O(p log W) = O(p log (p log W)) = O(p log p + O(p log log W)) => Isoefficiency due to communication O(p log p) The number of time the shared variable is accessed O(p log W) If the processors are used efficiently => execution time = O(W/p) W/p = O(p log W) => Isoefficiency due to contention O(p 2 log p) => overall isoefficiency O(p 2 log p) Random Polling (RP): T o = O(p log p log W) => Isoefficiency due to communication O(p log 2 p)
28 Dijkstra s Token Termination Detection Algorithm The ring algorithm: When idle P 0 sends a token to P 1 When idle P i-1 sends a token to P i When P 0 receives the token back all processors are idle. => Cannot be applied to parallel DFS (After becoming idle a processor my receive more work.)
29 Dijkstra s Token Termination Detection Algorithm Processors can be in two states: black or white. Initially all processors are white. The modified ring algorithm: When idle P 0 initiates the termination detection algorithm P 0 =white and P 0 w P 1 If P j sends work to P i and j > i => P j = black If P i has the token and is idle then it passes the token to P i+1. If P i == black => color of token = black before sending to P i+1 If P i == white pass token unchanged. After P i passes the token to P i+1 => P i = white The algorithm terminates when P 0 receives a white token and is itself idle. T = O(p)
30 Tree-Based Termination Detection Initially P 0 has all the work. Weights are associated with each processor When the weight of P 0 becomes 1 terminate Drawback: computers have finite precision and weight at P 0 may not become 1. Solution: use inverse of weight.
31 Parallel Depth-First Branch-and- Bound Search (DFBB) DFS Branch-and-Bound: exhaustively searches the state space for optimal solutions it discards the inferior partial solutions Parallel version of DFBB: modified parallel DFS => all processors are informed of the current best solution path Shared memory: store the best solution path and cost in the global memory. each time a processor finds a solution => compare its cost with the current cost if lower => replace the current best path with the current one. Message-passing: when a solution is found the processor broadcasts it => all processors update their current best cost. Small overhead added => similar performance as the parallel DFS
32 Parallel IDA* IDA* explores the search tree iteratively by increasing the cost bounds. Parallel IDA*: Executes each IDA* iteration by using parallel DFS. All processors use the same bound and searches its own space. Each processor stores the bound locally. After each iteration a selected processor computes the new bound for the next iteration. When the goal state is found the processor informs all processors. Performance similar to parallel DFS.
33 Parallel Best-First Search BFS: maintains two lists: open and closed at each step the most promising node (according to the l- value) from the open list is expanded Newly generated nodes are added to the open list. Parallel BFS: different processors concurrently expand different nodes form open list How to manage the open list? Centralized strategy: Each processor gets work from a single global open list.
34 Parallel Best-First Search (centralized strategy) Problems: Needs termination detection: check if the other nodes have found a better solution. Contention for the open list => limits the speedup
35 Parallel Best-First Search Avoid congestion due to global open list => Distribute the open list: each processor has its own local open list Initially the search space is statically distributed among processors by expanding some nodes Processors expand nodes concurrently No communication: some processors may explore unnecessary nodes => poor speedup Processors must communicate to increase efficiency. How much communication?
36 Parallel Best-First Search Communication strategies for Tree BFS: Communication allows nodes to be exchanged between open lists Goal: ensure that nodes with good l-values are distributed evenly. Random communication strategy: A processor periodically send some of its best nodes to a randomly selected processor If a processor stores a good part of the space => the others will get part of it If the communication cost is low => communicate after each node expansion
37 Parallel Best-First Search Ring communication strategy: Processors are mapped into a virtual ring Each processor periodically exchanges some of its best nodes with its neighbors Drawback: it takes a long time to distributed good nodes if the state space is not uniform
38 Parallel Best-First Search Blackboard communication strategy: After selecting the best node from its local open list a processor expands the node only if its l-value is within a tolerable limit of the best node on the blackboard If selected node is better than the best node on BB it sends some of its best nodes to BB before expanding it If selected node is worse that the processor retrieves some nodes from BB and selects one for expansion Drawback: suitable for shared memory only.
39 Parallel Best-First Search Communication strategies for Graph BFS: When searching graphs => must check for node duplication Idea: whenever a node is generated it is mapped to the same processor, which checks for replication Use a hash function h(node) = proc. label Algorithm: When a new node is generated => compute the hash => label Send the node to the processor indicate by label When the node is received the processor checks if it already exists in the local open or closed list. If not => insert into open list If yes and has better cost => replace it. Ensures an even distribution of nodes with good l- values.
40 Speedup Anomalies in Parallel Search Algorithms Acceleration anomalies => supralinear speedup
41 Speedup Anomalies in Parallel Search Algorithms Deceleration anomalies => sublinear speedup
Search Algorithms for Discrete Optimization Problems
Search Algorithms for Discrete Optimization Problems Ananth Grama, Anshul Gupta, George Karypis, and Vipin Kumar To accompany the text ``Introduction to Parallel Computing'', Addison Wesley, 2003. Topic
More informationChapter 11 Search Algorithms for Discrete Optimization Problems
Chapter Search Algorithms for Discrete Optimization Problems (Selected slides) A. Grama, A. Gupta, G. Karypis, and V. Kumar To accompany the text Introduction to Parallel Computing, Addison Wesley, 2003.
More informationSearch Algorithms for Discrete Optimization Problems
Search Algorithms for Discrete Optimization Problems Ananth Grama, Anshul Gupta, George Karypis, and Vipin Kumar To accompany the text ``Introduction to Parallel Computing'', Addison Wesley, 2003. 1 Topic
More informationParallel Traveling Salesman. PhD Student: Viet Anh Trinh Advisor: Professor Feng Gu.
Parallel Traveling Salesman PhD Student: Viet Anh Trinh Advisor: Professor Feng Gu Agenda 1. Traveling salesman introduction 2. Genetic Algorithm for TSP 3. Tree Search for TSP Travelling Salesman - Set
More informationSearch and Optimization
Search and Optimization Search, Optimization and Game-Playing The goal is to find one or more optimal or sub-optimal solutions in a given search space. We can either be interested in finding any one solution
More informationParallel Programming. Parallel algorithms Combinatorial Search
Parallel Programming Parallel algorithms Combinatorial Search Some Combinatorial Search Methods Divide and conquer Backtrack search Branch and bound Game tree search (minimax, alpha-beta) 2010@FEUP Parallel
More informationExam Design and Analysis of Algorithms for Parallel Computer Systems 9 15 at ÖP3
UMEÅ UNIVERSITET Institutionen för datavetenskap Lars Karlsson, Bo Kågström och Mikael Rännar Design and Analysis of Algorithms for Parallel Computer Systems VT2009 June 2, 2009 Exam Design and Analysis
More informationHeuristic (Informed) Search
Heuristic (Informed) Search (Where we try to choose smartly) R&N: Chap., Sect..1 3 1 Search Algorithm #2 SEARCH#2 1. INSERT(initial-node,Open-List) 2. Repeat: a. If empty(open-list) then return failure
More informationCAP 4630 Artificial Intelligence
CAP 4630 Artificial Intelligence Instructor: Sam Ganzfried sganzfri@cis.fiu.edu 1 http://www.ultimateaiclass.com/ https://moodle.cis.fiu.edu/ 2 Solving problems by search 3 8-puzzle 4 8-queens 5 Search
More informationProblem Solving and Search
Artificial Intelligence Problem Solving and Search Dae-Won Kim School of Computer Science & Engineering Chung-Ang University Outline Problem-solving agents Problem types Problem formulation Example problems
More informationEfficient memory-bounded search methods
Efficient memory-bounded search methods Mikhail Simin Arjang Fahim CSCE 580: Artificial Intelligence Fall 2011 Dr. Marco Voltorta Outline of The Presentation Motivations and Objectives Background - BFS
More informationA4B36ZUI - Introduction ARTIFICIAL INTELLIGENCE
A4B36ZUI - Introduction to ARTIFICIAL INTELLIGENCE https://cw.fel.cvut.cz/wiki/courses/a4b33zui/start Michal Pechoucek, Branislav Bosansky, Jiri Klema & Olga Stepankova Department of Computer Science Czech
More informationSearching with Partial Information
Searching with Partial Information Above we (unrealistically) assumed that the environment is fully observable and deterministic Moreover, we assumed that the agent knows what the effects of each action
More informationHeuristic Search and Advanced Methods
Heuristic Search and Advanced Methods Computer Science cpsc322, Lecture 3 (Textbook Chpt 3.6 3.7) May, 15, 2012 CPSC 322, Lecture 3 Slide 1 Course Announcements Posted on WebCT Assignment1 (due on Thurs!)
More informationChapter 3: Solving Problems by Searching
Chapter 3: Solving Problems by Searching Prepared by: Dr. Ziad Kobti 1 Problem-Solving Agent Reflex agent -> base its actions on a direct mapping from states to actions. Cannot operate well in large environments
More informationUninformed Search Methods
Uninformed Search Methods Search Algorithms Uninformed Blind search Breadth-first uniform first depth-first Iterative deepening depth-first Bidirectional Branch and Bound Informed Heuristic search Greedy
More informationCMU-Q Lecture 2: Search problems Uninformed search. Teacher: Gianni A. Di Caro
CMU-Q 15-381 Lecture 2: Search problems Uninformed search Teacher: Gianni A. Di Caro RECAP: ACT RATIONALLY Think like people Think rationally Agent Sensors? Actuators Percepts Actions Environment Act like
More informationInformed search. Soleymani. CE417: Introduction to Artificial Intelligence Sharif University of Technology Spring 2016
Informed search CE417: Introduction to Artificial Intelligence Sharif University of Technology Spring 2016 Soleymani Artificial Intelligence: A Modern Approach, Chapter 3 Outline Best-first search Greedy
More informationInformed Search Methods
Informed Search Methods How can we improve searching strategy by using intelligence? Map example: Heuristic: Expand those nodes closest in as the crow flies distance to goal 8-puzzle: Heuristic: Expand
More informationCS510 \ Lecture Ariel Stolerman
CS510 \ Lecture02 2012-10-03 1 Ariel Stolerman Midterm Evan will email about that after the lecture, at least 2 lectures from now. The exam will be given in a regular PDF (not an online form). We will
More information3 SOLVING PROBLEMS BY SEARCHING
48 3 SOLVING PROBLEMS BY SEARCHING A goal-based agent aims at solving problems by performing actions that lead to desirable states Let us first consider the uninformed situation in which the agent is not
More informationSearch : Lecture 2. September 9, 2003
Search 6.825: Lecture 2 September 9, 2003 1 Problem-Solving Problems When your environment can be effectively modeled as having discrete states and actions deterministic, known world dynamics known initial
More informationArtificial Intelligence
Artificial Intelligence Information Systems and Machine Learning Lab (ISMLL) Tomáš Horváth 10 rd November, 2010 Informed Search and Exploration Example (again) Informed strategy we use a problem-specific
More informationMonte Carlo Methods; Combinatorial Search
Monte Carlo Methods; Combinatorial Search Parallel and Distributed Computing Department of Computer Science and Engineering (DEI) Instituto Superior Técnico November 22, 2012 CPD (DEI / IST) Parallel and
More informationCS 4700: Foundations of Artificial Intelligence. Bart Selman. Search Techniques R&N: Chapter 3
CS 4700: Foundations of Artificial Intelligence Bart Selman Search Techniques R&N: Chapter 3 Outline Search: tree search and graph search Uninformed search: very briefly (covered before in other prerequisite
More informationChapter3. Problem-Solving Agents. Problem Solving Agents (cont.) Well-defined Problems and Solutions. Example Problems.
Problem-Solving Agents Chapter3 Solving Problems by Searching Reflex agents cannot work well in those environments - state/action mapping too large - take too long to learn Problem-solving agent - is one
More informationSolving Problems by Searching. Artificial Intelligence Santa Clara University 2016
Solving Problems by Searching Artificial Intelligence Santa Clara University 2016 Problem Solving Agents Problem Solving Agents Use atomic representation of states Planning agents Use factored or structured
More informationLecture 4: Search 3. Victor R. Lesser. CMPSCI 683 Fall 2010
Lecture 4: Search 3 Victor R. Lesser CMPSCI 683 Fall 2010 First Homework 1 st Programming Assignment 2 separate parts (homeworks) First part due on (9/27) at 5pm Second part due on 10/13 at 5pm Send homework
More informationScalable Algorithmic Techniques Decompositions & Mapping. Alexandre David
Scalable Algorithmic Techniques Decompositions & Mapping Alexandre David 1.2.05 adavid@cs.aau.dk Introduction Focus on data parallelism, scale with size. Task parallelism limited. Notion of scalability
More informationINTRODUCTION TO HEURISTIC SEARCH
INTRODUCTION TO HEURISTIC SEARCH What is heuristic search? Given a problem in which we must make a series of decisions, determine the sequence of decisions which provably optimizes some criterion. What
More informationARTIFICIAL INTELLIGENCE. Informed search
INFOB2KI 2017-2018 Utrecht University The Netherlands ARTIFICIAL INTELLIGENCE Informed search Lecturer: Silja Renooij These slides are part of the INFOB2KI Course Notes available from www.cs.uu.nl/docs/vakken/b2ki/schema.html
More informationCombinatorial Search; Monte Carlo Methods
Combinatorial Search; Monte Carlo Methods Parallel and Distributed Computing Department of Computer Science and Engineering (DEI) Instituto Superior Técnico May 02, 2016 CPD (DEI / IST) Parallel and Distributed
More informationBlind (Uninformed) Search (Where we systematically explore alternatives)
Blind (Uninformed) Search (Where we systematically explore alternatives) R&N: Chap. 3, Sect. 3.3 5 Slides from Jean-Claude Latombe at Stanford University (used with permission) Simple Problem-Solving-Agent
More informationInformed/Heuristic Search
Informed/Heuristic Search Outline Limitations of uninformed search methods Informed (or heuristic) search uses problem-specific heuristics to improve efficiency Best-first A* Techniques for generating
More informationWeek 3: Path Search. COMP9414/ 9814/ 3411: Artificial Intelligence. Motivation. Example: Romania. Romania Street Map. Russell & Norvig, Chapter 3.
COMP9414/9814/3411 17s1 Search 1 COMP9414/ 9814/ 3411: Artificial Intelligence Week 3: Path Search Russell & Norvig, Chapter 3. Motivation Reactive and Model-Based Agents choose their actions based only
More informationSolving problems by searching
Solving problems by searching Chapter 3 Some slide credits to Hwee Tou Ng (Singapore) Outline Problem-solving agents Problem types Problem formulation Example problems Basic search algorithms Heuristics
More informationInformed search methods
Informed search methods Tuomas Sandholm Computer Science Department Carnegie Mellon University Read Section 3.5-3.7 of Russell and Norvig Informed Search Methods Heuristic = to find, to discover Heuristic
More informationHeuristic (Informed) Search
Heuristic (Informed) Search (Where we try to choose smartly) R&N: Chap. 4, Sect. 4.1 3 1 Recall that the ordering of FRINGE defines the search strategy Search Algorithm #2 SEARCH#2 1. INSERT(initial-node,FRINGE)
More informationA.I.: Informed Search Algorithms. Chapter III: Part Deux
A.I.: Informed Search Algorithms Chapter III: Part Deux Best-first search Greedy best-first search A * search Heuristics Outline Overview Informed Search: uses problem-specific knowledge. General approach:
More information4 INFORMED SEARCH AND EXPLORATION. 4.1 Heuristic Search Strategies
55 4 INFORMED SEARCH AND EXPLORATION We now consider informed search that uses problem-specific knowledge beyond the definition of the problem itself This information helps to find solutions more efficiently
More informationUninformed Search. Reading: Chapter 4 (Tuesday, 2/5) HW#1 due next Tuesday
Uninformed Search Reading: Chapter 4 (Tuesday, 2/5) HW#1 due next Tuesday 1 Uninformed Search through the space of possible solutions Use no knowledge about which path is likely to be best Exception: uniform
More informationSearch Algorithms. Uninformed Blind search. Informed Heuristic search. Important concepts:
Uninformed Search Search Algorithms Uninformed Blind search Breadth-first uniform first depth-first Iterative deepening depth-first Bidirectional Branch and Bound Informed Heuristic search Greedy search,
More informationBlind (Uninformed) Search (Where we systematically explore alternatives)
Blind (Uninformed) Search (Where we systematically explore alternatives) R&N: Chap. 3, Sect. 3.3 5 1 Simple Problem-Solving-Agent Agent Algorithm 1. s 0 sense/read initial state 2. GOAL? select/read goal
More informationBlock-Parallel IDA* for GPUs
Proceedings of the Tenth International Symposium on Combinatorial Search (SoCS 2017) Block-Parallel IDA* for GPUs Satoru Horie, Alex Fukunaga Graduate School of Arts and Sciences The University of Tokyo
More informationInformed search algorithms. Chapter 3 (Based on Slides by Stuart Russell, Dan Klein, Richard Korf, Subbarao Kambhampati, and UW-AI faculty)
Informed search algorithms Chapter 3 (Based on Slides by Stuart Russell, Dan Klein, Richard Korf, Subbarao Kambhampati, and UW-AI faculty) Intuition, like the rays of the sun, acts only in an inflexibly
More informationProblem Solving & Heuristic Search
190.08 Artificial 2016-Spring Problem Solving & Heuristic Search Byoung-Tak Zhang School of Computer Science and Engineering Seoul National University 190.08 Artificial (2016-Spring) http://www.cs.duke.edu/courses/fall08/cps270/
More informationSolving Problem by Searching. Chapter 3
Solving Problem by Searching Chapter 3 Outline Problem-solving agents Problem formulation Example problems Basic search algorithms blind search Heuristic search strategies Heuristic functions Problem-solving
More informationArtificial Intelligence
Artificial Intelligence Search Marc Toussaint University of Stuttgart Winter 2015/16 (slides based on Stuart Russell s AI course) Outline Problem formulation & examples Basic search algorithms 2/100 Example:
More informationBasic Search Algorithms
Basic Search Algorithms Tsan-sheng Hsu tshsu@iis.sinica.edu.tw http://www.iis.sinica.edu.tw/~tshsu 1 Abstract The complexities of various search algorithms are considered in terms of time, space, and cost
More informationSearch EECS 395/495 Intro to Artificial Intelligence
Search EECS 395/495 Intro to Artificial Intelligence Doug Downey (slides from Oren Etzioni, based on Stuart Russell, Dan Weld, Henry Kautz, and others) What is Search? Search is a class of techniques for
More informationSearch EECS 348 Intro to Artificial Intelligence
Search EECS 348 Intro to Artificial Intelligence (slides from Oren Etzioni, based on Stuart Russell, Dan Weld, Henry Kautz, and others) What is Search? Search is a class of techniques for systematically
More informationHeuristic Search. CPSC 470/570 Artificial Intelligence Brian Scassellati
Heuristic Search CPSC 470/570 Artificial Intelligence Brian Scassellati Goal Formulation 200 Denver 300 200 200 Chicago 150 200 Boston 50 1200 210 75 320 255 Key West New York Well-defined function that
More informationParallel Interval Analysis for Chemical Process Modeling
arallel Interval Analysis for Chemical rocess Modeling Chao-Yang Gau and Mark A. Stadtherr Λ Department of Chemical Engineering University of Notre Dame Notre Dame, IN 46556 USA SIAM CSE 2000 Washington,
More informationArtificial Intelligence
Artificial Intelligence CSC348 Unit 3: Problem Solving and Search Syedur Rahman Lecturer, CSE Department North South University syedur.rahman@wolfson.oxon.org Artificial Intelligence: Lecture Notes The
More informationLecture 2: Fun with Search. Rachel Greenstadt CS 510, October 5, 2017
Lecture 2: Fun with Search Rachel Greenstadt CS 510, October 5, 2017 Reminder! Project pre-proposals due tonight Overview Uninformed search BFS, DFS, Uniform-Cost, Graph-Search Informed search Heuristics,
More informationChapter 3. A problem-solving agent is a kind of goal-based agent. It decide what to do by finding sequences of actions that lead to desirable states.
Chapter 3 A problem-solving agent is a kind of goal-based agent. It decide what to do by finding sequences of actions that lead to desirable states. A problem can be defined by four components : 1. The
More informationInformed search methods
CS 2710 Foundations of AI Lecture 5 Informed search methods Milos Hauskrecht milos@pitt.edu 5329 Sennott Square Announcements Homework assignment 2 is out Due on Tuesday, September 19, 2017 before the
More informationClass Overview. Introduction to Artificial Intelligence COMP 3501 / COMP Lecture 2: Search. Problem Solving Agents
Class Overview COMP 3501 / COMP 4704-4 Lecture 2: Search Prof. 1 2 Problem Solving Agents Problem Solving Agents: Assumptions Requires a goal Assume world is: Requires actions Observable What actions?
More informationOutline. Best-first search
Outline Best-first search Greedy best-first search A* search Heuristics Admissible Heuristics Graph Search Consistent Heuristics Local search algorithms Hill-climbing search Beam search Simulated annealing
More informationAr#ficial)Intelligence!!
Introduc*on! Ar#ficial)Intelligence!! Roman Barták Department of Theoretical Computer Science and Mathematical Logic Problem Solving: Uninformed Search Simple reflex agent only transfers the current percept
More informationSolving problems by searching
Solving problems by searching Chapter 3 Systems 1 Outline Problem-solving agents Problem types Problem formulation Example problems Basic search algorithms Systems 2 Problem-solving agents Systems 3 Example:
More informationDiscrete Motion Planning
RBE MOTION PLANNING Discrete Motion Planning Jane Li Assistant Professor Mechanical Engineering & Robotics Engineering http://users.wpi.edu/~zli11 Announcement Homework 1 is out Due Date - Feb 1 Updated
More informationLecture 4: Informed/Heuristic Search
Lecture 4: Informed/Heuristic Search Outline Limitations of uninformed search methods Informed (or heuristic) search uses problem-specific heuristics to improve efficiency Best-first A* RBFS SMA* Techniques
More informationCS 380: Artificial Intelligence Lecture #3
CS 380: Artificial Intelligence Lecture #3 William Regli Outline Problem-solving agents Problem types Problem formulation Example problems Basic search algorithms 1 Problem-solving agents Example: Romania
More informationARTIFICIAL INTELLIGENCE LECTURE 3. Ph. D. Lect. Horia Popa Andreescu rd year, semester 5
ARTIFICIAL INTELLIGENCE LECTURE 3 Ph. D. Lect. Horia Popa Andreescu 2012-2013 3 rd year, semester 5 The slides for this lecture are based (partially) on chapter 4 of the Stuart Russel Lecture Notes [R,
More informationUninformed Search. Problem-solving agents. Tree search algorithms. Single-State Problems
Uninformed Search Problem-solving agents Tree search algorithms Single-State Problems Breadth-First Search Depth-First Search Limited-Depth Search Iterative Deepening Extensions Graph search algorithms
More informationArtificial Intelligence
Artificial Intelligence Information Systems and Machine Learning Lab (ISMLL) Tomáš Horváth 16 rd November, 2011 Informed Search and Exploration Example (again) Informed strategy we use a problem-specific
More informationChapter 2. Blind Search 8/19/2017
Chapter 2 1 8/19/2017 Problem-solving agents Problem types Problem formulation Example problems Basic search algorithms 8/19/2017 2 8/19/2017 3 On holiday in Romania; currently in Arad. Flight leaves tomorrow
More informationClass Overview. Introduction to Artificial Intelligence COMP 3501 / COMP Lecture 2. Problem Solving Agents. Problem Solving Agents: Assumptions
Class Overview COMP 3501 / COMP 4704-4 Lecture 2 Prof. JGH 318 Problem Solving Agents Problem Solving Agents: Assumptions Requires a goal Assume world is: Requires actions Observable What actions? Discrete
More informationSolving Problems by Searching (Blindly)
Solving Problems by Searching (Blindly) R&N: Chap. 3 (many of these slides borrowed from Stanford s AI Class) Problem Solving Agents Decide what to do by finding a sequence of actions that lead to desirable
More informationLecture 3: Sorting 1
Lecture 3: Sorting 1 Sorting Arranging an unordered collection of elements into monotonically increasing (or decreasing) order. S = a sequence of n elements in arbitrary order After sorting:
More informationS A E RC R H C I H NG N G IN N S T S A T T A E E G R G A R PH P S
LECTURE 2 SEARCHING IN STATE GRAPHS Introduction Idea: Problem Solving as Search Basic formalism as State-Space Graph Graph explored by Tree Search Different algorithms to explore the graph Slides mainly
More informationSolving problems by searching
Solving problems by searching CE417: Introduction to Artificial Intelligence Sharif University of Technology Spring 2014 Soleymani Artificial Intelligence: A Modern Approach, Chapter 3 Outline Problem-solving
More informationBranch & Bound (B&B) and Constraint Satisfaction Problems (CSPs)
Branch & Bound (B&B) and Constraint Satisfaction Problems (CSPs) Alan Mackworth UBC CS 322 CSP 1 January 25, 2013 P&M textbook 3.7.4 & 4.0-4.2 Lecture Overview Recap Branch & Bound Wrap up of search module
More informationAnnouncements. Today s Menu
Announcements 1 Today s Menu Finish up (Chapter 9) IDA, IDA* & RBFS Search Efficiency 2 Related Algorithms Bi-Directional Search > Breadth-First may expand less nodes bidirectionally than unidirectionally
More informationAPHID: Asynchronous Parallel Game-Tree Search
APHID: Asynchronous Parallel Game-Tree Search Mark G. Brockington and Jonathan Schaeffer Department of Computing Science University of Alberta Edmonton, Alberta T6G 2H1 Canada February 12, 1999 1 Running
More informationSearch I. slides from: Padhraic Smyth, Bryan Low, S. Russell and P. Norvig
Search I slides from: Padhraic Smyth, Bryan Low, S. Russell and P. Norvig Problem-Solving Agents Intelligent agents can solve problems by searching a state-space State-space Model the agent s model of
More informationAdvanced A* Improvements
Advanced A* Improvements 1 Iterative Deepening A* (IDA*) Idea: Reduce memory requirement of A* by applying cutoff on values of f Consistent heuristic function h Algorithm IDA*: 1. Initialize cutoff to
More informationITCS 6150 Intelligent Systems. Lecture 5 Informed Searches
ITCS 6150 Intelligent Systems Lecture 5 Informed Searches Informed Searches We are informed (in some way) about future states and future paths We use this information to make better decisions about which
More informationSolving problems by searching
Solving problems by searching 1 C H A P T E R 3 Problem-solving agents Problem types Problem formulation Example problems Basic search algorithms Outline 2 Problem-solving agents 3 Note: this is offline
More informationPrinciples of Parallel Algorithm Design: Concurrency and Mapping
Principles of Parallel Algorithm Design: Concurrency and Mapping John Mellor-Crummey Department of Computer Science Rice University johnmc@rice.edu COMP 422/534 Lecture 3 17 January 2017 Last Thursday
More informationLecture 9. Heuristic search, continued. CS-424 Gregory Dudek
Lecture 9 Heuristic search, continued A* revisited Reminder: with A* we want to find the best-cost (C ) path to the goal first. To do this, all we have to do is make sure our cost estimates are less than
More informationSearch: Advanced Topics and Conclusion
Search: Advanced Topics and Conclusion CPSC 322 Lecture 8 January 20, 2006 Textbook 2.6 Search: Advanced Topics and Conclusion CPSC 322 Lecture 8, Slide 1 Lecture Overview Recap Branch & Bound A Tricks
More informationChapter 3 Solving problems by searching
1 Chapter 3 Solving problems by searching CS 461 Artificial Intelligence Pinar Duygulu Bilkent University, Slides are mostly adapted from AIMA and MIT Open Courseware 2 Introduction Simple-reflex agents
More informationLecture 5 Heuristics. Last Time: A* Search
CSE 473 Lecture 5 Heuristics CSE AI Faculty Last Time: A* Search Use an evaluation function f(n) for node n. f(n) = estimated total cost of path thru n to goal f(n) = g(n) + h(n) g(n) = cost so far to
More informationOutline. Solving problems by searching. Problem-solving agents. Example: Romania
Outline Solving problems by searching Chapter 3 Problem-solving agents Problem types Problem formulation Example problems Basic search algorithms Systems 1 Systems 2 Problem-solving agents Example: Romania
More informationCS 380: Artificial Intelligence Lecture #4
CS 380: Artificial Intelligence Lecture #4 William Regli Material Chapter 4 Section 1-3 1 Outline Best-first search Greedy best-first search A * search Heuristics Local search algorithms Hill-climbing
More informationHW#1 due today. HW#2 due Monday, 9/09/13, in class Continue reading Chapter 3
9-04-2013 Uninformed (blind) search algorithms Breadth-First Search (BFS) Uniform-Cost Search Depth-First Search (DFS) Depth-Limited Search Iterative Deepening Best-First Search HW#1 due today HW#2 due
More informationParallel Algorithms. Single Agent Search COMP 3705/4705. Parallel Search - Simple approaches. Dovetailing
Parallel Algorithms Single Agent Search COMP 3705/4705 Prof. Nathan Sturtevant Lecture 15 For many years it looked like our problems would be solved by increases in processor speed Moore s law predicts
More information4. Solving Problems by Searching
COMP9414/9814/3411 15s1 Search 1 COMP9414/ 9814/ 3411: Artificial Intelligence 4. Solving Problems by Searching Russell & Norvig, Chapter 3. Motivation Reactive and Model-Based Agents choose their actions
More informationLoad Balancing Part 1: Dynamic Load Balancing
Load Balancing Part 1: Dynamic Load Balancing Kathy Yelick yelick@cs.berkeley.edu www.cs.berkeley.edu/~yelick/cs194f07 10/1/2007 CS194 Lecture 1 Implementing Data Parallelism Why didn t data parallel languages
More informationSet 2: State-spaces and Uninformed Search. ICS 271 Fall 2015 Kalev Kask
Set 2: State-spaces and Uninformed Search ICS 271 Fall 2015 Kalev Kask You need to know State-space based problem formulation State space (graph) Search space Nodes vs. states Tree search vs graph search
More informationIntegrating Machine Learning in Parallel Heuristic Search
From: Proceedings of the Eleventh International FLAIRS Conference. Copyright 1998, AAAI (www.aaai.org). All rights reserved. Integrating Machine Learning in Parallel Heuristic Search R. Craig Varnell Stephen
More informationSolving problems by searching
Solving problems by searching CE417: Introduction to Artificial Intelligence Sharif University of Technology Spring 2017 Soleymani Artificial Intelligence: A Modern Approach, Chapter 3 Outline Problem-solving
More informationLecture 4: Graph Algorithms
Lecture 4: Graph Algorithms Definitions Undirected graph: G =(V, E) V finite set of vertices, E finite set of edges any edge e = (u,v) is an unordered pair Directed graph: edges are ordered pairs If e
More informationARTIFICIAL INTELLIGENCE. Pathfinding and search
INFOB2KI 2017-2018 Utrecht University The Netherlands ARTIFICIAL INTELLIGENCE Pathfinding and search Lecturer: Silja Renooij These slides are part of the INFOB2KI Course Notes available from www.cs.uu.nl/docs/vakken/b2ki/schema.html
More informationUninformed Search. Chapter 3
Uninformed Search Chapter 3 (Based on slides by Stuart Russell, Subbarao Kambhampati, Dan Weld, Oren Etzioni, Henry Kautz, Richard Korf, and other UW-AI faculty) Agent s Knowledge Representation Type State
More informationProblem Solving as Search. CMPSCI 383 September 15, 2011
Problem Solving as Search CMPSCI 383 September 15, 2011 1 Today s lecture Problem-solving as search Uninformed search methods Problem abstraction Bold Claim: Many problems faced by intelligent agents,
More informationCS 771 Artificial Intelligence. Problem Solving by Searching Uninformed search
CS 771 Artificial Intelligence Problem Solving by Searching Uninformed search Complete architectures for intelligence? Search? Solve the problem of what to do. Learning? Learn what to do. Logic and inference?
More informationUniformed Search (cont.)
Uniformed Search (cont.) Computer Science cpsc322, Lecture 6 (Textbook finish 3.5) Sept, 16, 2013 CPSC 322, Lecture 6 Slide 1 Lecture Overview Recap DFS vs BFS Uninformed Iterative Deepening (IDS) Search
More information