Quellcode durchsuchen

新模型探索

fangpengyuan vor 4 Monaten
Ursprung
Commit
538c4bab69

+ 3 - 0
rw-aps-server/src/main/java/com/rongwei/rwapsserver/aps/score/ApsConstraintListProvider.java

@@ -1665,6 +1665,9 @@ public class ApsConstraintListProvider implements ConstraintProvider {
                         }
                     }
                     int i = (int) (DateUtil.between(deliveryMinDate, Date.from(productionProcesses.getEndTime().atZone(zoneId).toInstant()), DateUnit.MINUTE) + 1) * 10;
+                    if(i<0){
+                        int aa = 0;
+                    }
                     return i;
                 })
                 .asConstraint("deliveryDate");

+ 2 - 2
rw-aps-server/src/main/java/com/rongwei/rwapsserver/aps/service/impl/ProductionScheduleServiceImpl.java

@@ -118,8 +118,8 @@ public class ProductionScheduleServiceImpl implements ProductionScheduleService
                         .withSolutionClass(ApsSolution.class)
                         .withEntityClasses(ProductionProcesses.class, Equipment.class)
                         .withConstraintProviderClass(ApsConstraintListProvider.class)
-                        .withTerminationConfig(new TerminationConfig().withUnimprovedSecondsSpentLimit(60L))
-//                    .withTerminationSpentLimit(Duration.ofSeconds(runPlanSeconds))
+//                        .withTerminationConfig(new TerminationConfig().withUnimprovedSecondsSpentLimit(60L))
+                    .withTerminationSpentLimit(Duration.ofSeconds(1800))
                         .withMoveThreadCount(cores)
         );
         Solver<ApsSolution> solver = solverFactory.buildSolver();

+ 2 - 2
rw-aps-server/src/main/java/com/rongwei/rwapsserver/aps/taskassigning/TaskStartTimeListenerTa.java

@@ -49,8 +49,8 @@ public class TaskStartTimeListenerTa implements ListVariableListener<ApsSolution
 
     @Override
     public void afterListVariableChanged(ScoreDirector<ApsSolution> scoreDirector, Equipment equipmentTa, int fromIndex, int toIndex) {
-//        updateStartTime(scoreDirector, equipmentTa, fromIndex,toIndex);
-        updateTaskStartTime(scoreDirector, equipmentTa, fromIndex);
+        updateStartTime(scoreDirector, equipmentTa, fromIndex,toIndex);
+//        updateTaskStartTime(scoreDirector, equipmentTa, fromIndex);
     }
 
     protected void updateStartTime(ScoreDirector<ApsSolution> scoreDirector, Equipment equipmentTa, int index, int toIndex) {