By Ketpy Team · 7 min read · 03 May 2026
The problem
Timetabling is constraint-satisfaction: teachers can't be in two places, lunch is fixed, subjects need balanced spread. Most ERPs make this a manual nightmare.
Our approach
We wrote a greedy scheduler with backtracking, in vanilla PHP — no external solver, no Python. It's predictable and tunable.
What's next
A reinforcement-learning pass that improves the schedule over time based on teacher feedback.