The planning algorithm
will consider only the nearest places if the users are in a city
already, assuming they are closer without counting the speed
or route. The attractions in a city are considered if the user
is near them. The algorithm gets complex due to temporal
constraints when the user is on the move but far from a city.
The plan is computed by the client application not the server
as constant checking of GPS to determine the location is
needed. GoogleMaps acts as an external resource to compute
the routes.