V
 VariableT
 Valuepublic interface PerturbationsCounter<V extends Variable<V,T>,T extends Value<V,T>>
Solver
,
Solution
,
Variable
Modifier and Type  Method and Description 

void 
getInfo(Assignment<V,T> assignment,
Model<V,T> model,
Map<String,String> info)
Some (perturbation) information about the solution might be returned
here.

void 
getInfo(Assignment<V,T> assignment,
Model<V,T> model,
Map<String,String> info,
Collection<V> variables)
Some (perturbation) information about the solution might be returned here
(only include variables from the given set).

double 
getPerturbationPenalty(Assignment<V,T> assignment,
Model<V,T> model)
Returns perturbation penalty, i.e., the distance between current solution
and the solution of the initial problem (see
Variable.getInitialAssignment() ). 
double 
getPerturbationPenalty(Assignment<V,T> assignment,
Model<V,T> model,
Collection<V> variables)
Returns perturbation penalty, i.e., the distance between current solution
and the solution of the initial (only include variables from the given
set) problem (see
Variable.getInitialAssignment() ). 
double 
getPerturbationPenalty(Assignment<V,T> assignment,
Model<V,T> model,
T selectedValue,
Collection<T> conflicts)
Returns perturbation penalty of the solution which become from the
current solution when given conflicting values are unassigned and the
selected value is assigned.

void 
init(Solver<V,T> solver)
Initialization

double getPerturbationPenalty(Assignment<V,T> assignment, Model<V,T> model)
Variable.getInitialAssignment()
).assignment
 current assignmentmodel
 current modeldouble getPerturbationPenalty(Assignment<V,T> assignment, Model<V,T> model, Collection<V> variables)
Variable.getInitialAssignment()
).assignment
 current assignmentmodel
 current modelvariables
 subproblemdouble getPerturbationPenalty(Assignment<V,T> assignment, Model<V,T> model, T selectedValue, Collection<T> conflicts)
assignment
 current assignmentmodel
 current modelselectedValue
 value to be selected in the next iterationconflicts
 conflicting values to be unassigned in the next iterationvoid getInfo(Assignment<V,T> assignment, Model<V,T> model, Map<String,String> info)
assignment
 current assignmentinfo
 resultant info tablemodel
 current modelvoid getInfo(Assignment<V,T> assignment, Model<V,T> model, Map<String,String> info, Collection<V> variables)
assignment
 current assignmentinfo
 resultant info tablemodel
 current modelvariables
 subproblem