ICE is a course-scheduling software that uses Greedy Algorithm to solve the Registrar's Problem
Our test.py script (can be found in ~/Algorithm) has a function called test that contains the transcribed functions of isValid.pl and it evaluates the validity and performance of the schedule the exact same way. Our algorithm uses this python script to initiate the scheduling process and evaluate the output of the scheduling process.
- Navigate to
~/Algorithmand run the following command
python3 test.py -f ../data/parsed_data/ -s ../data/schedule_real.txt -aTo enable or disable constraints for the scheduling process, navigate to ~/Algorithm/main.py and change the default keyword argument values for the constraint of interest. This would toggle the constraint and allow the algorithm to run with or without the constraint.
- Checkout the
without-constraintsbranch from the Github Repository - Navigate to
~/Algorithm/miscand runbash generateRandomInstances2.sh [instances] [rooms] [classes] [times] [students]to generate folder with test cases - Move the entire folder with test cases into
~/Algorithm/misc/test_cases - Navigate to
~/Algorithmand run the following command
python3 test.py -a