$30
The assignment is to find generic solution that will facilitate generating schedule for university using “Genetic Algorithm”.
• You have to write code from scratch.
• Make sure your notebook is well documented
• You cannot use any built-in library for the implementation of Genetic Algorithm except Pandas and NumPy.
• You can use any kind of crossover discussed in class.
• You can choose any rate of mutation (which can be justifiable)
• You have to roulette wheel selection for selecting potentially useful solutions for recombination (Chromosomes).
The success of solution is estimated on fulfillment of given constraints and criteria. Results of testing the algorithm show that all hard constraints are satisfied, while additional criteria are optimized to a certain extent. You have to submit. ipynb with a one-page report of your implementation .pdf.
Constraints
There are set of constraints that need to be fulfilled.
Input & Output
Input data for each exam are teachers’ names, students’, exam duration, courses (course codes), and list of allowed classrooms.
Output data are classroom and starting time for each exam along with course code and invigilating teacher. Time is determined by day (Monday to Friday) and start hour of the exam.
• Output will be a chromosome which satisfies all hard constraints and soft constraints at least three. (as much as you can)
• You have to display a list of all hard and soft constraints which are fulfilled in the output.
• Don’t forget to show fitness values at each iteration.