Разработка экспертных систем имеет ряд существенных
отличий от разработки обычного программного продукта. Опыт создания
экспертных систем показал, что использование при их разработке
методологии, принятой в традиционном программировании, либо сильно
увеличивает количество времени, затраченного на создание экспертных
систем, либо вовсе приводит к отрицательному результату.
Экспертные системы в общем случае подразделяются на статические и динамические.
Для начала рассмотрим статическую экспертную систему.
Стандартная статическая экспертная система состоит из следующих основных компонентов:
1) рабочей памяти, называемой также базой данных;
2) базы знаний;
3) решателя, называемого также интерпретатором;
4) компонентов приобретения знаний;
5) объяснительного компонента;
6) диалогового компонента.
Рассмотрим теперь каждый компонент более подробно.
Рабочая память (по абсолютной аналогии с рабочей,
т. е. оперативной памятью компьютера) предназначена для получения и
хранения исходных и промежуточных данных решаемой в текущий момент
задачи.
База знаний предназначена для хранения
долгосрочных данных, описывающих конкретную предметную область, и
правил, описывающих рациональное преобразование данных этой области
решаемой задачи.
Решатель, называемый также интерпретатором,
функционирует следующим образом: используя исходные данные из рабочей
памяти и долгосрочные данные из базы знаний, он формирует правила,
применение которых к исходным данным приводит к решению задачи. Одним
словом, он действительно «решает» поставленную перед ним задачу;
Компонент приобретения знаний автоматизирует
процесс заполнения экспертной системы знаниями эксперта, т. е. именно
этот компонент обеспечивает базу знаний всей необходимой информацией из
данной конкретной предметной области.
Компонент объяснений разъясняет, как система
получила решение данной задачи, или почему она это решение не получила и
какие знания она при этом использовала. Иначе говоря, компонент
объяснений создает отчет о проделанной работе.
Данный компонент является очень важным во всей
экспертной системе, поскольку он значительно облегчает тестирование
системы экспертом, а также повышает доверие пользователя к полученному
результату и, следовательно, ускоряет процесс разработок.
Диалоговый компонент служит для обеспечения
дружественного интерфейса пользователя как в ходе решения задачи, так и в
процессе приобретения знаний и объявления результатов работы.
Теперь, когда мы знаем, из каких компонент в общем
состоит статистическая экспертная система, построим диаграмму,
отражающую структуру такой экспертной системы. Она имеет следующий вид: Статические
экспертные системы чаще всего используются в технических приложениях,
где можно не учитывать изменения окружающего среды, происходящие во
время решения задачи. Любопытно знать, что первые экспертные системы,
получившие практическое применение, были именно статическими.
Итак, на этом закончим пока рассмотрение статистической экспертной системы, перейдем к анализу экспертной системы динамической.
К сожалению, в программу нашего курса не входит
подробное рассмотрение этой экспертной системы, поэтому ограничимся
разбором только самых основных отличий динамической экспертной системы
от статических.
В отличие от статической экспертной системы в структуру динамической экспертной системы дополнительно вводятся два следующих компонента:
1) подсистема моделирования внешнего мира;
2) подсистема связей с внешним окружением.
Подсистема связей с внешним окружением как раз и осуществляет связи с внешним миром. Делает она это посредством системы специальных датчиков и контроллеров.
Помимо этого, некоторые традиционные компоненты
статической экспертной системы подвергаются существенным изменениям, для
того чтобы отобразить временную логику событий, происходящих в данный
момент в окружающей среде.
Это главное различие между статической и динамической экспертными системами.
Пример динамической экспертной системы – управление производством различных медикаментов в фармацевтической промышленности.
|