Ограничение более чем одного IntVarArray

Я работаю с несколькими IntVarArray в модели таким образом, что между их элементами есть взаимозависимости. Это правильный способ использовать их в качестве параметра для метода MakePhase?

var nr = 10;
var fLoc = s.MakeIntVarArray(nr, 0, 1);
var gLoc = s.MakeIntVarArray(nr, 0, 1);
// ... create other arrays

// ... constrain the arrays

// collect them
var decisions = new IntVarVector();

decisions.AddRange(fLoc);
decisions.AddRange(gLoc
//... add other arrays to decisions

// call MakePhase
solver.MakePhase(decisions, ...);

1 ответ

Да, это работает.

Пожалуйста, убедитесь, что заказ правильный или выберите стратегию выбора переменной, которая является динамической, например, CHOOSE_MIN_SIZE_LOWEST_MIN.

Другие вопросы по тегам