logo search
Лекция 17

Экспертные системы

Исследователи в области искусственного интеллекта пришли к следующему фундаментальному выводу о разумном поведении вообще: оно требует колоссального количества знаний, которыми люди обладают, как чем-то само собой разумеющимся, но которые нужно постепенно "скормить" машине. Понимание даже самых простых фрагментов английского языка, например, требует знания контекста, в какой-то степени знакомства с говорящим и, наконец, знаний о мире вообще, что далеко превосходит возможности современных машинных программ. Центральная роль знаний в разумном поведении объясняет, почему до сих пор наибольшего успеха добились программы, представляющие собой "экспертов" в узкоспециализированных областях. В отличие от этого при ранних попытках создания "универсальных систем решения задач" предполагалось, что главной составляющей интеллекта является способность к логическому рассуждению. Однако эти попытки оказались менее плодотворными и в большинстве случаев от них теперь отказались.

Экспертные системы – программы, использующие специализированные базы знаний для получения достоверных заключений по какой-либо проблеме, широко применяются при решении неформализованных задач, для которых отсутствуют алгоритмы решения. Так как в реальном мире редко можно утверждать что-либо с полной уверенностью, то в процессе рассуждений экспертная система использует нечеткую логику. Для определения степени определенности утверждения в нечеткой логике используется фактор уверенности – число, обычно находящееся в интервале от 0 до 240 (похоже на теорию вероятностей). Но, в отличие от теории вероятности, фактор уверенности выражает не вероятность возникновения события, а субъективную уверенность в этом.

Правила помещаются в базу знаний. Также в базу знаний, в виде фактов, помещаются входные данные, и результаты срабатывания правил. Если ситуация, анализируемая экспертной системой, удовлетворяет условиям срабатывания правила, то его следствия считаются верными для данной ситуации. Условия правила содержат операции конъюнкции, дизъюнкции и инверсии. Если условия у двух или более правил выполняются одновременно, то необходимо выбрать следствия для дальнейшей обработки. Выбор может быть осуществлен различными способами: 1 – выбирается следствие у первого попавшегося правила; 2 – из множества допустимых правил одно следствие выбирается случайно; 3 – выбирается следствие у правила с наиболее жесткими условиями; 4 – все следствия у допустимых правил выбираются одновременно. Для обеспечения обработки многозначных лексем (последовательности допустимых символов языка, имеющих смысл) текста будем считать истинными все следствия у всех правил, у которых выполняются условия. При этом одинаковые элементы, являющиеся следствиями разных правил, объединяются операцией дизъюнкции. Следовательно, продукционная экспертная система представляет собой сеть правил. Все правила выполняются одновременно. Отдельные правила представляют собой отдельные узлы, а переменные, входящие в условия и следствия правил, представляют собой связи между узлами этой сети.

Одна из наиболее успешных программ, обладающих свойствами искусственного интеллекта, оказалась также исторически первой экспертной системой. Это программа DENDRAL, созданная Э. Фейгенбаумом и его коллегами в Стэнфордском университете в конце 60-х годов. Как и ее последователь, система GENOA, она широко используется в органико-химических лабораториях многих стран. Система DENDRAL, устанавливает структуру органических молекул, основываясь на данных масс – спектрометрии, ядерного магнитного резонанса и других видов информации. Как и MYCIN, система DENDRAL по существу является диагностической.

Принципиально иной экспертной системой является система, обладающая способностью получать новую информацию или же, основываясь на некоторых фундаментальных принципах, прийти к информации, уже известной. Примером системы подобного рода является программа EURISKO, разработанная Дугласом Ленатом совместно со студентами в Стэнфордском университете в 1976 – 1982 годах. Снабдив программу относительно небольшим количеством информации из областей, в которых она должна была работать, запустили ее в такие непохожие области, как теория множеств, военные игры, программирование ЭВМ и нейтрализация химического загрязнения.

В процессе поисков, заключающихся в синтезе, анализе и оценивании новых концепций, EURISKO управляется сотнями эвристик довольно общего характера. Например, одна из них состоит в том, чтобы "рассмотреть экстремальные случаи". Когда программа "размышляла" над функцией "делители" в теории множеств, эта эвристика привела программу к тому, чтобы рассматривать только те числа, у которых мало делителей. На этом пути система заново "открыла" простые числа, т.е. числа, которые имеют лишь два делителя, а также установила тот факт, что любое число можно единственным образом разложить на множители, являющиеся простыми числами.

Другая широко применявшаяся в системе эвристика – это "сблизить". Она советует программе рассмотреть, что произойдет с функцией двух переменных x и у, когда им присваиваются одинаковые значения. После того как EURISKO уже вывела функции сложения и умножения, основываясь на теории множеств, правило "сблизить" помогло ей открыть функцию удвоения (x плюс x) и возведения в квадрат (x умножить на x). Применив эвристику "сблизить" к игре "Трэвеллер", система EURISKO выработала новую стратегию: поврежденный противником корабль следовало бы взорвать и затопить. Поскольку правила игры определяют общую подвижность эскадры по судну, имеющему наименьшую скорость, эта стратегия помогала повысить боеспособность всей эскадры. Наконец, изучая программирование, EURISKO проанализировала функцию "x вызывает у", где x – программная секция, активирующая другую секцию у. Эвристика "сблизить" привела EURISKO к определению важного понятия – рекурсивных вызовов, когда программа может вызвать (активировать) саму себя.

От использования эвристик для открытия (или "переоткрытия") новых понятий или фактов теоретически недалеко до того, чтобы генерировать новые эвристики на основе старых. Этот шаг связан с тем, что давно считается главной целью исследований в области искусственного интеллекта, – с созданием программ, способных обучаться на опыте, приобретаемом ими в ходе выполнения. Перспектива создания более "разумных" обучающихся программ в значительной степени зависит от того, будут ли найдены пути использования такого важнейшего источника, каким для человеческого интеллекта является способность к пониманию и рассуждению посредством аналогии. Если внимательно поразмыслить над тем, как рассуждают люди, то нетрудно будет прийти к выводу, что в процессе объяснения, понимания или создания новых понятий они постоянно пользуются аналогиями. В программах искусственного интеллекта использование этого источника в настоящее время лишь только начинается, однако в будущих исследованиях оно, несомненно, будет в центре внимания.