On Tue, 28 May 2013, Roland Roberts wrote:
The basic problem is that I classes c, student groups g, time periods p, and
days d. We're breaking each day into 15-minute "modules" which have to be
schedule. A class has to span 3-8 modules on any give day. Some classes have
a minimum number of modules per week that have to be completed. With just the
above, I can specify the constraints by thinking of this as a 4-dimensional
array X[c,g,p,d] and the constraints are various sums. The problem I run into
is specifying the the continuity constraint on scheduling. It's not
sufficient to have 3 modules for class C1, they have to be 3 contiguous
modules.
How do I specify this sort of thing?
Is each class a fixed length?
If so, the start time determines the end time.
Your array works if p, d refer to the start times.
If c1, g1 requires 4 periods and c2, g2 requires 7 periods:
If c1, g1 starts in period p1, then c2, g2 may not start in p1-6..p1+3
p1+3
SUM X[c2, g2, k, d] <= 1-X[c1, g1, p1, d] for c2, g2, d, c1, g1, p1...
k=p1-6
I've neglected the beginning and end of the day.
--
Michael [email protected]
"On Monday, I'm gonna have to tell my kindergarten class,
whom I teach not to run with scissors,
that my fiance ran me through with a broadsword." -- Lily
_______________________________________________
Help-glpk mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/help-glpk