In this ``puzzle'', the system is presented with a description of a map, giving a list of cities and the distances between various pairs of cities. The initial STATE is a starting city and the final STATE is a goal city. The object is to find the shortest path between the two cities. A MOVE consists of traveling from the current city to one of its adjacent cities.
For the purposes of output, a MOVE is represented by:
MOVE
: TRAVEL FROM
TO
where
represents the number of the current move
and
and
are the names of the origin and destination
cities, respectively.
The output of a state is specified by the BNF rule
SPOUTPUT := "CurrentCity" "=" CITYNAMEwhere CITYNAME is given by the rule in the input grammar in Section 3.2.
The null move (changing nothing) is disallowed.
Note that the distances between cities is not required to be symmetric or to obey the triangle inequality!
Terran Lane 2004-03-24