355 500 произведений, 25 200 авторов.

Электронная библиотека книг » авторов Коллектив » Базы данных: конспект лекций » Текст книги (страница 12)
Базы данных: конспект лекций
  • Текст добавлен: 6 октября 2016, 00:12

Текст книги "Базы данных: конспект лекций"


Автор книги: авторов Коллектив


Жанр:

   

Базы данных


сообщить о нарушении

Текущая страница: 12 (всего у книги 12 страниц)

2. Структура экспертных систем

Разработка экспертных систем имеет ряд существенных отличий от разработки обычного программного продукта. Опыт создания экспертных систем показал, что использование при их разработке методологии, принятой в традиционном программировании, либо сильно увеличивает количество времени, затраченного на создание экспертных систем, либо вовсе приводит к отрицательному результату.

Экспертные системы в общем случае подразделяются на статические и динамические.

Для начала рассмотрим статическую экспертную систему.

Стандартная статическая экспертная система состоит из следующих основных компонентов:

1) рабочей памяти, называемой также базой данных;

2) базы знаний;

3) решателя, называемого также интерпретатором;

4) компонентов приобретения знаний;

5) объяснительного компонента;

6) диалогового компонента.

Рассмотрим теперь каждый компонент более подробно.

Рабочая память (по абсолютной аналогии с рабочей, т. е. оперативной памятью компьютера) предназначена для получения и хранения исходных и промежуточных данных решаемой в текущий момент задачи.

База знаний предназначена для хранения долгосрочных данных, описывающих конкретную предметную область, и правил, описывающих рациональное преобразование данных этой области решаемой задачи.

Решатель, называемый также интерпретатором, функционирует следующим образом: используя исходные данные из рабочей памяти и долгосрочные данные из базы знаний, он формирует правила, применение которых к исходным данным приводит к решению задачи. Одним словом, он действительно «решает» поставленную перед ним задачу;

Компонент приобретения знаний автоматизирует процесс заполнения экспертной системы знаниями эксперта, т. е. именно этот компонент обеспечивает базу знаний всей необходимой информацией из данной конкретной предметной области.

Компонент объяснений разъясняет, как система получила решение данной задачи, или почему она это решение не получила и какие знания она при этом использовала. Иначе говоря, компонент объяснений создает отчет о проделанной работе.

Данный компонент является очень важным во всей экспертной системе, поскольку он значительно облегчает тестирование системы экспертом, а также повышает доверие пользователя к полученному результату и, следовательно, ускоряет процесс разработок.

Диалоговый компонент служит для обеспечения дружественного интерфейса пользователя как в ходе решения задачи, так и в процессе приобретения знаний и объявления результатов работы.

Теперь, когда мы знаем, из каких компонент в общем состоит статистическая экспертная система, построим диаграмму, отражающую структуру такой экспертной системы. Она имеет следующий вид:

Статические экспертные системы чаще всего используются в технических приложениях, где можно не учитывать изменения окружающего среды, происходящие во время решения задачи. Любопытно знать, что первые экспертные системы, получившие практическое применение, были именно статическими.

Итак, на этом закончим пока рассмотрение статистической экспертной системы, перейдем к анализу экспертной системы динамической.

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

В отличие от статической экспертной системы в структуру динамической экспертной системы дополнительно вводятся два следующих компонента:

1) подсистема моделирования внешнего мира;

2) подсистема связей с внешним окружением.

Подсистема связей с внешним окружением как раз и осуществляет связи с внешним миром. Делает она это посредством системы специальных датчиков и контроллеров.

Помимо этого, некоторые традиционные компоненты статической экспертной системы подвергаются существенным изменениям, для того чтобы отобразить временную логику событий, происходящих в данный момент в окружающей среде.

Это главное различие между статической и динамической экспертными системами.

Пример динамической экспертной системы – управление производством различных медикаментов в фармацевтической промышленности.

3. Участники разработки экспертных систем

В разработке экспертных систем участвуют представители различных специальностей. Чаще всего конкретную экспертную систему разрабатывают трое специалистов. Это, как правило:

1) эксперт;

2) инженер по знаниям;

3) программист по разработке инструментальных средств.

Разъясним обязанности каждого из приведенных здесь специалистов.

Эксперт – это специалист в той предметной области, задачи которой и будут решаться при помощи этой конкретной разрабатываемой экспертной системы.

Инженер по знаниям – это специалист по разработке непосредственно экспертной системы. Используемые им технологии и методы называются технологиями и методами инженерии знаний. Инженер по знаниям помогает эксперту выявить из всей информации предметной области ту информацию, которая необходима для работы с конкретной разрабатываемой экспертной системой, а затем структурировать ее.

Любопытно, что отсутствие среди участников разработки инженеров по знаниям, т. е. замена их программистами, либо приводит к неудаче всего проекта создания конкретной экспертной системы, либо значительно увеличивает сроки ее разработки.

