Понятие искусственного интеллекта. Экспертные системы. Знания.
ИИ - способность компьютерных систем к таким действиям, которые назывались бы интеллектом, если бы исходили от человека. В настоящее время выделяют 2 подхода к ИИ:
-экспертные системы
-нейронные сети
Знания – это закономерности предметной области (принципы, связи, законы), полученные в результате практической деятельности и профессионального опыта, позволяющие специалистам ставить и решать задачи в этой области.
База знаний – это семантическая модель, описывающая предметную область и позволяющая отвечать на такие вопросы из этой предметной области, ответы на которые в явном виде не присутствуют в базе.
База знаний включает один или несколько специальным образом организованных файлов, хранящих систематизированную совокупность понятий, правил и фактов, относящихся к некоторой предметной области. Ее содержимое оформляется, связывается между собой и представляется таким образом, чтобы на его основе можно было с помощью специальных программ осуществлять рассуждения и делать выводы, получая сведения, которые в явном виде могут не присутствовать в базе знаний.
База знаний является основным компонентом экспертных систем.
Экспертная система – это компьютерная программа, способная заменить специалиста-эксперта в решении проблемной ситуации.
В экспертных системах основными моделями представления знаний являются продукционные модели и фреймы.
Продукционная модель – это модель, основанная на представлении знания в виде правил "Если (условие), то (действие)".
Под "условием" понимается некоторое предложение-образец, по которому осуществляется поиск в базе знаний, а под "действием" – действия, выполняемые при успешном исходе поиска.
При использовании продукционной модели исходные факты – данные – хранятся в базе фактов, а набора правил – в базе знаний. На основе базы фактов запускается машина вывода или интерпретатор правил. Это программа, управляющая перебором правил из базы знаний.
Фрейм – это абстрактный образ для представления некого стереотипа восприятия.
Различают фреймы-классы, хранящиеся в базе знаний, и фреймы–экземпляры, которые создаются для отображения реальных фактических ситуаций на основе поступающих данных.
Фрейм-образ содержит набор атрибутов – слотов. В фрейме-экземпляре слотам присваиваются конкретные значения.
Области применения и классы задач, решаемых экспертными системами. Примеры широко используемых экспертных систем.
Можно выделить следующие основные классы задач, решаемых экспертными системами:
· диагностика,
· прогнозирование,
· идентификация,
· управление,
· проектирование,
· мониторинг.
Наиболее широко встречающиеся области деятельности, где используются экспертные системы:
· медицина,
· вычислительная техника,
· военное дело,
· микроэлектроника,
· радиоэлектроника,
· юриспруденция,
· экономика,
· экология,
· геология (поиск полезных ископаемых),
· математика.
Примеры широко известных и эффективно используемых (или использованных в свое время) экспертных систем:
DENDRAL - ЭС для распознавания структуры сложных органических молекул по результатам их спектрального анализа (считается первой в мире экспертной системой),
MOLGEN - ЭС для выработке гипотез о структуре ДНК на основе экспериментов с ферментами,
XCON - ЭС для конфигурирования (проектирования) вычислительных комплексов VAX-11 в корпорации DEC в соответствии с заказом покупателя;
MYCIN - ЭС диагностики кишечных заболеваний;
PUFF - ЭС диагностики легочных заболеваний;
MACSYMA - ЭС для символьных преобразований алгебраических выражений;
YES/MVS - ЭС для управления многозадачной операционной системой MVS больших ЭВМ корпорации IBM;
DART - ЭС для диагностики больших НМД корпорации IBM;
PROSPECTOR - ЭС для консультаций при поиске залежей полезных ископаемых;
POMME - ЭС для выдачи рекомендаций по уходу за яблоневым садом;
набор экспертных систем для управления планированием, запуском и полетом космических аппаратов типа "челнок";
ЭСПЛАН - ЭС для планирования производства на Бакинском нефтеперерабатывающем заводе;
МОДИС - ЭС диагностики различных форм гипертонии.
Экспертная оболочка ESWin.
ESWin — программная оболочка-интерпретатор для работы с продукционно-фреймовыми экспертными системами. Описываемая программная оболочка предназначена для решения задач обратного логического вывода на основе фреймов и правил-продукций. В пакете ESWin используются фреймы трех типов: фрейм-класс, фрейм-экземпляр и фрейм-шаблон. В общем виде фрейм-класс выглядит следующим образом:
FRAME Имя фрейма
Имя слота 1: (значения слота 1)
Имя слота 2: (значения слота 2)
…
Имя слота n: (значения слота n)
ENDFR
При конкретизации фрейма ему и слотам присваиваются конкретные имена, и происходит заполнение слотов. Таким образом, из фреймов-классов получаются фреймы-экземпляры.. Фреймы-экземпляры составляют базу данных. База данных предназначена для временного хранения фактов или гипотез, являющихся промежуточными решениями или результатом общения экспертной системы с внешней средой, в качестве которой обычно выступает человек, ведущий диалог с экспертной системой.
В пакете ESWin правило выглядит как:
RULE Номер правила
Условие 1
.....
Условие n
DO
Заключение 1
......
Заключение m
ENDR
где условие — это образец, по которому осуществляется поиск в базе знаний, а заключение — действия или процедуры, выполняемые при успешном исходе поиска (могут быть промежуточными, выступающими далее как условия, или целевыми, завершающими работу системы и являющимися результатом решения задачи).
База знаний содержит набор фреймов и правил-продукций.
Формат внешнего представления базы знаний пакете ESWin:
TITLE = ‹название экспертной системы›
COMPANY = ‹название предприятия›
FRAME
‹описание фрейма›
ENDF
…
FRAME
‹описание фрейма›
ENDF
RULE 1
‹описание условий правила›
DO
‹описание заключений правила›
ENDR
…
RULE n
‹описание условий правила›
DO
‹описание заключений правила›
ENDR
Интерпретация правил начинается с выбора цели логического вывода. В качестве цели логического вывода используются целевые слоты, содержащиеся во фрейме-классе со специальным именем "Цель".
Далее определяется правило, в заключении которого присутствует выбранный целевой слот.
После определения правила начинается его интерпретация (перебор и проверка условий). При проверке условия ищется соответствующий слот. Первоначальный поиск выполняется в базе данных. Если слот имеет значение, то оно используется при проверке условия. Если значения нет, то значение слота запрашивается у пользователя, с использованием меню выбора символьных значений, или окна для ввода численного значения, или того и другого в случае слота лингвистического типа.
База знаний состоит из двух частей: постоянной и переменной. Переменная часть базы знаний называется базой данных (или базой фактов) и состоит из фактов, полученных в результате логического вывода. Факты в базе данных не являются постоянными. Их количество и значение зависит от процесса и результатов логического вывода.
До начала работы с экспертной оболочкой база знаний находится в текстовом файле. В файле с расширением *.klb (KnowLedge Base) хранятся фреймы и правила-продукции (база знаний).
При работе с программной оболочкой (после загрузки в оперативную память базы знаний) фреймы и правила-продукции, находившиеся в файле с расширением *.klb, остаются неизменными. Факты, находившиеся в файле с расширением *.dtb, могут изменяться в процессе логического вывода (появляться, удаляться или менять свое значение в результате срабатывания правил-продукций или диалога с пользователем).