Труды КНЦ вып. 11 (ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ) вып. 8/2020 (11)

Таблица 8. Реализация ограничения alldifferent_except_0 в популярных библиотеках Constraint Programming Библиотека Choco GeCode JaCoP MiniZinc Имя ограничения alldifferent_ except 0 alldifferente xcept 0 alldifferentexcept 0 alldifferent_ except 0 all_equal ( V ) - значения переменных из множества V должны быть одинаковы [7]. Пример 8 : Пусть V Е {0, ..., 6 }, V 2 Е {0, 1, 2}, V 3 Е {0, 1, 2}, V 4 Е {1, ..., 4}, тогда всеми решениями, удовлетворяющими ограничению all_equal({V1, V2, V3, V4}) будут: 1 . V = 1 , V 2 = 1 , V 3 = 1 , V 4 = 1 . 2. V 1 = 2, V 2 = 2, V 3 = 2, V 4 = 2. Это ограничение имеет реализацию в популярных системах(библиотеках) программирования в ограничениях (таблица 9). Таблица 9. Реализация ограничения all_equal в популярных библиотеках Constraint Programming Библиотека Choco GeCode JaCoP MiniZinc Имя ограничения atMostNValue Rel allequal all equal nvalue ( n , V ) - количество непересекающихся значений в множестве переменных V должно быть равно n [8]. Пример 9: Пусть n Е {1, 2}, V 1 Е {2, 3, 4}, V 2 Е {1, 2}, V 3 Е {2, 3, 4}, тогда всеми решениями, удовлетворяющими ограничению nvalue(n, {V 1 , V 2 , V 3 }) будут: 1. n = 1, V 1 = 2, V 2 = 2, V 3 = 2. 2. n = 2, V 1 = 2, V 2 = 1, V 3 = 2. 3. n = 2, V 1 = 2, V 2 = 2, V 3 = 3. 4. n = 2, V 1 = 2, V 2 = 2, V 3 = 4. 5. n = 2, V 1 = 3, V 2 = 1, V 3 = 3. 6. n = 2, V 1 = 3, V 2 = 2, V 3 = 2. 7. n = 2, V 1 = 3, V 2 = 2, V 3 = 3. 8. n = 2, V 1 = 4, V 2 = 1, V 3 = 4. 9. n = 2, V 1 = 4, V 2 = 2, V 3 = 2. 10. n = 2, V 1 = 4, V 2 = 2, V 3 = 4. Это ограничение имеет реализацию в популярных системах(библиотеках) программирования в ограничениях (таблица 10). 76

RkJQdWJsaXNoZXIy MTUzNzYz