Differences between revisions 7 and 8
 ⇤ ← Revision 7 as of 2015-09-11 10:51:49 → Size: 2882 Editor: XmlRpcBot Comment: ← Revision 8 as of 2015-10-29 10:45:08 → ⇥ Size: 3703 Editor: XmlRpcBot Comment: Deletions are marked like this. Additions are marked like this. Line 64: Line 64: == Type-based open list ==Uses multiple evaluators to assign entries to buckets. All entries in a bucket have the same evaluator values. When retrieving an entry, a bucket is chosen uniformly at random and one of the contained entries is selected uniformly randomly. The algorithm is based on * Fan Xie, Martin Mueller, Robert Holte, Tatsuya Imai.<
> [[http://www.aaai.org/ocs/index.php/AAAI/AAAI14/paper/view/8472/8705|Type-Based Exploration with Multiple Search Queues for Satisficing Planning]].<
> In ''Proceedings of the Twenty-Eigth AAAI Conference Conference on Artificial Intelligence (AAAI 2014)'', pp. 2395-2401. AAAI Press 2014.{{{type_based(evaluators)}}} * ''evaluators'' (list of [[Doc/ScalarEvaluator|ScalarEvaluator]]): Evaluators used to determine the bucket for each entry.

## Alternation open list

alternates between several open lists.

alt(sublists, boost=0)
• sublists (list of OpenList): open lists between which this one alternates

• boost (int): boost value for contained open lists that are restricted to preferred successors

## Epsilon-greedy open list

Chooses an entry uniformly randomly with probability 'epsilon', otherwise it returns the minimum entry. The algorithm is based on

epsilon_greedy(eval, pref_only=false, epsilon=0.2)
• eval (ScalarEvaluator): scalar evaluator

• pref_only (bool): insert only nodes generated by preferred operators

• epsilon (double [0.0, 1.0]): probability for choosing the next entry randomly

## Pareto open list

Selects one of the Pareto-optimal (regarding the sub-evaluators) entries for removal.

pareto(evals, pref_only=false, state_uniform_selection=false)
• evals (list of ScalarEvaluator): scalar evaluators

• pref_only (bool): insert only nodes generated by preferred operators

• state_uniform_selection (bool): When removing an entry, we select a non-dominated bucket and return its oldest entry. If this option is false, we select uniformly from the non-dominated buckets; if the option is true, we weight the buckets with the number of entries.

## Standard open list

Standard open list that uses a single evaluator

single(eval, pref_only=false)
• eval (ScalarEvaluator): scalar evaluator

• pref_only (bool): insert only nodes generated by preferred operators

## Bucket-based open list

Bucket-based open list implementation that uses a single evaluator. Ties are broken in FIFO order.

single_buckets(eval, pref_only=false)
• eval (ScalarEvaluator): scalar evaluator

• pref_only (bool): insert only nodes generated by preferred operators

## Tie-breaking open list

tiebreaking(evals, pref_only=false, unsafe_pruning=true)
• evals (list of ScalarEvaluator): scalar evaluators

• pref_only (bool): insert only nodes generated by preferred operators

• unsafe_pruning (bool): allow unsafe pruning when the main evaluator regards a state a dead end

## Type-based open list

Uses multiple evaluators to assign entries to buckets. All entries in a bucket have the same evaluator values. When retrieving an entry, a bucket is chosen uniformly at random and one of the contained entries is selected uniformly randomly. The algorithm is based on

type_based(evaluators)
• evaluators (list of ScalarEvaluator): Evaluators used to determine the bucket for each entry.

FastDownward: Doc/OpenList (last edited 2019-03-08 12:08:33 by XmlRpcBot)