Generated on Fri Mar 20 12:35:18 2009 for cpsp-2.3.1 by doxygen 1.5.5

cpsp::gecode::GC_HPThreading Class Reference

#include <GC_HPThreading.hh>

Inheritance diagram for cpsp::gecode::GC_HPThreading:

Detailed Description

This is a HPThreadingHandler implementation using the constraint propagation library Gecode(TM)

Definition at line 44 of file GC_HPThreading.hh.


Public Types

enum  CORESELECTS { FIRST, ALL_BEST, ALL }
enum  DISTANCE { DIST_POSITIONS, DIST_ABSMOVES, DIST_SHAPES, DIST_NONE }
enum  RUNMODE { COUNT, ENUMERATE }

Public Member Functions

unsigned int countStructures (SuperSpace *space, unsigned int maxNum, bool useDDS=true, Gecode::Search::Statistics *statistic=NULL)
virtual unsigned int enumerateStructures (StringVec &structs)
unsigned int enumerateStructures (SuperSpace *space, unsigned int maxNum, Gecode::Search::Statistics *globalStat=NULL, std::ostream &out=std::cout)
 GC_HPThreading (const biu::LatticeDescriptor *latDescr_=NULL, HCoreDatabase *db=NULL, const std::string seq="") throw (cpsp::Exception)
virtual unsigned int generateStructures ()
const unsigned int getContactsInSeq (void) const
HCoreDatabasegetCoreDB (void) const
const CORESELECTS getCoreSelection (void) const
const unsigned int getCoreSize (void) const
const unsigned int getDistanceMin (void) const
const DISTANCE getDistanceMode (void) const
const biu::LatticeDescriptor * getLatticeDescriptor (void) const
const unsigned int getMaxStructures (void) const
const bool getNoOutput (void) const
const bool getNoRecomputation (void) const
const bool getNormalizeStructures (void) const
const RUNMODE getRunMode (void) const
const std::string & getSequence (void)
const bool getStatOutput (void) const
const bool getSymmetryBreaking (void) const
const bool getUsingDDS (void) const
const bool getVerboseOutput (void) const
void setCoreDB (HCoreDatabase *db)
void setCoreSelection (const CORESELECTS val)
void setDistanceMin (const unsigned int val)
void setDistanceMode (const DISTANCE val)
void setLatticeDescriptor (const biu::LatticeDescriptor *val)
void setMaxStructures (const unsigned int val)
void setNoOutput (const bool val)
void setNoRecomputation (const bool val)
void setNormalizeStructures (const bool val)
void setRunMode (const RUNMODE val)
void setSequence (const std::string &seq) throw (cpsp::Exception)
void setStatOutput (const bool val)
void setSymmetryBreaking (const bool val)
void setUsingDDS (const bool val)
void setVerboseOutput (const bool val)
virtual ~GC_HPThreading ()

Protected Member Functions

template<class Int, class SPACE>
Int countBAB (SPACE *space, unsigned int c_d, unsigned int a_d, Gecode::Search::Statistics *stat, Gecode::Search::Stop *st, Int maxNum)
template<class ENGINE, class SPACE>
unsigned int enumerateStructures (SPACE *space, unsigned int maxNum, Gecode::Search::Statistics *stat, std::ostream &out)

Protected Attributes

unsigned int contactsInSeq
HCoreDatabasecoreDB
CORESELECTS coreSelection
unsigned int coreSize
unsigned int distanceMin
DISTANCE distanceMode
GC_ThreadingSpace::HullLevel hullLvl
const biu::LatticeDescriptor * latDescr
biu::LatticeFrame * latFrame
unsigned int maxPCoreDistance
unsigned int maxStructures
unsigned int minEvenOddHs
bool noOutput
bool noRecomputation
bool normalizeStructures
RUNMODE runMode
GC_ThreadingSpace::SeqFeatureMap seqFeatureMap
std::string sequence
bool statisticsOut
bool useDDS
bool useSymmetryBreaking
bool verboseOutput

