Generated on Thu Apr 11 14:00:08 2019 for Gecode by doxygen 1.6.3

Gecode::Search::Options Class Reference
[Search engines]

Search engine options More...

#include <search.hh>

List of all members.

Public Member Functions

 Options (void)
 Initialize with default values.
Options expand (void) const
 Expand with real number of threads.

Public Attributes

bool clone
 Whether engines create a clone when being initialized.
double threads
 Number of threads to use.
unsigned int c_d
 Create a clone after every c_d commits (commit distance).
unsigned int a_d
 Create a clone during recomputation if distance is greater than a_d (adaptive distance).
unsigned int d_l
 Discrepancy limit (for LDS).
unsigned int assets
 Number of assets (engines) in a portfolio.
unsigned int slice
 Size of a slice in a portfolio (in number of failures).
unsigned int nogoods_limit
 Depth limit for extraction of no-goods.
Stopstop
 Stop object for stopping search.
Cutoffcutoff
 Cutoff for restart-based search.
SearchTracertracer
 Tracer object for tracing search.

Static Public Attributes

static const Options def
 Default options.

Detailed Description

Search engine options

Defines options for search engines. Not all search engines might honor all option values.

  • c_d as minimal recomputation distance: this guarantees that a path between two nodes in the search tree for which copies are stored has at least length c_d. That is, in order to recompute a node in the search tree, c_d recomputation steps are needed. The minimal recomputation distance yields a guarantee on saving memory compared to full copying: it stores c_d times less nodes than full copying.
  • a_d as adaptive recomputation distance: when a node needs to be recomputed and the path is longer than a_d, an intermediate copy is created (approximately in the middle of the path) to speed up future recomputation. Note that small values of a_d can increase the memory consumption considerably.

Full copying corresponds to a maximal recomputation distance c_d of 1.

All recomputation performed is based on batch recomputation: batch recomputation performs propagation only once for an entire path used in recomputation.

The number of threads to be used is controlled by a double $n$ (assume that $m$ is the number of processing units available). If $1 \leq n$, $n$ threads are chosen (of course with rounding). If $n \leq -1$, then $m + n$ threads are chosen (all but $-n$ processing units get a thread). If $n$ is zero, $m$ threads are chosen. If $0<n<1$, $n \times m$ threads are chosen. If $-1 <n<0$, $(1+n)\times m$ threads are chosen.

Definition at line 746 of file search.hh.


Constructor & Destructor Documentation

Gecode::Search::Options::Options ( void   )  [inline]

Initialize with default values.

Reimplemented in Gecode::Gist::Options.

Definition at line 37 of file options.hpp.


Member Function Documentation

Options Gecode::Search::Options::expand ( void   )  const

Expand with real number of threads.

Definition at line 43 of file options.cpp.


Member Data Documentation

Whether engines create a clone when being initialized.

Definition at line 749 of file search.hh.

Number of threads to use.

Definition at line 751 of file search.hh.

Create a clone after every c_d commits (commit distance).

Definition at line 753 of file search.hh.

Create a clone during recomputation if distance is greater than a_d (adaptive distance).

Definition at line 755 of file search.hh.

Discrepancy limit (for LDS).

Definition at line 757 of file search.hh.

Number of assets (engines) in a portfolio.

Definition at line 759 of file search.hh.

Size of a slice in a portfolio (in number of failures).

Definition at line 761 of file search.hh.

Depth limit for extraction of no-goods.

Definition at line 763 of file search.hh.

Stop object for stopping search.

Definition at line 765 of file search.hh.

Cutoff for restart-based search.

Definition at line 767 of file search.hh.

Tracer object for tracing search.

Definition at line 769 of file search.hh.

Default options.

Reimplemented in Gecode::Gist::Options.

Definition at line 771 of file search.hh.


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