УДК 004.832.34
МЕТОДЫ АБДУКТИВНОГО ВЫВОДА С ИСПОЛЬЗОВАНИЕМ ПЕРВИЧНЫХ ИМПЛИКАТ И СИСТЕМ ПОДДЕРЖКИ ИСТИННОСТИ НА ОСНОВЕ ПРЕДПОЛОЖЕНИЙ
В. Н. Вагин, д. т. н., профессор Тел.: (915) 239 9103, e-mail: [email protected] К. Ю. Хотимчук, аспирант Тел.: (916) 562 7324, e-mail: [email protected])
Московский Энергетический Институт (Технический Университет)
www.mpei.ru.
The methods of abductive inference in intellectual systems are discussed. The algorithms of abductive inference AAA and ImpAA are developed. The modification of algorithm AAA for the planning task solving, AAA\M, is developed. The heuristics for algorithm AAA is developed. The results of the experiments held of designing schedules for energy storage plants have confirmed the efficiency of the AAA algorithm and the heuristics.
Рассматриваются методы абдуктивного вывода в интеллектуальных системах. Разработаны алгоритмы аб-дуктивного вывода: AAA и ImpAA. Разработана модификация алгоритма AAA для решения задачи планирования -AAA\M. Разработана эвристика для алгоритма AAA. Результаты экспериментов, проведенных на примере задачи составления расписаний для энергохранилищ, подтвердили эффективность алгоритма AAA и эвристики.
Ключевые слова: абдукция, интеллектуальные системы, принятие решений, “системы поддержки истинности, основанные на предположениях”, минимальное абдуктивное объяснение.
Key words: abduction, intelligent systems, decision making, assumption-based truth maintenance systems, minimal abductive explanation.
Работа выполнена при финансовой поддержке РФФИ (проект № 08-07-00212a).
Введение
Абдуктивный вывод заключается в выводе причины из наблюдаемого события и является выводом от частного к частному. Схематично абдуктивный вывод можно представить следующим образом. Пусть имеется правило A ^ B и известно, что имеет место событие B . Тогда, по абдукции, делаем заключение о том, что, быть может, имеет место и A . На сегодняшний день вывод по абдукции успешно применяется для решения задач диагностики[1], понимания естественного языка[2], распознавания, накопления знаний, составления расписаний и, несомненно, является очень важной частью интеллектуальных систем.
Авторы считают, что в данной работе новыми являются следующие положения и результаты: разработаны два алгоритма абдуктивного вывода с использованием систем поддержки истинности, основанных на предположениях (Assumption-based Truth Maintenance Systems, ATMS), и подхода первичных импликат; для алгоритма абдуктивного вывода с использованием систем поддержки истинности, основанных на предположениях, разработана модификация и предложена эвристика. На примере задачи составления расписаний для энергохранилищ проведено сравнение этих алгоритмов и показано преимущество алгоритма AAA.
1. Основные понятия ATMS. Большое количество самых различных задач искусственного интеллекта не может быть решено с использованием лишь вывода из посылок, поэтому при их решении большую важность приобретает возможность добавлять в базу данных факты, от которых можно будет отказаться позже. Эти соображения привели к созданию систем поддержки истинности (Truth-Maintenance System, TMS) [3-11]. Общие особенности TMS состоят в том, что в ходе вывода решений приходится делать предположения о предметной области, причем истинность этих предположений не может быть установлена в данный момент. TMS, основанные на предположениях (ATMS), являются семейством TMS, представляющим только хорновские дизъюнкты.
К достоинствам ATMS [6-11] следует отнести тот факт, что она сохраняет все выведенные промежуточные результаты, что значительно повышает эффективность поиска решений с возвратами. Принципы работы с обоснованиями являются наиболее простыми среди методов данной группы: обработка обоснований сводится к операциям над множествами. ATMS ориентированна на логику предикатов первого порядка. Выводимым заключениям сопоставляются качественные характеристики, составленные из списков обоснований, причем в ATMS каждое обоснование содержит не только список посылок правила, исходя из которого было получено заключение, но и список предположений, принятие которых позволило его вывести. Основные функции ATMS заключаются в построении обоснований заключений, исходя из обоснований посылок применяемых правил, а также в анализе обоснований противоречий. Вывод противоречия говорит о несовместности предположений, в рамках которых сделан вывод.
2. Алгоритм абдуктивного вывода, использующий ATMS. Назовем алгоритм абдуктивного вывода, использующий ATMS, как ATMS-based Abduction Algorithm (AAA) [12]. На вход алгоритма поступает исходное множество дизъюнктов и наблюдаемое событие, которое необходимо объяснить. На выходе получается множество абдуктивных объяснений этого события. Сначала создается вершина GOAL (операция создания вершины ATMS), а наблюдаемое событие добавляется в ATMS как обоснование GOAL (операция добавления обоснования в ATMS). Процедура Assume добавляет для вершины, помеченной некоторой литерой, вершину-предположение, содержащую эту же литеру (операция добавления предположения в ATMS). Таким образом, реализуется допущение об истинности литеры для вершины. Далее, начиная с GOAL, в ход вступают процедуры ProcessNode и ProcessJustification, рекурсивно вызывающие друг друга. В процедуре ProcessNode для каждого обоснования текущего узла запускается механизм ProcessJustifi-cation. В процедуре ProcessJustification происходит собственно добавление новых вершин в ATMS: для каждой вершины n текущего обоснования, помеченной литерой N, ищется дизъюнкт —X1 v ——X2...—X¡ vN , и к вершине n добавляется обоснование x1,x2,...xk ^ n, где x1,x2,...xk - это вершины, помеченные литерами X1,X2,...X¡ соответственно (операция добавления обоснования в ATMS). Если в процессе унификации аргументы текущего обоснования изменяются, то обоснование копируется, и унификация и добавление новых узлов происходят с копией обоснования. Это необходимо для того, чтобы не потерять текущее обоснование как часть решения. После того, как дерево построено, вычисляется метка на узле GOAL, которая представляет собой множество минимальных абдуктивных объяснений.
3. Алгоритм абдуктивного вывода с помощью первичных импликат ImpAA. Следующим методом, который мы рассматриваем в данной работе, является метод вывода с помощью первичных импликат[13, 14], которому мы дали название ImpAA (Implicate Abductive Algorithm). Для нахождения множества <L, Ф> - первичных импликат формулы Е применяется алгоритм SOL-резолюции (skipping ordered linear - линейная упорядоченная резолюция с перемещением), основанный на работах Ковальски и Кунера [15]. Неформально, суть его такова: пусть формула Ф допускает дизъюнктивное представление S, тогда последовательно осуществляется резолюция формулы Е с дизъюнктами из S до того момента, пока не окажется, что полученный к данному моменту дизъюнкт D уже нельзя прорезольвировать ни с одним из дизъюнктов S. Для того чтобы не допустить вывод дизъюнктов, не являющихся первичными импликатами, в алгоритме используется механизм обрамления литеры, по которой имело место резольвирование [11].
4. Модифицированный алгоритм AAA\M. Задача планирования заключается в нахождении поведения объекта или системы в будущем, причем такое поведение должно привести к заранее заданной цели и удовлетворять заданным ограничениям. Результатом решения задачи планирования является множество действий, которые позволяют достичь требуемой цели. Абдук-тивный вывод успешно применяется при решении задачи планирования, в качестве наблюдаемого события выступает цель планирования. А в качестве правил - описание и ограничения предметной области. Искомое множество действий вычисляется как причина наблюдаемого события.
Большинство задач планирования могут формулироваться как нахождение/вычисление решения-кандидата с последующей его проверкой на различные условия предметной области. Очень часто процесс проверки на условие заключается в просмотре имеющихся дизъюнктов в базе знаний для того, чтобы удостовериться, что выводимое решение не противоречит этим условиям. Мы адаптировали алгоритм AAA под такого рода особенности предметной области. Мо-
дифицированный алгоритм получил название ЛЛЛ\М. Кроме того, мы разработали эвристику, которая 1) ускоряет процесс нахождения дизъюнкта, которому данное решение противоречит, для случая когда требуется, чтобы решение не противоречило всем условиям базы знаний, 2) ускоряет процесс нахождения дизъюнкта, которому данное решение не противоречит, для случая когда требуется, чтобы решение не противоречило хотя бы одному условию базы знаний. Даная эвристика заключается в перестановке литер в исходных дизъюнктах таким образом, что аргументы, от значений которых зависят значения других аргументов, будут означиваться как можно раньше, что приведет к сокращению числа порождаемых вершин. Будем называть модификацию алгоритма AAA\M, которая перед работой самого алгоритма осуществляет перестановку литер в исходных дизъюнктах согласно эвристике, как AAA\M\H.
5. Задача о составлении расписания для энергохранилищ. Существует множество приложений задачи абдукции. В этой главе будет рассмотрена классическая задача о составлении расписания для энергохранилищ [16].
Есть компания, которая занимается поставками электричества. В распоряжении этой компании имеется сеть электростанций, каждая из которых содержит несколько элементов хранения энергии. Эти элементы необходимо хранить в энергохранилищах в течение года. Задача состоит в составлении такого расписания, чтобы риск нехватки энергии был как можно меньше.
Итак, пусть имеется список энергохранилищ. Требуется определить расписание работы каждого энергохранилища. На решение накладывается ряд ограничений. Предстартовое условие для энергохранилища выполнено, если согласованы начальная неделя, конечная неделя и продолжительность хранения. Ограничение на возможность хранения элементов энергии выполнено, если хранение элемента энергии в энергохранилище производится за пределами ограничивающих промежутков. Ограничение на неодновременность периодов хранения элементов энергии заключается в том, что не разрешено перекрывать некоторые периоды хранения из-за технических особенностей системы энергохранилищ. Ограничение на одновременность заключается в том, что некоторые хранилища должны работать одновременно. Ограничение целостности состоит в том, что различные хранения для одного элемента не должны перекрываться. Кроме заданных ограничений в задаче ставятся условия на получение такого расписания, чтобы энергия расходовалась наиболее экономно, и, главное, чтобы риск нехватки энергии был минимален. Требуется распределить элементы энергии так, чтобы их число на каждой электростанции не превышало заданного для электростанции максимума.
6. Результаты экспериментов. Для тестирования разработанного программного комплекса используется множество дизъюнктов, соответствующее задаче о пленировании энергохранилищ. Ставился следующий эксперимент. Число энергохранилищ изменялось от 1 до 50. В зависимости от этого количества множество дизъюнктов пополнялось соответствующими правилами для новых энергохранилищ. Требовалось найти все минимальные абдуктивные объяснения вводимых запросов. Эксперимент проводился на машине Core 2 Duo 2,20 GHz.
Так, например, для случая пяти энергохранилищ, для варианта без эвристики (AAA\M) мы получаем 32 решения с общим числом выводимых вершин, равным 12952, за время 0,5 сек. Для варианта с использованием эвристики (AAA\M\H) мы получаем те же самые решения с общим числом выводимых вершин, равным 9925, за время 0,39 сек. Таким образом, для рассмотренного примера получен выигрыш в 1,3 раза по числу вершин, и в 1,28 по времени.
При увеличении объема задачи также получаем стабильный выигрыш во времени и по числу вершин. Для 50 энергохранилищ алгоритм AAA\M\H по сравнению с алгоритмом AAA\M дает выигрыш в 1,3 раза по времени. При этом общее число выводимых вершин алгоритма AAA\M составило 140524, а общее число выводимых вершин алгоритма AAA\M\H - 104537, что означает выигрыш по числу вершин в 1,34 раза.
Далее, для 50 энергохранилищ алгоритм AAA\M по сравнению с алгоритмом ImpAA дает выигрыш во времени в 4 раза. При этом общее число литер в выводимых дизъюнктах алгоритма ImpAA - 562524, что так эе в 4 раза больше по сравнению с AAA\M. Таким образом, экспериментально показано, что метод AAA\M работает эффективнее, чем метод ImpAA, в силу того, что алгоритм AAA не требует копирования уже имеющихся в процессе вывода литер для составления новых дизъюнктов.
Заключение
В данной работе рассмотрено применение систем поддержки истинности, основанных на
предположениях, в организации абдуктивного вывода. Предложены алгоритм AAA, использующий ATMS, и алгоритм AAA\M\H, использующий эвристический метод выбора начального порядка в исходных дизъюнктах. Предложен алгоритм ImpAA, использующий первичные импли-каты. Проведено сравнение этих алгоритмов. Это сравнение показало, что на машине Core 2 Duo 2.20 GHz для решения задачи составления расписаний при 50 энергохранилищах алгоритм AAA\M\H по сравнению с алгоритмом AAA\M во времени дает выигрыш 1,28 и 1,34 по числу вершин. Алгоритм же AAA\M по сравнению с алгоритмом ImpAA дает четырехкратный выигрыш по времени и по числу вершин. Таким образом, алгоритм AAA\M\H работает эффективнее, чем алгоритм AAA\M, который, в свою очередь, эффективнее, чем алгоритм ImpAA.
Литература
1. Cox P.T. and Pietrzykowski T. General diagnosis by abductive inference // Proc. IEEE Sympos. Logic Programming. San Francisco. 1987. P. 183-189.
2. Hobbs J., StickelM.E., Appelt D. et al. Interpretation as abduction // Artificial Intelligence. 1993. 63(1 -2). P. 69-142.
3. Doyle J. A Truth Maintenance System // Artificial Intelligence. 1979. V.12. P. 231-272.
4. McAllester D. An Outlook on Truth Maintenance. Cambridge: MIT. 1980. P. 44.
5. McAllester D. Truth Maintenance // Proc. AAAI-90. Boston. 1990. P. 1109-1116.
6. de Kleer J. An Assumption-based TMS // Artificial Intelligence. 1986. V. 28. P. 127-162.
7. de Kleer J. Extending the ATMS // Artificial Intelligence. 1986. V.28. P. 163-196.
8. Reiter R., de Kleer J. Foundations of Assumption-based Truth Maintenance Systems // Proc. AAAI-87, Washington. 1987. P. 183-189.
9. de Kleer J. Problem Solving with the ATMS // Artificial Intelligence. 1986. V. 28. P. 197-224.
10. Castro J. L., Zurita J. M. A Generic ATMS // International Journal of Approximate Reasoning. 1996. V. 14. P. 259-280.
11. Вагин В. Н., Головина Е. Ю., Загорянская А. А. и др. Достоверный и правдоподобный вывод в интеллектуальных системах / Под ред. Вагина В.Н. и Поспелова Д. А. -М.: ФИЗМАТЛИТ, 2008. - 712 с.
12. Hwee Tou Ng, Mooney R. J. An Efficient First-Order Horn-Clause Abduction System Based on the ATMS // Proc. AAAI-91. Anaheim C. A. 1991. P. 494-499.
13. Marquis P. Consequence finding algorithms // Handbook for Defeasible Reasoning and Uncertain Management Systems, eds. D. M. Gabbay and P. Smets. 2000. V. 5. P. 41-145.
14. Вагин В. Н., Хотимчук К. Ю. Нахождение минимальных абдуктивных объяснений с помощью первичных импликат // Тр. 11й национальной конференции по искусственному интеллекту с международным участием (КИИ-2008. г. Дубна, Россия). 2008. Т. 2. P. 345-355.
15. Kowalski R., Kuhner D. Linear resolution with selection function // Artificial Intelligence. 1971. V. 2. P. 227-260.
16. Denecker M., Kakas A. Abduction in Logic Programming // Computational Logic: Logic Programming and Beyond, Essays in Honour of Kowalski R.A., P. I, London, UK: Springer-Verlag. 2002. V. 2407. P. 402-437.
УДК: 004.85
ИССЛЕДОВАНИЕ НЕЙРОСЕТЕВЫХ АЛГОРИТМОВ ОБУЧЕНИЯ В ИНТЕЛЛЕКТУАЛЬНЫХ ЭВОЛЮЦИОННЫХ СИСТЕМАХ
Л. Г. Комарцова, д. т. н., профессор кафедра Компьютерные системы и сети ЭИУ-2КФ Тел: (906) 642 8003, e-mail: [email protected] Ю. Н. Лавренков, студент Тел: (910) 608 0184, e-mail: [email protected] МГТУ им. Н.Э. Баумана (Калужский филиал) http://bmstu.kaluga.ru