Generated on Sat Feb 7 2015 02:01:38 for Gecode by doxygen 1.8.9.1
EFPA Class Reference

Example: Equidistant Frequency Permutation Arrays More...

Public Member Functions

 EFPA (const EFPAOptions &opt)
 Actual model. More...
 
virtual void print (std::ostream &os) const
 Print instance and solution. More...
 
 EFPA (bool share, EFPA &s)
 Constructor for cloning s. More...
 
virtual Spacecopy (bool share)
 Copy during cloning. More...
 
- Public Member Functions inherited from Gecode::Driver::ScriptBase< BaseSpace >
 ScriptBase (void)
 Default constructor. More...
 
 ScriptBase (bool share, ScriptBase &e)
 Constructor used for cloning. More...
 
virtual void compare (const Space &, std::ostream &os) const
 Compare with s. More...
 

Protected Attributes

int v
 Number of sequences. More...
 
int q
 Number of symbols. More...
 
int l
 Number of sets of symbols for a sequence ( $\lambda$) More...
 
int d
 Hamming distance between any pair of sequences. More...
 
int n
 Length of sequence ( $q\cdot\lambda$) More...
 
int nseqpair
 Number of sequence pairs ( $\frac{v(v-1)}{2}$) More...
 
IntVarArray c
 Variables for sequences. More...
 
BoolVarArray diff
 Differences between sequences. More...
 

Related Functions

(Note that these are not member functions.)

int main (int argc, char *argv[])
 Main-function. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from Gecode::Driver::ScriptBase< BaseSpace >
static std::ostream & select_ostream (const char *name, std::ofstream &ofs)
 Choose output stream according to name. More...
 
template<class Script , template< class > class Engine, class Options >
static void run (const Options &opt, Script *s=NULL)
 

Detailed Description

Example: Equidistant Frequency Permutation Arrays

This example solves instances of the equidistant frequency permutation arrays problem.

The model of the problem is mostly taken from "Modelling Equidistant Frequency Permutation Arrays in Constraints", by Ian P. Gent, Paul McKay, Peter Nightingale, and Sophie Huczynska. It implements the non-Boolean model without SAC.

Definition at line 118 of file efpa.cpp.

Constructor & Destructor Documentation

EFPA::EFPA ( const EFPAOptions opt)
inline

Actual model.

Definition at line 131 of file efpa.cpp.

EFPA::EFPA ( bool  share,
EFPA s 
)
inline

Constructor for cloning s.

Definition at line 291 of file efpa.cpp.

Member Function Documentation

virtual void EFPA::print ( std::ostream &  os) const
inlinevirtual

Print instance and solution.

Reimplemented from Gecode::Driver::ScriptBase< BaseSpace >.

Definition at line 281 of file efpa.cpp.

virtual Space* EFPA::copy ( bool  share)
inlinevirtual

Copy during cloning.

Definition at line 305 of file efpa.cpp.

Friends And Related Function Documentation

int main ( int  argc,
char *  argv[] 
)
related

Main-function.

Definition at line 314 of file efpa.cpp.

Member Data Documentation

int EFPA::v
protected

Number of sequences.

Definition at line 120 of file efpa.cpp.

int EFPA::q
protected

Number of symbols.

Definition at line 121 of file efpa.cpp.

int EFPA::l
protected

Number of sets of symbols for a sequence ( $\lambda$)

Definition at line 122 of file efpa.cpp.

int EFPA::d
protected

Hamming distance between any pair of sequences.

Definition at line 123 of file efpa.cpp.

int EFPA::n
protected

Length of sequence ( $q\cdot\lambda$)

Definition at line 124 of file efpa.cpp.

int EFPA::nseqpair
protected

Number of sequence pairs ( $\frac{v(v-1)}{2}$)

Definition at line 125 of file efpa.cpp.

IntVarArray EFPA::c
protected

Variables for sequences.

Definition at line 126 of file efpa.cpp.

BoolVarArray EFPA::diff
protected

Differences between sequences.

Definition at line 127 of file efpa.cpp.


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