a conceptual model of knowledge-based time-tabling system

13
A conceptual model of knowledge-based time-tabling system Siu Cheung Kong a , Lam For Kwok b, * a Department of Information & Applied Technology, The Hong Kong Institute of Education, Lo Ping Road, Tai Po, N.T., Hong Kong, China b Department of Computer Science, City University of Hong Kong, 83 Tat Chee Avenue, Kowloon, Hong Kong, China Received 24 March 1998; received in revised form 20 October 1998; accepted 9 November 1998 Abstract This study aims to model a high school time-tabling task using the knowledge-based approach. The body of knowledge consists of a structural data set, rules sets and heuristics. A scheduling model is articulated to allocate teaching assignments to the time slot system by applying appropriate heuristics and rule sets. A scheduling engine is devised to allow the defining of assignments in any desired order using a heuristic function for enhancing the performance of the system; and to allow a search for the best slot on multiple feasible slots. The rule priorities may facilitate different time-tabling approaches. q 1999 Elsevier Science B.V. All rights reserved. Keywords: Scheduling in high schools; A knowledge framework in high school scheduling 1. Introduction The academic time-tabling problem has been addressed by various approaches such as Operations Research tech- niques [1], graph colouring model [2–5], heuristics rules [6–8], simulated manual time-tabling [9], genetic algorithm [10,11] and constraint satisfaction [12]. A variety of such approaches has been attempted to computerise time-tabling activities in higher education with various degrees of success [13–15]. However, the complexity of the time- tabling problem in high schools has not yet been properly tackled [16]. Most previous studies in this area focused on time-tabling or examination scheduling in universities, in which a student may have many free time slots in a scheduling period. The constraints of scheduling in a high school envir- onment are much tighter because a student may have no free time slots in a week or a cycle day system. Time-tabling problems can be formulated almost exclu- sively in terms of constraints and the set of all possible states that each part of the solution can take. A solution to this problem would then be any overall state that does not violate any constraint. The nature of these problems is known as constraint satisfaction [12]. If the time-tabling problem in high schools is perceived as constraint satisfac- tion in nature, Fig. 1 depicts its three major components involved in this process. The focus of the problem is to assign an assignment unit to a time slot unit while consider- ing various constraints. If a conflict occurs, a conflict reso- lution algorithm may be invoked. 2. Objectives The main aim of this study is to produce a conceptual model of the time-tabling task in high schools, which should be independent of the implementation technology. Such a conceptual model will facilitates the implementation of the task in a step by step manner. The objectives of this study are thus: To define and represent the time-tabling problem by a data model; and To conceptualise a solution model for this problem. Producing a general solution to a problem of this type that involves hundreds of independent schools requires a terri- tory-wide study so that no important constraints are neglected at its initial step. A number of solutions had been initiated for the task discussed, from both the commer- cial and non-commercial sectors. However, all these solu- tions are either kept as commercial secrets or not well documented, not to mention documenting the problem domain. Under such circumstances, it would be extremely difficult to generalise the solution model of such a complex scheduling problem. Therefore, it is important to capture the enriched body of knowledge for this time-tabling task and represent it in a manner that can facilitate further discussion and improvement. Knowledge-Based Systems 12 (1999) 81–93 0950-7051/99/$ - see front matter q 1999 Elsevier Science B.V. All rights reserved. PII: S0950-7051(98)00090-2 * Corresponding author. Tel.: 00 852 2788 8580; fax: 00 852 2788 8614. E-mail address: [email protected] (L.F. Kwok)

Upload: siu-cheung-kong

Post on 05-Jul-2016

218 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: A conceptual model of knowledge-based time-tabling system

A conceptual model of knowledge-based time-tabling system

Siu Cheung Konga, Lam For Kwokb,*aDepartment of Information & Applied Technology, The Hong Kong Institute of Education, Lo Ping Road, Tai Po, N.T., Hong Kong, China

bDepartment of Computer Science, City University of Hong Kong, 83 Tat Chee Avenue, Kowloon, Hong Kong, China

Received 24 March 1998; received in revised form 20 October 1998; accepted 9 November 1998

Abstract

This study aims to model a high school time-tabling task using the knowledge-based approach. The body of knowledge consists of astructural data set, rules sets and heuristics. A scheduling model is articulated to allocate teaching assignments to the time slot system byapplying appropriate heuristics and rule sets. A scheduling engine is devised to allow the defining of assignments in any desired order using aheuristic function for enhancing the performance of the system; and to allow a search for the best slot on multiple feasible slots. The rulepriorities may facilitate different time-tabling approaches.q 1999 Elsevier Science B.V. All rights reserved.

Keywords:Scheduling in high schools; A knowledge framework in high school scheduling

1. Introduction

The academic time-tabling problem has been addressedby various approaches such as Operations Research tech-niques [1], graph colouring model [2–5], heuristics rules[6–8], simulated manual time-tabling [9], genetic algorithm[10,11] and constraint satisfaction [12]. A variety of suchapproaches has been attempted to computerise time-tablingactivities in higher education with various degrees ofsuccess [13–15]. However, the complexity of the time-tabling problem in high schools has not yet been properlytackled [16].

Most previous studies in this area focused on time-tablingor examination scheduling in universities, in which astudent may have many free time slots in a schedulingperiod. The constraints of scheduling in a high school envir-onment are much tighter because a student may have no freetime slots in a week or a cycle day system.

Time-tabling problems can be formulated almost exclu-sively in terms of constraints and the set of all possible statesthat each part of the solution can take. A solution to thisproblem would then be any overall state that does notviolate any constraint. The nature of these problems isknown as constraint satisfaction [12]. If the time-tablingproblem in high schools is perceived as constraint satisfac-tion in nature, Fig. 1 depicts its three major componentsinvolved in this process. The focus of the problem is to

assign an assignment unit to a time slot unit while consider-ing various constraints. If a conflict occurs, a conflict reso-lution algorithm may be invoked.

2. Objectives

The main aim of this study is to produce a conceptualmodel of the time-tabling task in high schools, which shouldbe independent of the implementation technology. Such aconceptual model will facilitates the implementation of thetask in a step by step manner. The objectives of this studyare thus:

• To define and represent the time-tabling problem by adata model; and

• To conceptualise a solution model for this problem.

