This repository contains the implementation of an optimized university timetabling system using Integer Linear Programming (ILP) techniques. The system aims to efficiently allocate classrooms, timeslots, and instructors while adhering to constraints such as classroom availability, instructor schedules, and student preferences. The project also explores hybrid approaches by combining ILP with heuristic/metaheuristic algorithms like Genetic Algorithms and Simulated Annealing for larger datasets.
- ILP-Based Timetabling: Efficient optimization of timetables using Integer Linear Programming.
- Hybrid Approaches: Combination of ILP with Genetic Algorithms and Simulated Annealing to improve scalability and performance.
- Conflict Detection: AI-based methods for detecting and resolving timetable conflicts.
- Real-Time Adaptive Scheduling: Dynamic re-scheduling in case of disruptions like classroom unavailability.
- Blockchain Integration: Ensures secure and transparent timetabling with blockchain technology.
- Machine Learning for Personalization: Personalized timetables based on student preferences.
- Languages: Python, Java
- Libraries: PuLP, SciPy, NumPy, Pandas
- Optimization: Integer Linear Programming, Genetic Algorithms, Simulated Annealing
- AI/ML: Conflict detection and resolution algorithms using machine learning techniques
- Blockchain: Ethereum-based smart contracts for transparency
- Clone this repository:
git clone https://github.com/your-username/timetabling-optimization.git Install dependencies:
- Install dependencies:
pip install -r requirements.txt
- Run the main script to generate optimized timetables:
python timetabling_optimizer.py