Differences between revisions 1 and 16 (spanning 15 versions)
Revision 1 as of 2014-01-27 10:59:03
Size: 7493
Editor: XmlRpcBot
Comment:
Revision 16 as of 2018-09-21 00:18:05
Size: 4352
Editor: XmlRpcBot
Comment:
Deletions are marked like this. Additions are marked like this.
Line 2: Line 2:

A landmark factory specification is either a newly created instance or a landmark factory that has been defined previously. This page describes how one can specify a new landmark factory instance. For re-using landmark factories, see [[OptionSyntax#Landmark_Predefinitions|Landmark Predefinitions]].
Line 8: Line 10:
lm_exhaust(cost_type=NORMAL, reasonable_orders=false, only_causal_landmarks=false, disjunctive_landmarks=true, conjunctive_landmarks=true, no_orders=false, lm_cost_type=NORMAL) lm_exhaust(reasonable_orders=false, only_causal_landmarks=false, disjunctive_landmarks=true, conjunctive_landmarks=true, no_orders=false)
Line 11: Line 13:
 * ''cost_type'' ({NORMAL, ONE, PLUSONE}): Operator cost adjustment type. No matter what this setting is, axioms will always be considered as actions of cost 0 by the heuristics that treat axioms as actions.
  * {{{NORMAL}}}: all actions are accounted for with their real cost
  * {{{ONE}}}: all actions are accounted for as unit cost
  * {{{PLUSONE}}}: all actions are accounted for as their real cost + 1 (except if all actions have original cost 1, in which case cost 1 is used). This is the behaviour known for the heuristics of the LAMA planner. This is intended to be used by the heuristics, not search engines, but is supported for both.
Line 20: Line 18:
 * ''lm_cost_type'' ({NORMAL, ONE, PLUSONE}): landmark action cost adjustment
Line 23: Line 20:
Language features supported:
 * '''conditional_effects:''' ignored, i.e. not supported
Line 26: Line 25:
lm_hm(m=2, cost_type=NORMAL, reasonable_orders=false, only_causal_landmarks=false, disjunctive_landmarks=true, conjunctive_landmarks=true, no_orders=false, lm_cost_type=NORMAL) lm_hm(m=2, reasonable_orders=false, only_causal_landmarks=false, disjunctive_landmarks=true, conjunctive_landmarks=true, no_orders=false)
Line 31: Line 30:
 * ''cost_type'' ({NORMAL, ONE, PLUSONE}): Operator cost adjustment type. No matter what this setting is, axioms will always be considered as actions of cost 0 by the heuristics that treat axioms as actions.
  * {{{NORMAL}}}: all actions are accounted for with their real cost
  * {{{ONE}}}: all actions are accounted for as unit cost
  * {{{PLUSONE}}}: all actions are accounted for as their real cost + 1 (except if all actions have original cost 1, in which case cost 1 is used). This is the behaviour known for the heuristics of the LAMA planner. This is intended to be used by the heuristics, not search engines, but is supported for both.
Line 40: Line 35:
 * ''lm_cost_type'' ({NORMAL, ONE, PLUSONE}): landmark action cost adjustment
Line 46: Line 40:
lm_merged(lm_graphs, cost_type=NORMAL, reasonable_orders=false, only_causal_landmarks=false, disjunctive_landmarks=true, conjunctive_landmarks=true, no_orders=false, lm_cost_type=NORMAL) lm_merged(lm_factories, reasonable_orders=false, only_causal_landmarks=false, disjunctive_landmarks=true, conjunctive_landmarks=true, no_orders=false)
Line 50: Line 44:
 * ''lm_graphs'' (list of [[Doc/LandmarkGraph|LandmarkGraph]]):
 * ''cost_type'' ({NORMAL, ONE, PLUSONE}): Operator cost adjustment type. No matter what this setting is, axioms will always be considered as actions of cost 0 by the heuristics that treat axioms as actions.
  * {{{NORMAL}}}: all actions are accounted for with their real cost
  * {{{ONE}}}: all actions are accounted for as unit cost
  * {{{PLUSONE}}}: all actions are accounted for as their real cost + 1 (except if all actions have original cost 1, in which case cost 1 is used). This is the behaviour known for the heuristics of the LAMA planner. This is intended to be used by the heuristics, not search engines, but is supported for both.
 * ''lm_factories'' (list of [[Doc/LandmarkFactory|LandmarkFactory]]):
Line 60: Line 50:
 * ''lm_cost_type'' ({NORMAL, ONE, PLUSONE}): landmark action cost adjustment
Line 67: Line 56:
Language features supported:
 * '''conditional_effects:''' supported if all components support them
Line 70: Line 61:
lm_rhw(cost_type=NORMAL, reasonable_orders=false, only_causal_landmarks=false, disjunctive_landmarks=true, conjunctive_landmarks=true, no_orders=false, lm_cost_type=NORMAL) lm_rhw(reasonable_orders=false, only_causal_landmarks=false, disjunctive_landmarks=true, conjunctive_landmarks=true, no_orders=false)
Line 74: Line 65:
 * ''cost_type'' ({NORMAL, ONE, PLUSONE}): Operator cost adjustment type. No matter what this setting is, axioms will always be considered as actions of cost 0 by the heuristics that treat axioms as actions.
  * {{{NORMAL}}}: all actions are accounted for with their real cost
  * {{{ONE}}}: all actions are accounted for as unit cost
  * {{{PLUSONE}}}: all actions are accounted for as their real cost + 1 (except if all actions have original cost 1, in which case cost 1 is used). This is the behaviour known for the heuristics of the LAMA planner. This is intended to be used by the heuristics, not search engines, but is supported for both.
Line 83: Line 70:
 * ''lm_cost_type'' ({NORMAL, ONE, PLUSONE}): landmark action cost adjustment
Line 86: Line 72:
Language features supported:
 * '''conditional_effects:''' supported
Line 89: Line 77:
lm_zg(cost_type=NORMAL, reasonable_orders=false, only_causal_landmarks=false, disjunctive_landmarks=true, conjunctive_landmarks=true, no_orders=false, lm_cost_type=NORMAL) lm_zg(reasonable_orders=false, only_causal_landmarks=false, disjunctive_landmarks=true, conjunctive_landmarks=true, no_orders=false)
Line 93: Line 81:
 * ''cost_type'' ({NORMAL, ONE, PLUSONE}): Operator cost adjustment type. No matter what this setting is, axioms will always be considered as actions of cost 0 by the heuristics that treat axioms as actions.
  * {{{NORMAL}}}: all actions are accounted for with their real cost
  * {{{ONE}}}: all actions are accounted for as unit cost
  * {{{PLUSONE}}}: all actions are accounted for as their real cost + 1 (except if all actions have original cost 1, in which case cost 1 is used). This is the behaviour known for the heuristics of the LAMA planner. This is intended to be used by the heuristics, not search engines, but is supported for both.
Line 102: Line 86:
 * ''lm_cost_type'' ({NORMAL, ONE, PLUSONE}): landmark action cost adjustment
Line 104: Line 87:

Language features supported:
 * '''conditional_effects:''' We think they are supported, but this is not 100% sure.

A landmark factory specification is either a newly created instance or a landmark factory that has been defined previously. This page describes how one can specify a new landmark factory instance. For re-using landmark factories, see Landmark Predefinitions.

Exhaustive Landmarks

Exhaustively checks for each fact if it is a landmark.This check is done using relaxed planning.

lm_exhaust(reasonable_orders=false, only_causal_landmarks=false, disjunctive_landmarks=true, conjunctive_landmarks=true, no_orders=false)
  • reasonable_orders (bool): generate reasonable orders

  • only_causal_landmarks (bool): keep only causal landmarks

  • disjunctive_landmarks (bool): keep disjunctive landmarks

  • conjunctive_landmarks (bool): keep conjunctive landmarks

  • no_orders (bool): discard all orderings

Relevant options: reasonable_orders, only_causal_landmarks

Language features supported:

  • conditional_effects: ignored, i.e. not supported

h^m Landmarks

The landmark generation method introduced by Keyder, Richter & Helmert (ECAI 2010).

lm_hm(m=2, reasonable_orders=false, only_causal_landmarks=false, disjunctive_landmarks=true, conjunctive_landmarks=true, no_orders=false)
  • m (int): subset size (if unsure, use the default of 2)

  • reasonable_orders (bool): generate reasonable orders

  • only_causal_landmarks (bool): keep only causal landmarks

  • disjunctive_landmarks (bool): keep disjunctive landmarks

  • conjunctive_landmarks (bool): keep conjunctive landmarks

  • no_orders (bool): discard all orderings

Relevant options: m, reasonable_orders, conjunctive_landmarks, no_orders

Merged Landmarks

Merges the landmarks and orderings from the parameter landmarks

lm_merged(lm_factories, reasonable_orders=false, only_causal_landmarks=false, disjunctive_landmarks=true, conjunctive_landmarks=true, no_orders=false)
  • lm_factories (list of LandmarkFactory):

  • reasonable_orders (bool): generate reasonable orders

  • only_causal_landmarks (bool): keep only causal landmarks

  • disjunctive_landmarks (bool): keep disjunctive landmarks

  • conjunctive_landmarks (bool): keep conjunctive landmarks

  • no_orders (bool): discard all orderings

Precedence: Fact landmarks take precedence over disjunctive landmarks, orderings take precedence in the usual manner (gn > nat > reas > o_reas).

Relevant options: Depends on landmarks

Note: Does not currently support conjunctive landmarks

Language features supported:

  • conditional_effects: supported if all components support them

RHW Landmarks

The landmark generation method introduced by Richter, Helmert and Westphal (AAAI 2008).

lm_rhw(reasonable_orders=false, only_causal_landmarks=false, disjunctive_landmarks=true, conjunctive_landmarks=true, no_orders=false)
  • reasonable_orders (bool): generate reasonable orders

  • only_causal_landmarks (bool): keep only causal landmarks

  • disjunctive_landmarks (bool): keep disjunctive landmarks

  • conjunctive_landmarks (bool): keep conjunctive landmarks

  • no_orders (bool): discard all orderings

Relevant Options: reasonable_orders, only_causal_landmarks, disjunctive_landmarks, no_orders

Language features supported:

  • conditional_effects: supported

Zhu/Givan Landmarks

The landmark generation method introduced by Zhu & Givan (ICAPS 2003 Doctoral Consortium).

lm_zg(reasonable_orders=false, only_causal_landmarks=false, disjunctive_landmarks=true, conjunctive_landmarks=true, no_orders=false)
  • reasonable_orders (bool): generate reasonable orders

  • only_causal_landmarks (bool): keep only causal landmarks

  • disjunctive_landmarks (bool): keep disjunctive landmarks

  • conjunctive_landmarks (bool): keep conjunctive landmarks

  • no_orders (bool): discard all orderings

Relevant options: reasonable_orders, no_orders

Language features supported:

  • conditional_effects: We think they are supported, but this is not 100% sure.

FastDownward: Doc/LandmarkFactory (last edited 2024-01-11 22:26:37 by XmlRpcBot)