Discussion:
[schooltool] which is a harder algorithm: "timetabling" or "scheduling?"
Tom Hoffman
2006-10-16 23:22:40 UTC
Permalink
I'm becoming puzzled by the fact that I only find applications to
automatically generate timetables--meaning which classes meet when and
where and taught by whom, and I don't find applications that
automatically build the rosters for those classes based on a list of
students and their individual needs. This suggests to me that
scheduling algorithms are either so much easier than timetabling as to
be considered a trivial problem, or it is so much harder than
timetabling that nobody wants to do it.

I personally did timetabling and scheduling by hand once, and in that
case scheduling was by far the more difficult task, but was an unusual
case--it was a summer program where there were only two periods and
four different classes offered, but I needed to carefully manage the
demographic balance of all the sections.

I do think that creating a good interface for doing scheduling
interactively is much harder than an interactive timetabler.

Thoughts?

--Tom
Andrew Smart
2006-10-16 23:22:40 UTC
Permalink
or"scheduling?"
I'm becoming puzzled by the fact that I only find applications to
automatically generate timetables--meaning which classes meet when and
where and taught by whom, and I don't find applications that
automatically build the rosters for those classes based on a list of
students and their individual needs. This suggests to me that
scheduling algorithms are either so much easier than timetabling as to
be considered a trivial problem, or it is so much harder than
timetabling that nobody wants to do it.
I don't think that the complexity of the algorithm is the cause. Both
generation algorithms are n-dimensional optimisation algorithms, which
have to follow a lot of restrictions.

I think is the question of use cases and users: most planning is done
in schools, often from teachers. And they are focused to get at least
one sensible school plan which has no conflicts and satisfies some of
the requierements all involved people have: no classes on mondays of
fridays, lectures not starting before 10:00 o'clock, and please nothing
later than 17:00 o'clock. Especially not on Mondays or Fridays. No holes
between the lecutures, and the walking distance not more than 50m from
the office of the individual teacher. Besides, of course, the lecture
before lunch: then it's okay when the room is near the cafeteria to be
first in the line. The director of the school (who is also teaching
some classes) has also highest priority :)

Since you are teacher yourself, you have to satisfy at least some
of the requirements, or you'll get hit by your colleagues and nobody
offers you a coffee again :)

On the other side: the pupils and/or students are the most
underpriviliged people in the educational system. They don't get
software to build up a good time table, and the restriction
"must be good/sensible time table for student" usually gets a
low priority in the optimisation/time table generation process.

To stress this point: when I did the Portuguese project I also
talked once with my university about a new version of the planning
software for them (to combine the efforts). I offered the university
a web based access so that the students can easily pick their seminars
and do their own time table planning. The responsible professor said:
this is clearly not wanted. The students are intelligent enough to
solve the problem manually, we won't help them with software. This is
a good intellectual challenge and a good introduction into the
university, and the students-of-today are all lazy, we won't support
intellectual laziness (continue the rant for 15 minutes...).

That you could use such a system to optimize the use of rooms,
give the professor a feedback about the count of students who are
going to visit the seminar, that it could be used to communicate
lecture supporting papers digital instead on paper (saving costs)
and 10 other good reasons to do this was not important.
I personally did timetabling and scheduling by hand once, and in that
case scheduling was by far the more difficult task, but was an unusual
case--it was a summer program where there were only two periods and
four different classes offered, but I needed to carefully manage the
demographic balance of all the sections.
I do think that creating a good interface for doing scheduling
interactively is much harder than an interactive timetabler.
From my point of view it is the same task, but with a different
view, and other optimisation targets. Or, in other words: you have
different dimensions and the priority of the restrictions is
quite different from the normal use case "time table planning".

This use case is less often required. Most schools have consistent
classes, which are moved in one group through the different terms
to support social bindings between the pupils/students.

The currently offered generation stuff is often written by teachers
themselfes, some of them are then put into commercial packages. So
you find the most often required use case often: generate/manually
plan time tables for whole classes, and the optimisation bottle-necks
are:
Primary: rooms / time & day / teachers / capacity / all lectures covered
Secondary: see above ;)

Regards,
Andrew
Tom Hoffman
2006-10-16 23:22:40 UTC
Permalink
On Tue, 27 Jul 2004 11:19:04 +0200, Andrew Smart
Post by Andrew Smart
To stress this point: when I did the Portuguese project I also
talked once with my university about a new version of the planning
software for them (to combine the efforts). I offered the university
a web based access so that the students can easily pick their seminars
this is clearly not wanted. The students are intelligent enough to
solve the problem manually, we won't help them with software. This is
a good intellectual challenge and a good introduction into the
university, and the students-of-today are all lazy, we won't support
intellectual laziness (continue the rant for 15 minutes...).
Keep in mind that universities are not our primary target. In US K-12
schools it is very uncommon for students to sign themselves up for
classes, building their own timetable. That's standard for
universities, however.
Post by Andrew Smart
This use case is less often required. Most schools have consistent
classes, which are moved in one group through the different terms
to support social bindings between the pupils/students.
That's not so much the case in the US, beyond elementary school,
although one of the main thrusts of the current wave of school reform
here (including that funded by the Gates Foundation) is to create
schools that restore those social bindings. Most US high schools in
the past 50 years try to optimize individual student schedules without
much regard for maintaining coherent social groups, except in some
cases where age segregation is strictly enforced. Even where social
coherence is a priority, students are often mixed in various ways to
allow them to take electives and other special cases.

--Tom
Scott W Fischer
2006-10-16 23:22:40 UTC
Permalink
Post by Tom Hoffman
I'm becoming puzzled by the fact that I only find applications to
automatically generate timetables--meaning which classes meet when and
where and taught by whom, and I don't find applications that
automatically build the rosters for those classes based on a list of
students and their individual needs. This suggests to me that
scheduling algorithms are either so much easier than timetabling as to
be considered a trivial problem, or it is so much harder than
timetabling that nobody wants to do it.
http://formulus.com/ypsched/ has a program that fills scheduled classes based
on an overall "happiness" score. It's one philosophy. It also appears to
handle pre-requisite requirements.

The big problem this one has is that it has no notion of fulfillment
requirements. We're using the program as-is to do our 2004-2005 CCD
scheduling and are targetting putting a web registration front-end on by the
2005-2006 registration date.

- -swf

Continue reading on narkive:
Search results for '[schooltool] which is a harder algorithm: "timetabling" or "scheduling?"' (Questions and Answers)
5
replies
How do airlines schedule flights?
started 2010-08-14 23:10:55 UTC
air travel
Loading...