One of the most common problems in urban service systems is the design of routes for vehicles or people. In some instances, these routes must be designed so that they traverse in an exhaustive way the streets in a neighborhood or in a specific part of a city or, occasionally, in a whole city. Alternatively, the objective may be to visit a set of given geographical points in a city in order to provide some service there or to deliver or collect goods.

Examples in which the first type of routing problem arises include the cleaning and sweeping of streets, the plowing of snow after a snowstorm, the delivery of mail to residences, and the collection of refuse from houses. On the other hand, the daily routing of school buses, the distribution of newspapers to newsstands and kiosks, the routine inspection of and coin collection from public telephone booths, and the delivery of mail packages to addressees are all illustrations of the point-visiting type of routing problem.

For obvious reasons, these two classes of problems are referred to as edge-covering and node-covering problems, respectively. Certain specific, versions of these problems have, over the years, received extensive treatment in the mathematics and operations research literature. For instance, the famous "traveling salesman problem," the best-known and most straight-forward (in terms of problem description) version of the node-covering class of problems, has been the subject of literally hundreds of scientific reports and papers.

Our main aim here is not so much to review such theoretical work as it is to provide some insights into the ways these problems can be solved, exactly or approximately. In the process we illustrate, as well, both the applicability and the limitations of the techniques that are being described