ORTOOLS CP SAT — XOR и И комбинированные

#or-tools #cp-sat-solver

#или-инструменты #cp-sat-решатель

Вопрос:

Я все еще изучаю ORTOOLS CP-SAT, который является отличным инструментом! Я сталкиваюсь с трудностями при выполнении булевых операций. Например, в Python у меня есть массив из массива выражений (я имею в виду BoundedLinearExpression), организованный следующим образом:

     my_list = [ [ a<5, b>3, c>5 ],
                [ d>8, e<=3, f a=10 ],
                 ...
              ]

 

Я хочу сделать логическое И по каждой строке… а затем XOR по всем результатам, которые я получил. Я понятия не имею, как это сделать.
Кто-нибудь знает ответ?
Спасибо за вашу помощь

      # it should end this way:
     model.AddBoolXOr(???)
 

Комментарии:

1. Также обратите внимание, что XOr это не то же самое, что sum(...) == 1 ?

Ответ №1:

Начните с чтения этого раздела документа

Вам необходимо создать логические переменные для всех ограниченных линейных выражений.