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

Таблица 6. Реализация ограничения global_cardinality в популярных библиотеках Constraint Programming Библиотека Choco GeCode JaCoP MiniZinc Имя ограничения globalCardinality count Gcc globalcardinality alldifferent(V) - значения переменных из множества V должны быть различны между собой [ 6 ]. Пример 6: Пусть V 6 {2, 3, 4}, V 2 6 {2, 3}, V 3 6 {1, ..., 6 }, V 4 6 {2, ..., 5}, V 5 6 {2, 3}, V6 6 {1, ..., 6 }, тогда всеми решениями, удовлетворяющими ограничению all_different({V\, V 2 , V 3 , V 4 , V 5 , V 6 }) будут: 1. V = 4, V 2 = 2, V 3 = 1, V 4 = 5, V 5 = 3, V 6 = 6 . 2. V = 4, V 2 = 2, V 3 = 6 , V 4 = 5, V 5 = 3, V 6 = 1. 3. V = 4, V 2 = 3, V 3 = 1, V 4 = 5, V 5 = 2, V 6 = 6 . 4. V = 4, V = 3, V = 6 , V = 5, V 5 = 2, V = 1. Это ограничение имеет реализацию в популярных системах(библиотеках) программирования в ограничениях (таблица 7). Таблица 7. Реализация ограничения all_different в популярных библиотеках Constraint Programming Библиотека Choco GeCode JaCoP MiniZinc Имя ограничения allDifferent Linear alldifferentl alldiffl alldistinct a lldifferent alldifferent_except_0(V) - значения переменных из множества V должны быть различны, за исключением элементов, равных 0 [ 6 ]. Пример 7: Пусть V 6 {0, ..., 4}, V 6 {1, 2}, V 6 {1, 2}, V 6 {0, 1}, тогда всеми решениями, удовлетворяющими ограничению alldifferent_except_0({V1, V 2 , V 3 , V 4 }) будут: 1 . V = 0 , V 2 = 1 , V 3 = 2 , V 4 = 0 . 2 . V = 0 , V 2 = 2 , V 3 = 1 , V 4 = 0 . 3. V 1 = 3, V 2 = 1, V 3 = 2 , V 4 = 0. 4. V = 3, V 2 = 2, V 3 = 1, V 4 = 0. 5. V = 4, V 2 = 1, V 3 = 2, V 4 = 0. 6. V1 = 4, = 2, V 3 = 1, V 4 = 0. Это ограничение имеет реализацию в популярных системах(библиотеках) программирования в ограничениях (таблица 8). 75

RkJQdWJsaXNoZXIy MTUzNzYz