47 rbsengine(Space* master, Stop* stop, Engine* slave,
48 const Search::Statistics& stat,
const Options& opt,
56 template<
class T,
template<
class>
class E>
66 template<
class T,
template<
class>
class E>
71 template<
class T,
template<
class>
class E>
81 template<
class T,
template<
class>
class E>
104 stat,m_opt,E<T>::best);
109 template<
class T,
template<
class>
class E>
116 template<
class T,
template<
class>
class E>
static NoGoods eng
Empty no-goods.
Meta-engine performing restart-based search.
RBS(T *s, const Search::Options &o)
Initialize engine for space s and options o.
@ RBS
Engine is a RBS engine.
Engine * e
The actual search engine.
Options opt
Stored and already expanded options.
Builder(const Options &opt, bool best)
Initialize with options opt and best solution search support.
bool best(void) const
Whether engine is a best solution search engine.
Search engine implementation interface
bool clone
Whether engines create a clone when being initialized.
Cutoff * cutoff
Cutoff for restart-based search.
Options expand(void) const
Expand with real number of threads.
Stop * stop
Stop object for stopping search.
SearchTracer * tracer
Tracer object for tracing search.
virtual Engine * operator()(Space *s) const
The actual build function.
RbsBuilder(const Options &opt)
The constructor.
unsigned long int fail
Number of failed nodes in search tree.
Exception: Uninitialized cutoff for restart-based search
static void engine(SearchTracer *tracer, SearchTracer::EngineType t, unsigned int n)
Register engine.
virtual bool slave(const MetaInfo &mi)
Slave configuration function for meta search engines.
T * rbs(T *s, const Search::Options &o)
Perform restart-based search.
Space * clone(CloneStatistics &stat=unused_clone) const
Clone space.
@ SS_FAILED
Space is failed
Engine * dead(const Options &o, const Statistics &stat)
Stop * rbsstop(Stop *stop)
Create stop object.
Engine * rbsengine(Space *master, Stop *stop, Engine *slave, const Search::Statistics &stat, const Options &opt, bool best)
Create restart engine.
Engine * build(Space *s, const Options &opt)
Build an engine of type E for a script T.
Gecode toplevel namespace
Search::Builder * SEB
Type for a search engine builder.
Post propagator for SetVar SetOpType SetVar SetRelType r
#define GECODE_SEARCH_EXPORT