Generated on: Thu Mar 29 07:46:58 PDT 2012 for custom file set
// doxy/ or-tools/ src/ constraint_solver/

operations_research::DemonProfiler Class Reference

DemonProfiler manages the profiling of demons and allows access to gathered data. More...

Inheritance diagram for operations_research::DemonProfiler:

operations_research::PropagationMonitor operations_research::SearchMonitor operations_research::BaseObject

List of all members.

Public Member Functions

 DemonProfiler (Solver *const solver)
virtual ~DemonProfiler ()
int64 CurrentTime () const
virtual void BeginConstraintInitialPropagation (const Constraint *const constraint)
 Propagation events.
virtual void EndConstraintInitialPropagation (const Constraint *const constraint)
virtual void BeginNestedConstraintInitialPropagation (const Constraint *const constraint, const Constraint *const delayed)
virtual void EndNestedConstraintInitialPropagation (const Constraint *const constraint, const Constraint *const delayed)
virtual void RegisterDemon (const Demon *const demon)
virtual void BeginDemonRun (const Demon *const demon)
virtual void EndDemonRun (const Demon *const demon)
virtual void PushContext (const string &context)
virtual void PopContext ()
virtual void BeginFail ()
 Just when the failure occurs.
virtual void RestartSearch ()
 Restarts a search and clears all previously collected information.
virtual void SetMin (IntExpr *const expr, int64 new_min)
 IntExpr modifiers.
virtual void SetMax (IntExpr *const expr, int64 new_max)
virtual void SetRange (IntExpr *const expr, int64 new_min, int64 new_max)
virtual void SetMin (IntVar *const var, int64 new_min)
 IntVar modifiers.
virtual void SetMax (IntVar *const var, int64 new_max)
virtual void SetRange (IntVar *const var, int64 new_min, int64 new_max)
virtual void RemoveValue (IntVar *const var, int64 value)
virtual void SetValue (IntVar *const var, int64 value)
virtual void RemoveInterval (IntVar *const var, int64 imin, int64 imax)
virtual void SetValues (IntVar *const var, const int64 *const values, int size)
virtual void RemoveValues (IntVar *const var, const int64 *const values, int size)
virtual void SetStartMin (IntervalVar *const var, int64 new_min)
 IntervalVar modifiers.
virtual void SetStartMax (IntervalVar *const var, int64 new_max)
virtual void SetStartRange (IntervalVar *const var, int64 new_min, int64 new_max)
virtual void SetEndMin (IntervalVar *const var, int64 new_min)
virtual void SetEndMax (IntervalVar *const var, int64 new_max)
virtual void SetEndRange (IntervalVar *const var, int64 new_min, int64 new_max)
virtual void SetDurationMin (IntervalVar *const var, int64 new_min)
virtual void SetDurationMax (IntervalVar *const var, int64 new_max)
virtual void SetDurationRange (IntervalVar *const var, int64 new_min, int64 new_max)
virtual void SetPerformed (IntervalVar *const var, bool value)
virtual void RankFirst (SequenceVar *const var, int index)
 SequenceVar modifiers.
virtual void RankNotFirst (SequenceVar *const var, int index)
virtual void RankLast (SequenceVar *const var, int index)
virtual void RankNotLast (SequenceVar *const var, int index)
virtual void RankSequence (SequenceVar *const var, const std::vector< int > &rank_first, const std::vector< int > &rank_last, const std::vector< int > &unperformed)
void AddFakeRun (const Demon *const demon, int64 start_time, int64 end_time, bool is_fail)
 Useful for unit tests.
void PrintOverview (Solver *const solver, const string &filename)
 Exports collected data as human-readable text.
void ExportInformation (const Constraint *const constraint, int64 *const fails, int64 *const initial_propagation_runtime, int64 *const demon_invocations, int64 *const total_demon_runtime, int *demons)
 Export Information.
void ExportInformation (DemonRuns *const demon_runs, int64 *const demon_invocations, int64 *const fails, int64 *const total_demon_runtime, double *const mean_demon_runtime, double *const median_demon_runtime, double *const stddev_demon_runtime)
virtual void Install ()
 The demon_profiler is added by default on the main propagation monitor.


Detailed Description

DemonProfiler manages the profiling of demons and allows access to gathered data.

Add this class as a parameter to Solver and access its information after the end of a search.

Definition at line 37 of file demon_profiler.cc.


Constructor & Destructor Documentation

operations_research::DemonProfiler::DemonProfiler ( Solver *const   solver  )  [inline, explicit]

Definition at line 39 of file demon_profiler.cc.

virtual operations_research::DemonProfiler::~DemonProfiler (  )  [inline, virtual]

Definition at line 45 of file demon_profiler.cc.


Member Function Documentation

int64 operations_research::DemonProfiler::CurrentTime (  )  const [inline]

Definition at line 50 of file demon_profiler.cc.

virtual void operations_research::DemonProfiler::BeginConstraintInitialPropagation ( const Constraint *const   constraint  )  [inline, virtual]

Propagation events.

Implements operations_research::PropagationMonitor.

