Download presentation
Presentation is loading. Please wait.
Published byChristina Anastasia Brown Modified over 9 years ago
1
FINAL EXAM SCHEDULER (FES) Department of Computer Engineering Faculty of Engineering & Architecture Yeditepe University By Ersan ERSOY (Engineering Project) Advisor: Assist.Prof.Dr. Ender ÖZCAN
2
2 Outline Timetabling Problem Timetabling Markup Language (TTML) Genetic Algorithms (GAs) Implementation Experiments Conclusion & Future Work
3
3 Timetabling Problem Assignment of variables (courses, exams etc.) to some specific domains (time slots, rooms, etc) based on various constraints. NP-complete problem. Hard and soft constraints.
4
4 Examination Timetabling Represented as (V, D, C) –V contains variables (exams), –D contains domains (time slots, rooms), –C contains constraints. Constraint classifications : –Edges. –Preset and exclusions. –Ordering. –Event-spread. –Capacity. Aim in this project is to assign exams to time slots.
5
5 Solution Approaches Human based techniques. Random search. Simulated annealing. Tabu search. Evolutionary algorithms.
6
6 Timetabling Markup Language (TTML) Standard representation for timetabling problems. Based on XML and MathML Consists of three parts. –Input-data. –Output. –Test-results.
7
7 TTML (Cntd.) Input-data –Author. –Description. –References. –Variables. –Domains. –Constraints. Classifiers Hard Soft
8
8 TTML (Cntd.) Classifiers –Base –Parent Projection –Self –Child –Single
9
9 TTML (Continues) Supports 11 different constraint functions. –notsame –nooverlap –preset –exclude –ordering –eventspr –fullspr –freespr –chksum –attrcomp –resnoclash
10
10 Genetic Algorithms (GAs) GAs were introduced by J. Holland. Member of Evolutionary Algorithms (EAs) Simply explained as : –Set i to 0 and randomly generate an initial population (P(i)) –Do until break criteria is satisfied Evaluate the fitness of each individual Select parents of the next generation from P(i) according to their fitness Produce new offspring by using crossover and mutation operators and put them into P(i+1),set i to i+1
11
11 Components of GAs (Cntd.) Chromosomes. Gene. Population. Representation –Binary encoding. –Real value encoding. Initializing Population
12
12 Components of GAs (Cntd.) Evaluating chromosomes –Fitness function. Mate Selection. –Fitness-based selection –Rank-Based selection –Tournament Selection
13
13 Components of GAs (Cntd.) One-point Crossover
14
14 Components of GAs (Cntd.) Two-point Crossover
15
15 Components of GAs (Cntd.) Uniform Crossover
16
16 Components of GAs (Cntd.) Mutation –Randomly alters the values of genes of a chromosome after crossover. Replacement Strategy –Trans-generational Genetic Algorithms. –Steady-State Genetic Algorithm s. Elitism
17
17 Components of GAs (Cntd.) GA Parameters –Crossover probability. –Mutation probability. –Population size.
18
18 GAs (Cntd.) Memetic Algorithms (MAs) –In GAs, crossover and mutation usually performs solutions near the local optima –Memetic Algorithms (MAs) can be explained as hybridization of GA and local search algorithms. –Gene in GAs is called meme in MAs.
19
19 Implementation Three different programs are implemented. –CONFETI generates examination problem data in TTML format. –Final Exam Scheduler (FES) that takes problem input in TTML format and finds the optimum solution. –FESViewer is implemented to view the output of FES
20
20 Implementation (CONFETI) –Java applet. –Support generating TTML documents for examination timetabling problem. –Consists: Description Domain Variable Classifiers –Students –Curriculum Base Classifiers Constraints Capable of loading TTML documents
21
21 Implementation (FES) –Java application –Solves examination problems. –Deals with different types of constraints that can be converted to TTML form by CONFETI.
22
22 FES Getting TTML Document and Basic Data Structures. –Each course (variable) in TTML document stored in a class (Variable) that contains duration (length of the exam), number students, list of hard domain slots, list of soft domain slots. –Hard domains are initialized according to hard preset and exclude constraints. –Soft domains are initialized according to soft preset and exclude constraints. –This class contains a function that returns random slots according to hard and soft domain for each course.
23
23 FES Getting TTML Document and Basic Data Structures. –Each student information, student id and courses that he takes, are stored in memory after reading from input in a array of array form with a length of student number.
24
24 FES Getting TTML Document and Basic Data Structures.. –FES supports nine types of constraints that CONFETI supports. But it does not support every combination of these constraints. The set of constraints that FES generally does not support is: –Constraints with parent classifiers other than Students parent classifier. –Constraints which take two base classifiers as arguments. –For eventspr, constraints that have compare value other than ‘<’.
25
25 FES Getting TTML Document and Basic Data Structures.. –If a preset or exclude constraint is defined to a course than, modifications are implemented on the hard and soft domains of the courses. –If two courses must have same slot, same slot references are given to them.
26
26 FES Algorithm –A Memetic algorthm is used. –Representation Each meme contains assigned slot number of an exam. –Evaluating chromosomes Fitness function Where w i is the weight of the constraint ci.
27
27 FES Algorithm –Initializing Population Random With hill climbing. –Mate Selection Fitness-based selection Rank based Selection Tournament Selection –Crossover One-point Two-point Uniform
28
28 FES Mutation –Random –Random & Swap Hill Climbing –Each constraint has an hill climbing function to improve its fitness except for eventspr and some combinations.
29
29 FES Hill Climbing –Pseudo code for hill climbing function of notsame If there exits a violation between course A and B –Set counter to 0 –While counter is less than 10 »Get a random slot for B »if violation is improved »return; »Increment counter by one. –Set counter to 0 –While counter is less than 10 »Get a random slot for A »if violation is improved »return; –Increment counter by one.
30
30 FES Hill Climbing –Two hill climbing algorithm is defined HCA1 –A chromosome is selected by using tournament selection. And hill climbing functions of all defined constraints is applied.
31
31 FES Hill Climbing –HCA2 Select a chromosome by tournament selection –Step1. Select a constraint –Use hill climbing function to whole chromosome –If individual is improved go to Step1. –Step2. Select a constraint –Use hill climbing function to a part of chromosome –If individual is improved go to Step2. –Step3. Select a constraint –Use hill climbing function to one gene of chromosome –If individual is improved go to Step3.
32
32 FES Replacement strategy –Steady-state –Trans-generational Other Features & User Interfaces –GA parameters, operator types, weight of constraints can be entered. –Any time, output ( examination schedule) can be viewed in student, department and faculty view and can be saved for examining later by FESViewer.
33
33 Implementation(FESViewer) Java application. Displays the output of FES.
34
34 Experiments Experimental data –Yeditepe University, Faculty of Engineering and Architecture, 2004 second semester, final exam data are used in the experiments.It consists of 443 courses, 1169 students –Constraints No students must have two exams in one slot (hard). Students must have maximum 2 courses per day (hard). Each section of the courses has to be assigned on the same slot (Hard). Students have at least one free slot between two exams in a day (soft). Also there are many preset and exclude constraints (hard or soft).
35
35 Experiments Experimental data Hard constraints have a weight value of one and soft constraints except for the fourth constraint have weight value of 0.01. Fourth constraint’s weight is 0.075. Constant parameters
36
36 Experiments Variable parameters Total of 24 different configuration and 20 runs for each configuration is made.
37
37 Experiments Results –Results are grouped by the operator type to make compare between the types of each operator.
38
38 Experiments –Crossover
39
39 Experiments –Mutation
40
40 Experiments –Mate Selection
41
41 Experiments –Hill Climbing –HCA1 with two-point crossover, random mutation, and tournament selection can be best configuration.
42
42 Conclusion & Future Work Experimental results show that hard constraints are easily solved. But few soft constraint violations remain. An early configuration is made for the algorithm by examining tests results In future, CONFETI and FES can be modified to support room assignments, and their constraints.
43
43 Any Questions?
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.