Producing a general solution to a problem of this type thatinvolves hundreds of independent schools requires a terri-tory-wide study so that no important constraints areneglected at its initial step. A number of solutions hadbeen initiated for the task discussed, from both the commer-cial and non-commercial sectors. However, all these solu-tions are either kept as commercial secrets or not welldocumented, not to mention documenting the problemdomain. Under such circumstances, it would be extremelydifficult to generalise the solution model of such a complexscheduling problem. Therefore, it is important to capture theenriched body of knowledge for this time-tabling task andrepresent it in a manner that can facilitate further discussionand improvement.

Knowledge-Based Systems 12 (1999) 81–93

0950-7051/99/$ - see front matterq 1999 Elsevier Science B.V. All rights reserved.PII: S0950-7051(98)00090-2

* Corresponding author. Tel.: 00 852 2788 8580; fax: 00 852 2788 8614.E-mail address:[email protected] (L.F. Kwok)

Page 2: A conceptual model of knowledge-based time-tabling system

As the computing capability is increasing exponentiallywith a decreasing price, the consideration of the proposedsolution model should not be bounded by the computingcapability. Instead, a semantic model facilitating theproblem-solving orientation is to be set with a goal in find-ing the better alternatives, rather than another solution.

3. Methodology

The most difficult part of this study is to capture theconstraints for the time-tabling task because many of themare implicit in the manual time-tabling process. A hybridapproach of using survey and protocol analysis was appliedin the knowledge elicitation process.

A survey was conducted to understand the generalconstraints of the time-tabling task in Hong Kong (HK) in1995. Four hundred and eighty schools were invited torespond to the survey designed in this research [16]. Onehundred and seventy three schools responded voluntarilywith complete data sets. The response rate was 36%. It isobvious that constraints collected solely from this survey isnot detailed enough to understand the problem comprehen-sively. Three representative secondary schools were chosenfor protocol analysis and an in-depth case study.

Three experienced secondary school schedulers with 7–10 years time-tabling experience were invited to attendstructured interviews and conduct demonstrations in theirschool settings. These cases were carefully chosen to repre-sent three school categories in the time-tabling practicenamely, computer-generated scheduling, checking datainconsistency using computers, and manual scheduling.The objectives of the interviews are to obtain views ofwhat constraints are setfor time-tabling andhow they areimplementedin the time-tabling process. In-depth probingto specific strategies and tactics for efficient time-tablingwere designed. The efficiency here means that the time-tabling process would have a better result at the finalstage. The results of the survey and this protocol analysis

form a more comprehensive body of knowledge for thetime-tabling task in HK high schools, from which a solutionmodel can be formulated.

4. The knowledge framework

As a result of the knowledge acquisition process, tacitknowledge of time-tabling process and tactics for the effi-cient production of timetables were obtained; time-tablingconstraints in HK secondary schools were solicited andcategorised; and principles for efficient scheduling wereformulated.

The knowledge framework of a time-tabling task iscomposed of three main components: thestructural dataset, constraints rule sets, and heuristics. Structural datafor a school in an academic year includes the class structure,teacher establishment, time slot system, the school setting,and course package.Sets of constraintsfor the schedulingprocess can be categorised into the main scheduling androom allocation. The set of rules for the main schedulingis a set of constraints that must be satisfied when completingthe scheduling task. The set of rules for room allocation isseparated from the main scheduling set so that the timetablegeneration process can be divided into stages to facilitate thedivide and conquer strategy. This study will focus on themain scheduling task.Heuristic is the body of knowledgethat applies the rule sets to guide the scheduling process toproduce a high quality timetable with the maximum percen-tage of filled time slots. This body of knowledge is crucial toform a basis of a time-tabling solution with high completionpercentage.

4.1. Structural data set

The time-tabling problem in secondary schools involvesfive factors, namely the teacher establishment, the classstructure, the time slot system, the subject packaging androom availability. There are 53 teachers; 29 classes; 48 timeslots derived from a 6-days cycle system with 8 teaching

S.C. Kong, L.F. Kwok / Knowledge-Based Systems 12 (1999) 81–9382

Fig. 1. A pictorial description of the time-tabling problem in high schools.

Page 3: A conceptual model of knowledge-based time-tabling system

periods per day; a number of subjects offered in junior,senior and matriculation levels; and 38 rooms with 25 class-rooms and 13 special rooms in a typical secondary school inHK, according to our recent survey [16]. Ignoring the split-ting class factor, the time-tabling problem in HK secondaryschools is mainly the competing of a teacher and a room foreach of the 1392 time slots (48 slots× 29 classes) withoutcrash of resources.

4.2. Sets of constraints

There are mainly two sets of constraints: intrinsic andimposed. Intrinsic constraints are sets of rules derivedfrom the scheduling problem itself. Imposed constraintsare sets of rules imposed by various parties involved inthe time-tabling task including students, teachers, laboratorytechnicians, subject panels, and the management board ofthe school. These constraints must be observed at differentstages of the scheduling process.

4.2.1. Intrinsic constraintsSome intrinsic constraints of the scheduling problem are

derived and described in the following.

4.2.1.1. Filling up all time slots Nearly all HK secondaryschool students have to attend all the 48 time slots. In otherwords, all the time slots for a class will be taught by at leastone teacher for one subject in a room. A typical timetablefor a junior form class is depicted in Fig. 2.

The scheduling task is a constraint satisfaction process.The problem becomes critical at its final stage, as all thetime slots must be filled up while the basic constraintscannot be violated. This is thetightest constraint amongall others. The time-tabling problem in HK secondaryschools is different from that in higher education wherenull slots are very common.

4.2.1.2. Insufficient rooms for classesThere are 29 classesbut only 25 classrooms for a typical school in HK. In otherwords, at least four floating classes in a school are makinguse of the special rooms as normal classrooms. The survey

revealed that most secondary schools in HK do not havesufficient classrooms [16] and they have to utilise the 13special rooms such as laboratories in schools. This isprobably another hard constraint in HK. The average rateof room utility is

Average room utility rate� 29251 13

� 0:76:

However, the situation is worsened by the splittingclasses. The average number of splitting for each time slotis 4.7. Therefore the actual average rate of room utilityincluding the class splitting factor is

Average room utility rate� 291 4:7251 13

� 0:89:

In other words, 89 percent of the time of a room will beoccupied by certain classes. This figure assumes that allspecial rooms can be used as a normal classroom, whichis a nightmare to every scheduler. However, special roomsare for special purposes. For example, lessons other thanphysical education cannot be conducted in the playground;chemistry laboratories must serve all Chemistry lessonsfirst. Therefore, the actual room factor for consideration inthe scheduling problem is even more severe.

