1 / 20

Artificial Intelligence: Navigating Polygonal Obstacles Using Searching Techniques

Artificial Intelligence: Navigating Polygonal Obstacles Using Searching Techniques. Elizabeth City State University Ronald E. McNair Post baccalaureate Achievement Program La’Shanda Dukes and Justin Deloatch Faculty Mentor: Dr. Jamiiru Luttamaguzi. Abstract.

barth
Download Presentation

Artificial Intelligence: Navigating Polygonal Obstacles Using Searching Techniques

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Artificial Intelligence: Navigating Polygonal Obstacles Using Searching Techniques Elizabeth City State University Ronald E. McNair Post baccalaureate Achievement Program La’Shanda Dukes and Justin Deloatch Faculty Mentor: Dr. Jamiiru Luttamaguzi

  2. Abstract The project uses artificial intelligence searching techniques to find a path around polygonal obstacles on a plane. The solution is based on both non-informed and informed algorithms. The algorithms are compared and contrasted. Each of these algorithms will work on the problem represented in terms of states and transitions between them. The algorithms then find a path to a goal state by choosing one segment at a time. Java programming will be used to implement the algorithms and present the solution in a graphical user interface.

  3. Introduction Intelligence is the capacity to learn and solve problems. Intelligence is also the ability to solve novel problems, to act rationally, to act like humans, and to acquire knowledge, learn from experience. Modern Artificial Intelligence models how ideal agents should act. Artificial Intelligence is the science and engineering of making intelligent machines. It is related to the similar task of using computers to understand human intelligence, but AI does not have to confine itself to methods that are biologically observable. There are many branches and applications is Artificial Intelligence such as pattern recognition, genetic programming, speech recognition, and game playing.

  4. Pseudocode for Uniformed Search • Step 1: Initialize Set OPEN = {s}, CLOSED = {}. • Step 2: Fail If OPEN = {}, Terminate with failure. • Step 3: Select Select a state, n, from OPEN and save n in CLOSED. • Step 4: Terminate If n is in G, terminate with success. • Step 5: Expand Generate the successors of n using operators O. For each successor, m, insert m in OPEN only if m is not in [OPEN or CLOSED]. • Step 6: Loop Go to Step 2.

  5. Pseudocode for Informed Search • Step 1: Initialize Set OPEN = {s}, CLOSED = {}, g(s) = 0, f(s) = h(s). • Step 2: Fail If OPEN = {}, Terminate with failure. • Step 3: Select Select the minimum cost state, n, from OPEN. Save n in CLOSED. • Step 4: Terminate If n  G, terminate with success, and return f(n) • Step 5: Expand For each successor, m, of n If m  [OPEN  CLOSED] Set g(m) = g(n) + c(n,m) Set f(m) = g(m) + h(m) Insert m in OPEN If m  [OPEN  CLOSED] Set g(m) = min {g(m), g(n) + C(n,m)} Set f(m) = g(m) + h(m) If f(m) has decreased and m  CLOSED, move m to OPEN • Step 6: Loop Go to step 2

  6. Examples of Search Algorithms The 8-Puzzle Problem The 8-puzzle problem is a sliding-tile puzzle where tiles slide if they are next to a blank tile.

  7. 2 6 1 3 7 5 4 Examples of Search Algorithms cont’d Consider the graph below with states and transitions between them. The start state is 1 and the goal state is 7. Using the Pseudocode for Uniformed Search Algorithm, with OPEN being a queue and stack, gives results that follow.

  8. Examples of Search Algorithms cont’d The implementation uses OPEN as a priority queue. The state with the lowest heuristic value is chosen first from OPEN. Using the Pseudocode for Informed Search Algorithm, gives the results below. These results exhibit a different search path from uninformed search paths. Its cost is shorter or equals the others.

  9. G • S j Statement of the Problem A robot navigates around an obstacle course from the start state to the goal state.

  10. Methodology • The states uses corners, starting points, and endpoints that are encoded into x,y positions. • The shortest path is to go straight to the corner instead of going around it. The shortest path consists of the segments joining corners. • The state space implemented as Coordinate class includes the coordinate position, the goal, and predecessor. This class includes methods to access, the predecessor, test equality, compute the distance from the goal, and to test if the state itself is the goal.

  11. Methodology Continued • A class called CoordinateSuccessorFunctionhas a method called getSuccessors(). This method will take the current state as input and return a list of its successors as an arraylist data structure. • Its header is as follows: public ArrayList getSuccessors(CoordinatecurrentState) • An example of how it works is how to go from the start state to its successors. The if-statement below accomplishes it: if(currentState.equals(cord0)) { //Successors of cord0. list.add(cord1); list.add(cord2); list.add(cord6); list.add(cord7); }

  12. Methodology cont’d Other states are treated in a similar fashion. The heuristic function to speed up the search process is in the Coordinate state class and is implemented as: public int distFromGoal() { int distance = 0; distance+=Math.sqrt(Math.pow(goal.x-position.x,2)+ Math.pow(goal.y-position.y, 2)); return distance; }

  13. DEMONSTRATION We will now give a demonstration of how our project works.

  14. Results Breadth-First Search Success: Goal found [164, 79] Search path: [16, 22] [25, 7] [140, 3] [153, 6] [164, 79] The length of the path is: 218

  15. Results Depth-First Search Success: Goal found [164, 79] Search path: [16, 22] [25, 45] [60, 34] [77, 34] [90, 45] [125,22] [125, 6] [140, 3] [153, 6] [164, 79] The length of the path is: 252

  16. Results Best-First Search Success: Goal found [164, 79] Search path: [16, 22] [24, 67] [42, 83] [91, 83] [154, 80] [164, 79] The length of the path is: 191

  17. Suggestions of Further Research • If the polygons can have curvatures, then a polygonal boundary around such an obstacle can be used on the algorithm. • Assume that the surface on which the polygons are is not flat, but can have valleys and hills. • Allow the obstacles to be in motion. This involves bringing in time as an added feature.

  18. Bibliography • ICS 171 Lecture Notes: Introduction to Artificial Intelligence, Stephen Bay, University of California, Irvine. • Artificial Intelligence: A Modern Approach, Stuart Russell and Peter Norvig, Prentice Hall, 1995. • Applications and Branches of AI: http://www-formal.stanford.edu/jmc/whatisai/node3.html • Artificial Intelligence Lecture Notes, Professor P. Dasgupta, National Programme on Technology Enhanced Learning (NPTEL) Courses, Indian Institute of Technology http://nptel.iitm.ac.in/ • Introduction to Computer Science using Java by Bradley Kjell, Central Connecticut State University, http://www.cs.iastate.edu/~honavar/JavaNotes/csjava.html • Principles of Artificial Intelligence, N.J. Nilsson, Springer-Verlag.

  19. ANY QUESTIONS OR COMMENTS???

  20. Special Thanks We would like to thank everyone for this opportunity and to give special thanks to: • Our director: Dr. Cheryl Lewis • Our faculty mentor: Dr. Jamiiru Luttamaguzi • Program Support Staff • Fellow McNair Scholars • Our parents

More Related