И, наконец, программист разрабатывает инструментальные средства (если инструментальные средства разрабатываются заново), предназначенные для ускорения разработки экспертных систем. Эти инструментальные средства содержат в пределе все основные компоненты экспертной системы; также программист осуществляет сопряжение своих инструментальных средств с той средой, в которой она будет использоваться.

4. Режимы работы экспертных систем

Экспертная система работает в двух основных режимах:

1) в режиме приобретения знаний;

2) в режиме решения задачи (называемом также режимом консультаций, или режимом использования экспертной системы).

Это логично и понятно, ведь сначала необходимо как бы загрузить экспертную систему информацией из той предметной области, в которой ей предстоит работать, это и есть режим «обучения» экспертной системы, режим, когда она получает знания. А уже после загрузки всей необходимой для работы информации следует и сама работа. Экспертная система становится готовой для эксплуатации, и ее теперь можно использовать для консультаций или для решения каких-либо задач.

Рассмотрим более подробно режим приобретения знаний.

В режиме приобретения знаний работу с экспертной системой осуществляет эксперт при посредничестве инженера по знаниям. В этом режиме эксперт, используя компонент приобретения знаний, наполняет систему знаниями (данными), которые, в свою очередь, позволяют системе в режиме решения уже без участия эксперта решать задачи из данной предметной области.

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

А теперь рассмотрим второй режим функционирования экспертной системы, т. е. режим решения задач.

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

5. Продукционная модель знаний

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

Итак, начнем подробное рассмотрение понятия продукционной модели знаний.

Традиционная продукционная модель знаний включает в себя следующие базовые компоненты:

1) набор правил (или продукций), представляющих базу знаний продукционной системы;

2) рабочую память, в которой хранятся исходные факты, а также факты, выведенные из исходных фактов при помощи механизма логического вывода;

3) сам механизм логического вывода, позволяющий из имеющихся фактов, согласно имеющимся правилам вывода, выводить новые факты.

Причем, что любопытно, количество таких операций может быть бесконечно.

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

Если попытаться схематично изобразить продукционную модель знаний, то под продукцией понимается выражение следующего вида:

(i) Q; P; A → B; N;

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

Приведем простой пример: покупка тетради» или «набор цветных карандашей. Очевидно, что каждую продукцию обычно именуют словами, подходящими для данного момента. Проще говоря, называют вещи своими именами.

Идем дальше. Элемент Q характеризует сферу применения данной конкретной продукционной модели знаний. Такие сферы легко выделяются в сознании человека, поэтому с определением данного элемента, как правило, сложностей не возникает. Приведем пример.

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

Разумеется, что основным элементом продукции является ее так называемое ядро, которое в нашей приведенной выше формуле обозначалось как А → В. Эта формула может быть интерпретирована, как «если выполняется условие А, то следует выполнить действие В».

Если же мы имеем дело с более сложными конструкциями ядра, то в правой части допускается следующий альтернативный выбор: «если выполняется условие А, то следует выполнить действие В1, иначе следует выполнить действие В2».

Однако интерпретация ядра продукционной модели знаний может быть различной и зависеть от того, что будет стоять слева и справа от знака секвенции «→». При одной из интерпретаций ядра продукционной модели знаний секвенция может истолковываться в обычном логическом смысле, т. е. в качестве знака логического следования действия В из истинного условия А.

Тем не менее возможны и другие интерпретации ядра продукционной модели знаний. Так, например, А может описывать какое-то условие, выполнение которого необходимо для того, чтобы можно было совершить некое действие В.

Далее рассмотрим элемент продукционной модели знаний Р.

Элемент Р определяется, как условие применимости ядра продукции. Если условие Р истинно, то ядро продукции активизируется. В противном случае, если условие Р не выполняется, т. е. оно ложно, ядро не может быть активизировано.

В качестве наглядного примера рассмотрим следующую продукционную модель знаний:

«Наличие денег»; «Если хочешь купить вещь А, то следует заплатить в кассу ее стоимость и предъявить чек продавцу».

Смотрим, если условие Р истинно, т. е. покупка оплачена и чек предъявлен, то ядро активизируется. Покупка совершена. В случае если в этой продукционной модели знаний условие применимости ядра ложно, т. е. если нет денег, то применить ядро продукционной модели знаний невозможно, и оно не активизируется.

И переходим, наконец, к элементу N.

Элемент N называется постусловием продукционной модели данных. Постусловие задает действия и процедуры, которые необходимо выполнить после реализации ядра продукции.

Для лучшего восприятия приведем простой пример: после покупки вещи в магазине необходимо в описи товаров этого магазина уменьшить на единицу количество вещей такого типа, т. е. если покупка совершена (следовательно, реализовано ядро), то в магазине стало на одну единицу данного конкретного товара меньше. Отсюда постусловие «Вычеркнуть единицу купленного товара».

Подводя итог, мы можем сказать, что представление знаний в виде набора правил, т. е. посредством использования продукционной модели знаний, имеет следующие преимущества:

1) это простота создания и понимания отдельных правил;

2) это простота механизма логического выбора.

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


    Ваша оценка произведения:

Популярные книги за неделю