Inspiration

Every semester, students spend countless hours trying to craft the perfect timetable—maximizing free time and minimizing hassle—only to end up with less-than-ideal schedules. We wanted to change that.

What it does

With Timetable AI, simply input the modules you're taking, the days you want to keep free, and your preferred class start and end times. In seconds, it generates a personalized, efficient timetable designed around your preferences.

How we built it

We used Golang, applied advanced graph algorithms, and implemented a backtracking approach to optimize timetable generation. Multi-threading further enhanced the efficiency of the solution. This solution is rounded out by a familiar and user friendly interface.

Challenges we ran into

Learning Golang from scratch. Implementing complex graph algorithms. Balancing efficiency with the thoroughness of the backtracking process.

Accomplishments that we're proud of

By intelligently reducing the search space, we cut down the timetable generation time by an impressive 10x, delivering results faster without compromising quality.

What we learned

We gained hands-on experience in leveraging graph algorithms, backtracking techniques, and multi-threading to solve real-world optimization problems effectively.

What's next for Timetable AI

We aim to integrate Timetable AI seamlessly with existing systems, like NUSMods, making it a plug-and-play extension for even greater ease of access and usability.

Built With

Share this project:

Updates