Member Enumeration Documentation

constants that define the core selection mode

Enumerator:
FIRST 
ALL_BEST 
ALL 

Definition at line 50 of file GC_HPThreading.hh.

possible solution distance measures

Enumerator:
DIST_POSITIONS 
DIST_ABSMOVES 
DIST_SHAPES 
DIST_NONE 

Definition at line 54 of file GC_HPThreading.hh.

possible run modes of the threading

Enumerator:
COUNT 
ENUMERATE 

Definition at line 52 of file GC_HPThreading.hh.


Constructor & Destructor Documentation

cpsp::gecode::GC_HPThreading::GC_HPThreading ( const biu::LatticeDescriptor *  latDescr_ = NULL,
HCoreDatabase db = NULL,
const std::string  seq = "" 
) throw (cpsp::Exception)

construction

Definition at line 36 of file GC_HPThreading.cc.

cpsp::gecode::GC_HPThreading::~GC_HPThreading (  )  [virtual]

Definition at line 66 of file GC_HPThreading.cc.


Member Function Documentation

template<class Int, class SPACE>
Int cpsp::gecode::GC_HPThreading::countBAB ( SPACE *  space,
unsigned int  c_d,
unsigned int  a_d,
Gecode::Search::Statistics *  stat,
Gecode::Search::Stop *  st,
Int  maxNum 
) [inline, protected]

Definition at line 317 of file GC_HPThreading.hh.

unsigned int cpsp::gecode::GC_HPThreading::countStructures ( SuperSpace space,
unsigned int  maxNum,
bool  useDDS = true,
Gecode::Search::Statistics *  statistic = NULL 
)

counts maxNum structures of space and returns their number

Definition at line 220 of file GC_HPThreading.cc.

unsigned int cpsp::gecode::GC_HPThreading::enumerateStructures ( StringVec structs  )  [virtual]

enumerates structures and writes their string representation into structs

Implements cpsp::HPThreadingHandler.

Definition at line 541 of file GC_HPThreading.cc.

unsigned int cpsp::gecode::GC_HPThreading::enumerateStructures ( SuperSpace space,
unsigned int  maxNum,
Gecode::Search::Statistics *  globalStat = NULL,
std::ostream &  out = std::cout 
)

enumerates maxNum structures of space and prints them to std::cout

enumerates structures and returns their number

Definition at line 174 of file GC_HPThreading.cc.

template<class ENGINE, class SPACE>
unsigned int cpsp::gecode::GC_HPThreading::enumerateStructures ( SPACE *  space,
unsigned int  maxNum,
Gecode::Search::Statistics *  stat,
std::ostream &  out 
) [inline, protected]

Definition at line 270 of file GC_HPThreading.hh.

unsigned int cpsp::gecode::GC_HPThreading::generateStructures (  )  [virtual]

starts structure generation with the internal parameters

Returns:
the number of generated structures

Implements cpsp::HPThreadingHandler.

Definition at line 308 of file GC_HPThreading.cc.

const unsigned int cpsp::gecode::GC_HPThreading::getContactsInSeq ( void   )  const [inline]

getter for contactsInSeq

Definition at line 185 of file GC_HPThreading.hh.

HCoreDatabase* cpsp::gecode::GC_HPThreading::getCoreDB ( void   )  const [inline]

getter for coreDB

Definition at line 170 of file GC_HPThreading.hh.

const CORESELECTS cpsp::gecode::GC_HPThreading::getCoreSelection ( void   )  const [inline]

getter for coreSelection

Definition at line 213 of file GC_HPThreading.hh.

const unsigned int cpsp::gecode::GC_HPThreading::getCoreSize ( void   )  const [inline]

getter for coreSize

Definition at line 181 of file GC_HPThreading.hh.

