Next: Simple Search Techniques Up: Using Search in Previous: Graph Theory

Basic Search Techniques

Getting back to search techniques, suppose we have the following map:

Let's say that the ``nodes'' (e.g., a1, a2) represent towns and the links represent roads between the towns. For simplicity we'll assume that these are all one-way streets, and we've deliberately avoided loops, where you can back to where you were before by going round in a circle. So, the map is in fact a tree (though its been drawn sideways). (These restrictions will be lifted later, when we'll look at how we search general graphs).

Suppose we want to find a possible route from a start state in town a1 to a goal state in town a6. We can quickly see that the only route involves going via a4 and a5 - but how do we systematically search for such a route?

For a simple problem like this, we can systematically and exhaustively search all possible paths. Relatively simple search algorithms will be OK. However, for more complex problems there may be a huge number of possible paths, and it will just not be possible to search them all in a reasonable amount of time. For these problems we may need to use heuristics (rough guesses) to choose what paths are likely to lead to a solution.



alison@
Fri Aug 19 10:42:17 BST 1994