I am trying to construct a program of events for a little athletics
centre. Children in their respective agegroups/genders compete in
selected events over a season of 16 weeks (i.e. COMPETITIONDAY = 16).
I have the following variables:
var eventstart{d in COMPETITIONDAY, (agegroup,eventid) in EVENTGROUPS},
>=competitondaystarttime[d], <=competitondayfinishtime[d];
var eventfinish{d in COMPETITIONDAY,(agegroup,eventid) in EVENTGROUPS},
<=competitondayfinishtime[d];
var event{d in COMPETITIONDAY,(agegroup,eventid) in EVENTGROUPS},
binary;
I need to ensure that events can't be scheduled simultaneously - i.e. an
agegroup cannot be at 2 events at the same time. There are no
particular precedence constraints or due date requirements. I am trying
to maximize the number of events conducted for each agegroup across the
season where each competition day is of a fixed duration. There are
numerous other constraints regarding access to resources at the centre
(i.e. the sprint track, the discus, etc.)
I am having a lot of trouble trying to work how to avoid conflicts. The
following constraint is obviously incorrect for multiple reasons (i.e.
strict inequality and invalid type due to trying to compare variables -
as far as I understand).
s.t. ev{d in COMPETITIONDAY, (agegroup,eventid) in EVENTGROUPS}:
eventstart[d,agegroup,eventid] > {agegroup1 in ATHLETES:
agegroup1<>agegroup} eventstart[d,agegroup1,eventid];
What I am trying to say here is that there can only be one agegroup
undertaking a specific event during the time of that event.
I would appreciate any assistance or pointers to general formulations
for this type of problem.
I acknowledge that this help forum may not be the most appropriate place
for such a question and if so, would be grateful for any suggestions.
Regards, Alex
_______________________________________________
Help-glpk mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/help-glpk