|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
public interface PerturbationsCounter
Counter of perturbation penalty (minimal perturbation problem).
Many real-life problems are dynamic, with changes in the problem definition occurring after a solution to the initial
formulation has been reached. A minimal perturbation problem incorporates these changes, along with the initial
solution, as a new problem whose solution must be as close as possible to the initial solution. The iterative forward
search algorithm is also made to solve minimal perturbation problems.
To define the minimal perturbation problem, we will consider an initial (original) problem, its solution, a new
problem, and some distance function which allows us to compare solutions of the initial and the new problem.
Subsequently we look for a solution of the new problem with minimal distance from the initial solution. This
distance is expressed by this PerturbationCounter
Solver,
Solution,
Variable| Method Summary | |
|---|---|
void |
getInfo(Dictionary info,
Solution solution)
Some (perturbation) information about the solution might be returned here. |
double |
getPerturbationPenalty(Solution solution)
Returns perturbation penalty, i.e., the distance between current solution and the solution of the initial problem (see Variable.getInitialAssignment()). |
double |
getPerturbationPenalty(Solution solution,
Value selectedValue,
Collection 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 solver)
Initialization |
| Method Detail |
|---|
void init(Solver solver)
double getPerturbationPenalty(Solution solution)
Variable.getInitialAssignment()).
solution - current solution
double getPerturbationPenalty(Solution solution,
Value selectedValue,
Collection conflicts)
solution - current solutionselectedValue - value to be selected in the next iterationconflicts - conflicting values to be unassigned in the next iteration
void getInfo(Dictionary info,
Solution solution)
info - resultant info tablesolution - current solution
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||