Definition at line 54 of file demon_profiler.cc.

virtual void operations_research::DemonProfiler::EndConstraintInitialPropagation ( const Constraint *const   constraint  )  [inline, virtual]

Implements operations_research::PropagationMonitor.

Definition at line 70 of file demon_profiler.cc.

virtual void operations_research::DemonProfiler::BeginNestedConstraintInitialPropagation ( const Constraint *const   constraint,
const Constraint *const   delayed 
) [inline, virtual]

Implements operations_research::PropagationMonitor.

Definition at line 84 of file demon_profiler.cc.

virtual void operations_research::DemonProfiler::EndNestedConstraintInitialPropagation ( const Constraint *const   constraint,
const Constraint *const   delayed 
) [inline, virtual]

Implements operations_research::PropagationMonitor.

Definition at line 100 of file demon_profiler.cc.

virtual void operations_research::DemonProfiler::RegisterDemon ( const Demon *const   demon  )  [inline, virtual]

Implements operations_research::PropagationMonitor.

Definition at line 116 of file demon_profiler.cc.

virtual void operations_research::DemonProfiler::BeginDemonRun ( const Demon *const   demon  )  [inline, virtual]

Implements operations_research::PropagationMonitor.

Definition at line 134 of file demon_profiler.cc.

virtual void operations_research::DemonProfiler::EndDemonRun ( const Demon *const   demon  )  [inline, virtual]

Implements operations_research::PropagationMonitor.

Definition at line 147 of file demon_profiler.cc.

virtual void operations_research::DemonProfiler::PushContext ( const string &  context  )  [inline, virtual]

Implements operations_research::PropagationMonitor.

Definition at line 160 of file demon_profiler.cc.

virtual void operations_research::DemonProfiler::PopContext (  )  [inline, virtual]

Implements operations_research::PropagationMonitor.

Definition at line 161 of file demon_profiler.cc.

virtual void operations_research::DemonProfiler::BeginFail (  )  [inline, virtual]

Just when the failure occurs.

Reimplemented from operations_research::SearchMonitor.

Definition at line 163 of file demon_profiler.cc.

virtual void operations_research::DemonProfiler::RestartSearch (  )  [inline, virtual]

Restarts a search and clears all previously collected information.

Reimplemented from operations_research::SearchMonitor.

Definition at line 184 of file demon_profiler.cc.

virtual void operations_research::DemonProfiler::SetMin ( IntExpr *const   expr,
int64  new_min 
) [inline, virtual]

IntExpr modifiers.

Implements operations_research::PropagationMonitor.

Definition at line 193 of file demon_profiler.cc.

virtual void operations_research::DemonProfiler::SetMax ( IntExpr *const   expr,
int64  new_max 
) [inline, virtual]

Implements operations_research::PropagationMonitor.

Definition at line 194 of file demon_profiler.cc.

virtual void operations_research::DemonProfiler::SetRange ( IntExpr *const   expr,
int64  new_min,
int64  new_max 
) [inline, virtual]

Implements operations_research::PropagationMonitor.

Definition at line 195 of file demon_profiler.cc.

virtual void operations_research::DemonProfiler::SetMin ( IntVar *const   var,
int64  new_min 
) [inline, virtual]

IntVar modifiers.

Implements operations_research::PropagationMonitor.

Definition at line 197 of file demon_profiler.cc.

virtual void operations_research::DemonProfiler::SetMax ( IntVar *const   var,
int64  new_max 
) [inline, virtual]

Implements operations_research::PropagationMonitor.

Definition at line 198 of file demon_profiler.cc.

virtual void operations_research::DemonProfiler::SetRange ( IntVar *const   var,
int64  new_min,
int64  new_max 
) [inline, virtual]

Implements operations_research::PropagationMonitor.

Definition at line 199 of file demon_profiler.cc.

virtual void operations_research::DemonProfiler::RemoveValue ( IntVar *const   var,
int64  value 
) [inline, virtual]

Implements operations_research::PropagationMonitor.

Definition at line 200 of file demon_profiler.cc.

virtual void operations_research::DemonProfiler::SetValue ( IntVar *const   var,
int64  value 
) [inline, virtual]

Implements operations_research::PropagationMonitor.

Definition at line 201 of file demon_profiler.cc.

virtual void operations_research::DemonProfiler::RemoveInterval ( IntVar *const   var,
int64  imin,
int64  imax 
) [inline, virtual]

Implements operations_research::PropagationMonitor.

Definition at line 202 of file demon_profiler.cc.

virtual void operations_research::DemonProfiler::SetValues ( IntVar *const   var,
const int64 *const   values,
int  size 
) [inline, virtual]

Implements operations_research::PropagationMonitor.

Definition at line 203 of file demon_profiler.cc.

virtual void operations_research::DemonProfiler::RemoveValues ( IntVar *const   var,
const int64 *const   values,
int  size 
) [inline, virtual]

Implements operations_research::PropagationMonitor.

Definition at line 206 of file demon_profiler.cc.

virtual void operations_research::DemonProfiler::SetStartMin ( IntervalVar *const   var,
int64  new_min 
) [inline, virtual]

