A method of maneuvering an autonomous vehicle (101, 510, 610,) in a local region while traversing a route to a destination location, the method comprising: determining, for an autonomous vehicle (101, 510, 610) while traversing a route to a destination location, a local region that surrounds the autonomous vehicle (101, 510, 610,); receiving real-time information corresponding to the local region; performing topological planning to identify one or more topologically distinct classes of trajectories (431a-n, 432a-n, 433a-n, 434a-n, 435a-n, 541, 542), wherein each of the one or more topologically distinct classes is associated with a plurality of trajectories (431a-n, 432a-n, 433a-n, 434a-n, 435a-n, 541, 542) that take the same combination of discrete actions with respect to objects (401, 402, 403, 501, 502, 503, 504, 601, 602, 603) in the local region; computing a constraint set for each of the one or more topologically distinct classes of trajectories (431a-n, 432a-n, 433a-n, 434a-n, 435a-n, 541, 542), the constraint set for a topological distinct class defining a bounded area in curvilinear space that confines the plurality of trajectories (431a-n, 432a-n, 433a-n, 434a-n, 435a-n, 541, 542) associated with that topological distinct class; for each constraint set, generating a candidate trajectory (431a-n, 432a-n, 433a-n, 434a-n, 435a-n, 541, 542); and selecting, from amongst one or more candidate trajectories (431a-n, 432a-n, 433a-n, 434a-n, 435a-n, 541, 542), a trajectory (431a-n, 432a-n, 433a-n, 434a-n, 435a-n, 541, 542) for the autonomous vehicle (101, 510, 610) to traverse the local region, wherein selecting, from amongst the one or more candidate trajectories (431a-n, 432a-n, 433a-n, 434a-n, 435an, 541, 542), the trajectory (431a-n, 432a-n, 433a-n, 434a-n, 435a-n, 541, 542) for the autonomous vehicle (101, 510, 610, 510, 610) to traverse the local region comprises: assigning a score to each of the one or more candidate trajectories (431a-n, 432a-n, 433a-n, 434a-n, 435a-n, 541, 542); and selecting a candidate trajectory (431a-n, 432a-n, 433a-n, 434a-n, 435a-n, 541, 542) that has a best score as the trajectory (431a-n, 432a-n, 433a-n, 434a-n, 435a-n, 541, 542) for the autonomous vehicle (101, 510, 610, 510, 610) to traverse the local region, chracterized in that assigning the score to each of the one or more candidate trajectories (431a-n, 432a-n, 433an, 434a-n, 435a-n, 541, 542) comprises biasing the score in favor of temporal consistency of the selected trajectory (431a-n, 432a-n, 433a-n, 434a-n, 435a-n, 541, 542) between successive trajectory selection cycles. determining, for an autonomous vehicle (101, 510, 610) while traversing a route to a destination location, a local region that surrounds the autonomous vehicle (101, 510, 610,); receiving real-time information corresponding to the local region; performing topological planning to identify one or more topologically distinct classes of trajectories (431a-n, 432a-n, 433a-n, 434a-n, 435a-n, 541, 542), wherein each of the one or more topologically distinct classes is associated with a plurality of trajectories (431a-n, 432a-n, 433a-n, 434a-n, 435a-n, 541, 542) that take the same combination of discrete actions with respect to objects (401, 402, 403, 501, 502, 503, 504, 601, 602, 603) in the local region; computing a constraint set for each of the one or more topologically distinct classes of trajectories (431a-n, 432a-n, 433a-n, 434a-n, 435a-n, 541, 542), the constraint set for a topological distinct class defining a bounded area in curvilinear space that confines the plurality of trajectories (431a-n, 432a-n, 433a-n, 434a-n, 435a-n, 541, 542) associated with that topological distinct class; for each constraint set, generating a candidate trajectory (431a-n, 432a-n, 433a-n, 434a-n, 435a-n, 541, 542); and selecting, from amongst one or more candidate trajectories (431a-n, 432a-n, 433a-n, 434a-n, 435a-n, 541, 542), a trajectory (431a-n, 432a-n, 433a-n, 434a-n, 435a-n, 541, 542) for the autonomous vehicle (101, 510, 610) to traverse the local region, wherein selecting, from amongst the one or more candidate trajectories (431a-n, 432a-n, 433a-n, 434a-n, 435an, 541, 542), the trajectory (431a-n, 432a-n, 433a-n, 434a-n, 435a-n, 541, 542) for the autonomous vehicle (101, 510, 610, 510, 610) to traverse the local region comprises: assigning a score to each of the one or more candidate trajectories (431a-n, 432a-n, 433a-n, 434a-n, 435a-n, 541, 542); and selecting a candidate trajectory (431a-n, 432a-n, 433a-n, 434a-n, 435a-n, 541, 542) that has a best score as the trajectory (431a-n, 432a-n, 433a-n, 434a-n, 435a-n, 541, 542) for the autonomous vehicle (101, 510, 610, 510, 610) to traverse the local region, assigning a score to each of the one or more candidate trajectories (431a-n, 432a-n, 433a-n, 434a-n, 435a-n, 541, 542); and selecting a candidate trajectory (431a-n, 432a-n, 433a-n, 434a-n, 435a-n, 541, 542) that has a best score as the trajectory (431a-n, 432a-n, 433a-n, 434a-n, 435a-n, 541, 542) for the autonomous vehicle (101, 510, 610, 510, 610) to traverse the local region, chracterized in that assigning the score to each of the one or more candidate trajectories (431a-n, 432a-n, 433an, 434a-n, 435a-n, 541, 542) comprises biasing the score in favor of temporal consistency of the selected trajectory (431a-n, 432a-n, 433a-n, 434a-n, 435a-n, 541, 542) between successive trajectory selection cycles.