Class Globals

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.

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.

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

LPScheduler

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:

See also

LPScheduler

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 flag

  • provide a plan filename after the domain and problem filenames Then, the instantiatedOps 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.