Generated on Fri Aug 31 2012 16:23:20 for Gecode by doxygen 1.8.1.2
Gecode::Search::Parallel::BAB::Worker Class Reference

Parallel branch-and-bound search worker More...

#include <bab.hh>

Public Member Functions

 Worker (Space *s, size_t sz, BAB &e)
 Initialize for space s (of size sz) with engine e.
BABengine (void) const
 Provide access to engine.
virtual void run (void)
 Start execution of worker.
void better (Space *b)
 Accept better solution b.
void find (void)
 Try to find some work.
virtual ~Worker (void)
 Destructor.
- Public Member Functions inherited from Gecode::Search::Parallel::Engine::Worker
 Worker (Space *s, size_t sz, Engine &e)
 Initialize for space s (of size sz) with engine e.
Spacesteal (unsigned long int &d)
 Hand over some work (NULL if no work available)
Statistics statistics (void)
 Return statistics.
- Public Member Functions inherited from Gecode::Search::Worker
 Worker (size_t sz)
 Initialize with space size sz.
void start (void)
 Reset stop information.
bool stop (const Options &o, size_t sz)
 Check whether engine must be stopped (with additional stackspace sz)
bool stopped (void) const
 Check whether engine has been stopped.
void push (const Space *s, const Choice *c)
 New space s and choice c get pushed on stack.
void constrained (const Space *s1, const Space *s2)
 Space s1 is replaced by space s2 due to constraining.
void adapt (const Space *s)
 New space s is added for adaptive recomputation.
void pop (const Space *s, const Choice *c)
 Space s and choice c get popped from stack.
void lao (const Space *s)
 Space s gets used for LAO (removed from stack)
void current (const Space *s)
 Space s becomes current space (s = NULL: current space deleted)
void reset (const Space *s, unsigned long int d=0)
 Reset statistics for space s with root depth d.
void reset (void)
 Reset statistics for failed space.
void stack_depth (unsigned long int d)
 Record stack depth d.
unsigned long int steal_depth (unsigned long int d) const
 Return steal depth.
- Public Member Functions inherited from Gecode::Search::Statistics
 Statistics (void)
 Initialize.
Statistics operator+ (const Statistics &s)
 Return sum with s.
Statisticsoperator+= (const Statistics &s)
 Increment by statistics s.
- Public Member Functions inherited from Gecode::StatusStatistics
 StatusStatistics (void)
 Initialize.
StatusStatistics operator+ (const StatusStatistics &s)
 Return sum with s.
StatusStatisticsoperator+= (const StatusStatistics &s)
 Increment by statistics s.
- Public Member Functions inherited from Gecode::Support::Runnable
virtual ~Runnable (void)
 Destructor.

Protected Attributes

int mark
 Number of entries not yet constrained to be better.
Spacebest
 Best solution found so far.
- Protected Attributes inherited from Gecode::Search::Parallel::Engine::Worker
Engine_engine
 Reference to engine.
Support::Mutex m
 Mutex for access to worker.
Path path
 Current path ins search tree.
Spacecur
 Current space being explored.
unsigned int d
 Distance until next clone.
bool idle
 Whether worker is currently idle.
- Protected Attributes inherited from Gecode::Search::Worker
bool _stopped
 Whether engine has been stopped.
size_t mem_space
 Memory required for a single space.
size_t mem_cur
 Memory for the current space (including memory for caching)
size_t mem_total
 Current total memory.
unsigned long int root_depth
 Depth of root node (for work stealing)

Additional Inherited Members

- Static Public Member Functions inherited from Gecode::Support::Runnable
static void * operator new (size_t s)
 Allocate memory from heap.
static void operator delete (void *p)
 Free memory allocated from heap.
- Public Attributes inherited from Gecode::Search::Statistics
unsigned long int fail
 Number of failed nodes in search tree.
unsigned long int node
 Number of nodes expanded.
unsigned long int depth
 Maximum depth of search stack.
size_t memory
 Peak memory allocated.

Detailed Description

Parallel branch-and-bound search worker

Definition at line 49 of file bab.hh.

Constructor & Destructor Documentation

Gecode::Search::Parallel::BAB::Worker::Worker ( Space s,
size_t  sz,
BAB e 
)
inline

Initialize for space s (of size sz) with engine e.

Definition at line 113 of file bab.hh.

Gecode::Search::Parallel::BAB::Worker::~Worker ( void  )
virtual

Destructor.

Reimplemented from Gecode::Search::Parallel::Engine::Worker.

Definition at line 164 of file bab.cpp.

Member Function Documentation

BAB & Gecode::Search::Parallel::BAB::Worker::engine ( void  ) const
inline

Provide access to engine.

Reimplemented from Gecode::Search::Parallel::Engine::Worker.

Definition at line 100 of file bab.hh.

void Gecode::Search::Parallel::BAB::Worker::run ( void  )
virtual

Start execution of worker.

Implements Gecode::Support::Runnable.

Definition at line 61 of file bab.cpp.

void Gecode::Search::Parallel::BAB::Worker::better ( Space b)
inline

Accept better solution b.

Definition at line 139 of file bab.hh.

void Gecode::Search::Parallel::BAB::Worker::find ( void  )
inline

Try to find some work.

Definition at line 179 of file bab.hh.

Member Data Documentation

int Gecode::Search::Parallel::BAB::Worker::mark
protected

Number of entries not yet constrained to be better.

Definition at line 52 of file bab.hh.

Space* Gecode::Search::Parallel::BAB::Worker::best
protected

Best solution found so far.

Definition at line 54 of file bab.hh.


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