7493
Comment:
|
4900
|
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]]. This plugin type can be predefined using {{{--landmarks}}}. |
|
Line 8: | Line 12: |
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(verbosity=normal, only_causal_landmarks=false) |
Line 11: | Line 15: |
* ''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. * ''reasonable_orders'' (bool): generate reasonable orders |
* ''verbosity'' ({silent, normal, verbose, debug}): Option to specify the verbosity level. * {{{silent}}}: only the most basic output * {{{normal}}}: relevant information to monitor progress * {{{verbose}}}: full output * {{{debug}}}: like verbose with additional debug output |
Line 17: | Line 21: |
* ''disjunctive_landmarks'' (bool): keep disjunctive landmarks * ''conjunctive_landmarks'' (bool): keep conjunctive landmarks * ''no_orders'' (bool): discard all orderings * ''lm_cost_type'' ({NORMAL, ONE, PLUSONE}): landmark action cost adjustment '''Relevant options:''' reasonable_orders, only_causal_landmarks |
Language features supported: * '''conditional_effects:''' ignored, i.e. not supported |
Line 26: | Line 26: |
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, conjunctive_landmarks=true, verbosity=normal, use_orders=true) |
Line 31: | Line 31: |
* ''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. * ''reasonable_orders'' (bool): generate reasonable orders * ''only_causal_landmarks'' (bool): keep only causal landmarks * ''disjunctive_landmarks'' (bool): keep disjunctive landmarks |
|
Line 39: | Line 32: |
* ''no_orders'' (bool): discard all orderings * ''lm_cost_type'' ({NORMAL, ONE, PLUSONE}): landmark action cost adjustment '''Relevant options:''' m, reasonable_orders, conjunctive_landmarks, no_orders |
* ''verbosity'' ({silent, normal, verbose, debug}): Option to specify the verbosity level. * {{{silent}}}: only the most basic output * {{{normal}}}: relevant information to monitor progress * {{{verbose}}}: full output * {{{debug}}}: like verbose with additional debug output * ''use_orders'' (bool): use orders between landmarks |
Line 46: | Line 41: |
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, verbosity=normal) |
Line 50: | Line 45: |
* ''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. * ''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 * ''lm_cost_type'' ({NORMAL, ONE, PLUSONE}): landmark action cost adjustment |
* ''lm_factories'' (list of [[Doc/LandmarkFactory|LandmarkFactory]]): * ''verbosity'' ({silent, normal, verbose, debug}): Option to specify the verbosity level. * {{{silent}}}: only the most basic output * {{{normal}}}: relevant information to monitor progress * {{{verbose}}}: full output * {{{debug}}}: like verbose with additional debug output |
Line 62: | Line 52: |
'''Relevant options:''' Depends on landmarks |
|
Line 67: | Line 55: |
Language features supported: * '''conditional_effects:''' supported if all components support them == HPS Orders == Adds reasonable orders and obedient reasonable orders described in the following paper * Jörg Hoffmann, Julie Porteous and Laura Sebastia.<<BR>> [[https://jair.org/index.php/jair/article/view/10390/24882|Ordered Landmarks in Planning]].<<BR>> ''Journal of Artificial Intelligence Research'' 22:215-278. 2004. {{{ lm_reasonable_orders_hps(lm_factory, verbosity=normal) }}} * ''lm_factory'' ([[Doc/LandmarkFactory|LandmarkFactory]]): * ''verbosity'' ({silent, normal, verbose, debug}): Option to specify the verbosity level. * {{{silent}}}: only the most basic output * {{{normal}}}: relevant information to monitor progress * {{{verbose}}}: full output * {{{debug}}}: like verbose with additional debug output Language features supported: * '''conditional_effects:''' supported if subcomponent supports them |
|
Line 70: | Line 79: |
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(disjunctive_landmarks=true, verbosity=normal, use_orders=true, only_causal_landmarks=false) |
Line 74: | Line 83: |
* ''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. * ''reasonable_orders'' (bool): generate reasonable orders |
* ''disjunctive_landmarks'' (bool): keep disjunctive landmarks * ''verbosity'' ({silent, normal, verbose, debug}): Option to specify the verbosity level. * {{{silent}}}: only the most basic output * {{{normal}}}: relevant information to monitor progress * {{{verbose}}}: full output * {{{debug}}}: like verbose with additional debug output * ''use_orders'' (bool): use orders between landmarks |
Line 80: | Line 91: |
* ''disjunctive_landmarks'' (bool): keep disjunctive landmarks * ''conjunctive_landmarks'' (bool): keep conjunctive landmarks * ''no_orders'' (bool): discard all orderings * ''lm_cost_type'' ({NORMAL, ONE, PLUSONE}): landmark action cost adjustment '''Relevant Options:''' reasonable_orders, only_causal_landmarks, disjunctive_landmarks, no_orders |
Language features supported: * '''conditional_effects:''' supported |
Line 89: | Line 96: |
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(verbosity=normal, use_orders=true) |
Line 93: | Line 100: |
* ''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. * ''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 * ''lm_cost_type'' ({NORMAL, ONE, PLUSONE}): landmark action cost adjustment '''Relevant options:''' reasonable_orders, no_orders |
* ''verbosity'' ({silent, normal, verbose, debug}): Option to specify the verbosity level. * {{{silent}}}: only the most basic output * {{{normal}}}: relevant information to monitor progress * {{{verbose}}}: full output * {{{debug}}}: like verbose with additional debug output * ''use_orders'' (bool): use orders between landmarks Language features supported: * '''conditional_effects:''' We think they are supported, but this is not 100% sure. |
Line 105: | Line 109: |
/* moin code generated by txt2tags 2.6b (http://txt2tags.sf.net) */ | /* moin code generated by txt2tags 2.6 (http://txt2tags.org) */ |
Contents
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.
This plugin type can be predefined using --landmarks.
Exhaustive Landmarks
Exhaustively checks for each fact if it is a landmark.This check is done using relaxed planning.
lm_exhaust(verbosity=normal, only_causal_landmarks=false)
verbosity ({silent, normal, verbose, debug}): Option to specify the verbosity level.
silent: only the most basic output
normal: relevant information to monitor progress
verbose: full output
debug: like verbose with additional debug output
only_causal_landmarks (bool): keep 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, conjunctive_landmarks=true, verbosity=normal, use_orders=true)
m (int): subset size (if unsure, use the default of 2)
conjunctive_landmarks (bool): keep conjunctive landmarks
verbosity ({silent, normal, verbose, debug}): Option to specify the verbosity level.
silent: only the most basic output
normal: relevant information to monitor progress
verbose: full output
debug: like verbose with additional debug output
use_orders (bool): use orders between landmarks
Merged Landmarks
Merges the landmarks and orderings from the parameter landmarks
lm_merged(lm_factories, verbosity=normal)
lm_factories (list of LandmarkFactory):
verbosity ({silent, normal, verbose, debug}): Option to specify the verbosity level.
silent: only the most basic output
normal: relevant information to monitor progress
verbose: full output
debug: like verbose with additional debug output
Precedence: Fact landmarks take precedence over disjunctive landmarks, orderings take precedence in the usual manner (gn > nat > reas > o_reas).
Note: Does not currently support conjunctive landmarks
Language features supported:
conditional_effects: supported if all components support them
HPS Orders
Adds reasonable orders and obedient reasonable orders described in the following paper
Jörg Hoffmann, Julie Porteous and Laura Sebastia.
Ordered Landmarks in Planning.
Journal of Artificial Intelligence Research 22:215-278. 2004.
lm_reasonable_orders_hps(lm_factory, verbosity=normal)
lm_factory (LandmarkFactory):
verbosity ({silent, normal, verbose, debug}): Option to specify the verbosity level.
silent: only the most basic output
normal: relevant information to monitor progress
verbose: full output
debug: like verbose with additional debug output
Language features supported:
conditional_effects: supported if subcomponent supports them
RHW Landmarks
The landmark generation method introduced by Richter, Helmert and Westphal (AAAI 2008).
lm_rhw(disjunctive_landmarks=true, verbosity=normal, use_orders=true, only_causal_landmarks=false)
disjunctive_landmarks (bool): keep disjunctive landmarks
verbosity ({silent, normal, verbose, debug}): Option to specify the verbosity level.
silent: only the most basic output
normal: relevant information to monitor progress
verbose: full output
debug: like verbose with additional debug output
use_orders (bool): use orders between landmarks
only_causal_landmarks (bool): keep only causal landmarks
Language features supported:
conditional_effects: supported
Zhu/Givan Landmarks
The landmark generation method introduced by Zhu & Givan (ICAPS 2003 Doctoral Consortium).
lm_zg(verbosity=normal, use_orders=true)
verbosity ({silent, normal, verbose, debug}): Option to specify the verbosity level.
silent: only the most basic output
normal: relevant information to monitor progress
verbose: full output
debug: like verbose with additional debug output
use_orders (bool): use orders between landmarks
Language features supported:
conditional_effects: We think they are supported, but this is not 100% sure.