Constraints
This chapter contains a collection of examples demonstrating the use of Xpress Kalis for solving different types of (optimization) problems. The first section shows different ways of defining and posting constraints for simple linear constraints. The following sections each introduce a new constraint type. Since most examples use a combination of different constraints, the following list may help in finding examples of the use of a certain constraint type quickly.
- arithmetic: linear disequality: A first model (meeting.mos), Data input from file (i4exam*.mos), distribute: Personnel planning (persplan.mos); linear equality/inequality: element: Sequencing jobs on a single machine (b4seq*_ka.mos), occurrence: Sugar production (i1assign_ka.mos), implies: Paint production (b5paint*_ka.mos), equiv: Location of income tax offices (j5tax_ka.mos), User-defined enumeration strategies (i1assign_ka.mos), Precedences (b1stadium_ka.mos); nonlinear: Arithmetic constraints
- all_different: all_different: Sudoku (sudoku_ka.mos), element: Sequencing jobs on a single machine (b4seq_ka.mos), implies: Paint production (b5paint*_ka.mos), abs and distance: Frequency assignment (freqasgn.mos), distribute: Personnel planning (persplan.mos), Generic binary constraints: Euler knight tour (eulerkn*.mos), User-defined enumeration strategies (i1assign_ka.mos)
- abs / distance: abs and distance: Frequency assignment (freqasgn.mos)
- cumulative: Cumulative scheduling: discrete resources (d4backup2_ka.mos)
- cycle: cycle: Paint production (b5paint3_ka.mos)
- disjunctive: element: Sequencing jobs on a single machine (b4seq2_ka.mos)
- element: element: Sequencing jobs on a single machine (b4seq_ka.mos), occurrence: Sugar production (a4sugar_ka.mos), equiv: Location of income tax offices (j5tax_ka.mos), implies: Paint production (b5paint_ka.mos), User-defined enumeration strategies (i1assign_ka.mos), 2D: implies: Paint production (b5paint2_ka.mos)
- distribute / occurrence: occurrence: Sugar production (a4sugar_ka.mos), distribute: Personnel planning (persplan.mos), equiv: Location of income tax offices (j5tax_ka.mos), Symmetry breaking: scenes allocation problem (scenesalloc.mos)
- maximum / minimum: Optimization and enumeration (i4exam3.mos, i4exam4.mos), element: Sequencing jobs on a single machine (b4seq2_ka.mos), abs and distance: Frequency assignment (freqasgn.mos), User-defined enumeration strategies (i1assign_ka.mos), Symmetry breaking: scenes allocation problem (scenesalloc.mos)
- implies / equiv: implies: Paint production (b5paint_ka.mos), distribute: Personnel planning (persplan.mos), equiv: Location of income tax offices (j5tax_ka.mos), Generic binary constraints: Euler knight tour (eulerkn2.mos), Symmetry breaking: scenes allocation problem (scenesalloc.mos)
- generic binary: Generic binary constraints: Euler knight tour (eulerkn.mos)