Nicole Dobrowolski. Keywords: State-space, Search, Maze, Quagent, Quake
|
|
- Scarlett Haynes
- 6 years ago
- Views:
Transcription
1 The Applicability of Uninformed and Informed Searches to Maze Traversal Computer Science 242: Artificial Intelligence Dept. of Computer Science, University of Rochester Nicole Dobrowolski Abstract: There are many strategies for maze traversal: always keeping your right hand on the wall of the maze, using a string to escape the Greek labyrinth, and the relevant strategy here, state-space search. I implemented three java classes to explore the functionality of three different searches. The results of these searches, when applied to the traversal of a twodimensional maze, can be expanded to the three-dimensional realm of Quagents in the Quake II game using a Socket connection to generate an agent in Quake2UR. Keywords: State-space, Search, Maze, Quagent, Quake Background and Motivation: Mazes serve as a useful backdrop for state-space searching. An environment that is divided up into equally sized units can be used to simulate states. In the case of maze traversal, there are some states that cannot be accessed and others that lead to dead ends. When a specific start state and goal state are provided, the accuracy and efficiency of search algorithms can be tested. Russell and Norvig [1] define state space as the set of accessible states from a specified initial state. For a search algorithm, this means choosing a state or states from the set of accessible states and determining if the goal state is reachable from that state or states. I chose to explore the efficacy of two uninformed searches and one informed search. The Breadth-first and Depth-first searches are referred to as uninformed because they perform the same search no matter what the context. As applied to maze traversal, I would predict that these searches would be very inefficient. Depending on how many dead ends a maze possesses, an uninformed search would waste time exploring these dead ends. This wastefulness is especially true of the Breadth-first search which will explore every possible path and thereby take forever to run if not constrained. The Depth-first search could take equally long, but will in most instances perform better than the Breadth-first search. Depending on the goal's location in the Depth-first search tree, it could be found right away if it is on the outer branch of the tree being explored as deepest. The application of an informed search is much more promising. My informed search is the A* search. The A* search is a version of the best-first search wherein the evaluation function applied to each node is the sum of the estimated cost from the child's state to the goal (as determined by an appropriate heuristic) and the actual cost of traversing from the current state to its child. Using the Manhattan Distance heuristic, a move cost of 2 units, turn cost of 1 unit, I intend to show that the A* search is superior for maze traversal. In order to apply these findings to a more realistic scenario (as opposed to solving 2D mazes), I used the URQuake system to serve as a 3D maze exploration environment. The instructions generated by the above search types can be utilized by a Quagent to traverse a maze. The Quagent is an agent in the Quake world that can be instructed to perform actions using the protocol defined in [2]. Methods: I designed a program in the Java programming language that would take as input a text (*.txt) file and print output to both the command line console and a new text file. The input must specify the dimensions of the maze, followed by its structure and the coordinates of the start and goal. The structure of the maze is indicated using '1's and '0's where the zeros represent traversable space and the ones represent walls. Coordinates are on the two-dimensional axis of rows and columns with a third dimension of direction added to account for turning. See Appendix 1 for sample input. Once the map structure input is received by the program (MazeIO.java), it constructs its own map based on the grid of '1's and '0's. This map is in the form of a three-dimensional array. Access to the map is based on [row][column][direction]. However, although there are four directions allowed (north, south, east, and west), the third dimension of the array has a length of five. The added length is relevant as a time saving device. The row and column indices of the array represent a state. From each state, there are four possible directions. If there is no wall precluding traversal in a particular direction, that direction, as indicated by its corresponding integer index, is marked with a '0'. The directions are indicated as follows: north is represented by the integer 0,
2 east by 1, south by 2 and west by 3. The fifth slot in the array is marked with a 0 so long as any of the preceding slots are marked by a 0. If all of the preceding slots are marked by 1 and therefore are inaccessible, marking the fifth slot with a 1 allows the search algorithms to skip over that state and not bother to explore its obvious futility. This primary processor of input and output then calls on one of three search algorithms, as specified by the user in a command line argument following the specification of the text file. The Breadth, Depth, and Astar classes contain search methods to perform Breadth-first, Depth-first, and A* searches, respectively. All three of these classes call on the Maze class to retrieve successors, that is, to determine the state-space of the current state. The Maze class uses the map array created in the MazeIO class to determine the accessible states from the current state. The Maze class contains an additional method which is called upon by the Astar class to calculate the evaluation function for each node in the search tree. The nodes of the search tree are represented by instances of the TreeNode class. The TreeNode class assembles a node to briefly represent a state. The TreeNode has static variables which can be used to access the coordinates of the state as well as the estimated cost determined for that state by the evaluation function of the Maze class. A final class, Turn, contributes to the maze traversal by providing arrays which access the cost for turning from direction a to direction b and the String instructions for which direction to turn in order to get from direction a to direction b. The evaluation function uses the array of cost values for calculation and the MazeIO class uses the array of String directions to formulate the output. The output itself comes in two forms. The program prints directly to the command line the contents of the input text file and a list of one word instructions for traversal of the maze. It also prints output to a new text file with the added information of the number of nodes in the search tree visited by the chosen algorithm. See Appendix 2 for sample output. I was able to use Rotondo and Sloan's map generation program [3] to create Bitmap image files of several maps. In order to translate these maps into the proper input format, I wrote a program to examine the pixels of the image and print out the results to a text file. Unfortunately, I was unable to get this program to work for Bitmap image files and so had to save each file generated by the code available at [3] in.gif format. Once saved as a.gif image, the program is able to translate the image to text. I then used these randomly generated maps to test the three algorithms specified above. The second part of the experiment involved the actual Quagent application. By modifying example code from the URQuake build, I built a program which takes as input the output text file of the MazeIO program and uses it to send instructions to a Quagent. I was able to modify the code provided in the tarball at [4] and convert the DrunkenMaster class to a MazeRunner class. I also got rid of some of the unnecessary functionalities such as checking the Quagents well being because that didn't seem relevant for maze traversal. I also modified the code to account for this and also to allow for command line arguments. These arguments can be used to indicate which text file with search instructions to read and there is an optional argument where the user can specify their own distance (in Quake units) for the move command. The default is 64 Quake units, such as they are. Results: In order to test the Breadth-first, Depth-first, and A* algorithms, I took maps generated by [3] and saved them in the.gif file format. Then I ran them through my conversion program which created a text file of the proper input format. I tested each algorithm on a series of five 21x21 mazes. When I tried to test the Breadthfirst algorithm, I found that a half-hour later, the program was still running with no sign of an end in sight. I then proceeded to make another set of mazes with smaller dimensions in the hopes that Breadth-first would reach completion. However, when I tested Breadth-first search on the new 11x11 mazes, the same problem occurred. Interestingly enough, the Breadth-first search has little difficulty with a non-randomized map of dimensions 11x11. This map has a highly constrained setup wherein there are limited dead ends, if any. Basically, Breadth-first search does fine if there is only one possible path though it still examined 21,402 nodes where Depth-first and A* search examine 17. As a result of this difficulty getting the Breadth-first search to cooperate with randomized mazes, I instead focused on the comparison between Depth-first search and A* search. In the five 21x21 mazes tested, the A* search consistently performed better than the Depth-first search, as predicted. A* search visited approximately half the nodes that Depth-first search did in each instance with an average of 74 nodes visited per
3 maze. Depth-first search, though not bad in comparison to its uninformed search sibling Breadth-first search averaged nodes visited per maze. On a larger scale Depth-first search would most likely become time and space prohibitive. Nodes Visited maze1 maze2 21 x 21 Mazes maze3 Although the smaller mazes were created in an attempt to induce the Breadth-first algorithm to cooperate, they yield interesting data about the other two searches. Again, for the most part, A* search visits half as many nodes as Depth-first search, the fifth 11x11 maze had the surprising result wherein Depth-first search performed better than A* search. Because of this the averages are a little closer this time with A* search having an average of 26.8 nodes visited per search and Depth-first search having an average of 36.8 nodes visited per search. The Quagent implementation used the output of these searches to instruct a Quagent to navigate a maze in the Quake II environment. The transfer from single word commands from the MazeIO output to instructions for a Quagent were difficult mainly in terms of determining move distance. In my experimentation running the MazeRunner Quagent in David Sloan's build [5] I found that the Quagent had a tendency to travel an extra.8 Quake units. This addition of distance units does not occur reliably enough simply subtract from the total distance every time. In order to correct for this I set it up so that a subtraction of one would occur or not occur based on a random number generator. Unfortunately, I was unable to actually test the Quagent in a maze so I have no results to report on that. Discussion: The results of my search comparisons were as predicted. The informed search, A*, was found to be superior to the Depth-first and Breadth-first searches and the Depth-first search was found to be superior to the Breadth-first search. As it turns out, not only is the Breadth-first search inefficient for maze traversal, it is wholly inappropriate. It's insistence on searching every single node in every single branch may get the solution eventually, but not soon enough to be worth anything. The Breadth-first search is especially worthless in the presence of the Depth-first and A* searches. However, there are cases of Depth-first search which could perform just as badly as Breadth-first search. If, for example, the node representing the goal state were on the opposite side of the search tree from where the search started, it could take a very long time to find the goal. The havoc that goal location in the search tree can wreak on Depth-first search results is exemplified by the node code for the fifth 11x11 maze. In this instance, the Depth-first path stumbled across the goal state by exploring less nodes than even the A* search. This has more to do with the luck of the draw in that the solution maze4 maze5 Figure 1: A graph of the two algorithms, Depth-first and A* indicating how many nodes each visited in their search for a solution to each 21x21 maze. See Appendix 2 for maze input. Nodes Visited maze1 maze2 11 x 11 Mazes maze3 maze4 maze5 Figure 2: A graph of the two algorithms, Depth-first and A* indicating how many nodes each visited in their search for a solution to each 11x11 maze. See Appendix 2 for maze input. A* Depth-first A* Depth-first
4 path must have been on the traversal of the outer edge of the search tree, whereas even with its heuristic, A* searched some dead ends and thereby visited more nodes. Although I did not time how long each search method took, the time-complexity, and the disparity between the Breadth-first search and the other two searches can be explained using big-oh notation. Because Breadth-first search explores every branch at each level of the search tree, if the goal is at depth d and the branching factor is b, then we know that Breadth-first search is O(b d+1 )[1]. Since we know the branching factor is at most four, for the four possible directions of travel, this means the search is O(4 d+1 ), which is still exponential and horrifyingly slow. In a worst-case scenario, Depth-first search is also exponential. If m is the depth of the search tree, even if d < m, it is still O(b m )[1]. Again, we know the branching factor to be limited by an upper bound of 4, which certainly beats a branching factor of greater magnitude, but is still unhelpful if the Depth-first search starts off down a path on the opposite side of the tree from the desired path. It is also the case that Depth-first search may not find the shortest solution to a maze, though for the most part, mazes tend not to have multiple solutions. Despite, the overall success of the A* search, it could be improved upon by using a better heuristic. However, it seems that the Manhattan Distance heuristic is particularly appropriate for maze traversal, perhaps more so than for the 8 square puzzle. Given that the agent traversing the maze can only move in four directions, the shortest path between two states while ignoring the walls is the Manhattan Distance. Though a quality maze, with quality corresponding to the degree of difficulty, would not have such a direct path, it is a possibility. When running the algorithms on text files and outputting instructions, the state-space problem solving aspect of maze traversal is abstracted away. However, once the results of these algorithms are applied to the Quagent's world, it is more obvious that each move takes the agent to a new space. From that space it is necessary to search the states that are reachable from that state. In this instance, this is done by offline search, but similar search techniques could be used for online searching. If the Quagent had some way of knowing what his goal was, such as when away teams on Star Trek follow a single they receive on their tricorders, the A* search would only need an altered evaluation function. Otherwise, exploration would have to in some way be uninformed or else the search could be done offline and the online exploration would be pointless. Although I was unable to test the MazeRunner program in an actual 3D maze, it should function fairly well so long as the inaccuracies inherent in the "WALKBY" command do not pile up. Hopefully, the practice of occasionally subtracting 1 unit from the total distance to be traveled will help account for that problem. References: [1] S. Russell and P. Norvig. Artificial Intelligence: A Modern Approach, Second Edition. New Jersey: Pearson Education, Inc, 2003 [2] C. Brown, P. Barnum, D. Costello, G. Ferguson, B. Hu, and M. Van Wie. "Quake II as a Robotic and Multi-Agent Platform." Robotics and Vision Technical Reports, [Digital Repository], (2004 Oct.), Available at HTTP: [3] M. Rotondo and D. Sloan. "Everything You Ever Wanted to Know About Randomly Generated Quake Mazes." [Online Document], [2005 Feb 8], Available at HTTP: [4] Available at HTTP: [5] D. Sloan. "Getting Started With Quagents, 2005." [Online Document], Jan. 2005, [2005 Feb 8], Available at HTTP:
5 Appendix 1 (Sample Input): maze1.txt: smallmaze5.txt
6 Appendix 2 (Sample Output): Output to command line console after command java MazeIO smallmaze4.txt -d: smallmaze3-asolution.txt: Nodes examined: 20
3 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 informationCPS 170: Artificial Intelligence Search
CPS 170: Artificial Intelligence http://www.cs.duke.edu/courses/spring09/cps170/ Search Instructor: Vincent Conitzer Search We have some actions that can change the state of the world Change resulting
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 informationthose items. We observed ratio measurements of size and color for objects from different angles
1 Title: Object Recognition Using Clustering, Classification, and Centroids Authors: Corey Proscia and Alexander Wang, CSC 242, University of Rochester Date: May 8, 2006 Abstract: Intelligent agents can
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 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 informationCS 5522: Artificial Intelligence II
CS 5522: Artificial Intelligence II Search Algorithms Instructor: Wei Xu Ohio State University [These slides were adapted from CS188 Intro to AI at UC Berkeley.] Today Agents that Plan Ahead Search Problems
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 informationState-Space Search. Computer Science E-22 Harvard Extension School David G. Sullivan, Ph.D. Solving Problems by Searching
State-Space Search Computer Science E- Harvard Extension School David G. Sullivan, Ph.D. Solving Problems by Searching A wide range of problems can be formulated as searches. more precisely, as the process
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 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 informationDIT411/TIN175, Artificial Intelligence. Peter Ljunglöf. 19 January, 2018
DIT411/TIN175, Artificial Intelligence Chapter 3: Classical search algorithms CHAPTER 3: CLASSICAL SEARCH ALGORITHMS DIT411/TIN175, Artificial Intelligence Peter Ljunglöf 19 January, 2018 1 DEADLINE FOR
More informationInformed Search A* Algorithm
Informed Search A* Algorithm CE417: Introduction to Artificial Intelligence Sharif University of Technology Spring 2018 Soleymani Artificial Intelligence: A Modern Approach, Chapter 3 Most slides have
More informationOutline. Best-first search
Outline Best-first search Greedy best-first search A* search Heuristics Local search algorithms Hill-climbing search Beam search Simulated annealing search Genetic algorithms Constraint Satisfaction Problems
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 informationCSE151 Assignment 2 Markov Decision Processes in the Grid World
CSE5 Assignment Markov Decision Processes in the Grid World Grace Lin A484 gclin@ucsd.edu Tom Maddock A55645 tmaddock@ucsd.edu Abstract Markov decision processes exemplify sequential problems, which are
More informationAn Appropriate Search Algorithm for Finding Grid Resources
An Appropriate Search Algorithm for Finding Grid Resources Olusegun O. A. 1, Babatunde A. N. 2, Omotehinwa T. O. 3,Aremu D. R. 4, Balogun B. F. 5 1,4 Department of Computer Science University of Ilorin,
More informationCS 1567 Intermediate Programming and System Design Using a Mobile Robot Aibo Lab3 Localization and Path Planning
CS 1567 Intermediate Programming and System Design Using a Mobile Robot Aibo Lab3 Localization and Path Planning In this lab we will create an artificial landscape in the Aibo pen. The landscape has two
More informationArtificial Intelligence
Artificial Intelligence Informed Search and Exploration Chapter 4 (4.1 4.2) A General Search algorithm: Chapter 3: Search Strategies Task : Find a sequence of actions leading from the initial state to
More informationUNINFORMED SEARCH. Announcements Reading Section 3.4, especially 3.4.1, 3.4.2, 3.4.3, 3.4.5
UNINFORMED SEARCH Announcements Reading Section 3.4, especially 3.4.1, 3.4.2, 3.4.3, 3.4.5 Robbie has no idea where room X is, and may have little choice but to try going down this corridor and that. On
More informationInformed search strategies (Section ) Source: Fotolia
Informed search strategies (Section 3.5-3.6) Source: Fotolia Review: Tree search Initialize the frontier using the starting state While the frontier is not empty Choose a frontier node to expand according
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 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 informationInformed Search Algorithms
Informed Search Algorithms CITS3001 Algorithms, Agents and Artificial Intelligence Tim French School of Computer Science and Software Engineering The University of Western Australia 2017, Semester 2 Introduction
More informationCMPSCI 250: Introduction to Computation. Lecture #24: General Search, DFS, and BFS David Mix Barrington 24 March 2014
CMPSCI 250: Introduction to Computation Lecture #24: General Search, DFS, and BFS David Mix Barrington 24 March 2014 General Search, DFS, and BFS Four Examples of Search Problems State Spaces, Search,
More informationPAC-MAN is one of the most popular game
SCHOOL OF DATA SCIENCE 1 Assignment1. Search in Pacman Project Report Shihan Ran - 15307130424 Abstract This project is aimed at designing a intelligent Pacman agent that is able to find optimal paths
More information(Refer Slide Time: 02.06)
Data Structures and Algorithms Dr. Naveen Garg Department of Computer Science and Engineering Indian Institute of Technology, Delhi Lecture 27 Depth First Search (DFS) Today we are going to be talking
More information6.034 Notes: Section 2.1
6.034 Notes: Section 2.1 Slide 2.1.1 Search plays a key role in many parts of AI. These algorithms provide the conceptual backbone of almost every approach to the systematic exploration of alternatives.
More information1 Introduction and Examples
1 Introduction and Examples Sequencing Problems Definition A sequencing problem is one that involves finding a sequence of steps that transforms an initial system state to a pre-defined goal state for
More informationAlgorithms for Data Structures: Uninformed Search. Phillip Smith 19/11/2013
lgorithms for Data Structures: Uninformed Search Phillip Smith 19/11/2013 Representations for Reasoning We know (at least) two models of a world: model of the static states of the world model of the effects
More informationPathfinding Algorithms and Implementations on Grid Map
Pathfinding Algorithms and Implementations on Grid Map Steven Andrew / 13509061 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha 10 Bandung
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 188 Introduction to Artificial Intelligence Fall 2018 Note 1
CS 188 Introduction to Artificial Intelligence Fall 2018 Note 1 These lecture notes are heavily based on notes originally written by Nikhil Sharma. Agents In artificial intelligence, the central problem
More informationInformed search algorithms
Artificial Intelligence Topic 4 Informed search algorithms Best-first search Greedy search A search Admissible heuristics Memory-bounded search IDA SMA Reading: Russell and Norvig, Chapter 4, Sections
More informationArtificial Intelligence (Heuristic Search)
Artificial Intelligence (Heuristic Search) KR Chowdhary, Professor & Head Email: kr.chowdhary@acm.org Department of Computer Science and Engineering MBM Engineering College, Jodhpur kr chowdhary heuristic
More informationSearching. Assume goal- or utilitybased. Next task to achieve is to determine the best path to the goal
Searching Assume goal- or utilitybased agents: state information ability to perform actions goals to achieve Next task to achieve is to determine the best path to the goal CSC384 Lecture Slides Steve Engels,
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 informationMITOCW watch?v=zm5mw5nkzjg
MITOCW watch?v=zm5mw5nkzjg The following content is provided under a Creative Commons license. Your support will help MIT OpenCourseWare continue to offer high quality educational resources for free. To
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 informationToday. Informed Search. Graph Search. Heuristics Greedy Search A* Search
Informed Search [These slides were created by Dan Klein and Pieter Abbeel for CS188 Intro to AI at UC Berkeley. All CS188 materials are available at http://ai.berkeley.edu.] Today Informed Search Heuristics
More informationAdvanced Operations Research Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras
Advanced Operations Research Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras Lecture 18 All-Integer Dual Algorithm We continue the discussion on the all integer
More information521495A: Artificial Intelligence
521495A: Artificial Intelligence Informed Search Lectured by Abdenour Hadid Adjunct Professor, CMVS, University of Oulu Slides adopted from http://ai.berkeley.edu Today Informed Search Heuristics Greedy
More informationProblem Solving Agents Solving Problems through Search CIS 32
Problem Solving Agents Solving Problems through Search CIS 32 Today: Behavior Based AI Functionally Next Class - In 2 Wednesdays (Could Meet on Tuesday Next Week) No Thursday Office Hours (any more) -
More informationState Space Search. Many problems can be represented as a set of states and a set of rules of how one state is transformed to another.
State Space Search Many problems can be represented as a set of states and a set of rules of how one state is transformed to another. The problem is how to reach a particular goal state, starting from
More informationComputer Game Programming Basic Path Finding
15-466 Computer Game Programming Basic Path Finding Robotics Institute Path Planning Sven Path Planning needs to be very fast (especially for games with many characters) needs to generate believable paths
More informationUninformed Search. (Textbook Chpt 3.5) Computer Science cpsc322, Lecture 5. May 18, CPSC 322, Lecture 5 Slide 1
Uninformed Search Computer Science cpsc322, Lecture 5 (Textbook Chpt 3.5) May 18, 2017 CPSC 322, Lecture 5 Slide 1 Recap Search is a key computational mechanism in many AI agents We will study the basic
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 informationIntelligent Control System for Collection, Survival, and Mapping
Intelligent Control System for Collection, Survival, and Mapping Michael Silverman Department of Computer Science University of Rochester msilver3@mail.rochester.edu March 10, 2006 Abstract To implement
More informationCPSC 320 Sample Solution, Playing with Graphs!
CPSC 320 Sample Solution, Playing with Graphs! September 23, 2017 Today we practice reasoning about graphs by playing with two new terms. These terms/concepts are useful in themselves but not tremendously
More informationThe following content is provided under a Creative Commons license. Your support
MITOCW Lecture 8 The following content is provided under a Creative Commons license. Your support will help MIT OpenCourseWare continue to offer high quality educational resources for free. To make a donation
More informationCSCI 446: Artificial Intelligence
CSCI 446: Artificial Intelligence Informed Search Instructor: Michele Van Dyne [These slides were created by Dan Klein and Pieter Abbeel for CS188 Intro to AI at UC Berkeley. All CS188 materials are available
More informationCOMP9414: Artificial Intelligence Informed Search
COMP9, Monday 9 March, 0 Informed Search COMP9: Artificial Intelligence Informed Search Wayne Wobcke Room J- wobcke@cse.unsw.edu.au Based on slides by Maurice Pagnucco Overview Heuristics Informed Search
More informationArtificial Intelligence
University of Cagliari M.Sc. degree in Electronic Engineering Artificial Intelligence Academic Year: 07/08 Instructor: Giorgio Fumera Exercises on search algorithms. A -litre and a -litre water jugs are
More informationCS 8520: Artificial Intelligence
CS 8520: Artificial Intelligence Solving Problems by Searching Paula Matuszek Spring, 2013 Slides based on Hwee Tou Ng, aima.eecs.berkeley.edu/slides-ppt, which are in turn based on Russell, aima.eecs.berkeley.edu/slides-pdf.
More informationC S C A RTIF I C I A L I N T E L L I G E N C E M I D T E R M E X A M
C S C 0 A RTIF I C I A L I N T E L L I G E N C E M I D T E R M E X A M SECTION 1 PRO F. FRANZ J. KURFESS CAL POL Y, COMPUTER SCIENCE DE PARTMENT This is the midterm exam for the CSC 0 Artificial Intelligence
More informationSearch. (Textbook Chpt ) Computer Science cpsc322, Lecture 2. May, 10, CPSC 322, Lecture 2 Slide 1
Search Computer Science cpsc322, Lecture 2 (Textbook Chpt 3.0-3.4) May, 10, 2012 CPSC 322, Lecture 2 Slide 1 Colored Cards You need to have 4 colored index cards Come and get them from me if you still
More informationSolving Problems by Searching
Solving Problems by Searching Berlin Chen 2004 Reference: 1. S. Russell and P. Norvig. Artificial Intelligence: A Modern Approach. Chapter 3 1 Introduction Problem-Solving Agents vs. Reflex Agents Problem-solving
More informationArtificial Intelligence (part 4a) Problem Solving Using Search: Structures and Strategies for State Space Search
Artificial Intelligence (part 4a) Problem Solving Using Search: Structures and Strategies for State Space Search Course Contents Again..Selected topics for our course. Covering all of AI is impossible!
More informationGraphs vs trees up front; use grid too; discuss for BFS, DFS, IDS, UCS Cut back on A* optimality detail; a bit more on importance of heuristics,
Graphs vs trees up front; use grid too; discuss for BFS, DFS, IDS, UCS Cut back on A* optimality detail; a bit more on importance of heuristics, performance data Pattern DBs? General Tree Search function
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 informationProblem Solving and Search in Artificial Intelligence
Problem Solving and Search in Artificial Intelligence Uninformed Search Strategies Nysret Musliu Database and Artificial Intelligence Group Institut für Informationssysteme, TU-Wien Introduction Many classic
More informationCS 520: Introduction to Artificial Intelligence. Review
CS 520: Introduction to Artificial Intelligence Prof. Louis Steinberg Lecture 2: state spaces uninformed search 1 What is AI? A set of goals Review build an artificial intelligence useful subgoals A class
More informationSearch and Games. Adi Botea. ANU Summer Schools in Logic and Learning February, 2009
Search and Games Adi Botea ANU Summer Schools in Logic and Learning February, 2009 Outline 1 Introduction 2 Problem Representation 3 Uninformed Search 4 Informed Search 5 Hierarchical Abstraction Outline
More informationPotential Midterm Exam Questions
Potential Midterm Exam Questions 1. What are the four ways in which AI is usually viewed? Which of the four is the preferred view of the authors of our textbook? 2. What does each of the lettered items
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 informationN N Sudoku Solver. Sequential and Parallel Computing
N N Sudoku Solver Sequential and Parallel Computing Abdulaziz Aljohani Computer Science. Rochester Institute of Technology, RIT Rochester, United States aaa4020@rit.edu Abstract 'Sudoku' is a logic-based
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 informationCS 343: Artificial Intelligence
CS 343: Artificial Intelligence Informed Search Prof. Scott Niekum University of Texas at Austin [These slides based on ones created by Dan Klein and Pieter Abbeel for CS188 Intro to AI at UC Berkeley.
More informationFor searching and sorting algorithms, this is particularly dependent on the number of data elements.
Looking up a phone number, accessing a website and checking the definition of a word in a dictionary all involve searching large amounts of data. Searching algorithms all accomplish the same goal finding
More informationBackward Real Time Heuristic Search in Grid World Pathfinding
Backward Real Time Heuristic Search in Grid World Pathfinding David M. Bond Department of Computer Science University of New Hampshire Durham, NH 03824 USA dmf5@unh.edu Abstract The A* algorithm works
More informationOutline. Informed Search. Recall: Uninformed Search. An Idea. Heuristics Informed search techniques More on heuristics Iterative improvement
Outline Informed Search ECE457 Applied Artificial Intelligence Fall 2007 Lecture #3 Heuristics Informed search techniques More on heuristics Iterative improvement Russell & Norvig, chapter 4 Skip Genetic
More informationArtificial Intelligence Informed Search
Artificial Intelligence Informed Search Instructors: David Suter and Qince Li Course Delivered @ Harbin Institute of Technology [Many slides adapted from those created by Dan Klein and Pieter Abbeel for
More informationSolving Problems by Searching
INF5390 Kunstig intelligens Solving Problems by Searching Roar Fjellheim Outline Problem-solving agents Example problems Search programs Uninformed search Informed search Summary AIMA Chapter 3: Solving
More informationA4B36ZUI - Introduction to ARTIFICIAL INTELLIGENCE https://cw.fel.cvut.cz/wiki/courses/
A4B36ZUI - Introduction to ARTIFICIAL INTELLIGENCE https://cw.fel.cvut.cz/wiki/courses/ Michal Pechoucek & Jiri Klema Department of Computer Science Czech Technical University in Prague In parts based
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 informationLecture 14: March 9, 2015
324: tate-space, F, F, Uninformed earch. pring 2015 Lecture 14: March 9, 2015 Lecturer: K.R. howdhary : Professor of (VF) isclaimer: These notes have not been subjected to the usual scrutiny reserved for
More informationCS188 Fall 2018 Section 2: Graph Search + CSPs
CS88 Fall 08 Section : Graph Search + CSPs Search and Heuristics Imagine a car-like agent wishes to exit a maze like the one shown below: The agent is directional and at all times faces some direction
More informationHeaps and Priority Queues
Heaps and Priority Queues Computer Science E-22 Harvard University David G. Sullivan, Ph.D. Priority Queue A priority queue (PQ) is a collection in which each item has an associated number known as a priority.
More informationComputer Science 136 Spring 2004 Professor Bruce. Final Examination May 19, 2004
Computer Science 136 Spring 2004 Professor Bruce Final Examination May 19, 2004 Question Points Score 1 10 2 8 3 15 4 12 5 12 6 8 7 10 TOTAL 65 Your name (Please print) I have neither given nor received
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 informationUsing Genetic Algorithms to Solve the Box Stacking Problem
Using Genetic Algorithms to Solve the Box Stacking Problem Jenniffer Estrada, Kris Lee, Ryan Edgar October 7th, 2010 Abstract The box stacking or strip stacking problem is exceedingly difficult to solve
More informationCS-171, Intro to A.I. Mid-term Exam Fall Quarter, 2017
CS-171, Intro to A.I. Mid-term Exam Fall Quarter, 2017 YOUR NAME: YOUR ID: ID TO RIGHT: ROW: SEAT: Please turn off all cell phones now. The exam will begin on the next page. Please, do not turn the page
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 informationAssignment 4: CS Machine Learning
Assignment 4: CS7641 - Machine Learning Saad Khan November 29, 2015 1 Introduction The purpose of this assignment is to apply some of the techniques learned from reinforcement learning to make decisions
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 informationSolving Problems by Searching
INF5390 Kunstig intelligens Sony Vaio VPC-Z12 Solving Problems by Searching Roar Fjellheim Outline Problem-solving agents Example problems Search programs Uninformed search Informed search Summary AIMA
More informationCS 188: Artificial Intelligence
CS 188: Artificial Intelligence Today Informed Search Informed Search Heuristics Greedy Search A* Search Instructor: Marco Alvarez University of Rhode Island (These slides were created/modified by Dan
More informationARTIFICIAL INTELLIGENCE (CSC9YE ) LECTURES 2 AND 3: PROBLEM SOLVING
ARTIFICIAL INTELLIGENCE (CSC9YE ) LECTURES 2 AND 3: PROBLEM SOLVING BY SEARCH Gabriela Ochoa http://www.cs.stir.ac.uk/~goc/ OUTLINE Problem solving by searching Problem formulation Example problems Search
More informationSearch in discrete and continuous spaces
UNSW COMP3431: Robot Architectures S2 2006 1 Overview Assignment #1 Answer Sheet Search in discrete and continuous spaces Due: Start of Lab, Week 6 (1pm, 30 August 2006) The goal of this assignment is
More informationWhy Search. Things to consider. Example, a holiday in Jamaica. CSE 3401: Intro to Artificial Intelligence Uninformed Search
CSE 3401: Intro to Artificial Intelligence Uninformed Search Why Search Required Readings: R & N Chapter 3, Sec. 1-4. Lecture slides adapted from those of Fahiem Bacchus. Successful Success in game playing
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 informationAlgorithms and Path Planning
Algorithms and Path Planning Topics Simple Search Depth First Search Breadth First Search Dijkstra s Search Greedy Search A* Search Classes of interest ECE400: Computer Systems Programming CS4700: Foundations
More informationCOMP9414: Artificial Intelligence Informed Search
COMP9, Wednesday March, 00 Informed Search COMP9: Artificial Intelligence Informed Search Wayne Wobcke Room J- wobcke@cse.unsw.edu.au Based on slides by Maurice Pagnucco Overview Heuristics Informed Search
More informationCS 331: Artificial Intelligence Informed Search. Informed Search
CS 331: Artificial Intelligence Informed Search 1 Informed Search How can we make search smarter? Use problem-specific knowledge beyond the definition of the problem itself Specifically, incorporate knowledge
More informationCS 331: Artificial Intelligence Informed Search. Informed Search
CS 331: Artificial Intelligence Informed Search 1 Informed Search How can we make search smarter? Use problem-specific knowledge beyond the definition of the problem itself Specifically, incorporate knowledge
More informationPROFESSOR: Last time, we took a look at an explicit control evaluator for Lisp, and that bridged the gap between
MITOCW Lecture 10A [MUSIC PLAYING] PROFESSOR: Last time, we took a look at an explicit control evaluator for Lisp, and that bridged the gap between all these high-level languages like Lisp and the query
More informationWACC Report. Zeshan Amjad, Rohan Padmanabhan, Rohan Pritchard, & Edward Stow
WACC Report Zeshan Amjad, Rohan Padmanabhan, Rohan Pritchard, & Edward Stow 1 The Product Our compiler passes all of the supplied test cases, and over 60 additional test cases we wrote to cover areas (mostly
More informationArtificial Intelligence
COMP224 Artificial Intelligence The Meaning of earch in AI The terms search, search space, search problem, search algorithm are widely used in computer science and especially in AI. In this context the
More information521495A: Artificial Intelligence
521495A: Artificial Intelligence Search Lectured by Abdenour Hadid Associate Professor, CMVS, University of Oulu Slides adopted from http://ai.berkeley.edu Agent An agent is an entity that perceives the
More informationToday s s lecture. Lecture 3: Search - 2. Problem Solving by Search. Agent vs. Conventional AI View. Victor R. Lesser. CMPSCI 683 Fall 2004
Today s s lecture Search and Agents Material at the end of last lecture Lecture 3: Search - 2 Victor R. Lesser CMPSCI 683 Fall 2004 Continuation of Simple Search The use of background knowledge to accelerate
More information