4.2.1.3. Resources competition between room factor andteaching loading A typical secondary school in HK has53 teachers serving 29 classes with 4.7 splitting per timeslot. That is, the 53 teachers must provide services to 33.7actual classes. Therefore the average loading for eachteacher is

Average teaching loading� 291 4:753

� 0:63:

In other words, 63 percent of a teacher’s schedule will beoccupied by certain classes in certain locations for certainsubjects. This figure is incomparable to the time-tabling taskin higher education where the teaching loading is justaround 17 percent. The shifting of workload from teachers

S.C. Kong, L.F. Kwok / Knowledge-Based Systems 12 (1999) 81–93 83

Fig. 2. A typical class schedule for a secondary school in Hong Kong.

Page 4: A conceptual model of knowledge-based time-tabling system

with more administrative duties to those with less furthercomplicates the teacher-loading factor.

As the provision of rooms is a tighter constraint than theprovision of teachers in the time-tabling exercise, the roomfactor is considered more important than the teacher-loadingfactor for the scheduling task in HK secondary schools.

4.2.1.4. Constraints derived from splitting and combiningclasses Students in secondary schools are grouped intoclasses, in which they must study the same subjects. Thisarrangement assumes that students in the same class wouldhave a great degree of uniformity in academic standard. Theclass structure is the dominant mode of operation in allschools in HK. However, variations do arise. Remedialteaching for some major subjects such as Chinese, Englishand Mathematics were introduced. Some classes are thenseparated into groups for a better student–teacher ratiowhich aims to achieve better teaching effectiveness.Meanwhile, the introduction of computer studies as asubject requires extra resources on computer equipment,teachers and rooms. In order to maximise the utilisation ofmachines, computer classes are often separated into twogroups. Fig. 3 illustrates the splitting result.

Scheduling, in its original state, is a problem of assigningatomic values, including teacher, subject and location, totime slots. Class splitting requires the assignment of morethan one teacher and location to a time slot that causesconcerns of a scheduler and induces great difficulties totime-tabling.

The combining of classes further complicates theproblem of splitting. As the current mode of operationbased on subject package provides only static and inflexiblechoices for students, no variations occur. In order to providesubject choices to senior form students, some schools fixcertain time slots in the master schedule for a combinationof classes to study a number of subjects at the same time.Fig. 4 serves to illustrate this situation.

Combining and splitting events have the same difficultyas splitting but in addition, more than one class, more thanone teacher and more than one location must be available

simultaneously for the settlement of such an event. Forexample, a school offers 2 remedial English classes with 9periods, 18 Computer Literacy classes with one period, and2 Form 4 classes divided into 3 groups with 4 periods. Thetotal number of periods of split classes per teaching cyclefor a school is 40�� 2 × 9 1 18× 1 1 1 × 4�:

The results of our survey [16] indicated that the meannumber of split periods in a typical secondary school is229.43 among the 1392 periods. Thus, the ‘‘splittingproblem’’, which had not been dealt with properly, shouldbe handled in the conceptual scheduling solution model.

4.2.1.5. Requiring two kinds of rooms for an assignmentAproblem derived from insufficient rooms is the requirementto have two rooms for an assignment. For schools whereeach class has its own base room, the only room requirementis competing the special rooms with special subjects. Forexample, assigning Computer Studies to certain classesneeds to compete for the computer room only.

However, the floating class system induced from theinsufficiency of classrooms in HK schools needs to addressthe posed problem in a more complicated manner. There aretwo possible cases. An assignment with no requirement onspecial room needs only one type of rooms. For example,Mathematics lessons of a class need only a normal class-room. An assignment with a special room requirement alsoneeds one type of rooms, that is the special room only.However, the limited number of special rooms cannot enter-tain all such requests. A typical example is the IntegratedScience Laboratory (I.S. Lab.) problem.

In a typical school, there are 15 classes, each of themhaving 5 Integrated Science lessons. Therefore, there are75 time slots in total for the Integrated Science assignment,which exceed the 48 time slots in a cycle. In addition, thereis usually only one I.S. Lab. in a school. Such a requestbecomes infeasible. One common practice is to requestthe I.S. Lab. only when a laboratory session is needed,which allows an assignment to request 3 lessons in a normalclassroom and 2 lessons in the I.S. Lab. Fig. 5 helps toillustrate the problem.

S.C. Kong, L.F. Kwok / Knowledge-Based Systems 12 (1999) 81–9384

Fig. 3. An illustration on splitting of a class.

Fig. 4. An illustration on combining and splitting of classes.

Page 5: A conceptual model of knowledge-based time-tabling system

One way is to split an assignment into two. However,such a splitting will cause great difficulties if it needs tobe considered as an aggregate. One immediate problemafter splitting in such a circumstance is that the practicaland theoretical lessons can be assigned to the same day. It isnot desirable for the cluster of so many lessons of a subjecton the same teaching day. Therefore, one possible solutionis to allow an assignment requesting for two kinds of rooms.

4.2.1.6. Constraints derived from blocking of timeslots Time slots in the schedules can be blocked in twoways to satisfy subject panels’ and the pragmaticadministrative requirements respectively: the assignmentlesson blocking and the schedule session blocking. Aschedule of a secondary school is usually blocked into themorning and afternoon sessions with a lunch break inbetween. There are at least five lessons in the morningsession, which is usually further subdivided into twoblocks with a recess in between. This is the sessionblocking.

Assignment lesson blocking groups two consecutivelessons together for lengthy discussion for subjects suchas Mathematics, Chinese or English composition; or threeconsecutive lessons together for laboratory sessions insenior forms. Having double and triple lessons is a commonpractice in nearly all schools. Such time slots have to beconsidered as an aggregate.

4.2.2. Imposed constraintsScheduling is a constraint satisfaction process. In addition

to the aforementioned resources and structural constraints,certain rules must be observed to take care interests ofdifferent parties in the scheduling process. These partiesinclude students, teaching staff, technicians, subject co-ordinatorsand theschool head.

There should be a number of different subjects every dayso that a variety can be maintained. However, this varietymust be limited to enablestudentsnot to bring too manytextbooks in a day. Therefore, the number of double and

triple lessons should also be evenly distributed throughouta teaching cycle. For example, it is desirable to have lessons(single, double or triple) of a subject in day 1,3, and 5evenly.

