Currently, only the best path is computed by means of the FastDownward algorithm.
A display of alternative paths is desired.
The following termination criteria could be taken into account (optional requirement):
All optimal paths (same total cost)
Considering some tolerance:
± Relative tolerance
± Absolute tolerance
Max number of results
Timeout
Proposed solution
Optionally, pass an array of already known paths to the search algorithm. If a LearningUnit is discovered:
Check if it the current partial path is equal to the beginning of one of the known paths. If yes, add some penality to the current costs (probably a low value). This should enforce the algorithm to search for alternatives as they become cheaper.
Repeat this until we do not discover any new paths anymore or until we reached Max number of results.
However, this will only be applicable for Max number of results
This will also return "wrong" total costs for the alternative paths and may be misleading if displayed to the enduser (recommputation needed?)
Requirement
Currently, only the best path is computed by means of the FastDownward algorithm. A display of alternative paths is desired.
The following termination criteria could be taken into account (optional requirement):
Proposed solution
Optionally, pass an array of already known paths to the search algorithm. If a
LearningUnit
is discovered:Max number of results
. However, this will only be applicable forMax number of results