Class Globals
Defined in File globals.h
Class Documentation
-
class Globals
Class containing global variables
Public Static Functions
-
static void markThatActionsInPlanHaveToBeKept()
Record that the actions in the exemplar plan
planFilename
must not be pruned in the preprocessor.See also
-
static void eliminatedAction(const int &i, const char *synopsis)
Note that the action with the specified ID has been pruned, due to the given reason. Will lead to an assertion failure if the action must not be pruned.
See also
- Parameters:
i – The action index that has been eliminated
synopsis – A short reason for why the action was eliminated. This is printed if the pruning is known to be in error.
Public Static Attributes
-
static const int &globalVerbosity
Global verbosity flag. Is a bit-mask, where each bit corresponds to whether debugging output should be provided for a certain part of the code.
1: provide basic information about how search is progressing
2: when expanding a state, print the plan that reached that state
16: provide (lots of) information about RPG construction and action grounding
4096: provide information about the STP constraints used within the incremental Bellman-Ford implementation
65536: print out a list of all ground action names, fact names, and variable names
131072: print out information about the action pruning performed in the preprocessor
1048576: provide information about the ordering constraints added to the partial order when applying an action
-
static int writeableVerbosity
-
static bool paranoidScheduling
Debugging flag. If set to true (pass the
-D
flag at the command line), the plan is scheduled using three techniques, at every state: the LP, the incremental Bellman-Ford, and Floyd-Walshall. Additionally, the latter is ran each time an edge is added to the incremental Bellman-Ford algorithm to check the incremental updates are correct.See also
-
static bool profileScheduling
Debugging flag. If set to true (pass the
-P
flag at the command line), the plan is scheduled using both the LP and incremental Bellman-Ford, without the two being integrated. The profile data produced by gprof can then be used to ascertain the comparative performance of the two approaches:Time taken for the STP is
LPScheduler::prime()
+ParentData::spawnChildData()
Time taken for the LP is
LPScheduler::LPScheduler()
-ParentData::spawnChildData()
(as the latter is called from within the LP scheduler constructor, but needs to be discounted as in profiling mode the two are not integrated.)
See also
-
static vector<bool> actionHasToBeKept
A vector of which actions definitely must be kept, i.e. not pruned in preprocessing. Is present for debugging purposes. To populate the vector:
use the
-H
command line flagprovide a plan filename after the domain and problem filenames Then, the
instantiatedOp
s used in the plan will have their entries in this vector set to true.
-
static const char *planFilename
An exemplar plan for the current problem, to be read in for debugging purposes.
See also
-
static void markThatActionsInPlanHaveToBeKept()