Задача виконання обмежень
Зада́ча викона́ння обме́жень (Constraint satisfaction problem) (ЗВО) — це математичні проблеми, визначені як сукупність об'єктів, стан яких має задовільняти ряду обмежень. ЗВО представляє сутності проблеми як однорідний набір обмежень, що накладаються на змінні, які розв'язуються методами виконання обмежень. ЗВО є предметом інтенсивних досліджень і в галузі штучного інтелекту, і дослідженні операцій, оскільки закономірності у формулюванні цих задач складають загальну основу для аналізу та вирішення проблем в багатьох неспоріднених областях. ЗВО часто мають високу складність, що вимагає поєднання евристичних та комбінаторних методів пошуку для швидкого вирішення.
Приклади простих задач, які можуть розглядатись як задачі виконання обмежень: Задача про вісім ферзів, Проблема чотирьох фарб, Судоку.
В загальному випадку, проблема виконання обмежень може бути складнішою і не зводитись до цих простих систем.
Формальне визначення
Формально задача виконання обмежень визначається трійкою , де — множина змінних, — область значень і — множина обмежень. Кожне обмеження, своєю чергою, є парою (зазвичай представляються матрицею), де — кортеж з змінних та — -місне відношення . Оцінка змінної — це функція, що відображає множину змінних на область значень, . Оцінка задовільняє обмеження якщо . Розв'язок — це оцінка, що задовільняє всім обмеженням.
Розв'язання
Задача виконання обмежень на скінченних областях зазвичай вирішується за допомогою алгоритмів пошуку. Найчастіше використовуються пошук з поверненнями, з обмеженням глибини та локальний пошук.
Пошук з вертанням — це рекурсивний алгоритм. Він підтримує часткове означення змінних. Спочатку всі змінні невизначені. На кожному кроці обираємо змінну та по черзі перебираємо всі можливі її значення. Кожне значення з послідовності зіставляється з обмеженнями; при невідповідності значення обмеженням рекурсивний виклик не виконується. Коли всі значення було переглянуто, алгоритм повертається. В цьому простому алгоритмі з поверненнями під відповідністю розуміємо задоволення всіх обмежень, всі змінні яких були визначені. Існує кілька варіантів повернення. Пошук з вертанням підвищує ефективність перевірки відповідності. Пошук з вертанням дозволяє в деяких випадках пришвидшити пошук за рахунок виключення «більше ніж однієї змінної».
Теоретичні аспекти задачі виконання обмежень
Проблеми розв'язання
Задачі виконання обмежень також вивчаються в теорії складності обчислень та теорії кінцевої моделі. Важливе питання полягає в тому, що для кожного набору відношень, множина всіх задач виконання обмежень, що може бути представлена лише за допомогою відношень з цієї множини, є P- або NP-повною задачею. Якщо така дихотомічна теорема справедлива, то задачі виконання обмежень забезпечують одну з найбільших відомих підмножин складності NP, що дозволяє уникнути проміжних задач NP-складності, існування якої було продемонстровано в теоремі ладнері в припущенні, що P ≠ NP. Дихотомічна теорема Шафера оброблює той випадок, коли всі наявні відношення є логічними операторами, тобто множина значень має розмір 2. Дихотомічна теорема Шафера була узагальнена до ширшого класу відношень.[1]
Див. також
Примітки
- Bodirsky, Manuel; Pinsker, Michael (2010). Schaefer's theorem for graphs. CoRR. abs/1011.2894: 2894. Bibcode:2010arXiv1011.2894B. arXiv:1011.2894.
Використані посилання
- Tsang, Edward (1993). Foundations of Constraint Satisfaction. Academic Press. ISBN 0-12-701610-4
- Chen, Hubie (December 2009). A Rendezvous of Logic, Complexity, and Algebra. ACM Computing Surveys (ACM) 42 (1): 1–32. doi:10.1145/1592451.1592453.
- Dechter, Rina (2003). Constraint processing. Morgan Kaufmann. ISBN 1-55860-890-7
- Apt, Krzysztof (2003). Principles of constraint programming. Cambridge University Press. ISBN 0-521-82583-0
- Lecoutre, Christophe (2009). Constraint Networks: Techniques and Algorithms. ISTE/Wiley. ISBN 978-1-84821-106-3
- Tomás Feder, Constraint satisfaction: a personal perspective, manuscript.
- Constraints archive
- Forced Satisfiable CSP Benchmarks of Model RB
- Benchmarks — XML representation of CSP instances
- Dynamic Flexible Constraint Satisfaction and Its Application to AI Planning, Ian Miguel — slides.
- Constraint Propagation — Dissertation by Guido Tack giving a good survey of theory and implementation issues