Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
|
@@ -54,7 +54,7 @@ st.write("**Teachers:**", st.session_state.teachers)
|
|
| 54 |
st.write("**Rooms:**", st.session_state.rooms)
|
| 55 |
st.write("**Subjects and Weekly Slots:**", st.session_state.subjects)
|
| 56 |
|
| 57 |
-
# Timetable generation logic
|
| 58 |
def generate_timetable(teachers, subjects, rooms, time_slots, days):
|
| 59 |
model = cp_model.CpModel()
|
| 60 |
schedule = {}
|
|
@@ -85,6 +85,9 @@ def generate_timetable(teachers, subjects, rooms, time_slots, days):
|
|
| 85 |
solver = cp_model.CpSolver()
|
| 86 |
status = solver.Solve(model)
|
| 87 |
|
|
|
|
|
|
|
|
|
|
| 88 |
if status == cp_model.OPTIMAL:
|
| 89 |
result = []
|
| 90 |
for key, var in schedule.items():
|
|
@@ -92,6 +95,7 @@ def generate_timetable(teachers, subjects, rooms, time_slots, days):
|
|
| 92 |
result.append(key)
|
| 93 |
return result
|
| 94 |
else:
|
|
|
|
| 95 |
return []
|
| 96 |
|
| 97 |
# Generate timetable button
|
|
|
|
| 54 |
st.write("**Rooms:**", st.session_state.rooms)
|
| 55 |
st.write("**Subjects and Weekly Slots:**", st.session_state.subjects)
|
| 56 |
|
| 57 |
+
# Timetable generation logic with debugging
|
| 58 |
def generate_timetable(teachers, subjects, rooms, time_slots, days):
|
| 59 |
model = cp_model.CpModel()
|
| 60 |
schedule = {}
|
|
|
|
| 85 |
solver = cp_model.CpSolver()
|
| 86 |
status = solver.Solve(model)
|
| 87 |
|
| 88 |
+
# Debugging: Print solver status
|
| 89 |
+
st.write("Solver Status:", status)
|
| 90 |
+
|
| 91 |
if status == cp_model.OPTIMAL:
|
| 92 |
result = []
|
| 93 |
for key, var in schedule.items():
|
|
|
|
| 95 |
result.append(key)
|
| 96 |
return result
|
| 97 |
else:
|
| 98 |
+
st.write("No feasible solution found with the given constraints.")
|
| 99 |
return []
|
| 100 |
|
| 101 |
# Generate timetable button
|