Проектирование оболочек экспертных систем

Оболочка экспертной системы включает интерфейс с пользователем и компоненту логического вывода

Ядро оболочки – механизм логического вывода МЛВ. Интерфейс с пользователем чаще всего выполняется в виде систем иерархических меню, и в настоящее время прилагаются значительные усилия для построения естественно-языковых интерфейсов.

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

- поясняющие средства,

- редактор для построения правил,

- средства трассировки для отладки программ,

- библиотеки проверенных ранее программ,

- электронная почта и др.,

- правила работы с неопределенностью.

Инструментальные средства оболочки должны обеспечивать:

- ведение БЗ,

- логический вывод,

- объяснение вывода,

- просмотр моделей предметной области,

- ведение словаря терминов и набора параметров.

Достаточно просто и удобно для разработки оболочек использовать язык Пролог.

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

Способы рассуждения при наличии неопределенности:

- нечеткая логика,

- коэффициенты уверенности,

- взвешивание свидетельств,

- байесовский подход.

Особенность оболочки – жесткая связь с форматами представления знаний БЗ. Рассмотрим влияние форматов представления знаний в БЗ на возможности построения правил МЛВ на Прологе. Один из вариантов оболочки – использование двух различных форматов для представления правил Пролога:

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

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

Интерфейс с пользователем обеспечивает форматирование запросов пользователя и позволяет определить цель, либо цель как комбинацию подцелей. Далее решается задача поиска целей среди фактов БЗ или применения правил из БЗ. В оболочку может быть включен модуль, обеспечивающий работу электронной почты. Например, в оболочке GURU имеется модуль связи Information manager communication. В режиме Setup устанавливаются основные параметры: тип порта, скорость передачи информации, управление буфером и временем, выбирается тип протокола передачи данных (X модем) указывается состояние монитора, указываются номера телефона, открывается доступ к линии (OPEN LINE Access).

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

 

 

Структура оболочки ЭС.

То же что и 65

Генетические алгоритмы.

Генетические алгоритмы (ГА) есть поисковые алгоритмы, основанные на механизмах натуральной селекции и натуральной генетики. Они реализуют «выживание сильнейших» среди рассмотренных структур, формируя и изменяя поисковый алгоритм на основе моделирования эволюции [1-7].

Основой для возникновения генетических алгоритмов считается модель биологической эволюции и методы случайного поиска [ 6, 7 ]. Один из известных специалистов в мире в области случайного поиска и стохастической оптимизации Растригин пишет [ 6 ]. Случайный поиск (СП) возник как реализация простейшей модели эволюции, когда случайные мутации моделировались случайнымишагами оптимального решения, а отбор “уходом” неудачных вариантов. Например, для прикладных оптимизационных задач

Растригин выделяет три особенности алгоритма эволюции:

– каждая новая популяция состоит только из “жизнеспособных” хромосом;

– каждая новая популяция “лучше” (в смысле целевой функции) предыдущей;

– в процессе эволюции последующая популяция зависит только от предыдущей [ 7 ].

Согласно [7] природа, реализуя эволюцию, как бы решает оптимизационную задачу на основе случайного поиска. Выделяется три основных бионических эвристики случайного поиска:

– клеточный СП,

– моделирование целесообразного поведения особей,

– моделирование передачи наследуемой биологической информации.

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

Простой генетический алгоритм был впервые описан Гольдбергом на основе работ Холланда [1,2]. Механизм простого ГА (ПГА) несложен. Он копирует последовательности и переставляет их части. Предварительно ГА случайно генерирует популяцию последовательностей – стрингов (хромосом). Затем ГА применяет множество простых операций к начальной популяции и генерирует новые популяции. ПГА состоит из 3 операторов: репродукция, кроссинговер, мутация. Р е п р о д у к ц и я - процесс, в котором хромосомы копируются согласно их целевой функции (ЦФ). Копирование хромосом с «лучшим» значением ЦФ имеет большую вероятность для их попадания в следующую генерацию. Оператор репродукции (ОР), является искусственной версией натуральной селекции, “выживания сильнейших” по Дарвину. После выполнения ОР оператор кроссинговера (ОК) может выполниться в 3 шага. На первом шаге члены нового репродуцированного множества хромосом выбираются сначала. Далее каждая пара хромосом (стрингов) пересекается по следующему правилу: целая позиция k вдоль стринга выбирается случайно между l и длиной хромосомы меньше единицы т.е. в интервале (1,L-1). Длина L хромосомы это число значащих цифр в его двоичном коде. Число k, выбранное случайно между первым и последним членами, называется точкой ОК или разделяющим знаком.

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

 

 

67. Участники процесса проектирования ЭС: эксперты, инженеры по знаниям, конечные пользователи

В разработке ЭС участвуют представители следующих специальностей:

эксперт в проблемной области, задачи которой будет решать ЭС;

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

программист по разработке инструментальных средств (ИС), предназначенных для ускорения разработки ЭС.

Необходимо отметить, что отсутствие среди участников разработки инженеров по знаниям (т. е. их замена программистами) либо приводит к неудаче процесс создания ЭС, либо значительно удлиняет его.

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

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

Программист разрабатывает ИС (если ИС разрабатывается заново), содержащее в пределе все основные компоненты ЭС, и осуществляет его сопряжение с той средой, в которой оно будет использовано.

Экспертная система работает в двух режимах: режиме приобретения знаний и в режиме решения задачи (называемом также режимом консультации или режимом использования ЭС).

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

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

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

"Почему система задает тот или иной вопрос?", "как ответ, собираемый системой, получен?".