1. Introduction
Consider the following problem: For a given region covered by grass, find a short path along which to
move a lawn mower, such that all the grass is cut. This lawn mowing problem arises in several practical
applications. Motivations from manufacturing include:
(Process planning) Plan the motion of the nozzle of a spray painting device in order to coat the entire
surface of an object.
(Quality control) Plan the movement of a sensor (camera, detector) in order to check an entire part for
imperfections.
Motivations also arise in the planning of geographic surveys, search-and-rescue operations, etc.
A closely related problem is that of automatically generating tool paths for NC (Numerically
Controlled) pocket machining: Given a workpiece, a cutter head, and the shape of a “pocket” to be
milled in the workpiece, determine a route for the cutter such that the cutter removes exactly the material
that lies within the pocket. The difference between this milling problem and the lawn mowing problem is
that in the milling problem we do not allow the cutter to exit the region (pocket) that it must cover, while
in the lawn mowing problem it is permitted for the cutter to “mow” over non-grass regions (e.g., one may
push the lawn mower over the sidewalk while cutting the grass).