Enabling Curriculum-Based Timetabling in University Systems, Study Guides, Projects, Research of Operational Research

The challenges of managing university curricula, which include compulsory, elective, and optional courses, course groups, and student conflicts. It introduces the unitime university timetabling system and its enrollment-based course timetabling solver, which deals with course sections and configurations. The document also proposes a transformation of the curriculum model into an enrollment model and demonstrates the feasibility of curriculum-based timetabling in any existing enrollment-based timetabling solver.

Typology: Study Guides, Projects, Research

2016/2017

Uploaded on 04/04/2017

isaac-teoh
isaac-teoh 🇲🇾

3

(1)

9 documents

1 / 16

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
PATAT 2012
Real-life Curriculum-based Timetabling
Tom´s uller ·Hana Rudov´a
June 2012
Abstract This paper presents an innovative approach to curriculum-based
timetabling. Curricula are defined by a rich model that includes optional
courses and course groups among which students are expected to take a sub-
set of courses. Transformation of the curriculum model into the enrollment
model is proposed and a local search algorithm generating corresponding en-
rollments is introduced. This enables curriculum-based timetabling in any
existing enrollment-based course timetabling solver. The approach was im-
plemented in a well established enrollment-based course timetabling system
UniTime. The system has been successfully applied in practice at the Faculty
of Education at Masaryk University for about 7,500 students and 260 curric-
ula. Experimental results related with this problem are demonstrated for two
semesters.
Keywords Course timetabling ·Curriculum-based timetabling ·Local
search ·UniTime
1 Introduction
Curriculum-based timetabling belongs to the class of university course time-
tabling problems (Burke and Petrovic, 2002; Lewis, 2008). Much research has
been done in the area of curriculum-based timetabling (Di Gaspero et al,
2007; Bonutti et al, 2012), typically using a base curriculum model. In this
T. uller
Space Management and Academic Scheduling, Purdue University
400 Centennial Mall Drive, West Lafayette, USA
H. Rudov´a
Faculty of Informatics, Masaryk University
Botanick´a 68a, Brno, Czech Republic
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff

Partial preview of the text

Download Enabling Curriculum-Based Timetabling in University Systems and more Study Guides, Projects, Research Operational Research in PDF only on Docsity!

PATAT 2012

Real-life Curriculum-based Timetabling

Tom´aˇs M¨uller · Hana Rudov´a

June 2012

Abstract This paper presents an innovative approach to curriculum-based timetabling. Curricula are defined by a rich model that includes optional courses and course groups among which students are expected to take a sub- set of courses. Transformation of the curriculum model into the enrollment model is proposed and a local search algorithm generating corresponding en- rollments is introduced. This enables curriculum-based timetabling in any existing enrollment-based course timetabling solver. The approach was im- plemented in a well established enrollment-based course timetabling system UniTime. The system has been successfully applied in practice at the Faculty of Education at Masaryk University for about 7,500 students and 260 curric- ula. Experimental results related with this problem are demonstrated for two semesters.

Keywords Course timetabling · Curriculum-based timetabling · Local search · UniTime

1 Introduction

Curriculum-based timetabling belongs to the class of university course time- tabling problems (Burke and Petrovic, 2002; Lewis, 2008). Much research has been done in the area of curriculum-based timetabling (Di Gaspero et al, 2007; Bonutti et al, 2012), typically using a base curriculum model. In this

T. M¨uller Space Management and Academic Scheduling, Purdue University 400 Centennial Mall Drive, West Lafayette, USA E-mail: [email protected]

H. Rudov´a Faculty of Informatics, Masaryk University Botanick´a 68a, Brno, Czech Republic E-mail: [email protected]

