"This laborious approach, however, requires that the program calculate and then compare as many possible routes as the program can find in the particular geographic region, some of which are clearly less optimal than the previously calculated routes when parameters such as time or distance are considered." . . . . .