const unsigned int cpsp::gecode::GC_HPThreading::getDistanceMin ( void   )  const [inline]

getter for distanceMin

Definition at line 255 of file GC_HPThreading.hh.

const DISTANCE cpsp::gecode::GC_HPThreading::getDistanceMode ( void   )  const [inline]

getter for distanceMode

Definition at line 248 of file GC_HPThreading.hh.

const biu::LatticeDescriptor* cpsp::gecode::GC_HPThreading::getLatticeDescriptor ( void   )  const [inline]

getter for latDescr

Definition at line 163 of file GC_HPThreading.hh.

const unsigned int cpsp::gecode::GC_HPThreading::getMaxStructures ( void   )  const [inline]

getter for maxStructures

Definition at line 206 of file GC_HPThreading.hh.

const bool cpsp::gecode::GC_HPThreading::getNoOutput ( void   )  const [inline]

getter for noOutput

Definition at line 227 of file GC_HPThreading.hh.

const bool cpsp::gecode::GC_HPThreading::getNoRecomputation ( void   )  const [inline]

getter for statisticsOut

Definition at line 241 of file GC_HPThreading.hh.

const bool cpsp::gecode::GC_HPThreading::getNormalizeStructures ( void   )  const [inline]

getter for normalizeStructures

Definition at line 262 of file GC_HPThreading.hh.

const RUNMODE cpsp::gecode::GC_HPThreading::getRunMode ( void   )  const [inline]

getter for runMode

Definition at line 220 of file GC_HPThreading.hh.

const std::string& cpsp::gecode::GC_HPThreading::getSequence ( void   )  [inline]

getter for sequence

Definition at line 177 of file GC_HPThreading.hh.

const bool cpsp::gecode::GC_HPThreading::getStatOutput ( void   )  const [inline]

getter for statisticsOut

Definition at line 234 of file GC_HPThreading.hh.

const bool cpsp::gecode::GC_HPThreading::getSymmetryBreaking ( void   )  const [inline]

getter for useSymmetryBreaking

Definition at line 192 of file GC_HPThreading.hh.

const bool cpsp::gecode::GC_HPThreading::getUsingDDS ( void   )  const [inline]

getter for useDDS

Definition at line 199 of file GC_HPThreading.hh.

const bool cpsp::gecode::GC_HPThreading::getVerboseOutput ( void   )  const [inline]

getter for verboseOutput

Definition at line 156 of file GC_HPThreading.hh.

void cpsp::gecode::GC_HPThreading::setCoreDB ( HCoreDatabase db  )  [inline]

setter for coreDB

Definition at line 167 of file GC_HPThreading.hh.

void cpsp::gecode::GC_HPThreading::setCoreSelection ( const CORESELECTS  val  )  [inline]

setter for coreSelection

Definition at line 210 of file GC_HPThreading.hh.

void cpsp::gecode::GC_HPThreading::setDistanceMin ( const unsigned int  val  )  [inline]

setter for distanceMin

Definition at line 252 of file GC_HPThreading.hh.

void cpsp::gecode::GC_HPThreading::setDistanceMode ( const DISTANCE  val  )  [inline]

setter for distanceMode

Definition at line 245 of file GC_HPThreading.hh.

void cpsp::gecode::GC_HPThreading::setLatticeDescriptor ( const biu::LatticeDescriptor *  val  ) 

setter for latDescr (creates a new LatticeFrame)

Definition at line 73 of file GC_HPThreading.cc.

void cpsp::gecode::GC_HPThreading::setMaxStructures ( const unsigned int  val  )  [inline]

setter for maxStructures

Definition at line 203 of file GC_HPThreading.hh.

void cpsp::gecode::GC_HPThreading::setNoOutput ( const bool  val  )  [inline]

setter for noOutput

Definition at line 224 of file GC_HPThreading.hh.

void cpsp::gecode::GC_HPThreading::setNoRecomputation ( const bool  val  )  [inline]