model, besides the usual classes, instructors and rooms tied together by various constraints (e.g., a room must be of large enough size, or an instructor can only teach one class at a time), there is a set of curricula defined. Each curriculum contains a list of courses that are to be attended by the same students (students of the curriculum). This is usually backed up by a hard constraint ensuring that classes of the same curriculum cannot overlap in time. In the real world (McCollum, 2007), on the other hand, students are usually not required to attend all courses of a curriculum. Besides compulsory courses (courses that students must, or at least are expected, to take), there are elective courses (usually forming groups, where students are expected to take n of m courses) and optional courses that students may or may not take. Moreover, for some courses, students may decide during which semester they will take them. Typically, compulsory and elective courses cannot overlap in time, except there may be some overlaps of elective courses that are of the same group. For instance, if students are to take one of the given three courses, these three courses can be timetabled during the same time. Optional courses are usually only required to be at times that are not blocked by some other compulsory or elective course of the same curriculum. It is important to note here that each course may be present in multiple curricula, and it may be required for some curricula and only optional for another. The whole problem is usually made even more complicated by the fact that courses tend to have multiple course sections (Hertz, 1991; Rudov´a et al, 2011). Courses with many students are usually split into several seminar groups and/or lectures. Furthermore, a course can be offered in various configurations (e.g., a lecture only, a lecture and a lab), with multiple lectures and labs avail- able and some restrictions on what combinations of lecture and lab students are allowed to take. There can also be some mapping between curricula and specific classes of a course (e.g., the first lecture of a course may be reserved for students of an engineering major), but often there is none. Even simple course sectioning into several seminars leads to the inability to map curricula onto pairs of classes with no overlap in time. This is a very important aspect of the problem which must lead to more complex models and solutions.

1.1 Our Work

In our work, we rely on the UniTime^1 university timetabling system, con- taining an enrollment-based course timetabling solver which already deals with course sections and configurations of courses. In UniTime, students are assigned to classes based on student course demands (e.g., taken from pre- enrollment or from a previous semester) in a way that tries to keep students with similar courses together (M¨uller and Murray, 2010). A class is under- stood to be a part of the course which needs a time and a room assignment (e.g., each of the seminar groups or a lecture is a class). The course timetabling

(^1) http://www.unitime.org

panied by consideration of a set of other problem characteristics including time and room preferences on individual classes as well as various relations among classes. During the timetabling process, the solution generated by fully automated methods was also interactively adjusted to reflect additional needs of the faculty and the students. The main results for the initial automated timetables, as well as for the final interactively corrected timetables that were used at the Faculty of Education in practice, are presented for both semesters.

In the following section we propose a curriculum model and the next chap- ter specifies a possible mapping between curriculum and enrollment models as a transformation of curricula to student course demands. Consequently we de- scribe a local search algorithm that computes student course demands. Finally we provide experimental results from the application of the resultant system at the Faculty of Education.

2 Curriculum Model

We propose a curriculum model that is able to tackle an advanced set of real-life characteristics of timetabling problems. A curriculum, usually tied to students by their academic area (program of study) and one or more majors (further specializations) is split between different semesters. The tuple speci- fying curriculum and semester is called classification. A number of students is associated with each classification. This number may be known or may be esti- mated from previous semesters using various student projections. In addition to the number of students, each curriculum has an associated set of courses defined for each semester. Each course has a percentage which evaluates to the number of students that are expected to attend the course out of all those in the classification. These course percentages may also be replaced by the number of students from the classification expected to attend the course. To model the relations between courses in a curriculum, various groups are defined. Each group contains a subset of courses in the curriculum. It is possible to create two types of groups. A conflicting group expresses that students are expected to take all courses in the group. A non-conflicting group indicates that students are expected to attend just one course in the group. During timetabling this means that courses in a non-conflicting group may overlap in time. Courses in a conflicting group must be timetabled so that all students in one course are able to attend all other courses in the conflicting group. An illustrative example of a curriculum is presented in Figure 1. A bache- lors degree in the curriculum is offered over three years. Students are required to take courses A and B during their first year of study, C and D during their second year of study, and E and F during their last year of study. They are also expected to take course G either the first or the second year (though 80 % of students usually take the course during the second year). Similarly, they can take course H during their second or third year. During the first

Fig. 1 Example of a curriculum prepared in UniTime timetabling system.

year, they should also take I1 or I2 (note that these two courses are put into a non-conflicting group “I1 or I2”). During their second year, they should also take two of courses J1, J2, J3 (this is solely modeled by the curriculum course percentages). There are also optional courses L1 and L2, which are either not taken at all or are taken together (this is modeled by the conflicting group “L and L2”).

It is also possible for a course to be in multiple groups, as demonstrated in Figure 2. Due to the transitive closure relationship between groups discussed in Section 2.1, this allows modeling cases where a student needs to take a certain pair of courses (M1 together with M2 or N1 together with N2 or O together with O2) or other more complex cases.

Fig. 3 Example of curriculum from Fall 2011 at the Faculty of Education.

