/Genetic-Algorithm

Timetable Generator Using Genetic Algorithm

Primary LanguageJupyter Notebook

Genetic-Algorithm-using-Roulette-Wheel-Selection-

A generic solution that will facilitate generating university schedule using Genetic Algorithm. The success of solution is estimated on fulfillment of given constraints and criteria.

Constraints

There are set of constraints that need to be fulfilled.

Hard Constraints

• No teacher can hold two classes at the same time

• No section can listen for two classes at the same time

• No classroom can receive two classes at the same time

• There will be no class before 8:30 am and after 5:00 pm.

• University will remain close as there will be no class on weekends (Sat, Sun)

Soft Constraints

• There will be no class from 1-2 on Friday.

• A subject having multiple forms, such as lectures and labs, the preferred order is: lecture and lab.

• One hour for faculty meeting in a week when there is no class except Friday’s prayer break.

Input & Output

Input data for each class are professors’ name, course, section, duration and list of allowed classrooms. Output data are classroom and time for each class. Time is determined by day (Monday to Friday) and start hour of the class.