setter for noRecomputation

Definition at line 238 of file GC_HPThreading.hh.

void cpsp::gecode::GC_HPThreading::setNormalizeStructures ( const bool  val  )  [inline]

setter for normalizeStructures

Definition at line 259 of file GC_HPThreading.hh.

void cpsp::gecode::GC_HPThreading::setRunMode ( const RUNMODE  val  )  [inline]

setter for runMode

Definition at line 217 of file GC_HPThreading.hh.

void cpsp::gecode::GC_HPThreading::setSequence ( const std::string &  seq  )  throw (cpsp::Exception)

setter for the HP-sequence

Definition at line 82 of file GC_HPThreading.cc.

void cpsp::gecode::GC_HPThreading::setStatOutput ( const bool  val  )  [inline]

setter for statisticsOut

Definition at line 231 of file GC_HPThreading.hh.

void cpsp::gecode::GC_HPThreading::setSymmetryBreaking ( const bool  val  )  [inline]

setter for useSymmetryBreaking

Definition at line 189 of file GC_HPThreading.hh.

void cpsp::gecode::GC_HPThreading::setUsingDDS ( const bool  val  )  [inline]

setter for useDDS

Definition at line 196 of file GC_HPThreading.hh.

void cpsp::gecode::GC_HPThreading::setVerboseOutput ( const bool  val  )  [inline]

setter for verboseOutput

Definition at line 153 of file GC_HPThreading.hh.


Field Documentation

contacts inside the sequence

Definition at line 78 of file GC_HPThreading.hh.

the opened H-core database

Definition at line 67 of file GC_HPThreading.hh.

which cores to take into account

Definition at line 90 of file GC_HPThreading.hh.

unsigned int cpsp::gecode::GC_HPThreading::coreSize [protected]

the neccessary core size

Definition at line 73 of file GC_HPThreading.hh.

the minimal distance between two solutions

Definition at line 104 of file GC_HPThreading.hh.

the distance measure between solutions

Definition at line 102 of file GC_HPThreading.hh.

the hull levels for the sequence positions

Definition at line 71 of file GC_HPThreading.hh.

const biu::LatticeDescriptor* cpsp::gecode::GC_HPThreading::latDescr [protected]

the lattice descriptor of the lattice to do the threading in

Definition at line 63 of file GC_HPThreading.hh.

biu::LatticeFrame* cpsp::gecode::GC_HPThreading::latFrame [protected]

the lattice frame to do the threading in

Definition at line 65 of file GC_HPThreading.hh.

maximal distance of a P to an H in the sequence

Definition at line 80 of file GC_HPThreading.hh.

maximal structures to find

Definition at line 88 of file GC_HPThreading.hh.

minimal even/odd distribution of core positions in the cubic# lattice

Definition at line 76 of file GC_HPThreading.hh.

whether or not generateStructures() does any output or not

Definition at line 94 of file GC_HPThreading.hh.

wether or not to run the search engine with or without batch recomputation during searhc (with == less propagations and more space consumption, see Gecode help)

Definition at line 100 of file GC_HPThreading.hh.

whether to print normalized move strings or not

Definition at line 106 of file GC_HPThreading.hh.

the run mode for generateStructures()

Definition at line 92 of file GC_HPThreading.hh.

maps the sequence indices to their features

Definition at line 82 of file GC_HPThreading.hh.

std::string cpsp::gecode::GC_HPThreading::sequence [protected]

the HP-sequence to find optimal structure for

Definition at line 69 of file GC_HPThreading.hh.

whether ot not to print search statistics

Definition at line 96 of file GC_HPThreading.hh.

whether or not to use DDS

Definition at line 86 of file GC_HPThreading.hh.

whether or not to take symmetric structures into account

Definition at line 84 of file GC_HPThreading.hh.

whether or not to do a verbose output

Definition at line 61 of file GC_HPThreading.hh.


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