[CP-SAT] deprecate SearchAllSolutions and SolveWithSolutionCallback

This commit is contained in:
Laurent Perron
2021-05-03 12:11:39 +02:00
parent bd43a1c004
commit efd16c78da
72 changed files with 241 additions and 99 deletions

View File

@@ -147,7 +147,7 @@ public class BalanceGroupSat
var solutionPrinter = new SolutionPrinter(values, colors, allGroups, allItems, itemInGroup);
var status = solver.SolveWithSolutionCallback(model, solutionPrinter);
var status = solver.Solve(model, solutionPrinter);
}
public class SolutionPrinter : CpSolverSolutionCallback

View File

@@ -498,10 +498,11 @@ public class NetworkRoutingSat
cpModel.AddAllDifferent(nodeVars);
var solver = new CpSolver();
solver.StringParameters = "enumerate_all_solutions:true";
var solutionPrinter =
new FeasibleSolutionChecker(demandIndex, ref _allPaths, maxLength, arcVars, maxPaths, nodeVars);
var status = solver.SearchAllSolutions(cpModel, solutionPrinter);
var status = solver.Solve(cpModel, solutionPrinter);
}
private long[,] getArcsData()
@@ -765,9 +766,10 @@ public class NetworkRoutingSat
cpModel.Minimize(LinearExpr.Sum(obj));
CpSolver solver = new CpSolver();
solver.StringParameters = parameters;
solver.StringParameters =
parameters + " enumerate_all_solutions:true";
CpSolverStatus status = solver.SearchAllSolutions(
CpSolverStatus status = solver.Solve(
cpModel, new FeasibleSolutionChecker2(maxUsageCost, comfortableTrafficVars, trafficVars));
return (long)solver.ObjectiveValue;

View File

@@ -195,7 +195,8 @@ public class NursesSat
to_print.Add(5091);
to_print.Add(7003);
NurseSolutionObserver cb = new NurseSolutionObserver(shift, num_nurses, num_days, num_shifts, to_print);
CpSolverStatus status = solver.SearchAllSolutions(model, cb);
solver.StringParameters = "enumerate_all_solutions:true";
CpSolverStatus status = solver.Solve(model, cb);
// Statistics.
Console.WriteLine("Statistics");