Note that the tuple (a, i) defines a classification. To simplify formulations, we define the set AI as a set of all classifications (a, i). Furthermore, there is a matrix with values eac,i between 0 and 1. For each course c and semester i, the value eac,i defines the proportion of the number of students xai expected to attend the course c. Each course c ∈ Ca^ is expected to be attended by eac,ixai students from classification (a, i). Finally, there are groups of courses Ga 1 ⊆ Ca,... , Gak ⊆ Ca^ representing conflicting groups and H 1 a ⊆ Ca,... , Hla ⊆ Ca^ representing non-conflicting groups in the curriculum. It is also important to mention that for each pair of courses c, d ∈ Ca, we expect the following proportion of the number of students in classification (a, i) represented by values from interval 〈 0 , 1 〉.

tac,d,i =

0 ∃j : c, d ∈ Hja , 1 ∃j : c, d ∈ Gaj , eac,iead,i otherwise.

We call this number the target share of a curriculum between the two courses. For the above example with Figure 1, the target share between courses L and L2 is 1 (all students attending L1 are expected to attend L2 and vice versa), it is 0 between courses I1 and I2 (students are taking either I1 or I2, but not both), and it is 0.44 between J1 and J2 for the second year students (44 % of students are expected to take both J1 and J2). If there are courses in multiple groups, a special graph needs to be con- sidered. Here the nodes are represented by courses and the edges are defined by the existence of a (conflicting or non-conflicting) group between the two courses. More precisely, there is an edge between c, d ∈ Ca^ if courses c and d are present in the same group. The target share tac,d,i is set to zero if there is a path c = c 1 , c 2 ,... , cm− 1 , cm = d in the graph where at least one of the groups defining edges on the path is non-conflicting. The target share tac,d,i is set to one if the path has all the groups conflicting. Note that correct computation of all target share values necessitates computation of the transitive closure in the graph. For the above example with Figure 2, this means that we also expect no students to be between course M1 and N2, between M2 and N1, and between M2 and N2 (and similar for O1 and O2 courses).

3 Curriculum to Enrollment Model Transformation

We now show that the proposed curriculum model can be transformed into an enrollment model. In the enrollment model, each course has a set of students enrolled in it. Our goal is to find an assignment of students to courses in the enrollment model such that the curricula are respected. This means that student conflicts in the enrollment model should correspond with the number of broken requests given by curricula. For instance, two compulsory courses in a curriculum with 10 students timetabled at the same time corresponds to 10 student conflicts in the enrollment model.

The assignment θ is evaluated by the distance

F (θ) =

(a,i)∈AI

c,d∈C,c 6 =d

|tac,d,ixai − sac,d,i| =

(a,i)∈AI

F (θ, a, i).

Clearly an ideal assignment ω (assignment with the ideal enrollment model) has a distance F (ω) = 0. Since such an assignment may not necessarily exist, our goal is to find an assignment σ with the minimal distance F (σ). We also defined F (θ, a, i) since students in each classification (a, i) are different from students in all other classifications. Following that, the assignment of students for each classification is independent of assignments in all other classifications and the following statement holds.

min F (θ) =

(a,i)∈AI

min F (θ, a, i) (1)

3.2 Using Historical Data

It is also possible to make adjustments to the target share matrix based on historical data, typically from the last-like semester (e.g., last-like semester for Spring 2012 is Spring 2011). For instance, if we know from past experience that students attending J1 are more likely to attend J2 than J3, we can use this information to adjust the values of the matrix to reflect this. More formally, the target share is tac,d,i = p rac,d,i +(1−p)eac,iead,i where rac,d,i is the percentage of students from classification (a, i) that took both courses c and d in the last-like semester, and p a number between 0 and 1 defining how much we want to stick with the past. Note that this new target share only applies to pairs of courses for which we have historical data. In other words, if either course c or d is newly offered, the target share is only defined by eac,iead,i matrices and the groups in the previous chapter. Given this, we can take assignment θ of students in the last-like semester, compute its distance F (θ) and consider it as an initial assignment when looking for an (sub-)optimal solution to the timetabling problem using the curriculum model.

4 Construction of Enrollments

We specified how students should be assigned to courses to respect the cur- riculum model by minimization of the distance F (θ). In this section, we de- scribe a local search algorithm which allows computation of a “reasonable” sub-optimal assignment θ of students to courses with respect to F (θ). As dis- cussed in the second paragraph of Section 3.2 and demonstrated in Equation 1, we expect different students for each classification (a, i). This means that the assignment θ can be computed per partes, i.e., the local search algorithm is applied to each classification separately.

