
Classes | |
| class | AllInterval |
| Example: All-interval series More... | |
| class | Alpha |
| Example: Alpha puzzle More... | |
| class | ArchimedeanSpiral |
| Example: Archimedean spiral More... | |
| class | BACP |
| Example: The balanced academic curriculum problem More... | |
| class | BIBD |
| Example: Balanced incomplete block design (BIBD) More... | |
| class | BinPacking |
| Example: Bin packing More... | |
| class | BlackHole |
| Example: Black hole patience More... | |
| class | CarSequencing |
| Example: Car sequencing More... | |
| class | CartesianHeart |
| Example: Cartesian Heart More... | |
| class | ColoredMatrix |
| Example: Colored matrix example. More... | |
| class | Crew |
| Example: Airline crew allocation More... | |
| class | Crossword |
| Example: Crossword puzzle More... | |
| class | CrowdedChess |
| Example: Crowded chessboard More... | |
| class | DescartesFolium |
| Example: Folium of Descartes More... | |
| class | DominatingQueens |
| Example: Dominating Queens More... | |
| class | Domino |
| Example: Solitaire domino More... | |
| class | Donald |
| Example: DONALD+GERALD=ROBERT puzzle More... | |
| class | EFPA |
| Example: Equidistant Frequency Permutation Arrays More... | |
| class | Eq20 |
| Example: Solving 20 linear equations More... | |
| class | GoldenSpiral |
| Example: Golden spiral More... | |
| class | Golf |
| Example: Golf tournament More... | |
| class | GolombRuler |
| Example: Finding optimal Golomb rulers More... | |
| class | GraphColor |
| Example: Clique-based graph coloring More... | |
| class | Grocery |
| Example: Grocery puzzle More... | |
| class | Hamming |
| Example: Generating Hamming codes More... | |
| class | IndSet |
| Example: Independent sets in a graph More... | |
| class | Kakuro |
| Example: Kakuro More... | |
| class | KnightsReified |
| Example: n-Knight's tour (simple model) More... | |
| class | KnightsCircuit |
| Example: n-Knights tour (model using circuit) More... | |
| class | LangfordNumber |
| Example: Langford's number problem More... | |
| class | MagicSequence |
| Example: Magic sequence More... | |
| class | MagicSquare |
| Example: Magic squares More... | |
| class | MineSweeper |
| Example: Minesweeper More... | |
| class | Money |
| Example: SEND+MORE=MONEY puzzle More... | |
| class | MultiBinPacking |
| Example: Multi-dimensional bin packing More... | |
| class | Nonogram |
| Example: Nonogram More... | |
| class | OpenShop |
| Example: open-shop scheduling More... | |
| class | OpenShop::PrintTask |
| Helper class for representing tasks when printing a solution. More... | |
| class | OpenShop::Task |
| Task representation for CROSH heuristic More... | |
| class | OrthoLatinSquare |
| Example: Orthogonal latin squares More... | |
| class | Partition |
| Example: partition numbers into two groups More... | |
| class | Pentominoes |
| Example: Pentominoes More... | |
| class | PerfectSquare |
| Example: Packing squares into a rectangle More... | |
| class | Photo |
| Example: Placing people on a photo More... | |
| class | QCP |
| Example: Quasigroup completion More... | |
| class | QueenArmies |
| Example: Peaceable co-existing armies of queens More... | |
| class | QueenArmies::QueenBranch |
| Custom brancher for Peacable queens. More... | |
| class | Queens |
| Example: n-Queens puzzle More... | |
| class | Radiotherapy |
| Example: Radiotherapy More... | |
| class | Radiotherapy::NestedSearch |
| Nested search on the q variables. More... | |
| class | Sat |
| Example: CNF SAT solver More... | |
| class | Schur |
| Example: Schur's lemma More... | |
| class | SportsLeague |
| Example: Sports league scheduling More... | |
| class | SteelMill |
| Example: Steel-mill slab design problem More... | |
| class | SteelMill::SteelMillBranch::Choice |
| Choice More... | |
| class | SteelMill::SteelMillBranch |
| Custom brancher for steel mill slab design. More... | |
| class | Steiner |
| Example: Steiner triples More... | |
| class | SudokuInt |
| Example: Solving Sudoku puzzles using integer constraints More... | |
| class | SudokuSet |
| Example: Solving Sudoku puzzles using set constraints More... | |
| class | SudokuMixed |
| Example: Solving Sudoku puzzles using both set and integer constraints More... | |
| class | TSP |
| Example: Travelling salesman problem (TSP) More... | |
| class | Warehouses |
| Example: Locating warehouses More... | |
| class | WordSquare |
| Example: Word-square puzzle More... | |
All scripts are compiled into simple standalone programs. All programs understand the several generic and problem-specific commandline options. An overview of the options is available by invoking the standalone programs with the -help commandline option.
| anonymous enum |
| anonymous enum |
| anonymous enum |
| anonymous enum |
Model variants.
| Enumerator | |
|---|---|
| MODEL_NAIVE |
Use naive model. |
| MODEL_PACKING |
Use bin packing constraint. |
Definition at line 405 of file bin-packing.cpp.
| anonymous enum |
Branching to use for model.
| Enumerator | |
|---|---|
| BRANCH_NAIVE |
Use naive branching. |
| BRANCH_CDBF |
Use CDBF. |
Definition at line 410 of file bin-packing.cpp.
| anonymous enum |
Symmetry variants.
| Enumerator | |
|---|---|
| SYMMETRY_NONE |
No symmetry breaking. |
| SYMMETRY_CONDITIONAL |
Breaking conditional symmetries. |
Definition at line 120 of file black-hole.cpp.
| anonymous enum |
Propagation of placement-rules.
| Enumerator | |
|---|---|
| PROPAGATION_REIFIED |
Reified propagation. |
| PROPAGATION_DFA |
Extensional propagation using automatons. |
| PROPAGATION_TUPLE_SET |
Extensional propagation using tables. |
Definition at line 125 of file black-hole.cpp.
| 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 |
Propagation variants.
| Enumerator | |
|---|---|
| PROP_REGULAR |
Use regular constraints. |
| PROP_CUSTOM |
Use custom constraint. |
Definition at line 220 of file car-sequencing.cpp.
| anonymous enum |
Search modes.
| Enumerator | |
|---|---|
| SEARCH_DFS |
Find solution. |
| SEARCH_BAB |
Find optimal solution. |
Definition at line 318 of file colored-matrix.cpp.
| anonymous enum |
SYmmetry breaking variants.
| Enumerator | |
|---|---|
| SYMMETRY_NONE |
No symmetry breaking. |
| SYMMETRY_MATRIX |
Order rows and columns of matrix. |
| SYMMETRY_VALUES |
Order value occurences. |
Definition at line 323 of file colored-matrix.cpp.
| anonymous enum |
Model variants.
| Enumerator | |
|---|---|
| MODEL_CORNERS |
Use model on corner combinations. |
| MODEL_ROWS |
Use model on pairs of rows. |
| MODEL_COLUMNS |
Use model on pairs of columns. |
Definition at line 329 of file colored-matrix.cpp.
| anonymous enum |
Not all equal variants.
Definition at line 335 of file colored-matrix.cpp.
| anonymous enum |
Same or 0 variants.
| Enumerator | |
|---|---|
| SAME_OR_0_REIFIED |
Use reification for same or 0. |
| SAME_OR_0_DFA |
Use dfa for same or 0. |
| SAME_OR_0_TUPLE_SET |
Use tuple set for same or 0. |
Definition at line 344 of file colored-matrix.cpp.
| anonymous enum |
Distinct except 0 variants.
| Enumerator | |
|---|---|
| DISTINCT_EXCEPT_0_REIFIED |
Use reification for distinct except 0. |
| DISTINCT_EXCEPT_0_DFA |
Use dfa for distinct except 0. |
| DISTINCT_EXCEPT_0_COUNT |
Use count for distinct except 0. |
Definition at line 350 of file colored-matrix.cpp.
| anonymous enum |
No monochrome rectangle versions.
| Enumerator | |
|---|---|
| NO_MONOCHROME_DECOMPOSITION |
Use decomposition for no monochrome rectangle. |
| NO_MONOCHROME_DFA |
Use dfa for no monochrome rectangle. |
Definition at line 356 of file colored-matrix.cpp.
| anonymous enum |
Branching to use for model.
| Enumerator | |
|---|---|
| BRANCH_WORDS |
Branch on the words. |
| BRANCH_LETTERS |
Branch on the letters. |
| BRANCH_LETTERS_ALL |
Branch on the letters (try all values) |
Definition at line 80 of file crossword.cpp.
|
protected |
Symbolic names of pieces. The order determines which piece will be placed first.
| Enumerator | |
|---|---|
| Q |
Queen. |
| R |
Rook. |
| B |
Bishop. |
| K |
Knight. |
| E |
Empty square. |
| PMAX |
Number of pieces (including empty squares) |
Definition at line 198 of file crowded-chess.cpp.
| anonymous enum |
| Enumerator | |
|---|---|
| PROP_TUPLE_SET |
Propagate bishops placement extensionally. |
| PROP_DECOMPOSE |
Propagate bishops placement with decomposition. |
Definition at line 232 of file crowded-chess.cpp.
| anonymous enum |
Propagation to use for model.
| Enumerator | |
|---|---|
| PROP_ELEMENT |
Use element constraints. |
| PROP_EXTENSIONAL |
Use extensional constraints. |
Definition at line 86 of file domino.cpp.
| anonymous enum |
Model variants.
| Enumerator | |
|---|---|
| MODEL_SINGLE |
Use single linear equation. |
| MODEL_CARRY |
Use carries. |
Definition at line 60 of file donald.cpp.
| anonymous enum |
| anonymous enum |
Model variants.
| Enumerator | |
|---|---|
| MODEL_NONE |
No lower bound. |
| MODEL_CLIQUE |
Use maximal clique size as lower bound. |
Definition at line 324 of file graph-color.cpp.
| anonymous enum |
Branching to use for model.
Definition at line 329 of file graph-color.cpp.
| anonymous enum |
Symmetry variants.
| Enumerator | |
|---|---|
| SYMMETRY_NONE |
Simple symmetry. |
| SYMMETRY_LDSB |
Use LDSB for value symmetry breaking. |
Definition at line 337 of file graph-color.cpp.
| anonymous enum |
Model variants.
| Enumerator | |
|---|---|
| MODEL_DECOMPOSE |
Decompose constraints. |
| MODEL_COMBINE |
Combine distinct and linear constraint. |
Definition at line 484 of file kakuro.cpp.
| anonymous enum |
Propagation to use for model.
| Enumerator | |
|---|---|
| PROP_REIFIED |
Use reified constraints. |
| PROP_EXTENSIONAL |
Use extensional constraints. |
| PROP_EXTENSIONAL_CHANNEL |
Use extensional and channel constraints. |
Definition at line 91 of file langford-number.cpp.
| anonymous enum |
Propagation to use for model.
| Enumerator | |
|---|---|
| PROP_COUNT |
Use count constraints. |
| PROP_GCC |
Use single global cardinality constraint. |
Definition at line 71 of file magic-sequence.cpp.
| anonymous enum |
Branching to use for model.
| Enumerator | |
|---|---|
| BRANCH_SIZE |
Branch by size. |
| BRANCH_AFC_SIZE |
Branch by size over AFC. |
Definition at line 63 of file magic-square.cpp.
| anonymous enum |
| anonymous enum |
Model variants.
| Enumerator | |
|---|---|
| MODEL_SINGLE |
Use single-dimensional bin-packing constraints. |
| MODEL_MULTI |
Use multi-dimensional bin-packing constraint. |
Definition at line 119 of file multi-bin-packing.cpp.
| anonymous enum |
Branching to use for the model.
| Enumerator | |
|---|---|
| BRANCH_DEGREE |
Use degree for branching. |
| BRANCH_AFC |
Use AFC for branching. |
Definition at line 124 of file multi-bin-packing.cpp.
| anonymous enum |
Symmetry breaking to use for the model.
| Enumerator | |
|---|---|
| SYMMETRY_NONE |
Do not use symmetry breaking. |
| SYMMETRY_MAX_CONFLICT |
Use a maximal conflict set of items. |
Definition at line 129 of file multi-bin-packing.cpp.
| anonymous enum |
| Enumerator | |
|---|---|
| BRANCH_NONE |
Branch on rows/columns in order. |
| BRANCH_AFC |
Use AFC for branching. |
Definition at line 105 of file nonogram.cpp.
| anonymous enum |
Choice of propagators.
| Enumerator | |
|---|---|
| PROPAGATION_INT |
Use integer propagators. |
| PROPAGATION_BOOLEAN |
Use Boolean propagators. |
Definition at line 268 of file pentominoes.cpp.
| anonymous enum |
Choice of symmetry breaking.
| Enumerator | |
|---|---|
| SYMMETRY_NONE |
Do not remove symmetric solutions. |
| SYMMETRY_FULL |
Remove symmetric solutions. |
Definition at line 273 of file pentominoes.cpp.
| anonymous enum |
Propagation to use for model.
| Enumerator | |
|---|---|
| PROP_REIFIED |
Use reified constraints. |
| PROP_CUMULATIVES |
Use cumulatives constraint. |
Definition at line 197 of file perfect-square.cpp.
| anonymous enum |
| anonymous enum |
| anonymous enum |
| anonymous enum |
Branching to use for model.
| Enumerator | |
|---|---|
| BRANCH_NAIVE |
Choose variables left to right. |
| BRANCH_SPECIFIC |
Choose variable with problem specific strategy. |
Definition at line 81 of file queen-armies.cpp.
| anonymous enum |
Propagation to use for model.
| Enumerator | |
|---|---|
| PROP_BINARY |
Use only binary disequality constraints. |
| PROP_MIXED |
Use single distinct and binary disequality constraints. |
| PROP_DISTINCT |
Use three distinct constraints. |
Definition at line 65 of file queens.cpp.
| anonymous enum |
Branching variants.
| Enumerator | |
|---|---|
| SYMMETRY_NONE |
Simple symmetry. |
| SYMMETRY_BRANCHING |
Breaking symmetries with symmetry. |
| SYMMETRY_LDSB |
Use LDSB for symmetry breaking. |
Definition at line 188 of file steel-mill.cpp.
| anonymous enum |
Model variants.
| Enumerator | |
|---|---|
| MODEL_NONE |
Use simple relation constraint. |
| MODEL_MATCHING |
Use matching constraints. |
| MODEL_SEQ |
Use sequence constraints. |
Definition at line 55 of file steiner.cpp.
| anonymous enum |
Propagation variants.
| Enumerator | |
|---|---|
| PROP_NONE |
No additional constraints. |
| PROP_SAME |
Use "same" constraint with integer model. |
Definition at line 108 of file sudoku.cpp.
| anonymous enum |
Branching variants.
| Enumerator | |
|---|---|
| BRANCH_WORDS |
Branch on word variables. |
| BRANCH_LETTERS |
Branch on letter variables. |
Definition at line 71 of file word-square.cpp.