Skip to content

Order abstractions for saturated cost partitioning.

Dynamic greedy orders#

Order abstractions greedily by a given scoring function, dynamically recomputing the next best abstraction after each ordering step.

dynamic_greedy_orders(scoring_function=max_heuristic_per_stolen_costs, random_seed=-1)
  • scoring_function ({max_heuristic, min_stolen_costs, max_heuristic_per_stolen_costs}): metric for ordering abstractions/landmarks
    • max_heuristic: order by decreasing heuristic value for the given state
    • min_stolen_costs: order by increasing sum of costs stolen from other heuristics
    • max_heuristic_per_stolen_costs: order by decreasing ratio of heuristic value divided by sum of stolen costs
  • random_seed (int [-1, infinity]): Set to -1 (default) to use the global random number generator. Set to any other value to use a local random number generator with the given seed.

Cost Partitioning Heuristics#

Greedy orders#

Order abstractions greedily by a given scoring function.

greedy_orders(scoring_function=max_heuristic_per_stolen_costs, random_seed=-1)
  • scoring_function ({max_heuristic, min_stolen_costs, max_heuristic_per_stolen_costs}): metric for ordering abstractions/landmarks
    • max_heuristic: order by decreasing heuristic value for the given state
    • min_stolen_costs: order by increasing sum of costs stolen from other heuristics
    • max_heuristic_per_stolen_costs: order by decreasing ratio of heuristic value divided by sum of stolen costs
  • random_seed (int [-1, infinity]): Set to -1 (default) to use the global random number generator. Set to any other value to use a local random number generator with the given seed.

Random orders#

Shuffle abstractions randomly.

random_orders(random_seed=-1)
  • random_seed (int [-1, infinity]): Set to -1 (default) to use the global random number generator. Set to any other value to use a local random number generator with the given seed.