First, it is important to discuss computation of the target share between two courses c, d ∈ Ca. We will concentrate on computation of the number of students t (^) c,d,ia that are expected to be assigned to both courses c and d. Corresponding to Section 2.1, this is counted based on tac,d,ixai. However, it is also bounded by the number of students in courses c and d, respectively. To account for this, the number of students in the course c for classification (a, i) is denoted xac,i = round(eac,ixai ). For instance, if there are 20 students in the given semester of a curriculum, and courses c and d are expected to be attended by 10 and 15 students respectively, the share of the two courses must be between 5 and 10.

tac,d,i =

max(0, xac,i + xad,i − xai ) ∃j : c, d ∈ Hja , min(xac,i, xad,i) ∃j : c, d ∈ Gaj , max

min

round(eac,iead,ixai ), xac,i, xad,i

, xac,i + xad,i − xai

otherwise.

The overall distance F (θ, a, i) for classification (a, i) is counted incremen- tally for each course as the difference ∆F (θ, a, i, c, znew, ⊥) between the dis- tance before and after assignment of a student znew into a course c. It also allows for a swap of a course between two students znew and zold (denoted by ∆F (θ, a, i, c, znew, zold)). Pseudo-code of this function is presented in Figure 4.

1: function ∆F (θ, a, i, c, znew, zold) 2: f = 0 3: for d ∈ Ca^ such that d 6 = c (for each course other than c, f is increased by the difference between target share and actual share before and after the change) 4: t := t (^) c,d,ia 5: s := sac,d,i 6: f := f − |t − s| 7: if znew ∈ students(d) then s := s + 1 8: if (zold 6 =⊥ and zold ∈ students(d)) then s := s − 1 9: f := f + |t − s| 10: return f

Fig. 4 Pseudo-code of function ∆F (θ, a, i, c, znew, zold).

The search for assignment of students to courses for the given classifica- tion (a, i) is processed in two phases as can be seen in Figure 5. In the first phase (lines 3-7) a simple construction heuristic is used. In each iteration, a single student is assigned to a particular course until each course has the desired number of students. Courses are ordered dynamically by the number of remaining spaces (if there are two or more courses with the same number of remaining spaces, one is selected randomly — see line 4). For a selected course, all students that are not yet assigned to it are checked, and one of the students that has the best impact on the overall distance is selected randomly (line 5). In the second phase (lines 8-18) a great deluge approach (Dueck, 1993) is used. The initial bound UB is set to 1.25 of the initial solution’s distance f

5.1 Curriculum to Enrollment Transformation

Table 1 shows results from the curriculum to enrollment solver. All of the cur- ricula are split into three groups based on the student’s form of study. Results are presented for all curricula together as well as for particular sets. For each set, the number of curricula, classifications and students is specified. We also present the number of students per classification and the number of courses per classification. For these data sets, the average distance F (θ, a, i), the aver- age distance achieved after the construction phase of the search algorithm (see Figure 5), and the average computational time is presented for 10 independent runs.

We can see that curricula of the present form of study introduce the largest data set with the highest computed distance. Curricula of the combined form of study can be transformed into a better enrollment model (the distance is lower) and it takes a longer time. Curricula of the lifelong form of study introduce the smallest data set and are easiest to transform. To understand the achieved quality of the solution we note that the distances 7.05 and 6. for the present form of study correspond to 0.60 % and 0.69 % of the worst possible distance, respectively.

Certainly we tried to find the best possible distance F (θ, a, i) in a reason- able time. We ran the set of experiments with varying size of α (see line 18 of Figure 5 and description of the algorithm) influencing progress of the search

Fall 2011 All together Present (P) Combined (K) Lifelong (C) Spring 2012 Curricula 265 210 28 27 258 202 25 31 Classifications 574 470 56 56 543 442 53 48 Students 7,569 4,301 2,562 706 6,803 3,852 2,362 589 Students 13.19 9.15 45.75 14. per classif. 12.53 8.71 44.57 12. Courses 30.61 34.63 18.32 5. per classif. 27.44 31.06 15.62 7. F (θ, a, i) 7. 05 ± 0. 01 8. 24 ± 0. 01 3. 14 ± 0. 03 0. 00 ± 0. 00

  1. 66 ± 0. 01 8. 04 ± 0. 01 1. 02 ± 0. 03 0. 13 ± 0. 00 F (θ, a, i) 11. 97 ± 0. 13 13. 25 ± 0. 13 11. 53 ± 0. 14 0. 04 ± 0. 06 after 1. phase 10. 87 ± 0. 11 11. 99 ± 0. 12 11. 03 ± 0. 12 0. 31 ± 0. 06 CPU time [s] 3. 36 ± 0. 06 3. 08 ± 0. 05 8. 58 ± 0. 12 0. 01 ± 0. 00
  2. 53 ± 0. 07 2. 88 ± 0. 06 12. 14 ± 0. 16 0. 02 ± 0. 03