Lessons should be evenly distributed among all cycledays so that workload of ateacherper day will not be tooheavy. Usually, it is generally accepted not to have twoconsecutive days with 7 lessons in an 8-period cycle daysystem. Of course, it is desirable to have less than 7 lessonsto any teachers in an 8-period cycle day system.

Techniciansserve laboratories in Physics, Chemistry,Biology and Integrated Science. For easy arrangement oflaboratory facilities, they may request laboratory lessonsof a certain form to be grouped for the morning session ofa certain cycle day.

Suppose that there are 9 English lessons in Form one. Thesubject co-ordinatorfor English may request 3 doublelessons and 3 single lessons in a 6-cycle day system. Thescheduler will then have the responsibility to scatter allthese 3 doubles and 3 singles evenly in a cycle as required.Usually there are 5 lessons in the morning session and 3 inthe afternoon. The English co-ordinator may then request 6lessons in the morning session and 3 in the afternoonbecause it is believed that students can learn better in themorning.

The aforementioned rules are applicable to all subject co-ordinators. However, there are also special requirements.For example, the English co-ordinator may require twocommon time slots for English lessons for two classes sothat a quiz can be conducted for both classes simulta-neously. This is a special case of combining classes buttwo rooms and two teachers are still required. The Scienceco-ordinator may also request some lessons to be conductedin certain laboratories. Other special constraints such asswimming classes outside a school may require the schedu-ler to reserve certain time slots for such occasions.

A school headmay have laid down some common prac-tice as constraints. For examples, lessons of class teachersshould appear in the first lesson of each morning session forenhancing teacher–student relationship. Lessons involvingsplit classes should not appear in the first lesson of a sessionfor handful taking of attendance. A school head may alsohave special requirements on arranging a common time slotfor teachers’ meeting; allowing certain teachers to attend in-service training; or for part-time staff to work in some cycledays only. The scheduler must observe these constraints.

4.2.3. Problem-based and solution-based constraintsProblem-basedconstraints are constraints based on the

time-tabling problem. They are the intrinsic and imposedconstraints discussed before. When a timetabler looks intothe time-tabling problem from the perspective of finding asolution, there are two categories of constraints,desirableandbaseline. Desirableconstraints are rules that are desir-able for a particular school. The desirability varies fromschool to school as a result of differences in preferences.

S.C. Kong, L.F. Kwok / Knowledge-Based Systems 12 (1999) 81–93 85

Fig. 5. An illustration on requirement on two types of room.

Fig. 6. Relationship between problem-based and solution-basedconstraints.

Page 6: A conceptual model of knowledge-based time-tabling system

Baselineconstraints are rules that must be satisfied forfulfilling the baseline requirement for a timetable solutionof a particular school.Desirableand baseline constraintsaresolution-basedconstraints. Fig. 6 shows the relationshipbetween the problem-based and solution-based constraints.

The set ofdesirableconstraint is the union of theintrinsicand imposedconstraints.Baselineconstraints include allthose intrinsic constraints and part of theimposedconstraints. Desirable rules would be tightly followed atthe beginning of the main scheduling process. The baselinerule set will replace the desirable ones when resourcesbecome scarce. Very often, in order to find a feasible solu-tion, lessons set bydesirableconstraints at the early stagemay be swapped or reallocated. In that case, constraintsfulfilling desirableconstraints may be relaxed to thebase-line standard.

4.2.4. ImplicationIt can be foreseen that the dispute on constraints and rules

induced from such a variety of interest parties can never besettled. Voices for modification of constraints from differentparties will be part of the real life. Therefore, the conceptualmodel should facilitate constraint modification.

Different schools may have different preferences on adesirable timetable. There are at least three notions on adesirable timetable: theclass centre, the teacher centreand thesubject centre. A class centreapproach may pursuittimetables of a class with a balance of double or triplelessons throughout all cycle days. Ateacher centreapproach may seek plans for even distribution of teachers’load throughout all cycle days. Asubject centreapproachmay request even distribution of lessons of a subjectthroughout all cycle days. A school may pursuit timetableswith a combination of the preferences discussed before.Therefore, more than one problem-solving method (asshown in Fig. 7) should be considered for the design of asolution model of the time-tabling problem. Finding a solu-tion to problems of this nature needs an approach that can

encompass both ways to represent the problem and itssolutions.

4.2.5. Constraints for room allocationRoom allocation rules that involve the optimal utilisation

of rooms will not be addressed in this study. However,sufficient number of rooms will be assumed and whichroom to be allocated for the floating classes will beaddressed in the room allocation stage. However, thoseclasses with a fixed classroom will be assigned initially.Rules for room allocation will be grouped in the room allo-cation rule set in later studies.

4.3. Heuristics

Heuristics are formulated to enable a higher percentagecompletion of a timetable under desirable constraints. Theseare tactics in the main scheduling process in releasingconstraints towards the end of the process in producing afeasible solution. Heuristics are categorised into the mainallocation stage and the end-up stage of the schedulingprocess.

4.3.1. Main allocation stageHeuristics in the main allocation stage in time-tabling can

be actualised by two levels of prioritisation of assignmentsin the allocation process,initial androutine prioritisation.

Assignments are grouped according to their resourcerequirements. Priority will be given to assignments requir-ing more resources at theinitial stage. In a manual system,computation of a heuristic value to prioritise assignmentscan only be a dream of a scheduler. In reality, schedulerswill arrange these assignments into a proper order accordingto their own judgement. Usually assignments, which involverooms with a high utility rate and a small number ofteachers, are of top priority. Assignments, which involvecombining classes, are of second top priority. The nextpriority involves those assignments with splitting a class

S.C. Kong, L.F. Kwok / Knowledge-Based Systems 12 (1999) 81–9386

Fig. 7. The solution architecture of a time-tabling problem.

Page 7: A conceptual model of knowledge-based time-tabling system

into groups; followed by those combining several classesinto a common time slot with no re-grouping.

Routineprocedural assignment will then be followed.This involves a chosen ordering of assignments. Thisorder can be in a simple alphabetical order; a randomorder; or just an order of the schedulers’ preference.Some rational ordering like teachers with heavy teachingload will be assigned first in the teacher base approach.Similarly, assignments, which involve subjects with morelessons, will be assigned first in the subject baseapproach. A class-centred approach may allocate assign-ments with top priority to triple lessons, double lessonsnext and then single lessons irrespective to the teacherloading or number of lessons involving in a subject.However, only experienced and knowledgeablescheduler may come to such a judgement in a manualsystem.

