Informatica 35 (2011) 157-164 157 A Sequential Three-Stage Integer Goal Programming (IGP) Model for Faculty-Course-Time-Classroom Assignments Raed Al-Husain, Mohamad K. Hasan and Hameed Al-Qaheri* Department of Quantitative Methods and Information Systems College of Business Administration, Kuwait University, Kuwait E-mail: raed@cba.edu.kw, mkamal@cba.edu.kw, alqaheri@cba.edu.kw Keywords: integer goal programming, timetabling, university scheduling problem Received: March 19, 2010 Developing university schedules that could take into account factors such as faculties' preferences to courses, timeslots, and classrooms, in a timely fashion while being unbiased and meeting university requirements, is a hurdle in many universities around the world. This paper exploits the use of three-stage integer goal programming (IGP) technique to solve the university scheduling problem, as an expansion of an earlier two-stage model attempt conducted by the authors. Segmenting the problem into three stages enabled reaching a complete schedule in a timely manner and a high satisfactory level among faculties, while meeting all university requirements. The output of every stage is used as an input to the following stage, and goals are satisfied using the priority sequence approach according to their order of importance based on some college, department, and major regulations and requirements. Povzetek: Z novo metodo IGP naredijo univerzitetni urnik. 1 Introduction The utilization of optimization techniques to ensure more efficient and effective operational workflow has long been a major factor in the success of organizations in different industries; hence the need for such techniques in the educational sector is no exception. Scheduling problems in universities, such as offering required courses at the same time on the same day, assigning the wrong class size to the wrong classroom, inevitable biased faculty-course assignment, and relatively long time to complete the schedule have all been problematic issues associated with using manual and judgmental approaches when developing course schedules. This paper exploits the use of three-stage integer goal programming (IGP) technique to solve the university scheduling problem, as an expansion of an earlier two-stage model attempt conducted by the authors [12], The three-stage model is developed and solved in a sequential order, where faculties assigned to courses, courses assigned to different time slots, and then time slots assigned to classrooms respectively. In our approach, each stage is optimally solved such that the outputs of each stage are fed as inputs to the following stage. In every stage, university, college, and departments regulations are considered as a set of goals to be achieved along with faculties' preferences. The model has been tested at the College of Business Administration in Kuwait University using Excel Premium Solver. The rest of the paper is organized as follows: Section 2 present a selective review of literature, Section 3 covers the Three-Stage integer goal programming(IGP) model formulation, Section 4 cover the experimentation and discusses the results of the three stages follow by an overall analysis and assessment of the three stage model in section, conclusion and future research are discussed in Section 6. 2 Review of literature The idea of developing sophisticated models to solve the university scheduling problem has been around since the early 70s [14] [11], The techniques used range from the utilization of optimization models to complex heuristics models. Some models solved the problem of faculties' assignment to courses only [23] [6], Other models took into consideration the time slot factors as well [10] [6] [7] [15] [17] and some models took into account faculty-time-classroom assignment [13] [1][2], Most of the work mentioned used the approach of decomposing the problem into distinct and interrelated stages versus the approach of solving the problem as a complex single stage model. Using such approach has the advantage of significantly reducing computation time while finding a relatively satisfying solution. Heuristics approaches and the aid of decisions support systems have also been utilized to solve the university scheduling problem in order to overcome complexities that could arise from using optimization techniques. The major reason of using such approaches Corresponding Author 158 Informatica 35 (2011) 157-164 R. Al-Husain et al. Figure 1: Faculty Course Schedule Block Diagram and Information Flow. is to reach a relatively close to optimality solution in relatively reasonable time [13] [16] [8] [3] [9], More recently, the use of variable neighbourhood search (VNS) approaches for the university examination timetabling problem has been investigated. The technique has proven to produce high quality solution across a wide range of problems, but with relatively large amount of computational time [18], Another heuristic approach that has been utilization in the College of Engineering at Virginia Tech is the use of Benders' partitioning. An improved quality course schedules, in terms of the total distance travelled by the faculty members from their offices to the classrooms where the courses are offered, has been obtained [19], Moreover, the use of genetic algorithm meta-heuristic has been another heuristic approach to the university timetabling problem. The approach considers timetable in a bottom-up fashion at the various levels of department, faculty or entire university, which is claimed to be the first application of meta-heuristics to a timetabling problem [20], Hyper-heuristics method has also been utilized in solving the university timetabling problem. Burke used a novel direction in hype-heuristics, unified graph-based hyper-heuristic (GHH) framework, under which a number of local search-based algorithms are studied to search upon sequences of low-level graph colouring heuristics [21], More complicated approaches has also been utilized by using a multi-objective evolutionary algorithm that uses a variable-length chromosome representation and incorporates a micro-genetic algorithm and a hill-climber for local exploitation and a goal-based Pareto ranking scheme for assigning the relative strength of solutions [22], The aim of this paper is to solve the university scheduling problem by extending the work of Badri [6] by using a three-stage (sequential) integer goal programming (IGP) model with different university, college, department and major rules and regulations as shown in Figure 1. Introducing goal programming technique into every stage has enabled the fulfilment of many rules and regulations. The use of integer goal programming technique in developing a comprehensive schedule at the College of Business Administration in Kuwait University has proven to outperform manual approaches that had been adopted. Results have proven to be both efficient and effective. Resources are optimally utilized, faculties are fairly satisfied, and students are efficiently progressed in a timely manner through their graduation requirements. The work of this paper represents an extension of an earlier study conducted by the authors [12], The major difference of this study and that of Badri's [6][7] and Hasan's[12] is the inclusion of the classroom availability regulations to the model. Hence, a complete schedule that could take into account faculty preferences to courses and timeslots, and classroom availability regulations of the college can be developed. 3 A sequential three-stage integer goal programming (IGP) model formulation The approach that lias be followed to solve the university scheduling problem is through segmenting the problem into three distinct yet interrelated stages, the faculty-course assignment stage, the courses-timeslot assigmnent stage, and then the timeslot-room assigmnent stage. The inputs of every stage is translated into goals and solved according to their order of importance, where goals are given priorities according to their order of importance. The output of every stage, which represents an optimal assignment, is then fed to the next stage to act as an input. This process continues until the final stage is solved and a complete scheduled is created. Figure 1 shows the schematic diagram of the entire modelling process for solving the university scheduling problem. A detailed description of the three-stage integer goal linear programming (IGP) model that is applied to solve the university scheduling problem is discussed next. See Hasan, et al[12] for a full description of the two-stage integer goal programming model. A SEQUENTIAL THREE-STAGE INTEGER GOAL. Informatica 35 (2015) 157-164 159 3.1 Stage I: faculty-course assignment integer goal programming (IGP) model formulation 3.1.1 Stage I model notations: /': Faculty member j: Courses number /,, : Maximum number course loads for faculty z Nj : Number of sections offered for course j Xy : Number of sections for course j that will be assigned to faculty member i Rjj : The preference for faculty member i to teach course j, where R^ = {0, 1, 2, 3, 4, 5} such that the value of 5 represents is a very favourable course, and 0 not desired at all. Stage I IGP Model has five goals and one hard constraint and are described as follows: Goal 1: Each faculty member /' should take exactly his maximum course loads /,,. This goal has a priority /, and the objective is to minimize both of dy and dy V/. Goal 2: The number of course sections .Y , for course j should all be covered by faculty members. This goal has a Stage I model goals and constraints In this section we formulate the integer goal programming (IGP) model of stage I that represents the rules and regulations of Kuwait University, College of Business Administration, and the requirements of the Department of Quantitative Methods for assigning courses to faculty. Stage I IGP model: Satisfying goals with their priorities and the other requirements, Stage I GLP model can be written as following: priority Pl and the objective is to minimize both of dijaaAdy V/. Goal 3: Each faculty member should take at least one of the College Level Courses (CLC) course section. This goal is a department level requirement and is given a priority level P2 and the objective is to minimize <:/,, V/'. Goal 4: Each faculty member should take at least one of the Major Level Courses (MLC) section. This goal represents another department level requirement and is Minimize Px w [£ (d~ + + ) + £ (d2j + d+2J)] + 0for / = 1,2,......,m and j = 1,2,....,11 Where w is very big value to force the values of the deviations dx (, dx (, cl2,, cL_, Vz and \/j to be zeros. 160 Informatica 35 (2011) 157-164 R. Al-Husain et al. given a priority level P3 and the objective is to minimize d~M V/ . Goal 5: Maximize the total preference for each faculty member i that has a course loads Li. This goal has a priority P4 and the objective is to minimize d^ V/'. Hard Constraints: Finally we have one more hard constrain that does not allow any faculty member i to take more than two sections for the same course j. This constraint is represented by the following formula: Xy <2 i = 1,2,...,m and j = 1,2,...,« 4.1 Stage II: faculty-course-time such that m = morning time and a = afternoon time tdp : Time slot number in a day d and period p , where tdp ={1, 2,...} X ijkyt, ijidp 1 if faculty i assigned to course j section kj- during time slot t of day d in period p 0 Otherwise O, : Number of rooms available at time slot number 'dp 4.1.2 Stage II model goals and constraints: In this section we formulate the goal programming model assignment integer goal programming that represents the rules and regulation of Kuwait model formulation 4.1.1 Stage II model notations: by : section number for course j that assigned to faculty /', where k^ = {1,2,3,...,K} d: Days of the week, where d = { 1, 2} such that 1= {Sunday, Tuesday, Thuresday} and: 2 = {Monday, Wednesday} p : Period of the day, where p = {m, a] Minimize Px + ^(TjH^flJ + + + psds + p6(de + dj ) + Pj^S; ldp 1 t dm J lda ' Subject to: University, College of Business Administration requirements for assigning time slots to Faculty-Course assignment resulting from stage I. Stage IIIGP model: Satisfying the goals with their priorities and the other requirements, the second stage IGP can be written as follows: ' J kjj tdp ^lf^ + Vt dp '' J kij tdm • k„ 2 J kij Ida ^Jtda ^J^da V/ eCLC and tdm VjeCLC and tda i k„ m ix-, v*. s x =o i jcMLCkg t^ i jgULC ktj tjn YLYLXu * ,,, i2„) - < + d;=o ' J ka hi ' J kij t2 EEEE ^^„-"(EEEE xl]kijtia)-d+6+d-6=o i J kij 2 J kij ?al XXXX Xij^-23 (SSSS x1]kvt2a)-d;+d;=0 Z J ky tm2 i J ky ta2 ij Ldp 1 J Kij Ldp <1 Vieiyt XXX*.' J ku tdp ■XJ ku ^ -d„ + d* =M J kij % XX^V^1 v,tJ>v' 0 Stage II IGP Model has seven goals and three hard constraints and are described as follows: Goal 1: Total number of courses assigned in a specific time slot cannot exceed the number of rooms available for that time slot. This goal has a priority /, and the objective is to minimize d^ \/tdp. Goal 2: This goal eliminates timing conflict of courses that can be taken at the same time for similar CLC. Total number of similar CLC assigned during a specific time slot in morning-time cannot exceed 2 sections for the same course. This goal has a priority P2 and the objective is to minimize dy^^j e CLC and tdm. Goal 3: Total number of similar CLC assigned during a specific time slot in afternoon-time cannot exceed 1 section for the same course. This goal has a priority P3 and the objective is to minimize d3jtda e CLC. and tda . Goal 4: Reduce the gaps between MLC. The MLC should be 4 times more condensed during the morning-time than they are during the afternoon-time, where 4 is just any number that the department wishes to choose. This goal has a priority /J4 and the objective is to minimize d 4 . Goal 5: This is more like a guideline, where 60% of courses should preferably be offered during the odd days and 40% during the even days. This goal has a priority and the objective is to minimize d 5~ . Goal 6: This is more like a guideline, where 70% of courses should preferably be offered during the morning-time and 30% during the afternoon-time. These goals have a priority !', and the objective is to minimize d() , dn Goal 7: This goal maximizes the faculty preferences on their class times. This goal has a priority P7 and the objective is to minimize dV/ Hard Constrains: 1. Sum of sections taught for every faculty in every specific time slot must be at most equal to 1. XIX-V^1 V/ e L,\ftdp 1 kij 2. Sum of MLC offered during a specific time slot during same day must equal at most 1. i j^MLC 3. Sum of time slots for each section for every faculty, every course, and every section must equal 1. 4.2 Stage III: room assignment integer goal programming model formulation 4.2.1 Stage III model notations: L : Floor Level, where L = {l,2,3} C : Room size category, where C = {l,2,3,4} rLC : room number in floor level L and size category C where rLC = {l01,...,l 12,201,...,214,301,...,318} Dl : department number based the floor level location, where DL = {1,2,3} pLr :Room level location preference, where pLC = {2,4,5} such that 2 is the least preferred room level location, and 5 is highly preferred room level location for a course to be placed. 4.2.2 Stage III model goals and constraints: Stage III IGP model: Minimize d~ Subject to: ESS Z IXA^c +d~ ~d+ =M i j k t rLC ZZ ZX!/c%Vxc =1 V tdp L C rLC YjXVcki]ctdprLC - 1 Vtdp,L> C- rLC i allX„ , , , are binary, and all d's>0 lJcHjctdprLC J ' Stage III IGP Model has one goal and two hard constraints and are described as follows: Goal 1: The primary goal in stage III model is to locate each previously assigned course to a room of the right size as close as possible to the department that is offering the course. This is accomplished by achieving a high 162 Informatica 35 (2011) 157-164 R. Al-Husain et al. enough sum-product of the decision variable Xijck¡j ¡^ , the assignment of faculty i to course jc of size category C section k,h in time period tdp to a room location rLC , with the location preference pr¡¡ and M is a large number. The objective is to minimize the under deviation, d oi the sum-product. Hard Constraints 1. Each section of a course that has been assigned a specific faculty and time should be located in one room only. YjYj YjXVckjJép'-LC =1 V tdp'l'küc L c rLC 2. Each room is assigned to at most one faculty in a specific time period. TJXückUc^rLC - 1 Vtdp,L> C' rLC i 5 Experimentation The model was initially applied to generate the schedule for 4 different majors representing 2 different departments at the College of Business Administration in Kuwait University for the semester of fall 2009. Namely, the Marketing major (MRKT) at the Department of Management and Marketing; and the majors of Information Systems (IS), Logistics and Supply Chain Management (LSCM) and Statistics (STAT) at the Department of Quantitative Methods and Information Systems (QMIS). 5.1 Data collection Each of the above mentioned majors had to fill in the model inputs for every stage sequentially until the final schedule is completed. Model inputs include faculty members, number of courses and their sections to be offered, faculty-course preferences, required load to be taught for every faculty, course-timeslot preferences, and the university, college, and department rules and regulations of assignment. Examples of these regulations include the ratio of courses to be offered in the morning sessions versus in the afternoon sessions, the ratio of courses to be offered during Day 1 (Sunday, Tuesday, and Thursday) versus Day 2 (Monday and Wednesday), and the amount of dispersion of major level classes. For further discussion of stage I and stage II models, please refer to [12], The same procedure has been followed in stage III, the timeslot-room assignment model. Inputs of this model include room information, i.e. number of rooms, their size category, and their floor location. Each room was given a size category, room category (RC) based on its capacity as shown in Table 1. This distinction ensures that rooms are assigned to courses of the right Expected Course Category (ECC) size only. Moreover, departments are located in 3 different Levels, Room Level (RL), at the College of Business Administrations in Kuwait University; hence rooms were distinguished based on their floor level in order to be able to assign them as close as possible to the department that is offering the course. Table 2 shows the room characterization where RN is the Room Number. Table 1: Room Size Category. Size Cap Category acity 1 25 2 30 3 40-44 4 65 Table 2: Room Characterization. RL RC RN 1 2 105-106, 111-112 3 101-104, 107-110 2 2 205-207, 212-214 3 201-204, 208-211 1 312-314 3 2 305-207 3 301-304, 308-311 4 315-318 5.2 Stage I results The output of this stage, the faculty-course assignment stage, represents an optimal assignment of faculty members to courses and their sections according to the imposed rules and regulations. Thirteen different scenarios were tested to ensure the effectiveness of the model. These scenarios take into account the occurrences of three different cases that could arise when developing a schedule. Cases include the situation where the faculties' loads = the total course sections offered, the faculties' load > the total course sections offered, and the faculties' load < the total course sections offered. In the first case, most goals were 100% met except for the last goal, the faculty-course preferences goal. Satisfaction level of this goal, i.e. faculty getting their first choice of courses, ranged from 85.2% to 73.3%. However, when it came to the second choice preferences, all faculties were 100% satisfied. In the second and third cases, where the load of faculties available is not equal to the amount of courses offered, the satisfaction of the goals ranged from 100% to 54.9% based on the amount of variation of the faculties' load available and the amount of courses offered. For further discussion of stage I results, please refer to [12], 5.3 Stage II results The output of this stage, the course-timeslot assignment stage, represents an optimal assignment of course, that were already assigned to different faculty members, to timeslots according to the imposed rules and regulations. Most goals were met up to 100% with the exception of goal 4, the dispersion of MLC in the morning versus the afternoon timeslots. The model was able to condense the A SEQUENTIAL THREE-STAGE INTEGER GOAL. Informatica 35 (2015) 157-164 163 MLC during the morning timeslots as desired, hence there has been an under achievement of the goal by 42%. Moreover, about 90% of the faculties got their first choice of preferences when it came to their desired timeslot in the schedule. Combining the faculty satisfaction level of the two stages together, 73.6% of the faculties were able to get their first choices of preferences, and 100% of the faculties were able to get at least their second choice of preferences. For further discussion of stage II model, please refer to [12], 5.4 Stage III results Upon the completion of stage I & II of the model, an optimal assignment of both faculties to courses, and then those courses to different timeslots is obtained. The result is then used as an input to stage III model, timeslot-room assignment. Based on the formulation of stage III model, a complete schedule was obtained . Table 3 shows part of the generated schedule. All timeslots were successfully assigned to different room locations, the right course size were assigned to the right room size, and courses were distributed in the college to the desired floor based on the department that is offering these courses. Table 3 : Room Assignment Distribution. Dav 1 Ass isned Room Dep. IJ>. Major I.D. Dep. Location Course Level Time Faculty ID. Course I.D. Sectio u No. ECC RL RC RN OMTS TSCM n,c 8-9 T.SCM Fl 210 1 3 3 3 308 OMTS T-SCM MT.C S-t) T.SCM F? 31H 1 1 3 1 312 OMIS IS 3 CLC 8-0 IS Fl 240 1 3 3 3 309 OMIS IS 3 S-9 IS FÎ- 240 5 3 3 3 310 OMIS IS 3 MLC 8-0 IS F4 451 1 1 3 2 305 OMIS STAT 3 S-9 STAT Fl 110 7 3 3 4 315 OMIS STAT 3 CLC 8-0 STAT F2 220 1 3 3 4 317 OMIS STAT 3 8-? STAT F3 220 8 3 3 4 318 BUSA MRK.T ■Ti MLC 8-P MRKT Fl 325 1 1 2 2 214 OMIS T.SCM 3 CLC 9-1(1 T.SCM F 3 2.05 3 3 4 31 fi OMIS TSCM 3 9-10 T.SCM F? 205 4 3 3 3 308 OMIS IS 3 CLC 9-10 IS F3 130 6 3 3 3 309 OMIS IS 3 9-10 IS F4 240 S 3 3 3 310 OMIS TS 3 MLC 9-10 TS Fl 331 1 1 3 2 305 OMIS STAT 3 9-10 STAT F4 120 3 3 3 3 311 OMIS STAT 3 CLC 9-10 STAT F3 120 5 3 3 4 317 OMTS STAT 1 9-10 STAT F^ 220 fi 1 3 4 313 6 Overall analysis and assessment of the three stage model Breaking the university scheduling problem into three stages has greatly improved the solution process and computation time of such a complex problem. Once all the required input data of every stage were available, computation time for each stage were few seconds using the Excel Premium Solver. Moreover, although the output of every stage represents a local optima of the overall problem, considering the satisfaction level of assigning faculties to courses and courses to different timeslots, then the efficient and effective allocation of timeslots to the right rooms, and the computation time of solving the entire problem, the decomposition of the scheduling problem is considered an advantage rather than a disadvantage. On the other hand, solving the entire scheduling problem in one complex model might result in an infeasible solution when global optimum is desired. 7 Conclusion and future research Developing an effective, unbiased, and timely schedules have long been an issue in universities around the world. The utilization of optimization techniques, however, has proven to overcome such a complex problem. Although different approaches have been used to resolve this problem and reach an "optimal" schedule, the consideration of factors such as faculties' preferences to different courses and timeslots, an efficient room assignment, and university rules and regulations of assignment have all been hindrances to be considered all at once. Moreover, computation time has always been a problem when all of the above factors were considered in one complex model. This paper utilizes the integer goal programming(TGP) technique and the idea of breaking (decomposing) the problem into smaller sub problems, i.e. different stages, in order to simplify fomiulation and swiftly reach a satisfying solution to the overall scheduling problem. The method used in satisfying goals is the priority sequence approach, where goals are satisfied according to their order of importance based on some university, college, and department regulations and requirements. The output of every stage has been used as an input to the subsequent stage until a complete schedule is developed. After successful results of the first two stages of the model has been verified in an earlier study conducted by the authors, a new stage, timeslot-room assignment stage, has been added to the previous model and contributed to the development of a complete schedule that took into account all different factors when developing a schedule is desired. The overall model has been tested in Kuwait University at the College of Business Administration using 4 different majors in 2 different departments. Results showed that faculties satisfaction level obtained reached up to 85.2% in stage I, and 88. 8% in stages II of the model as 164 Informatica 35 (2011) 157-164 R. Al-Husain et al. shown in an earlier study. The overall satisfaction level when combining the two results reached up to 73.6%, as far as faculties getting their first choices of preferences. Nonetheless, faculties' satisfaction level reached up to 100% when it came to getting at least their second choices of preferences. The room assignment stage has successfully used the results obtained in the previous stages and efficiently distributes courses with an assigned timeslots to the desired room location. Work is underway to eventually integrate the three-stage model of this paper with a Decision Support System (DSS) such as the ScheduleExpert of Cornell in order to build an ultimate scheduling tool that will enable users to develop quick and effective schedules that are demand driven by the students through a new development of students planer DSS rather than supply driven by the college. The integration between the University scheduling DSS and the student planer DSS in a unique integrated DSS, will be a great tool that will efficiently and effectively enhance the whole Kuwait University registration system. References [1] Al-Yakoob, S. M. and Sherali, H. D. (2006). Mathematical programming models and algorithms for a class-faculty assignment problem. European Journal of Operational Research 173, 488-507. [2] Al-Yakoob, S. M. and Sherali, H. D. (2007). A mixed-integer programming approach to a class timetabling problem: A case study with gender policies and traffic considerations. European Journal of Operational Research 180, 1028-1044. [3] Aladag, C., Hocaoglu,G. and Basaran, M. (2009). The effect of neighborhood structures on tabu search algorithm in solving course timetabling problem Expert Systems with Applications, in press. [4] Anderson, D., Sweeney, D., Williams, T. (2008). An Introduction to Management Science Quantitative Approaches to Decision Making, lie. [5] Badri, M. A. (1996). A Linear Goal Programming Model for Solving the Optimal Faculty Assignment Problem. King Sauod University Journal; Vol. 8; Business Administration 2; 537 - 566; Reiad. [6] Badri, M. A. (1996). A two-stage multi-objective scheduling model for [faculty-course-time] assignments. European Journal of Operational Research 94 (1), 16-28. [7] Badri, M. A., Davis, D. L., Davis, D. F., Hollingsworth, J. (1998). A multi-objective course scheduling model: Combining faculty preferences for courses and times. Computers and Operations Research 25 (4), 303-316. [8] Broek, J., Hurkens C., and Woeginger G. (2009). Timetabling problems at the TU Eindhoven. European Journal of Operational Research 196 (2009) 877-885 [9] De Causmaecker, P., Demeester, P., and Berghe, G. (2009). A decomposed metaheuristic approach for a real-world university timetabling problem. European Journal of Operational Research, 195, 307-318. [10] Dinkel, J. and J .Mote. (1989). An Efficient Decision Support System For Academic Course Scheduling. Operations Research. 37(6), 853-864 [11] Harwood, G. and Lawless, R. (1975). Optimizing organizational goals in assigning faculty teaching schedules. Decision Science 6, 513-524. [12] Hasan, M., Al-Husain, R., Al-Qaheri, H. (2009). Course Assignment for University Faculties. Arab Journal of Administrative Sciences, Vol 17, No.l, pp. 169-191. [13] Hinkin, T. R. and Thompson, G. M. (2002). SchedulExpert: Scheduling Courses in the Cornell University School of Hotel Administration. Interfaces 32(6), 45-57 [14] Lee, S. and Schniedeijans, M. (1983). Muticriteria Assignment Problem: A goal programming approach. Interfaces 13, 75-81. [15] Mirrazavi, SK. Mardle, SJ. And Tamiz, M. (2003). A two-phase multiple objective approach to university timetabling utilizing optimization and evolutionary solution methodologies. Journal of the Operational Research Society 54, 1155 - 1166. [16] Pongcharoen, P., Promtet W., Yenradeec, P., and Hicksd C. (2008). Stochastic Optimization Timetabling Tool for University Course Scheduling. Intentional Journal of Production Economics, 112, 903-918 [17] Valouxis, C. and Housos, E. (2003). Constraint programming approach for school timetabling. Computers & Operations Research_30; 1555 -1572. [18] Burke, EK., Eckersley, AJ., McCollum, B., Petrovic, S., Qu, R. (2010). Hybrid variable neighbourhood approaches to university exam timetabling. European Journal of Operational Research, Vol. 206, No. 1, pp. 46-53. [19] Subhash, Sarin C., Wang, Yuqiang., Varadarajan, Amrusha. (2010). A university-timetabling problem and its solution using Benders' partitioning—a case study. Journal of Scheduling, Vol. 13,No. 2, pp. 131-141. [20] Aderemi, O., Adewumi, Babatunde, A., Sawyerr, M., Montaz, Ali. (2009). A heuristic solution to the university timetabling problem. Engineering Computations, Vol. 26, No. 8, pp. 972-984. [21] Qu, R., Burke, EK. (2009). Hybridizations within a graph-based hyper-heuristic framework for university timetabling problems.The Journal of the Operational Research Society, Vol. 60, No. 9, 1273-1285. [22] Cheong, C Y., Tan, K C., Veeravalli, B. (2009). A multi-objective evolutionary algorithm for examination timetabling. Journal of Scheduling, Vol. 12, No. 2, pp. 121-146. [23] Schniedeijans, M. and Kim, G. (1987). A goal Programming Model to optimize departmental preference in course assignments. Computers and Operations Research 14 (2), 87-96