public override Decision Next(Solver solver) { foreach (IntVar var in factoryScheduling.SelectedTool) { if (!var.Bound()) { int min = (int) var.Min(); int max = (int) var.Max(); int rndVal = rnd.Next(min, max + 1); while (!var.Contains(rndVal)) rndVal = rnd.Next(min, max + 1); return solver.MakeAssignVariableValue(var, rndVal); } } return null; }