Generated on Thu Mar 16 2017 03:24:27 for Gecode by doxygen 1.8.13
CarSequencing Class Reference

Example: Car sequencing More...

Public Types

enum  { BRANCH_INORDER, BRANCH_MIDDLE }
 Branching variants. More...
 
enum  { PROP_REGULAR, PROP_CUSTOM }
 Propagation variants. More...
 

Public Member Functions

 CarSequencing (const CarOptions &opt)
 Initial model. More...
 
virtual void constrain (const Space &_best)
 Return cost. More...
 
virtual void print (std::ostream &os) const
 Print solution. More...
 
 CarSequencing (bool share, CarSequencing &cs)
 Constructor for cloning s. More...
 
virtual Spacecopy (bool share)
 Copy during cloning. More...
 
- Public Member Functions inherited from Gecode::Driver::ScriptBase< BaseSpace >
 ScriptBase (const Options &opt)
 Constructor. More...
 
 ScriptBase (bool share, ScriptBase &e)
 Constructor used for cloning. More...
 
virtual void compare (const Space &home, std::ostream &os) const
 Compare with s. More...
 

Protected Attributes

const int problem
 Problem number. More...
 
const int ncars
 Number of cars. More...
 
const int noptions
 Number of options. More...
 
const int nclasses
 Number of classes. More...
 
const int maxstall
 Maximum number of stalls. More...
 
const int stallval
 Stall number. More...
 
const int endval
 End number. More...
 
IntVar nstall
 Number of stalls (cost to minimize) More...
 
IntVar nend
 Number of end markers. More...
 
IntVarArray s
 Sequence of cars produced. 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 *sn, std::ofstream &ofs)
 Choose output stream according to sn. More...
 
template<class Script , template< class > class Engine, class Options >
static void run (const Options &opt, Script *s=NULL)
 

Detailed Description

Example: Car sequencing

See problem 1 at http://www.csplib.org/.

This model uses extra stall-slots instead of violations, as proposed in "Combining Forces to Solve the Car Sequencing Problem", Perron and Shaw, CPAIOR 2004.

Definition at line 212 of file car-sequencing.cpp.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum

Branching variants.

Enumerator
BRANCH_INORDER 

Branch from left to right.

BRANCH_MIDDLE 

Branch from middle out.

Definition at line 215 of file car-sequencing.cpp.

◆ anonymous enum

anonymous enum

Propagation variants.

Enumerator
PROP_REGULAR 

Use regular constraints.

PROP_CUSTOM 

Use custom constraint.

Definition at line 220 of file car-sequencing.cpp.

Constructor & Destructor Documentation

◆ CarSequencing() [1/2]

CarSequencing::CarSequencing ( const CarOptions &  opt)
inline

Initial model.

Definition at line 247 of file car-sequencing.cpp.

◆ CarSequencing() [2/2]

CarSequencing::CarSequencing ( bool  share,
CarSequencing cs 
)
inline

Constructor for cloning s.

Definition at line 401 of file car-sequencing.cpp.

Member Function Documentation

◆ constrain()

virtual void CarSequencing::constrain ( const Space _best)
inlinevirtual

Return cost.

Definition at line 371 of file car-sequencing.cpp.

◆ print()

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

Print solution.

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

Definition at line 378 of file car-sequencing.cpp.

◆ copy()

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

Copy during cloning.

Definition at line 417 of file car-sequencing.cpp.

Friends And Related Function Documentation

◆ main()

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

Main-function.

Definition at line 426 of file car-sequencing.cpp.

Member Data Documentation

◆ problem

const int CarSequencing::problem
protected

Problem number.

Definition at line 226 of file car-sequencing.cpp.

◆ ncars

const int CarSequencing::ncars
protected

Number of cars.

Definition at line 228 of file car-sequencing.cpp.

◆ noptions

const int CarSequencing::noptions
protected

Number of options.

Definition at line 230 of file car-sequencing.cpp.

◆ nclasses

const int CarSequencing::nclasses
protected

Number of classes.

Definition at line 232 of file car-sequencing.cpp.

◆ maxstall

const int CarSequencing::maxstall
protected

Maximum number of stalls.

Definition at line 234 of file car-sequencing.cpp.

◆ stallval

const int CarSequencing::stallval
protected

Stall number.

Definition at line 236 of file car-sequencing.cpp.

◆ endval

const int CarSequencing::endval
protected

End number.

Definition at line 238 of file car-sequencing.cpp.

◆ nstall

IntVar CarSequencing::nstall
protected

Number of stalls (cost to minimize)

Definition at line 240 of file car-sequencing.cpp.

◆ nend

IntVar CarSequencing::nend
protected

Number of end markers.

Definition at line 242 of file car-sequencing.cpp.

◆ s

IntVarArray CarSequencing::s
protected

Sequence of cars produced.

Definition at line 244 of file car-sequencing.cpp.


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