I successfully amended the nice CloudBalancing example to include the fact that I may only have a limited number of computers open at any given time (thanx optaplanner team - easy to do). I believe this is referred to as a bounded-space problem. It works dandy.
The processes come in groupwise, say 20 processes in a given order per group. I would like to amend the example to have optaplanner also change the order of these groups (not the processes within one group). I have therefore added a class ProcessGroup
in the domain with a member List<Process>
, the instances of ProcessGroup
being stored in a List<ProcessGroup>
. The desired optimisation would shuffle the members of this List, causing the instances of ProcessGroup
to be placed at different indices of the List List<ProcessGroup>
. The index of ProcessGroup
should be ProcessGroup.index
.
The documentation states that "if in doubt, the planning entity is the many side of the many-to-one relationsship." This would mean that ProcessGroup
is the planning entity, the member index
being a planning variable, getting assigned to (hopefully) different integers. After every new assignment of indices, I would have to resort the list List<ProcessGroup
in ascending order of ProcessGroup.index
. This seems very odd and cumbersome. Any better ideas?
Thank you in advance!
Philip.