Spaces:
Sleeping
Sleeping
Update solver.py
Browse files
solver.py
CHANGED
|
@@ -28,6 +28,8 @@ class TimetableSolver:
|
|
| 28 |
num_workers: int = None,
|
| 29 |
slm_constraints: List[Dict[str, Any]] = None,
|
| 30 |
scheduling_rules: List[Dict[str, Any]] = None,
|
|
|
|
|
|
|
| 31 |
) -> Tuple[str, Optional[Dict[str, Any]]]:
|
| 32 |
if num_workers is None:
|
| 33 |
num_workers = os.cpu_count() or 8
|
|
@@ -37,7 +39,8 @@ class TimetableSolver:
|
|
| 37 |
self.constraint_engine = ConstraintEngine(
|
| 38 |
model=self.model, tasks=self.tasks, faculties=self.faculties,
|
| 39 |
sections=self.sections, rooms=self.rooms,
|
| 40 |
-
slm_constraints=slm_constraints, scheduling_rules=scheduling_rules
|
|
|
|
| 41 |
)
|
| 42 |
self.constraint_engine.apply_all_constraints()
|
| 43 |
|
|
|
|
| 28 |
num_workers: int = None,
|
| 29 |
slm_constraints: List[Dict[str, Any]] = None,
|
| 30 |
scheduling_rules: List[Dict[str, Any]] = None,
|
| 31 |
+
locked_schedule: Dict[str, Any] = None,
|
| 32 |
+
locked_semesters: List[int] = None,
|
| 33 |
) -> Tuple[str, Optional[Dict[str, Any]]]:
|
| 34 |
if num_workers is None:
|
| 35 |
num_workers = os.cpu_count() or 8
|
|
|
|
| 39 |
self.constraint_engine = ConstraintEngine(
|
| 40 |
model=self.model, tasks=self.tasks, faculties=self.faculties,
|
| 41 |
sections=self.sections, rooms=self.rooms,
|
| 42 |
+
slm_constraints=slm_constraints, scheduling_rules=scheduling_rules,
|
| 43 |
+
locked_schedule=locked_schedule, locked_semesters=locked_semesters
|
| 44 |
)
|
| 45 |
self.constraint_engine.apply_all_constraints()
|
| 46 |
|