Table 1 Computing enrollments for two semesters.

algorithm. The smaller α is the slower the upper bound decreases and the great deluge algorithm has more time for optimization. Results of this exper- iment are available in Figure 6. Here we can see that the algorithm is able to

3 3.5 4 4.5 5 5.5 6 6.5 7

7

8

0

10

20

30

40

F(θ,a,i) CPU Time [s]

x

F(θ,a,i) CPU Time [s]

Fig. 6 Graph depicting dependency of the distance F (θ, a, i) and the computational time on the value α = 10−x^ for the problem with all curricula and semester Spring 2012.

improve the distance with a reasonable demands on computational time up to the value α = 0.0001 % (corresponding to x = 6 in the graph). Decreasing this value further does not achieve significant improvements in the distance in a reasonable computational time.

5.2 Course Timetabling

Table 2 contains results from the course timetabling (courses from the present form of study only) at the Faculty of Education. For each semester, there are results from the automated solver as well as the published solution, after a few interactive changes were made. Note that published solutions were used in practice. The table shows the overall number of courses and the number of compulsory and elective courses (in parenthesis). Similarly, the number of classes and the number of student enrollments in each problem are presented. The second part of the table presents the main characteristics of the computed solution. The most important factor of the problem was the number of student conflicts among compulsory and elective courses. As we can see, we have only 112 and 96 conflicts for 1,575 and 1,408 timetabled classes, respectively. This is certainly a very strong result given all of the complexities and the size of both problems (recall from Table 1 that we have 210 and 202 curricula for 4, and 3,852 students, respectively). The number of student conflicts among all courses is slightly higher, it is mostly due to overlaps between optional and compulsory or elective courses. These numbers, together with results for time, room, and distribution preferences, correspond with priorities of the school and the importance of particular criteria. The better results for Spring semester were achieved due to a smaller number of classes timetabled into the same

Physics or Physics and Chemistry as discussed before), it would be easier to maintain the smaller set of majors and an additional set of acceptable combi- nations of majors defining curricula.

Acknowledgements This work is supported by the Grant Agency of Czech Republic under the contract P202/ 12 /0306. The access to the MetaCentrum computing facilities provided under the program ”Projects of Large Infrastructure for Research, Development, and Inno- vations” LM2010005 funded by the Ministry of Education, Youth, and Sports of the Czech Republic is highly appreciated.

References

Bonutti A, De Cesco F, Di Gaspero L, Schaerf A (2012) Benchmarking curriculum-based course timetabling: formulations, data formats, instances, validation, visualization, and results. Annals of Operations Research To ap- pear Burke EK, Petrovic S (2002) Recent research directions in automated timetabling. European Journal of Operational Research 140:266– Di Gaspero L, McCollum B, Schaerf A (2007) The second international timetabling competition (ITC-2007): Curriculum-based course timetabling (track 3). Tech. Rep. QUB/IEEE/Tech/ITC2007/CurriculumCTT/v1.0, University, Belfast, United Kingdom Dueck G (1993) New optimization heuristics: The great deluge algorithm and the record-to record travel. Journal of Computational Physics 104:86– Hertz A (1991) Tabu search for large scale timetabling problems. European Journal of Operational Research 54(1):39– Hoos HH, St¨utzle T (2005) Stochastic Local Search Foundations and Applica- tions. Elsevier Lewis R (2008) A survey of metaheuristic-based techniques for university timetabling problems. OR Spectrum 30(1):167– Lewis R, Paechter B, McCollum B (2007) Post enrolment based course timetabling: A description of the problem model used for track two of the second international timetabling competition. Cardiff Working Papers in Accounting and Finance A2007-3, Cardiff Business School, Cardiff Univer- sity McCollum B (2007) A perspective on bridging the gap between theory and practice in university timetabling. In: Burke E, Rudov´a H (eds) Practice and Theory of Automated Timetabling VI, Springer-Verlag LNCS 3867, pp 3– M¨uller T, Murray K (2010) Comprehensive approach to student sectioning. Annals of Operations Research 181:249– Rudov´a H, M¨uller T (2011) Rapid development of university course timeta- bles. In: Proceedings of the 5th Multidisciplinary International Scheduling Conference – MISTA 2011, pp 649– Rudov´a H, M¨uller T, Murray K (2011) Complex university course timetabling. Journal of Scheduling 14(2):187–