IntervalVar modifiers.

Implements operations_research::PropagationMonitor.

Definition at line 210 of file demon_profiler.cc.

virtual void operations_research::DemonProfiler::SetStartMax ( IntervalVar *const   var,
int64  new_max 
) [inline, virtual]

Implements operations_research::PropagationMonitor.

Definition at line 211 of file demon_profiler.cc.

virtual void operations_research::DemonProfiler::SetStartRange ( IntervalVar *const   var,
int64  new_min,
int64  new_max 
) [inline, virtual]

Implements operations_research::PropagationMonitor.

Definition at line 212 of file demon_profiler.cc.

virtual void operations_research::DemonProfiler::SetEndMin ( IntervalVar *const   var,
int64  new_min 
) [inline, virtual]

Implements operations_research::PropagationMonitor.

Definition at line 215 of file demon_profiler.cc.

virtual void operations_research::DemonProfiler::SetEndMax ( IntervalVar *const   var,
int64  new_max 
) [inline, virtual]

Implements operations_research::PropagationMonitor.

Definition at line 216 of file demon_profiler.cc.

virtual void operations_research::DemonProfiler::SetEndRange ( IntervalVar *const   var,
int64  new_min,
int64  new_max 
) [inline, virtual]

Implements operations_research::PropagationMonitor.

Definition at line 217 of file demon_profiler.cc.

virtual void operations_research::DemonProfiler::SetDurationMin ( IntervalVar *const   var,
int64  new_min 
) [inline, virtual]

Implements operations_research::PropagationMonitor.

Definition at line 220 of file demon_profiler.cc.

virtual void operations_research::DemonProfiler::SetDurationMax ( IntervalVar *const   var,
int64  new_max 
) [inline, virtual]

Implements operations_research::PropagationMonitor.

Definition at line 221 of file demon_profiler.cc.

virtual void operations_research::DemonProfiler::SetDurationRange ( IntervalVar *const   var,
int64  new_min,
int64  new_max 
) [inline, virtual]

Implements operations_research::PropagationMonitor.

Definition at line 222 of file demon_profiler.cc.

virtual void operations_research::DemonProfiler::SetPerformed ( IntervalVar *const   var,
bool  value 
) [inline, virtual]

Implements operations_research::PropagationMonitor.

Definition at line 225 of file demon_profiler.cc.

virtual void operations_research::DemonProfiler::RankFirst ( SequenceVar *const   var,
int  index 
) [inline, virtual]

SequenceVar modifiers.

Implements operations_research::PropagationMonitor.

Definition at line 226 of file demon_profiler.cc.

virtual void operations_research::DemonProfiler::RankNotFirst ( SequenceVar *const   var,
int  index 
) [inline, virtual]

Implements operations_research::PropagationMonitor.

Definition at line 227 of file demon_profiler.cc.

virtual void operations_research::DemonProfiler::RankLast ( SequenceVar *const   var,
int  index 
) [inline, virtual]

Implements operations_research::PropagationMonitor.

Definition at line 228 of file demon_profiler.cc.

virtual void operations_research::DemonProfiler::RankNotLast ( SequenceVar *const   var,
int  index 
) [inline, virtual]

Implements operations_research::PropagationMonitor.

Definition at line 229 of file demon_profiler.cc.

virtual void operations_research::DemonProfiler::RankSequence ( SequenceVar *const   var,
const std::vector< int > &  rank_first,
const std::vector< int > &  rank_last,
const std::vector< int > &  unperformed 
) [inline, virtual]

Implements operations_research::PropagationMonitor.

Definition at line 230 of file demon_profiler.cc.

void operations_research::DemonProfiler::AddFakeRun ( const Demon *const   demon,
int64  start_time,
int64  end_time,
bool  is_fail 
) [inline]

Useful for unit tests.

Definition at line 236 of file demon_profiler.cc.

void operations_research::DemonProfiler::PrintOverview ( Solver *const   solver,
const string &  filename 
) [inline]

Exports collected data as human-readable text.

Definition at line 251 of file demon_profiler.cc.

void operations_research::DemonProfiler::ExportInformation ( const Constraint *const   constraint,
int64 *const   fails,
int64 *const   initial_propagation_runtime,
int64 *const   demon_invocations,
int64 *const   total_demon_runtime,
int *  demons 
) [inline]

Export Information.

Definition at line 324 of file demon_profiler.cc.

void operations_research::DemonProfiler::ExportInformation ( DemonRuns *const   demon_runs,
int64 *const   demon_invocations,
int64 *const   fails,
int64 *const   total_demon_runtime,
double *const   mean_demon_runtime,
double *const   median_demon_runtime,
double *const   stddev_demon_runtime 
) [inline]

Definition at line 360 of file demon_profiler.cc.

virtual void operations_research::DemonProfiler::Install (  )  [inline, virtual]

The demon_profiler is added by default on the main propagation monitor.

It just needs to be added to the search monitors at the start of the search.

Reimplemented from operations_research::PropagationMonitor.

Definition at line 414 of file demon_profiler.cc.


The documentation for this class was generated from the following file: