Hey, folks -- I'm trying to wrap my head around Optaplanner by extending
the nurse-rostering example (for my wife, who's a nurse in a group that
needs a rostering solution, as it happens).
I've got a couple of approach/philosophy questions I haven't yet found
addressed in the docs, and I'm hoping someone could help direct me.
- How best to constrain a problem: Say I've got six people to schedule
and Employee A *must* work every Tuesday night and alternate Friday nights,
while the other five people should fill in the remaining shifts as best
they can with the other soft constraints I'm specifying. From my initial
reading, I'm thinking the best approach will be to specify an "only Tuesday
and alt Fridays" <Contract> in the scoreRules.xml (with an accompanying DRL
rule to match whether or not the particular employee is working shifts
other than those) and then specify it as a "hard" constraint for that
particular employee. Do I have that right, or is there some way to remove
those shifts entirely from the problem space, since we already know ahead
of time how they'll be allocated?
- A similar question would come up around Christmas, New Years, Arbor
Day, etc, to wit: if we know before the problem ever runs which employees
are supposed to be working those, what's the recommended approach to
pre-setting an employee into those particular shifts before trawling the
solution space?
Apologies if these are naive questions -- I suppose I could/should have
started with one of the easier examples, but, well, real world needs and
all.
Thanks!
Adam
Show replies by date