Problems of Computerized Timetabling of Classes. Encoding of Input Information
Abstract Generated abstract
This paper addresses the automation of university class timetabling, focusing on the preliminary problem of encoding educational process data for computer processing. It proposes a broader program system for schedule generation, classroom assignment, decoding, reporting, and classroom utilization analysis, then develops a specific input coding procedure for the Ural-IIB computer. The authors define a source form for instructor teaching assignments, structural bit tables, coding sequences for instructors, groups, classrooms, buildings, class types, and constraints arising from combined codes. The contribution is a tested encoding scheme intended to convert timetable source documents into machine-readable assignment records for subsequent scheduling algorithms.
Full Text
PROBLEMS OF COMPUTER-AIDED SCHEDULING OF CLASSES.
ENCODING OF INPUT INFORMATION
N. M. Bylino, I. E. Nats, G. N. Tarusin
(Presented by the scientific seminar of the Department of Computer Engineering, TPI)
The compilation of a schedule of classes requires considerable expenditures of labor and time; therefore, the posing of the problem of applying computer technology to automate the processing of information in this area is entirely natural.
Automation of the compilation of a schedule of classes requires preliminary analysis in order to determine the logical structure of the algorithm and the capabilities of computing facilities. A preliminary analysis of this problem indicates the need for a comprehensive solution of the problem of automating the processing of all information connected with the educational process. In this connection, the following system of programs is proposed:
1) a program for encoding the input information;
2) a program for compiling the time grid of the schedule of classes;
3) a program for assigning the university’s classroom stock to the compiled time grid;
4) a program for decoding the compiled schedule and outputting it from the machine in various forms (university-wide, by faculties, by list of instructors, by list of groups, etc.);
5) a program of reports on the compilation of the schedule;
6) a program of reports on the use of the university’s classroom stock.
The development and introduction of the indicated system of programs will make it possible to raise the question of creating a timetable office of the university automated by means of computer technology.
In the present work, questions of encoding the input information about the educational process are considered as applied to the “Ural-IIB” electronic digital computer. The authors propose a form of a blank that records assignments to instructors (Table 1), and structural tables (Tables 2a, 2b), which make it possible to represent any line of these assignments in machine code.
\(S = qrntpww\sigma\) — a service code including:
\(q\) — a sign of the beginning of an assignment to an instructor,
\(r\) — type of class (column 3, Table 1),
\(n\) — a sign of a class with a stream (column 7, Table 1),
\(t\) — the number of pairs of hours in the planned period (column 10, Table 1),
$p$ — an indicator of classes being held with a subgroup (column 8, Table 1),
$w, \delta$ — reserve positions,
$v$ — code of the required capacity of a general classroom (column 7, Table 1),
$\zeta$ — an indicator determining that classes are to be held in a general classroom,
$a_c$ — code of a special classroom (columns 11, 12, Table 1),
$K$ — code of the building (column 4, Table 1),
$\varepsilon$ — code of the instructor (column 4, Table 1),
$\gamma$ — code of the group (column 5, Table 1),
$C_h$ — counter.
According to the indicated structure, an assignment to one instructor will have the form
\[ Q = S \varepsilon \gamma. \]
The form for distributing teaching loads among instructors (Table 1) is the principal source document when compiling the schedule. Let us dwell on the description of the basic rules whose observance is necessary when filling out the indicated form and when encoding the information.
-
In manual encoding of the input information, the upper half of a row of Table 1 is reserved for an assignment to one instructor or to two (in the case of joint and simultaneous holding of classes with one group, row 3, Table 1), and the lower half is reserved for the digital code.
-
For stream classes, it is permitted to place no more than one stream in one row (row 1, Table 1). A stream is to be understood as the joint attendance of classes by two or more groups.
-
If classes must necessarily be held at a definite time, then the note to Table 1 indicates, respectively, the day and hour of the classes.
-
In view of the combination of the codes of classrooms $a_c$ and instructors $\varepsilon$ (Table 2a), encoding should be carried out in the following sequence:
a) Special classrooms are encoded with 10-bit binary codes ($a_c$, Table 2a; columns 11, 12, Table 1). Buildings (structures) are encoded ($K$, Table 2a; column 13, Table 1), as is the required capacity of a general classroom ($v$, Table 2a; column 7, Table 1). Since $a$ and $K$ are combined, 16 of their positions (Tables 2a, 3, 4) are indicators that make it possible to distinguish them from one another;
b) Instructors are encoded in those rows in which the classes are held in special classrooms (rows 1, 4, Table 1).
Each instructor is represented by an 11-bit binary code (positions 13–23, Table 3, $\varepsilon$, Table 2a; column 4, Table 1), formed from the 10-bit code of the special classroom (positions 9–18, Table 3) and a 5-bit binary counter (positions 19–23, Table 3), registering the number of instructors in the given classroom.
c) The remaining instructors who conduct classes in general classrooms are encoded (row 3, Petrov, Table 1). Each instructor is represented by an 11-bit binary code (positions 13–23, Table 4; $\varepsilon$, Table 2a; column 4, Table 1), formed from the 4-bit code of the building (positions 13–16, Table 4) and a 7-bit binary counter (positions 17–23, Table 4), registering the number of instructors.
It should be remembered that there are restrictions arising from the combination of codes:
Table 1
Continuation of data provided for the spring semester, 1968,
Department of General Physics, telephone 6-24, building 3
| No. | Discipline name | Type of classes | Position and initials of instructor | Study groups | Study groups | Study groups | Total groups in the stream | Simultaneously present in one class: number of groups | Simultaneously present in one class: number of subgroups | Number of subgroups in group | Number of pairs of hours in the two-week plan | Requires specialized auditorium: building | Requires specialized auditorium: aud. No. | General auditorium (if desired): building | General auditorium (if desired): aud. No. | Note |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | Physics | lab. | instr. Ivanov A. A. | 10261 | 10262 | 10361 | 3 | 0 | 1 | 2 | 4 | 3 | 204 | |||
| 1100110001 | 0 | 0017 | 0020 | 0022 | 000 | 000 | 0 | 0100 | 10010110011 | |||||||
| 2 | Physics | lect. | prof. Ivanov A. A. | 10261 10364 |
10262 10163 |
10361 10162 |
6 | 6 | 0 | 3 | 8 | 101 | ||||
| 1100110001 | 1 | 0017 0025 |
0020 0015 |
0022 0014 |
110 | 1 | 0011 | |||||||||
| 3 | Physics | pr. | prof. Ivanov A. A. assoc. prof. Petrov B. |
10264 |
8151 |
2 | 1 | 0 | 6 | 10 | 403 | |||||
| 1100110001 0101000001 |
0 | 0021 |
001 | 1 | 0110 | 0101 | ||||||||||
| 4 | Physics | lect. | assoc. prof. Miroshkin G. Yu. | 8445 | 0221 | 0222 | 3 | 1 | 0 | 2 | 10 | 201 | ||||
| 0000100001 | 1 | 0201 | 1005 | 1006 | 001 | 1 | 0010 | 0000000100001 |
Table 2a
| Position | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Field | $q$ | $r$ | $n$ | $t$ | $t$ | $t$ | $p$ | $w$ | $v$ | $v$ | $v$ | $c$ | $\alpha_c$ | $\alpha_c$ | $\alpha_c$ | $\alpha_c$ | $\alpha_c$ | $\alpha_c$ | $\alpha_c$ | $C_h$ | $C_h$ | $C_h$ | $C_h$ | $C_h$ |
| Additional field | $K$ | $K$ | $K$ | $K$ | $K$ | $K$ | $K$ | $\varepsilon$ | $\varepsilon$ | $\varepsilon$ | $\varepsilon$ | $\varepsilon$ |
Table 2b
| Position | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| $S$ | ||||||||||||||||||||||||
| Field | $\gamma_1$ | $\gamma_1$ | $\gamma_1$ | $\delta$ | $\gamma_2$ | $\gamma_2$ | $\gamma_2$ | $\gamma_2$ | $\gamma_2$ | $\gamma_2$ | $\gamma_2$ | $\gamma_2$ | $\gamma_2$ | $\gamma_2$ | $\gamma_2$ | $\gamma_2$ | $\gamma_2$ | $\gamma_2$ | $\gamma_2$ | $\gamma_2$ | $\gamma_2$ | $\gamma_2$ | $\gamma_2$ | $\gamma_2$ |
Table 3
| Position | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Field | Spec. auditorium $(\alpha_c)$ | Spec. auditorium $(\alpha_c)$ | Spec. auditorium $(\alpha_c)$ | Spec. auditorium $(\alpha_c)$ | Spec. auditorium $(\alpha_c)$ | Spec. auditorium $(\alpha_c)$ | Spec. auditorium $(\alpha_c)$ | Counter $C_h$ | Counter $C_h$ | Counter $C_h$ | Counter $C_h$ | Counter $C_h$ | |||
| Field | Teacher $(\varepsilon)$ | Teacher $(\varepsilon)$ | Teacher $(\varepsilon)$ | Teacher $(\varepsilon)$ | Teacher $(\varepsilon)$ | Teacher $(\varepsilon)$ | Teacher $(\varepsilon)$ | Teacher $(\varepsilon)$ | Teacher $(\varepsilon)$ | Teacher $(\varepsilon)$ | Teacher $(\varepsilon)$ | Teacher $(\varepsilon)$ | Teacher $(\varepsilon)$ | Teacher $(\varepsilon)$ | Teacher $(\varepsilon)$ |
Table 4
| Position | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| Field | Course code $(K)$ | Course code $(K)$ | Course code $(K)$ | Course code $(K)$ | Course code $(K)$ | Course code $(K)$ | Counter $(C_h)$ | Counter $(C_h)$ | Counter $(C_h)$ | Counter $(C_h)$ | Counter $(C_h)$ |
| Field | Teacher $\varepsilon$ | Teacher $\varepsilon$ | Teacher $\varepsilon$ | Teacher $\varepsilon$ | Teacher $\varepsilon$ | Teacher $\varepsilon$ | Teacher $\varepsilon$ | Teacher $\varepsilon$ | Teacher $\varepsilon$ | Teacher $\varepsilon$ | Teacher $\varepsilon$ |
the instructor cannot conduct classes in more than one special classroom;
in one special classroom, classes may be conducted by no more than 32 instructors;
in one building, classes may be conducted by no more than 128 instructors who do not require special classrooms;
d) Encoding the remaining part of the assignment.
The code for classroom capacity ($v$, Table 2a) is used when classes are held in a general classroom. Groups are encoded by 11-bit binary codes.
Assignment code for row 1, Table 1
1 0 0 0 1 0 0 0 0 1 0 1 0 1 1 0 0 1 1 0 0 0 0 1
0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 1 0 0 0 0
0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0
Assignment code for row 2, Table 1
1 1 1 0 0 1 1 1 0 1 1 0 1 1 1 0 0 1 1 0 0 0 0 1
0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 1 0 0 0 0
0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 1 0 1 0 1
0 0 0 0 0 0 0 0 1 1 0 1 0 0 0 0 0 0 0 0 1 1 0 0
Assignment code for row 3, Table 1
1 0 0 0 1 1 0 1 0 0 0 1 1 1 1 0 0 1 1 0 0 0 0 1
1 0 0 0 1 1 0 1 0 0 0 1 1 0 1 0 1 0 0 0 0 0 0 1
0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 1 1 1 0 0 0 1
Assignment code for row 4, Table 1
1 1 0 0 0 1 0 1 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 1
0 0 0 0 1 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 1 0 1
0 0 1 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0
At present, the described method of encoding the initial information about the schedule of instructional classes is being tested on the “Ural-IIB” computer [1].
REFERENCES
- I. E. Naats. Questions of the algorithmization of compiling a time grid for the schedule of instructional classes. Izv. TPI, vol. 187, 1974.