Constraints
From CometPublic
[edit] Constraints
[edit] Systems
[edit] ConstraintSystem
Supported interfaces: Interfaces#Constraint
class ConstraintSystem implements Constraint {
var{boolean} isTrue();
var{int} violationDegree(); // superceded by the var{int} violations() method.
var{int} violations();
int getAssignDelta(var{int},int);
int getSwapDelta(var{int},var{int});
var{int}[] getVariables();
Constraint post(Constraint);
Constraint post(Constraint,int);
Constraint post(expr{boolean});
Constraint post(expr{boolean},int);
Constraint satisfy(expr{boolean});
Constraint satisfy(expr{boolean},int);
Constraint satisfy(Constraint);
Constraint satisfy(Constraint,int);
void close();
void show();
int getSize();
range getRange();
Constraint getConstraint(int);
ConstraintSystem::ConstraintSystem(LocalSolver);
ConstraintSystem::ConstraintSystem();
var{int} violations(var{int});
var{int} decrease(var{int});
range getIdRange();
var{int}[] getCstrViolations();
int getAssignDelta(var{int}[],int[]);
int getSwapDelta(var{int},var{int},var{int},var{int});
int getAssignDelta(var{int},int,var{int},int);
LocalSolver getLocalSolver();
void post();
Constraint post(Constraint,enum-var ConstraintType);
Constraint post(Constraint,int,enum-var ConstraintType);
Constraint post(expr{boolean},enum-var ConstraintType);
Constraint post(expr{boolean},int,enum-var ConstraintType);
void initialize();
enum-var ConstraintType getType();
}
[edit] LinearEquationSystem
Supported interfaces: Interfaces#Constraint
class LinearEquationSystem implements Constraint {
var{boolean} isTrue();
var{int} violationDegree();
var{int} violations();
int getViolations(var{int});
expr{int} getAssignDeltaExpr(expr{int},expr{int});
int getAssignDelta(var{int},int);
int getSwapDelta(var{int},var{int});
var{int}[] getVariables();
void post(expr{boolean});
void close();
void show();
LinearEquationSystem::LinearEquationSystem(LocalSolver);
var{int} violations(var{int});
var{int} decrease(var{int});
int getAssignDelta(var{int}[],int[]);
int getSwapDelta(var{int},var{int},var{int},var{int});
int getAssignDelta(var{int},int,var{int},int);
LocalSolver getLocalSolver();
void post();
void initialize();
enum-var ConstraintType getType();
}
[edit] WeightedConstraintSystem
Supported interfaces: Interfaces#Constraint
class WeightedConstraintSystem implements Constraint {
var{boolean} isTrue();
var{int} violationDegree();
var{int} violations();
int getViolations(var{int});
int getAssignDelta(var{int},int);
int getSwapDelta(var{int},var{int});
var{int}[] getVariables();
Constraint post(Constraint,var{int});
Constraint post(Constraint,int);
Constraint post(Constraint);
Constraint post(expr{boolean},var{int});
Constraint post(expr{boolean},int);
Constraint post(expr{boolean});
Constraint satisfy(expr{boolean},var{int});
Constraint satisfy(expr{boolean},int);
Constraint satisfy(expr{boolean});
Constraint satisfy(Constraint,var{int});
Constraint satisfy(Constraint,int);
Constraint satisfy(Constraint);
void close();
void show();
int getSize();
range getRange();
Constraint getConstraint(int);
var{int} getWeight(int);
WeightedConstraintSystem::WeightedConstraintSystem(LocalSolver);
var{int} violations(var{int});
var{int} decrease(var{int});
range getIdRange();
var{int}[] getCstrViolations();
int getAssignDelta(var{int}[],int[]);
int getSwapDelta(var{int},var{int},var{int},var{int});
int getAssignDelta(var{int},int,var{int},int);
LocalSolver getLocalSolver();
void post();
void initialize();
enum-var ConstraintType getType();
}
[edit] SatisfactionSystem
Supported interfaces: Interfaces#Constraint
class SatisfactionSystem implements Constraint {
var{boolean} isTrue();
var{int} violationDegree();
var{int} violations();
int getViolations(var{int});
int getAssignDelta(var{int},int);
int getSwapDelta(var{int},var{int});
var{int}[] getVariables();
Constraint post(expr{boolean},var{int});
Constraint post(expr{boolean},int);
Constraint post(expr{boolean});
Constraint post(Constraint,var{int});
Constraint post(Constraint,int);
Constraint post(Constraint);
void close();
void show();
int getSize();
range getRange();
Constraint getConstraint(int);
SatisfactionSystem::SatisfactionSystem(LocalSolver);
var{int} violations(var{int});
var{int} decrease(var{int});
range getIdRange();
var{int}[] getCstrViolations();
int getAssignDelta(var{int}[],int[]);
int getSwapDelta(var{int},var{int},var{int},var{int});
int getAssignDelta(var{int},int,var{int},int);
LocalSolver getLocalSolver();
void post();
void initialize();
enum-var ConstraintType getType();
}
[edit] DisequationSystem
Supported interfaces: Interfaces#Constraint
class DisequationSystem implements Constraint {
DisequationSystem::DisequationSystem(var{int}[]);
void add(int,int);
void post(var{int},var{int});
void close();
void assign(var{int},var{int});
var{boolean} isTrue();
var{int} violations();
var{int} violationDegree();
int igetViolations(int);
int igetAssignDelta(int,int);
var{int} iviolations(int);
int igetSwapAssignDelta(int,int,int);
int getAssignDelta(var{int},int);
var{int} violations(var{int});
var{int} decrease(var{int});
int getViolations(var{int});
int getSwapDelta(var{int},var{int});
expr{int} eviolations(expr{int});
int getAssignDelta(var{int}[],int[]);
int getSwapDelta(var{int},var{int},var{int},var{int});
int getAssignDelta(var{int},int,var{int},int);
var{int}[] getVariables();
var{int}[] getViolationVariables();
int[] getMapping();
LocalSolver getLocalSolver();
void post();
void initialize();
enum-var ConstraintType getType();
}
[edit] WeightedDisequationSystem
Supported interfaces: Interfaces#Constraint
class WeightedDisequationSystem implements Constraint {
WeightedDisequationSystem::WeightedDisequationSystem(var{int}[]);
void add(int,int);
void post(var{int},var{int});
void close();
void assign(var{int},var{int});
var{boolean} isTrue();
var{int} violations();
var{int} violationDegree();
int igetViolations(int);
int igetAssignDelta(int,int);
var{int} iviolations(int);
int igetSwapAssignDelta(int,int,int);
int getAssignDelta(var{int},int);
var{int} violations(var{int});
var{int} decrease(var{int});
int getViolations(var{int});
int getSwapDelta(var{int},var{int});
expr{int} eviolations(expr{int});
int getAssignDelta(var{int}[],int[]);
int getSwapDelta(var{int},var{int},var{int},var{int});
int getAssignDelta(var{int},int,var{int},int);
var{int}[] getVariables();
LocalSolver getLocalSolver();
void post();
void initialize();
enum-var ConstraintType getType();
}
[edit] AllDifferent
Supported interfaces: Interfaces#Constraint
class AllDifferent implements Constraint {
var{boolean} isTrue();
var{int} violationDegree();
var{int} violations();
int getViolations(var{int});
int getAssignDelta(var{int},int);
int getSwapDelta(var{int},var{int});
var{int}[] getVariables();
AllDifferent::AllDifferent(var{int}[]);
var{int} icard(int);
expr{int} occ(expr{int});
AllDifferent::AllDifferent(expr{int}[]);
var{int} violations(var{int});
var{int} decrease(var{int});
int getAssignDelta(var{int}[],int[]);
int getSwapDelta(var{int},var{int},var{int},var{int});
int getAssignDelta(var{int},int,var{int},int);
LocalSolver getLocalSolver();
void post();
void setInit();
void initialize();
enum-var ConstraintType getType();
}
[edit] AllDifferentExpr
Supported interfaces: Interfaces#Constraint
class AllDifferentExpr implements Constraint {
var{boolean} isTrue();
var{int} violationDegree();
var{int} violations();
int getViolations(var{int});
int getAssignDelta(var{int},int);
int getSwapDelta(var{int},var{int});
var{int}[] getVariables();
AllDifferent::AllDifferent(var{int}[]);
var{int} icard(int);
expr{int} occ(expr{int});
AllDifferentExpr::AllDifferentExpr(expr{int}[]);
var{int} violations(var{int});
var{int} decrease(var{int});
int getAssignDelta(var{int}[],int[]);
int getSwapDelta(var{int},var{int},var{int},var{int});
int getAssignDelta(var{int},int,var{int},int);
LocalSolver getLocalSolver();
void post();
void setInit();
void initialize();
enum-var ConstraintType getType();
}
[edit] Atmost
Supported interfaces: Interfaces#Constraint
class Atmost implements Constraint {
var{boolean} isTrue();
var{int} violationDegree();
var{int} violations();
int getViolations(var{int});
int getAssignDelta(var{int},int);
int getSwapDelta(var{int},var{int});
var{int}[] getVariables();
var{int} violations(var{int});
var{int} decrease(var{int});
int getAssignDelta(var{int}[],int[]);
int getSwapDelta(var{int},var{int},var{int},var{int});
Atmost::Atmost(int[],var{int}[]);
int getAssignDelta(var{int},int,var{int},int);
LocalSolver getLocalSolver();
void post();
void initialize();
enum-var ConstraintType getType();
int[] getCardinalities();
}
[edit] AtmostBoolExpr
Supported interfaces: Interfaces#Constraint
class AtmostBoolExpr implements Constraint {
var{boolean} isTrue();
var{int} violationDegree();
var{int} violations();
int getViolations(var{int});
int getAssignDelta(var{int},int);
int getSwapDelta(var{int},var{int});
var{int}[] getVariables();
AtmostBoolExpr::AtmostBoolExpr(expr{int}[],int);
AtmostBoolExpr::AtmostBoolExpr(expr{boolean}[],int);
var{int} violations(var{int});
var{int} decrease(var{int});
int getAssignDelta(var{int}[],int[]);
int getSwapDelta(var{int},var{int},var{int},var{int});
int getAssignDelta(var{int},int,var{int},int);
LocalSolver getLocalSolver();
void post();
void initialize();
enum-var ConstraintType getType();
}
[edit] SumEqExpr
Supported interfaces: Interfaces#Constraint
class SumEqExpr implements Constraint {
var{boolean} isTrue();
var{int} violationDegree();
var{int} violations();
int getViolations(var{int});
int getAssignDelta(var{int},int);
int getSwapDelta(var{int},var{int});
var{int}[] getVariables();
SumEqExpr::SumEqExpr(expr{int}[],int);
SumEqExpr::SumEqExpr(expr{boolean}[],int);
var{int} violations(var{int});
var{int} decrease(var{int});
int getAssignDelta(var{int}[],int[]);
int getSwapDelta(var{int},var{int},var{int},var{int});
int getAssignDelta(var{int},int,var{int},int);
LocalSolver getLocalSolver();
void post();
void initialize();
enum-var ConstraintType getType();
}
[edit] Atleast
Supported interfaces: Interfaces#Constraint
class Atleast implements Constraint {
var{boolean} isTrue();
var{int} violationDegree();
var{int} violations();
int getViolations(var{int});
int getAssignDelta(var{int},int);
int getSwapDelta(var{int},var{int});
var{int}[] getVariables();
Atleast::Atleast(int[],var{int}[]);
Atleast::Atleast(int[],expr{int}[]);
Atleast::Atleast(int[],int[],expr{int}[]);
var{int} violations(var{int});
var{int} decrease(var{int});
int getAssignDelta(var{int}[],int[]);
int getSwapDelta(var{int},var{int},var{int},var{int});
int getAssignDelta(var{int},int,var{int},int);
LocalSolver getLocalSolver();
void post();
void initialize();
enum-var ConstraintType getType();
}
[edit] Exactly
Supported interfaces: Interfaces#Constraint
class Exactly implements Constraint {
var{boolean} isTrue();
var{int} violationDegree();
var{int} violations();
int getViolations(var{int});
int getAssignDelta(var{int},int);
int getSwapDelta(var{int},var{int});
var{int}[] getVariables();
Exactly::Exactly(var{int},expr{boolean}[]);
var{int} violations(var{int});
var{int} decrease(var{int});
int getAssignDelta(var{int}[],int[]);
int getSwapDelta(var{int},var{int},var{int},var{int});
int getAssignDelta(var{int},int,var{int},int);
LocalSolver getLocalSolver();
void post();
void initialize();
enum-var ConstraintType getType();
}
[edit] CardIntersection
Supported interfaces: Interfaces#Constraint
class CardIntersection implements Constraint {
var{boolean} isTrue();
var{int} violationDegree();
var{int} violations();
var{int} violations(var{int});
var{int} decrease(var{int});
int getViolations(var{int});
int getAssignDelta(var{int},int);
int getSwapDelta(var{int},var{int});
var{int}[] getVariables();
CardIntersection::CardIntersection(var{int}[],var{int}[],int);
int getAssignDelta(var{int}[],int[]);
int getSwapDelta(var{int},var{int},var{int},var{int});
int getAssignDelta(var{int},int,var{int},int);
LocalSolver getLocalSolver();
void post();
void initialize();
enum-var ConstraintType getType();
}
[edit] Knapsack
Supported interfaces: Interfaces#Constraint
class Knapsack implements Constraint {
var{boolean} isTrue();
var{int} violationDegree();
var{int} violations();
int getViolations(var{int});
int getAssignDelta(var{int},int);
int getSwapDelta(var{int},var{int});
var{int}[] getVariables();
int getAssignDelta(var{int},int,var{int},int);
int getAssignDelta(var{int},int,var{int},int,var{int},int);
int getSwapDelta(var{int},var{int},var{int},var{int});
Knapsack::Knapsack(var{int}[],int[],int[]);
var{int} violations(var{int});
var{int} decrease(var{int});
int getAssignDelta(var{int}[],int[]);
LocalSolver getLocalSolver();
void post();
void initialize();
enum-var ConstraintType getType();
}
[edit] MeetAtmost
Supported interfaces: Interfaces#Constraint
class MeetAtmost implements Constraint {
var{boolean} isTrue();
var{int} violationDegree();
var{int} violations();
int getViolations(var{int});
int getAssignDelta(var{int},int);
int getSwapDelta(var{int},var{int});
var{int}[] getVariables();
MeetAtmost::MeetAtmost(var{int}[],var{int}[],int);
var{int} violations(var{int});
var{int} decrease(var{int});
int getAssignDelta(var{int}[],int[]);
int getSwapDelta(var{int},var{int},var{int},var{int});
int getAssignDelta(var{int},int,var{int},int);
LocalSolver getLocalSolver();
void post();
void initialize();
enum-var ConstraintType getType();
}
[edit] Pairing
Supported interfaces: Interfaces#Constraint
class Pairing implements Constraint {
var{boolean} isTrue();
var{int} violationDegree();
var{int} violations();
int getViolations(var{int});
int getAssignDelta(var{int},int);
int getSwapDelta(var{int},var{int});
var{int}[] getVariables();
void show();
Pairing::Pairing(var{int}[]);
var{int} violations(var{int});
var{int} decrease(var{int});
int getAssignDelta(var{int}[],int[]);
int getSwapDelta(var{int},var{int},var{int},var{int});
int getAssignDelta(var{int},int,var{int},int);
LocalSolver getLocalSolver();
void post();
void initialize();
enum-var ConstraintType getType();
}
[edit] Matching
Supported interfaces: Interfaces#Constraint
class Matching implements Constraint {
var{boolean} isTrue();
var{int} violationDegree();
var{int} violations();
int getViolations(var{int});
int getAssignDelta(var{int},int);
int getSwapDelta(var{int},var{int});
var{int}[] getVariables();
void show();
Matching::Matching(var{int}[]);
var{int} violations(var{int});
var{int} decrease(var{int});
int getAssignDelta(var{int}[],int[]);
int getSwapDelta(var{int},var{int},var{int},var{int});
int getAssignDelta(var{int},int,var{int},int);
LocalSolver getLocalSolver();
void post();
void initialize();
enum-var ConstraintType getType();
}
[edit] Opposite
Supported interfaces: Interfaces#Constraint
class Opposite implements Constraint {
var{boolean} isTrue();
var{int} violationDegree();
var{int} violations();
int getViolations(var{int});
int getAssignDelta(var{int},int);
int getSwapDelta(var{int},var{int});
var{int}[] getVariables();
void show();
Opposite::Opposite(var{int},var{int});
var{int} violations(var{int});
var{int} decrease(var{int});
int getAssignDelta(var{int}[],int[]);
int getSwapDelta(var{int},var{int},var{int},var{int});
int getAssignDelta(var{int},int,var{int},int);
LocalSolver getLocalSolver();
void post();
void initialize();
enum-var ConstraintType getType();
}
[edit] NotOpposite
Supported interfaces: Interfaces#Constraint
class NotOpposite implements Constraint {
var{boolean} isTrue();
var{int} violationDegree();
var{int} violations();
int getViolations(var{int});
int getAssignDelta(var{int},int);
int getSwapDelta(var{int},var{int});
var{int}[] getVariables();
void show();
NotOpposite::NotOpposite(var{int},var{int});
var{int} violations(var{int});
var{int} decrease(var{int});
int getAssignDelta(var{int}[],int[]);
int getSwapDelta(var{int},var{int},var{int},var{int});
int getAssignDelta(var{int},int,var{int},int);
LocalSolver getLocalSolver();
void post();
void initialize();
enum-var ConstraintType getType();
}
[edit] LinearConstraint
Supported interfaces: Interfaces#Constraint
class LinearConstraint implements Constraint {
var{boolean} isTrue();
var{int} violationDegree();
var{int} violations();
int getViolations(var{int});
int getAssignDelta(var{int},int);
int getSwapDelta(var{int},var{int});
var{int}[] getVariables();
void show();
LinearConstraint::LinearConstraint(LocalSolver,expr{int});
var{int} value();
var{int} violations(var{int});
var{int} decrease(var{int});
int getAssignDelta(var{int}[],int[]);
int getSwapDelta(var{int},var{int},var{int},var{int});
int getAssignDelta(var{int},int,var{int},int);
LocalSolver getLocalSolver();
void post();
void initialize();
enum-var ConstraintType getType();
}
[edit] WeightedConstraint
Supported interfaces: Interfaces#Constraint
class WeightedConstraint implements Constraint {
var{boolean} isTrue();
var{int} violationDegree();
var{int} violations();
int getViolations(var{int});
int getAssignDelta(var{int},int);
int getSwapDelta(var{int},var{int});
var{int}[] getVariables();
void show();
WeightedConstraint::WeightedConstraint(Constraint,int);
var{int} violations(var{int});
var{int} decrease(var{int});
int getAssignDelta(var{int}[],int[]);
int getSwapDelta(var{int},var{int},var{int},var{int});
int getAssignDelta(var{int},int,var{int},int);
LocalSolver getLocalSolver();
void post();
void initialize();
enum-var ConstraintType getType();
}
[edit] IsTrue
Supported interfaces: Interfaces#Constraint
class IsTrue implements Constraint {
var{boolean} isTrue();
var{int} violationDegree();
var{int} violations();
int getViolations(var{int});
int getAssignDelta(var{int},int);
int getSwapDelta(var{int},var{int});
var{int}[] getVariables();
void show();
IsTrue::IsTrue(Constraint);
var{int} violations(var{int});
var{int} decrease(var{int});
int getAssignDelta(var{int}[],int[]);
int getSwapDelta(var{int},var{int},var{int},var{int});
int getAssignDelta(var{int},int,var{int},int);
LocalSolver getLocalSolver();
void post();
void initialize();
enum-var ConstraintType getType();
}
[edit] NbDistinctCtr
Supported interfaces: Interfaces#Constraint
class NbDistinctCtr implements Constraint {
var{boolean} isTrue();
var{int} violationDegree();
var{int} violations();
int getViolations(var{int});
int getAssignDelta(var{int},int);
int getSwapDelta(var{int},var{int});
var{int}[] getVariables();
var{int} nbValues();
var{set(int)} Values();
var{set(int)} Indices(int);
int getOccurrences(int);
NbDistinctCtr::NbDistinctCtr(var{int}[],var{int}[]);
var{int} violations(var{int});
var{int} decrease(var{int});
int getAssignDelta(var{int}[],int[]);
int getSwapDelta(var{int},var{int},var{int},var{int});
int getAssignDelta(var{int},int,var{int},int);
LocalSolver getLocalSolver();
void post();
void initialize();
enum-var ConstraintType getType();
}
[edit] TrueExpr
Supported interfaces: Interfaces#Constraint
class TrueExpr implements Constraint {
var{boolean} isTrue();
var{int} violationDegree();
var{int} violations();
int getViolations(var{int});
int getAssignDelta(var{int},int);
int getSwapDelta(var{int},var{int});
var{int}[] getVariables();
void show();
var{int} violations(var{int});
var{int} decrease(var{int});
TrueExpr::TrueExpr(expr{boolean});
int getAssignDelta(var{int}[],int[]);
int getSwapDelta(var{int},var{int},var{int},var{int});
int getAssignDelta(var{int},int,var{int},int);
LocalSolver getLocalSolver();
void post();
void initialize();
enum-var ConstraintType getType();
}
[edit] NonLinearConstraint
Supported interfaces: Interfaces#Constraint
class NonLinearConstraint implements Constraint {
var{boolean} isTrue();
var{int} violationDegree();
var{int} violations();
int getViolations(var{int});
int getAssignDelta(var{int},int);
int getSwapDelta(var{int},var{int});
var{int}[] getVariables();
NonLinearConstraint::NonLinearConstraint(LocalSolver,expr{int});
var{int} value();
var{int} violations(var{int});
var{int} decrease(var{int});
int getAssignDelta(var{int}[],int[]);
int getSwapDelta(var{int},var{int},var{int},var{int});
int getAssignDelta(var{int},int,var{int},int);
LocalSolver getLocalSolver();
void post();
void initialize();
enum-var ConstraintType getType();
}
[edit] ValueWeightDisequations
Supported interfaces: Interfaces#Constraint
class ValueWeightDisequations implements Constraint {
ValueWeightDisequations::ValueWeightDisequations(DisequationSystem);
var{boolean} isTrue();
var{int} violations();
int getAssignDelta(var{int},int);
var{int} violations(var{int});
var{int} decrease(var{int});
int getViolations(var{int});
int getSwapDelta(var{int},var{int});
expr{int} eviolations(expr{int});
int getAssignDelta(var{int}[],int[]);
int getSwapDelta(var{int},var{int},var{int},var{int});
int getAssignDelta(var{int},int,var{int},int);
var{int}[] getVariables();
LocalSolver getLocalSolver();
void post();
void initialize();
enum-var ConstraintType getType();
}