The approach in assigning assignments to the sche-dule varies among schedulers: assigning teacher byteacher; class by class; subject by subject; or a combi-nation of them. However, this procedure has a prerequi-site of ordering all assignments by a chosen type. Ifthese assignments are manually organised, it is inevita-bly to adopt only one approach. An automated time-tabling solution model may facilitate the adoption ofdifferent approaches by re-ordering the assignments. Duringthe procedural process, differentrule setsare applied atdifferent stages. Thedesirable rule setwill be applied atthe initial stage. However, as the completion percentageincreases, thebaseline ruleset will slip in the schedulingprocess.

4.3.2. End-up stageA common problem at the final stage of the scheduling

process is increasingly resources scarce, leading to beingunable to find time slots for assignments. There are threetactics resolving the conflicts. Firstly, releasing a set of rulesfrom desirable to baseline is the central theme of theconflict resolution strategy at this stage. Secondly, althoughit might be difficult to swap the initially pre-assigned slotswith the other, this swapping may work because lights toresolve the conflicts usually come from stepping into thetaboos. Sometimes, this strategy will work together withthe giving up of some pre-defined time slots. That isrelaxing some tight constraints that are set initially.Lastly, a scheduler may detach a lesson from one doublelesson but attach this lesson to another single to make up adouble.

5. A theoretical framework

This study aims to formulate a theoretical framework totackle the high school time-tabling problem. Results of thisstudy reflected that the constraints on resources, and natureof the solution requirements define the uniqueness of thehigh school time-tabling problem. The core of the academictime-tabling problem is the matching of assignments to timeslots complying with constraints. This matching processinvolves three basic factors: student loading, teacher loadingand room utility rate. Fig. 8 shows the comparison of theresource constraints between a typical high school and atypical university time-tabling problems.

In a typical university, students are usually scheduled tohave equal proportion of times for attending lectures andself-studies. Students’ timetables are therefore at most fiftypercent loaded with lectures. It is common that lecturers in atypical university are assigned with teaching load less thanten hours per week. The total number of teaching hours in aweek are usually forty which is derived from five workingdays with eight hours per day. Therefore, the loading of atypical lecturer is twenty-five percent or less.

The classroom utility rate of a typical high school in HKis eighty-nine percent [16]. There are no similar figures in atypical university. However, the typical room problem in theuniversity is the finding of a room with appropriate size foran assignment. Sometimes they can solve the room problemby using more than one room in an assignment similar to thefloating room solution in a typical high school in HK.Nevertheless, the room constraints in a typical universitywill be less tight in general because of the richness ofresources in tertiary institutions. Therefore, it can be derivedfrom Fig. 8 that the resources constraints on the high schooltime-tabling problem are extremely tight. Such tightconstraints characterise the uniqueness of the academicscheduling problem in HK high schools. A theoreticalframework to tackle such problem is therefore urgentlyneeded. The implications of such tight resources are that:

• feasible solution are rarely achieved; and• not all desirable constraints requested by users can be

fulfilled.

In order to achieve the highest completion rate, and at thesame time to fulfil all constraints as far as possible, adynamic framework with the greatest flexibility to handlethe problem is desired. An experienced human teachermanages such flexibility in tackling the problem at theexpense of tedious work and time-consuming. Therefore,a knowledge-based approach abstracting the quality of

S.C. Kong, L.F. Kwok / Knowledge-Based Systems 12 (1999) 81–93 87

Fig. 8. Resource constraints of a typical high school.

Page 8: A conceptual model of knowledge-based time-tabling system

flexibility by a careful interpretation of human knowledge ofthe scheduling problem is adopted in this study. A know-ledge-based approach may tackle this problem in three ways:prioritisation of assignments, multiple time slot testing, andswitching of rule sets. Prioritisation of assignment allows thesystem to allocate assignments with a greater demand onresources to be settled with a higher priority. A time slotallocation mechanism may be devised for finding the bestslot for an assignment by evaluating a heuristic function onmultiple feasible slots in the time slot allocating process. Thisis crucial for successful allocation of the last five to tenpercent of assignments to the time slot system, which is thebottleneck of the high school time-tabling problem. Rule setsmay be organised in a way so that they can be switched formdesirable to baseline at the final stage of the allocationprocess. These three mechanisms are the core of the know-ledge-based solution framework to the stated problem fromthe perspective of highly constrained resource.

Organising constraints into rule sets can improve not onlythe overall performance of the proposed scheduling systembut can also entertain different preferences of differentschools in the scheduling problem. As the constraints arederived from such a wide spectrum of interested parties,dispute on constraints and preferences can never be settled.Therefore, allowing constraints to be switched easily fromone set to another is a unique characteristic of the highschool time-tabling problem. This is one of the importantissues in the proposed knowledge-base approach in tacklingthis problem.

The significance of the theoretical framework of this highschool academic time-tabling problem is twofold. First, itmay help to solve the problem itself. Second, this theoreticalframework may apply to academic scheduling problemswith fewer constraints such as time-tabling in tertiary insti-tutions and primary schools. The quality of the schedules inthese organisations can be improved if the tight resourcesconstraints solution is adopted because they have theoptions to add more constraints. The following sectiondescribes a conceptual model, which is based on theproposed theoretical framework, in tackling the posedproblem.

6. A conceptual model

A conceptual model of the time-tabling task based on theknowledge framework consists ofinput, scheduler andoutput. The input and output of the scheduling process arethe teaching assignments and the schedules, respectively.The scheduler is responsible for assigning lessons in theassignments to the time slots of the schedules. Heuristics

and constraints are incorporated into procedures of the sche-duler to tackle the time-tabling problem. Fig. 9 illustratesthe relationship of the scheduler with the input assignmentsand output schedules.

6.1. Prioritisation of assignment

The core of the planning task is filling all the requiredtime slots completely. The high level heuristic to tackle thisproblem is to satisfy the tightest constraints with the highestpriority, and the most flexible constraints with the leastpriority. The four factors of allocating an assignment to atime slot areteacher, location, lessonandnumber of classes.The tightest constraints may be derived from one or more ofthese factors.

