* every call of this method we remove nearly the same events
* where percentage increases the length of this 'same Event'
* - list.
*/
private void randomHCPreparation(double percentageOfChanges, boolean shuffleBeforeRemoving) {
AssignmentManager assMngr;
for (int assMngrIndex = clusterArray.size() - 1; assMngrIndex >= 0; assMngrIndex--) {
assMngr = clusterArray.get(assMngrIndex);
int size = assMngr.getAll().size();
if (size == 0)
continue;
// clone it for the for-loop!
List<Assignment> coll = new ArrayList<Assignment>(assMngr.getAll());
int TI_BORDER = (int) Math.round(size * percentageOfChanges);
int index = random.nextInt(size);
for (int counter = 0; counter < TI_BORDER; index++, counter++) {
if (index >= size)
index = 0;