The screens you saw were of an older version of the
loader that doesn't have the cool real-time functionality we came up with
this year.
Your holy grail scheduler is a cool concept and
would benefit students, but I don't know if I've met a principal with enough
balls to try that approach. I don't like the tenure concept and all the
seniority perks that affect resource optimization, but it a necessary
evil.
> I notice a search depth field, what is a
common value for this? How deep do you suggest a school go?
I use a meta-heuristic combinatorial optimization
algorithm that integrates concepts of tabo search. The heart of the
algorithm is a recursive function to traverse the solution space. Search
depth represents the number of recursive branches that the algorithm will
explore per request, and a typical number is 6. For example, a depth 3
solution is will move one roster, to move one roster, to place a request
into the hole. The key to a fast algorithm is the heuristics (decision
rules) that tell it where to go. You don't want to have to explore all 100,000
tries like an enumerated search.
> I also notice a switch for seat stealing. I'm
not sure what you mean by this. It sound from the PDF on scheduling that you
take seats from students that have incomplete schedules, rather than trying to
reschedule an already scheduled student. In my scheduler I don't give rejected
students any seats, there is no point to it, so I'm really not stealing
seats.
If you are actually taking seats from scheduled
students (rescheduling them of course) I would like to know what is the expected
effect of this on the run. I.a. say in a typical large high school of 2000
students, how many more students would be schedule with this option vs. with out
it?
In mass scheduling, we place as many rosters as we
can, even students that have a hard conflict. Any student with a
conflict will have to be touched by a guidance counselor, so seat stealing
reduces this to the bare minimum. Before stealing a seat, the loader has
tried to re-arrange every other student in the course to free up a seat in a
section that the new student can get into. It probably only adds +10
complete schedules in a typical school. If you have to touch the student
for one conflict, you might as well fix two while you are at it. We have a
servlet version of our loader for the walk-in scheduler, so they swap in a
couple alternate requests and click load.
Dave |