Используйте IntVar в качестве индекса массива IntVar [] в ограничении - PullRequest
0 голосов
/ 11 июня 2019

Я хочу использовать значение IntVar в качестве индекса другого массива IntVar в ограничении, используя Choco Solver.

У меня есть IntVar, который содержит следующую задачу, которая следует за i-й задачей ИУ меня есть другой IntVar, который содержит человека, назначенного для задачи.Мое ограничение состоит в том, чтобы обеспечить преемственность в распределении задач.

Это то, что я уже пробовал, но это не удалось:

model.distance(person[i], person[next[i].getValue()], "=", 0).post();

1 Ответ

1 голос
/ 12 июня 2019

Решение заключается в использовании IntConstraintFactory.element (значение IntVar, таблица int [], индекс IntVar, смещение int).

В моем случае:

model.element(person[i], person, next[i], 0).post();
...