Location may cause the tightest constraint in secondaryschools in HK. A school may need to book public swimmingpools for physical education lessons. The feasible time slotsoffered by the external agents will be a dominant factor inplanning the physical education lessons in the timetable.Further, it is quite common that there are only two physicaleducation teachers, one male and one female. It is also acommon practice that the male teacher only coaches malestudents and so does the female counterpart. The normativeteacher–student ratio is one to forty. Therefore, a feasiblesolution is to combine two classes together for a physicaleducation lesson with two teachers each teaching studentswith homogeneous sex. For a swimming lesson, it is sens-ible and necessary to have a double lesson because time isneeded for travelling and changing. This case, thus, involvestwo teachers, two classes, a double lesson time slot and thelimited choices provided by the external agents. Theseproblems cause one of the tightest constraints.

An assignment of two single history lessons, which isconducted in a normal classroom and taught by a teacherwith a light teaching load, may lead to one of the mostflexible constraints in the time-tabling process.

Ideally, an index on assigning priority should becomputed for every assignment so that assignments can beprioritised. Such a heuristic value for the assignment shouldinclude the following components:

• the teaching loading of the teacher(s) involved and theassociated available teaching time slot(s);

• the room utilisation rate of the special room(s) involved;• the number of lessons of the subject(s) involved together

with the triple and double lesson factors; and• the number of class involved.

A heuristic function may be in the following form:

Assignment Index� fteXni�1

tl iati

1 frmXnj�1

rl jarj

0@ 1A × nc× �ft

× 3 × nt 1 fd × 2 × nd1 fs × ns�wherefte 1 frm � 1; andft 1 fd 1 fs � 1 andft . fd . fs;

S.C. Kong, L.F. Kwok / Knowledge-Based Systems 12 (1999) 81–9388

Fig. 9. A conceptual model of time-tabling.

Page 9: A conceptual model of knowledge-based time-tabling system

fte is the weighing for the teachers’ factor;frm weighing for the rooms’ factor;ft weighing for the triple factor;fd weighing for the double factor;fs weighing for the single factor;tl i teaching load of teacheri;ati total number of available time slots for teacheri;rl j utilisation loading of roomj;arj total number of available time slots for roomj;nt number of triple periods;nd number of double periods;ns number of single periods;nc number of classes involved for that assignment.

The formula is designed to include all factors involved inthe assignments. The weighing in the formula reflects therelative importance of various factors in the assignments.Teacher and room factorsare reflected by the component

fteXni�1

tl iati

1 frmXnj�1

rl jarj

0@ 1A:Representing factors of teacher and room for one lesson andone class, this component has considered the splitting of oneor more classes into groups so that more than one teacherand room are considered. The weighingfrm should be greaterthan fte if room resources are tighter than teacher resourcesand vice versa. In the case of combining classes, the indexwill be magnified by thenumber of class factoras

fteXni�1

tl iati

1 frmXnj�1

rl jarj

0@ 1A × nc:

In considering thenumber of lessons factor, the totalnumber of lessons is not a good indicator because a doublelesson is more difficult to assign than two single lessons.Therefore, the weighing reflectingft . fd . fs is included inthe aforementioned formula.

This is a comprehensive formula to reflect the variousimportant factors in ordering the assignments. Appropriateweighing can be found to reflect the need of a school after asubstantial amount of experiments of fine-tuning. The auto-mation of the prioritisation of assignments can reduce asignificant amount of pre-definition of time slots at theinitial stage.

This formula can be adjusted at different stages of the

scheduling process. The weighing of an unassigned teacherand the room utilisation rate are changing dynamically aftereach assignment. However, such an implementation will bevery demanding in computation power. It is more practicalto re-calculate the assignment prioritisation index at somecritical stages such as 50%, 75% and 90% completion.

However, this formula does not facilitate the need forgrouping assignments, say, by room, as discussed in theconstraints of pre-planning lessons such as the I.S. Lab.Therefore, grouping assignments before the application ofthe designed formula may be an outlet to improve the degreeof automation of the scheduling problem.

6.2. Input for the scheduler

A teaching assignment of a school specifies a teacherteaching a class or a group (combined from classes) of acertain subject for a specified number of lessons in a loca-tion. An assignment may have two locations. For example,there are five lessons for an integrated science assignment ofa class. Among these five lessons, three will be conducted ina classroom and two will be a double lesson in the I.S. Lab.The representation of a simple assignment for a subjecttaught by a teacher in one or two locations as shown inFig. 10.

The representation of an assignment involving the split-ting of a class into two groups can be modelled into the formas shown in Fig. 11.

The representation of an assignment involving thecombining of two classes and splitting them into threegroups can be modelled as shown in Fig. 12.

Teaching assignment includes a teacher teaching a classor group(s) (combined from classes) for a certain subject ina specified number of lessons (a sum of single, double andtriple lessons). These values cannot be changed in any case.The numbers of single, double and triple lessons are to bedetermined by the subject panels. However, the use of alocation is influenced by the following factors:

• If a class has a fixed classroom, all subjects will beconducted in that classroom. Hence, location is deter-mined. Theschool headwill determine the locationafter consulting the school discipline master.

• For some subjects, lessons must be conducted in a specialroom; for example, Music lessons in the music room. ForComputer Studies, a half of the lessons will be conducted

S.C. Kong, L.F. Kwok / Knowledge-Based Systems 12 (1999) 81–93 89

Fig. 10. A model of a simple assignment.

Fig. 11. A model of an assignment with splitting.

Page 10: A conceptual model of knowledge-based time-tabling system

in a normal classroom and the remaining half in a compu-ter room. Thus, the music lesson assignment will have afixed location. The Computer Studies assignmentinvolves class splitting, location 1 can be the computerroom and location 2 can be a fixed classroom.Subject co-ordinatorswill request the use of a special room.

• However, those assignments with no special roomrequirement and no fixed classrooms (floating classes)will have null values for the location items. Assignmentswith splitting groups into two sub-groups involvingsubjects with no special room requirement will alsohave no fixed location for one sub-group. If a class hasa fixed location, the other location item can be fixed. Ifnot, it will have no value. The scheduler in the planningprocess will assign these locations.

In summary, assignments are categorised into three types:simple, split andcombined. Values of the assignments aredetermined except the location. Assignments should beprioritised before the planning process starts. The planningprocess will start with assignments having the tightestconstraint and end up with those assignments with themost flexible constraint to facilitate a better completionpercentage. In addition to the prioritisation of assignments,the degree of automation, the grouping of assignments byrooms, or the reiteration of prioritised assignments by thenumber of lessons blocked are also important strategies forimproving the completion percentage.

