Robotics Versus Artificial Intelligence Search Search All AI
Robotics Versus Artificial Intelligence. Search
Search “All AI is search” Game theory Problem spaces Every problem is a feature space of all possible (successful or unsuccessful) solutions. The trick is to find an efficient search strategy in this space.
Example of an Intelligent Action Getting ready to come to class Describe so a machine could do it search among alternatives (car or bus) represent the knowledge This requires a lot of knowledge…!
Example: Four three-letter crossword puzzle Search problem is find correct puzzle Approaches: Search word fill: take word, put it to space, if contradiction, backtrack space fill: take vertical or horizontal space select a word with this length put it into space, if contradiction, backtrack Cat dog cam may mom sit mit Many other strategies: homework, find space and operators in it, discuss backtracking strategy C A A M O T O M
Blind Search depends only on node’s position in the search tree Two basic blind searches: depth-first breadth-first Called also search strategies Problem: define depthfirst search for the above problem Problem: define breadth-first algorithm for the above problem. Repeat both for each of the approaches outlined above.
Depth-First Search Pseudo-Code 1. Set L to list of initial nodes 2. n = head(L), Empty(L) ==> fail 3. If n=goal, stop, return it and return the path leading to it 4. pop(L), push(L) all n’s children, 5. go to step 2 Depth First is based on a stack, L Head = car in LISP empty = null in LISP pop(L) push(L)
Breadth-First Search 1. Set L to list of initial nodes 2. n=head(L), Empty(L)==> fail 3. If n=goal then stop and return it and path 4. Dequeue(L), Enqueue(L) all n’s children 5. Go to step 2 Means, remove from queue Depth First is based on a queue, L Means, add to queue
Heuristic Search Meta-level reasoning heuristic function aids in selecting which part of search tree to expand trade-off between time to compute heuristic function and to expand the tree
Other Issues Backtracking chronological backtracking as in Prolog dependency-directed backtracking Search direction: forward (toward goal) backward (from goal) and math proving problems Bi-directional and building tunnel story
Search Examples I Game playing chess backgammon Finding path to goal Missionaries and cannibals Towers of Hanoi Sliding Tile games (15, 8) , puzzles
Search Examples II finding a goal cryptoarithmetic n-queens “mutilated checkboard” or “tough nut” of Mc. Carthy problem.
Example Applications of search Expert Systems Natural Language Processing Vision Robotics
Search: Game Theory tic-tac-toe, 9!+1 = 362, 880 Robot interaction with humans, other robots and environment can be described in terms of a game
Game playing Programs that: take advantage of the computer's ability to examine a large number of possible moves in a short period of time and logically assess their probable success or failure have been already developed They were used for game playing in: tic-tac-toe, checkers, chess, and the Oriental game called Go.
Recent Trends in Artificial Intelligence Intelligent agents Experimental AI software designed to sift through masses of information made available on the evolving Information Superhighway of cyberspace to suggest topics of interest or importance for an individual. Artificial life A field of AI research that studies the adaptive control systems of insects and other ecological systems and reproduces them in robotic insectoids. More recently researchers have been working on robots with the intelligence of a two-year-old child. Intelligent Agents and Artificial Life are now part of robotics
Your tasks Search: give an example of search problem that can be solved using Lisp and that has not been presented so far in the class Blind and informed search: for your problem, give an example of blind search and informed search. Create a powerful heuristic to solve it. Games: examples of games include tic-tac-toe, checkers, chess, go, othello, etc. What kind of game can be a good choice for our robot-guard in the FAB building environment? Expert system: what kind of expert knowledge is neede for our walking guard, in addition to knowledge about the FAB building geometry, distances, what is in which office, structure of ECE department and its people, etc. ? How is this knowledge stored and accessed?
Possible Lisp Problems for the exam 1. Mouse in Labyrinth: design a Lisp algorithm that will be able to go out of every labyrinth. Discuss the program strategy versus some knowledge of the labyrinth geometry. What kind of concepts introduced so far in the class may be useful? Discuss using depth-first, breadth-first search and other search strategies. 2. Obstacle Avoiding robot: design a Lisp program that will simulate a turtle avoiding obstacles. In contrast to your homework 2, however, the turtle can recognize type of the obstacle and select the best strategy. The best strategy is not necessarily to follow the outline of the obstacle, but to go straigth between two obstacles, sometimes closer to one of them. This is a useful subproblem of avoiding stationary obstacles in the corridor or room for our robot. A program like this was written by Mike Burns. Read about Voronoir diagrams and their uses in robotics. Think how these diagrams can be improved if you have more knowledge of obstacles.
- Slides: 19