12345678910111213141516171819202122232425262728293031323334353637383940 |
- package jobshop.solvers;
-
- import jobshop.Instance;
- import jobshop.Result;
- import jobshop.encodings.JobNumbers;
-
- import java.util.ArrayList;
-
- /**
- * A very naïve solver that first schedules all first tasks, then all second tasks, ...
- **/
- public class BasicSolver implements Solver {
-
- int pts = 10;
-
- @Override
- public ArrayList<Result> solve(Instance instance, long deadline) {
-
- JobNumbers sol = new JobNumbers(instance);
- for(int t = 0 ; t<instance.numTasks ; t++) {
- for(int j = 0 ; j<instance.numJobs ; j++) {
- sol.addTaskOfJob(j);
- }
- }
-
- Result result = new Result(instance, sol.toSchedule(), Result.ExitCause.Blocked);
- ArrayList<Result> list = new ArrayList<>();
- int i;
- for (i=0; i<pts; i++) {
- list.add(result);
- }
- return list;
- }
-
- @Override
- public void setIterMax(int iterMax) {}
-
- @Override
- public void setpts(int pts) {this.pts = pts;}
- }
|