6.3. Output from the scheduler

After the scheduling process, the outputs are the sche-dules for every class, every teacher and every room. Theclass schedulescontain the day and period of a class inwhich a teacher will teach a subject in a location (see Fig.13). More than one record is required to represent the sche-dule of a lesson if the class is separated into groups.

The teacher schedulescontain the day and period of ateacher in which a class will be taught by the teacher for asubject in a location (see Fig. 14). More than one record is

required to represent the schedule of a lesson if the class isgrouped by several classes.

Theroom schedulescontain the day and period of a roomin which a class will be taught by the teacher for a subject ina location (see Fig. 15). More than one record is required torepresent the schedule of a lesson in the room if the class isgrouped by several classes.

6.4. Structure of the scheduler

Before a procedural model is proposed for the schedulingprocess, the internal structure of theschedulermust bedepicted with the following requirements:

6.4.1. Multiple lessons as an aggregateHaving double and triple lessons is a common practice in

nearly all schools. Time slots must be able to be consideredas an aggregate as shown in Fig. 16.

For a certain school day, time slots are usually dividedinto sessions: morning and afternoon. The morning sessionis subdivided into two sub-sessions with a recess inbetween. The sessions of a typical school in HK with 8periods per day are structured as shown in Fig. 17.

It is observed that the triple lessons can only be assignedto period 1,2,3 or 6,7,8 only. The assignment of doublelessons is also restricted to 1,2; 2,3; 4,5; 6,7 or 7,8 only.In order to avoid the destructive effect to the possibility ofdouble lesson combinations, single lessons should beavoided in period 2 and 7. Such a structure will, of course,incur difficulties in the planning process.

6.4.2. Multiple teachers as an aggregateWhen considering the splitting of a class into groups, an

assignment can only be assigned if the required teachers andlocations are available for a certain time slot of a class. Inother words, teachers and rooms should be considered as anaggregate as shown in Fig. 18 for that particular time slot.

6.4.3. Multiple teachers and multiple classes as anaggregate

For combining classes and splitting them into groups, an

S.C. Kong, L.F. Kwok / Knowledge-Based Systems 12 (1999) 81–9390

Fig. 12. A model of an assignment with combining classes and splitting into groups.

Fig. 13. A model of the output of the class schedule.

Page 11: A conceptual model of knowledge-based time-tabling system

assignment can be assigned if those teachers and locationsinvolved are available for a certain time slot(s) of all classes.In other words, teachers, rooms and classes should beconsidered as an aggregate (see Fig. 19) for that particulartime slot(s).

6.5. The scheduling engine

A scheduling model is articulated to allocate teachingassignments to the time slot system by applying appropriateheuristics and rule sets. A scheduling engine as shown inFig. 20 is devised, which is composed of three independentparts, namely assignment, time slot allocation and rule set.These three components work together to produce scheduleswhich allow the greatest flexibility for using and improvingthe scheduling engine.

The assignment component allows the knowledge engi-neer to define assignment in any desired order for enhancingthe performance of the system. The time slot allocationcomponent allows testing of one slot at a time or findingthe best slot by evaluating a heuristics function on multiplefeasible slots in the time slot allocation process. This heur-istic function becomes crucial as the scheduling processapproaches the end. Rule sets can be organised in differentorder so that different rule sets can be applied at differentstages.

6.5.1. The scheduling processThe goal of the scheduling process is to enable the

generation of schedules of all classes, teachers and roomsin a school and such schedules maximise the satisfaction ofall parties involved under a limited resources and structuralrestriction. To achieve these goals, the time-tabling activityis broadly classified into five tasks:

1. Classify all teaching assignments into thesimple, splitandcombinetype; assign rooms if possible;

2. Select time slots for each assignment with sufficientnumber of rooms available for its allocation later;

3. Retry those unsuccessful assignments by relievingconstraints;

4. Assign rooms for floating classes; and5. Print out hardcopies for all schedules.

The procedures for selecting time slots for assignments,which are the crucial part of the time-tabling task, involvethe following steps:

1. Read system global data, including the number of daysand the number of periods per day; the class list; theteacher list; the room list; the class teacher list; and thedefinition of sessions;

2. Read initial assignments for all classes, teachers androoms, if there is any; for example, initial assignmentsto time slots for the I.S. laboratory;

3. Read time slots that are not available to certain teachersor certain rooms;

4. Read the number of rooms used for each time slot;5. Read assignments of combine, split and simple type;6. Prioritised assignments according to the heuristic func-

tion;7. Match assignments with available time slots according to

the prioritised index; take statistics on assignments,teachers’ daily teaching loading, and the number ofrooms used;

8. Save assignments with flags indicating successful match-ing; and

9. Save all schedules.

6.5.1.1. The Scheduling ProcessUp to this stage, thescheduling process involves two major steps for eachsingle assignment task. A single assignment task meansthe assignment of a single, double or triple lesson as aunit to the schedule. The two major steps are:

1. To find a time slot for the single assignment task; and2. If a time slot is found successfully, take statistics on the

assignment day distribution, the session distribution,teacher loading and room usage.

The assignment task is complicated because it has tomaximise the satisfaction of all parties in a school. Inorder to produce a high quality timetable, rules are cate-gorised into two types,desirableand baselinerule sets.The desirableconstraint set aims to maximise the satisfac-tion of all interested parties, while thebaselinerule set mustnot be violated. Relaxing constraints by means of changingthe rule sets towards the end of the scheduling process aimsto improve the time slot filling percentage. The followingare the two sets of rules that should be observed for eachsingle assignment task at different assigning stage.

6.5.1.2. Desirable rules

1. Distribute lessons of a teacher evenly among all cycledays; for example, a teacher with a loading of 36 lessons

S.C. Kong, L.F. Kwok / Knowledge-Based Systems 12 (1999) 81–93 91

Fig. 14. A model of the output of the teacher schedule.

Fig. 15. A model of the output of the room schedule.

Page 12: A conceptual model of knowledge-based time-tabling system

per 6-day cycle should have an average of 6 lessons per8-period day.

2. Evenly distribute lessons of a subject among all cycledays.

3. Evenly distribute double and triple lessons of a classamong all cycle days.

4. Distribute lessons of a subject in proportion to thenumber of lessons in the morning and afternoon of acycle day.

5. Avoid lessons ofsplit andcombinetype in the first lessonof a session.

6. Assign a class teacher in the first lesson of a session,preferably in the morning session.

