Exam Scheduler Technical Manual

Main Module

The main module is served as the driver module of the whole system. Basically it sequentially calls the input module to set up all necessary internal data structure, then call scheduler module to schedule and finally output the schedule by calling output module. Since our scheduling algorithm is sort of random, different times to call will probably get different schedules. To get relative "good" schedule, the main program calls the schedler module a certain of times to get some possbile "candidate" schedules and leave them for users to decide which one is finally used. A trick here is that when we find a possible "good" schedule, we have no need to save the whole schedule. All what we need to save is just the random seed of this time of running. After we run a certain of times, we just use all recorded random seeds to reproduce the "candidate" schedules. The number of times to run the scheduler module can be set in configuration file by users

Source Code


Updated on April 23, 2000.