ScheDool - AI-assisted Class Scheduling System with Multi-Facet Constraints
Introduction
In major Thai public schools, creating a semester timetable is a Herculean task, often requiring eight faculty members working for two weeks. Administrators must juggle over 300 teachers, thousands of students, and a web of constraints—from room availability to specific teacher preferences.
ScheDool is a web-based Software-as-a-Service (SaaS) solution designed to reduce this preparation time from weeks to just several hours. By replacing manual "trial-and-error" with AI, the system aims to reduce manual workload by at least 70%, allowing educators to focus on teaching rather than logistics.
Key Features
Automated Timetable Generation: Uses advanced AI to generate conflict-free schedules instantly.
LLM-Powered Requirement Parsing: Employs Large Language Models to interpret ambiguous, natural-language school rules and convert them into machine-readable constraints.
Multi-Role Accessibility: Dedicated portals for Administrators (scheduling), Teachers (viewing and swapping shifts), and Students (personalized timetables).
Real-Time Conflict Detection: A drag-and-drop interface that provides immediate visual feedback (using a Green/Red/Orange color system) if a manual change creates a conflict.
Standardized Integration: Tools to export data to familiar formats like CSV and Excel, ensuring a smooth transition for traditional school administrations.
Development and Innovation
The core innovation of ScheDool lies in its hybrid approach to solving the "Class Timetabling Problem."
The AI Core: Genetic Algorithm (GA)
Unlike traditional solvers that can struggle with the massive datasets of Thai schools, ScheDool uses a Genetic Algorithm. This metaheuristic approach mimics natural selection—evolving a population of potential schedules over many generations until an optimal or "near-optimal" solution is found.
The Pipeline
Preparation (LLM Phase): Using LangChain and Ollama, the system reads unstructured data (e.g., "Teacher X prefers mornings") and translates it into weighted mathematical parameters.
Pre-Scheduling: A high-performance Rust service handles "hard" constraints—fixing non-negotiable slots like staff meetings or remedial classes.
Optimization: The GA engine iterates through thousands of variations to satisfy "soft" constraints, such as balancing teacher workloads and minimizing consecutive teaching blocks.
Tech Stack
Frontend: Built with React.js for a responsive, component-based user interface.
Backend: Developed in Rust for maximum computational speed during the intensive GA iterations.
Storage:PostgreSQL handles structured data with high reliability.
Impact and Future Directions
ScheDool aims to establish a new standard for the Thai educational system. By move scheduling to the cloud, schools gain:
Fairness: AI ensures workloads are balanced mathematically, removing human bias from the scheduling process.
Agility: Mid-semester changes, such as teacher absences or room changes, can be re-calculated in minutes rather than days.
Scalability: Designed specifically to handle the "large-scale" complexity of OBEC (สพฐ.) schools.
Future Goals: The team plans to further refine the Fitness Function to support even more dynamic constraints, such as real-time enrollment shifts and hybrid learning models, ensuring the system remains robust as educational needs evolve.