6.5.1.3. Baseline rules

1. No class and no teacher can have more than one lesson ata time.

2. A teacher should have at least one lesson free for everycycle day.

3. No separate lessons for the same subject in a cycle day.4. Rooms are sufficient for all classes and groups from

splitting.5. A teacher or a room has unavailable time slots.6. Lessons can be blocked as double and triple.7. Several classes can be combined and separated into

groups for simultaneous lessons.

6.5.2. The control mechanism of the schedulerThis section briefly describes the control mechanism of

the scheduler and discusses how knowledge is used atvarious stages of the scheduling process. The initial stageof the schedule generation process involves the calculationof a priority index, as discussed in Section 6.1, for eachassignment. These assignments are sorted by their priorityindex. An assignment with the highest priority index isselected from the order list by the scheduler. A time slot

is selected at random. The scheduler will then invoke anappropriate rule set to validate whether the selected assign-ment and the selected time slot can match or not. Thescheduler requires, from the timetabler, a specification ofa preference such as teacher-centred, class-centred orsubject-centred before a rule set is selected. If the matchis successful, results of the allocation and statistics will berecorded and another assignment will be selected. The sche-duler may determine whether it is appropriate to re-calculatethe priority index after a certain proportion of assignments issuccessfully assigned.

When there is a mismatch between the selected assign-ment and the selected time slot, the scheduler can do a fewthings. Firstly, the scheduler may select randomly anothertime slot until there is a successful match. However, thescheduler needs to determine when to give up after someunsuccessful trials. Secondly, the scheduler may switch therule set fromdesirable to baseline if it notices that thescheduling is approaching to the end. Thirdly, the schedulermay also invoke a time slot allocation mechanism to searchfor the best allocation of remaining assignments at the end-up stage. The best allocation is determined by evaluating aheuristic function, which aims to achieve a higher percen-tage, or one hundred percent, completion of the timetable.The time slot allocation mechanism may try out severaltimes for the remaining assignments and choose the set ofresults with a higher completion rate. In contrast, multiplefeasible time slots may be tested before an assignment isassigned to a time slot. This is a crucial step for handling thebottleneck of the high school time-tabling problem.

7. Conclusion

A conceptual model for time-tabling solution was derivedin this study. A scheduling engine is articulated to allocateassignments to the time slot system by applying appropriateheuristics and rule sets. The model consists of theinput,outputand thescheduler. The input of thescheduleris theteaching assignments. A prioritisation heuristic function ofthe assignments is proposed and discussed. Each teachingassignment contains a teacher, a class, a subject and two setsof locations each specifying the number of single, double

S.C. Kong, L.F. Kwok / Knowledge-Based Systems 12 (1999) 81–9392

Fig. 16. Multiple lessons as an aggregate.

Fig. 17. Sessions in a school day with 8 periods. Fig. 18. Multiple teachers as an aggregate.

Page 13: A conceptual model of knowledge-based time-tabling system

and triple lessons involved. Such a design addresses theproblems associated with the combine and split classes bycategorising assignments into thecombine, split andsimpletypes. Desirable and baseline rule sets were articulated foreffective allocation of assignments. Rule sets can further bedesigned to adopt the teacher-centred, subject-centred andclass-centred approach. The outputs of the solution modelare the schedules. Details of the class, teacher and roomschedules are designed to facilitate later retrieval forreporting.

The schedulerof the model is responsible for assign-ing lessons of the prioritised assignments to the timeslots of the schedules. Knowledge on heuristics andconstraints derived in this study are successfully incorpor-ated into the architecture of theschedulerto tackle the time-tabling problems. The proposed model demonstrates aprominent direction where a large number of experimentscan be done to refine and improve the model to suit indivi-dual need of school.

References

[1] M.W. Carter, A Survey of Practical Applications of Examination

Scheduling Algorithms, Operations Research 34 (2) (1986) 193–202.

[2] D.J.A. Welsh, M.B. Powell, An upper bound for the chromatic no. of agraph and its applications to time-tabling problems, The ComputerJournal 10 (1967) 85–86.

[3] S. Early, Evaluating a time-tabling algorithm based on graphrecolouring, B.Phil. dissertation, University of Oxford, UK, 1968.

[4] G. Schmidt, T. Strohlein, Timetable construction – an annotatedbibliography, The Computer Journal 23 (1979) 307–316.

[5] D. de. Werra, An introduction to time-tabling, European Journal ofOperational Research 19 (1985) 151–162.

[6] E. Yazdani-baygi, A Heuristic Approach for Class Scheduling,Norman, Oklahoma, 1979.

[7] D.B. Papoulias, The assignment-to-days problem in a school time-table, a heuristic approach, European Journal of Operational Research4 (1980) 31–41.

[8] R. Musick, S. Russell, How long will it take?, Proceedings of the 10thNational Conference Artificial Intelligence, AAAI/MIT Press, 1992,pp. 466–471.

[9] Y. Masazumi, K. Kazuya, Y. Toru, W. Masanobu, A constraint-basedhigh school scheduling system, IEEE Expert, February 1996, pp. 63–72.

[10] B. Paechter, A. Cumming, An evolutionary approach to the generaltimetable problem, Rosycs’93 Proceedings, 1993, pp. 418–421.

[11] D. Corne, H.L. Fang, C. Mellish, Solving the module exam schedul-ing problem with genetic algorithms, Proceedings of the Sixth Inter-national Conference, Industrial and Engineering Applications ofArtificial Intelligence and Expert Systems, Gordon and BreachScience Publishers, 1993, pp. 370–373.

[12] E. Rich, K. Knight, Artificial Intelligence, McGraw-Hill, 1991.[13] S.M. Selim, An algorithm for constructing a university faculty time-

table, Computer Education 6 (1982) 323–332.[14] S.M. Selim, An algorithm for producing course and lecturer time-

tables, Computer Education 7 (2) (1983) 101–108.[15] S.M. Selim, Computer algorithm for constructing the departmental

timetable, Computer Education 18 (4) (1992) 293–299.[16] L.F. Kwok, S.C. Kong, Y.Y. Kam, Time-tabling in Hong Kong

secondary schools, Computers and Education 28 (3) (1997) 173–183.

S.C. Kong, L.F. Kwok / Knowledge-Based Systems 12 (1999) 81–93 93

Fig. 19. Multiple teachers and classes as an aggregate.

Fig. 20. The scheduling engine.