Я кандидат наук в области интеллектуального анализа данных, и мне нужно создать глобальное ограничение с помощью ORtools для целей интеллектуального анализа данных.
Проблема в том, что в Интернете нет документации по созданию собственного глобального ограничения с помощью CP-Sat, и я не знаю, с чего начать.
Очевидно, что это возможно, но очень утомительно и очень сложно.
Написание нового ограничения подразумевает:
Последние 3 элемента крайне подвержены ошибкам, и их очень трудно отлаживать, так как эффект сокращений и пояснений задерживается, а иногда и вовсе не используется.
По этой причине я рекомендую расширить ограничение на более мелкие. На самом деле, большинство ограничений CP расширены (все различия, элементы, таблицы, резервуары, инверсии, автоматы, некоторые продукты, некоторые модули).
Вы также можете отправить запрос функции для нового ограничения. Это может произойти, если это полезно/достаточно общее.
Спасибо
Насколько я знаю, невозможно создать свои собственные новые пользовательские ограничения с помощью OR-Tools SAT Solver. Вы можете сделать это с помощью старого Google.OrTools.ConstraintSolver, под этим вопросом есть ответ: stackoverflow.com/questions/48146639/… (который в основном является дубликатом вашего...)