Revision 22 as of 2017-05-11 16:43:04

Clear message

This page describes the various merge strategies supported by the planner.

Merge strategy DFP

This merge strategy implements the algorithm originally described in the paper "Directed model checking with distance-preserving abstractions" by Draeger, Finkbeiner and Podelski (SPIN 2006), adapted to planning in the following paper:

Using this command line option is deprecated, please use the equivalent configurations

merge_strategy=merge_stateless(merge_selector=score_based_filtering(scoring_functions=[goal_relevance,dfp,total_order(<order_option>))]))

if specifying tie-breaking order criteria, or

merge_strategy=merge_stateless(merge_selector=score_based_filtering(scoring_functions=[goal_relevance,dfp,single_random()]))

if using full random tie-breaking.

merge_dfp(atomic_ts_order=reverse_level, product_ts_order=new_to_old, atomic_before_product=false, random_seed=-1, randomized_order=false)

Linear merge strategies

These merge strategies implement several linear merge orders, which are described in the paper:

Using this command line option is deprecated, please use the equivalent configuration

merge_strategy=merge_precomputed(merge_tree=linear(<variable_order>))

merge_linear(random_seed=-1, update_option=use_random, variable_order=CG_GOAL_LEVEL)

Precomputed merge strategy

This merge strategy has a precomputed merge tree. Note that this merge strategy does not take into account the current state of the factored transition system. This also means that this merge strategy relies on the factored transition system being synchronized with this merge tree, i.e. all merges are performed exactly as given by the merge tree.

merge_precomputed(merge_tree)

Merge strategy SSCs

This merge strategy implements the algorithm described in the paper

In a nutshell, it computes the maximal SCCs of the causal graph, obtaining a partitioning of the task's variables. Every such partition is then merged individually, using the specified fallback merge strategy, considering the SCCs in a configurable order. Afterwards, all resulting composite abstractions are merged to form the final abstraction, again using the specified fallback merge strategy and the configurable order of the SCCs.

merge_sccs(order_of_sccs=topological, merge_tree=<none>, merge_selector=<none>)

Stateless merge strategy

This merge strategy has a merge selector, which computes the next merge only depending on the current state of the factored transition system, not requiring any additional information.

merge_stateless(merge_selector)