/** Initialization */
public void init(Solver solver) {}
/** Neighbour selection */
public Neighbour selectNeighbour(Solution solution) {
Model model = solution.getModel();
Variable variable = (Variable)ToolBox.random(model.variables());
if (!(variable instanceof Swapable)) return null;
Variable anotherVariable = (Variable)ToolBox.random(model.variables());
if (variable.equals(anotherVariable)) return null;
return ((Swapable)variable).findSwap(anotherVariable);
}