Проектирование оболочек экспертных систем
Оболочка экспертной системы включает интерфейс с пользователем и компоненту логического вывода
Ядро оболочки – механизм логического вывода МЛВ. Интерфейс с пользователем чаще всего выполняется в виде систем иерархических меню, и в настоящее время прилагаются значительные усилия для построения естественно-языковых интерфейсов.
Существуют различные варианты построения оболочек, в основном оболочки проблемно ориентированы, что обусловлено особенностями структуризации знаний БЗ, которая связывается с оболочкой. Оболочка включает все необходимые средства для эксплуатации компонентов ЭС, но средства представления знаний ограничены определенным форматом и соответственно ограничен класс задач. В оболочку могут входить:
- поясняющие средства,
- редактор для построения правил,
- средства трассировки для отладки программ,
- библиотеки проверенных ранее программ,
- электронная почта и др.,
- правила работы с неопределенностью.
Инструментальные средства оболочки должны обеспечивать:
- ведение БЗ,
- логический вывод,
- объяснение вывода,
- просмотр моделей предметной области,
- ведение словаря терминов и набора параметров.
Достаточно просто и удобно для разработки оболочек использовать язык Пролог.
Оболочка предполагает использование определенных структур знаний и соответственно жесткого формата для представления данных проектных решений при разработке проблемной БЗ. Логический вывод требует обращения к БЗ и активного диалога с пользователем с целью получения дополнительной информации необходимой для принятия решения. Правила включают порождение вариантов и их оценку. Порождение вариантов реализуется с помощью синтаксических конструкций, а их оценка может основываться в зависимости от уровня знаний на эвристике. Эвристические оценки неточные, отражают качественный характер преобразования. В ЭС используются эвристические методы решения задач. Используются различные алгебры для отработки факторов уверенности.
Способы рассуждения при наличии неопределенности:
- нечеткая логика,
- коэффициенты уверенности,
- взвешивание свидетельств,
- байесовский подход.
Особенность оболочки – жесткая связь с форматами представления знаний БЗ. Рассмотрим влияние форматов представления знаний в БЗ на возможности построения правил МЛВ на Прологе. Один из вариантов оболочки – использование двух различных форматов для представления правил Пролога:
- формат, в котором указывается имя правила, список номеров условий, используемых в правиле, имя файла с проектным решением, либо имя предиката, выполнение которого приводит к получению решения;
формат, в котором описываются условия необходимые для реализации правила.
Интерфейс с пользователем обеспечивает форматирование запросов пользователя и позволяет определить цель, либо цель как комбинацию подцелей. Далее решается задача поиска целей среди фактов БЗ или применения правил из БЗ. В оболочку может быть включен модуль, обеспечивающий работу электронной почты. Например, в оболочке 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. Участники процесса проектирования ЭС: эксперты, инженеры по знаниям, конечные пользователи
В разработке ЭС участвуют представители следующих специальностей:
эксперт в проблемной области, задачи которой будет решать ЭС;
инженер по знаниям - специалист по разработке ЭС (используемые им технологию, методы называют технологией (методами) инженерии знаний);
программист по разработке инструментальных средств (ИС), предназначенных для ускорения разработки ЭС.
Необходимо отметить, что отсутствие среди участников разработки инженеров по знаниям (т. е. их замена программистами) либо приводит к неудаче процесс создания ЭС, либо значительно удлиняет его.
Эксперт определяет знания (данные и правила), характеризующие проблемную область, обеспечивает полноту и правильность введенных в ЭС знаний.
Инженер по знаниям помогает эксперту выявить и структурировать знания, необходимые для работы ЭС; осуществляет выбор того ИС, которое наиболее подходит для данной проблемной области, и определяет способ представления знаний в этом ИС; выделяет и программирует (традиционными средствами) стандартные функции (типичные для данной проблемной области), которые будут использоваться в правилах, вводимых экспертом.
Программист разрабатывает ИС (если ИС разрабатывается заново), содержащее в пределе все основные компоненты ЭС, и осуществляет его сопряжение с той средой, в которой оно будет использовано.
Экспертная система работает в двух режимах: режиме приобретения знаний и в режиме решения задачи (называемом также режимом консультации или режимом использования ЭС).
В режиме приобретения знаний общение с ЭС осуществляет (через посредничество инженера по знаниям) эксперт. В этом режиме эксперт, используя компонент приобретения знаний, наполняет систему знаниями, которые позволяют ЭС в режиме решения самостоятельно (без эксперта) решать задачи из проблемной области. Эксперт описывает проблемную область в виде совокупности данных и правил. Данные определяют объекты, их характеристики и значения, существующие в области экспертизы. Правила определяют способы манипулирования с данными, характерные для рассматриваемой области.
Отметим, что режиму приобретения знаний в традиционном подходе к разработке программ соответствуют этапы алгоритмизации, программирования и отладки, выполняемые программистом. Таким образом, в отличие от традиционного подхода в случае ЭС разработку программ осуществляет не программист, а эксперт (с помощью ЭС), не владеющий программированием.
В режиме консультации общение с ЭС осуществляет конечный пользователь, которого интересует результат и (или) способ его получения. Необходимо отметить, что в зависимости от назначения ЭС пользователь может не быть специалистом в данной проблемной области (в этом случае он обращается к ЭС за результатом, не умея получить его сам), или быть специалистом (в этом случае пользователь может сам получить результат, но он обращается к ЭС с целью либо ускорить процесс получения результата, либо возложить на ЭС рутинную работу). В режиме консультации данные о задаче пользователя после обработки их диалоговым компонентом поступают в рабочую память. Решатель на основе входных данных из рабочей памяти, общих данных о проблемной области и правил из БЗ формирует решение задачи. ЭС при решении задачи не только исполняет предписанную последовательность операции, но и предварительно формирует ее. Если реакция системы не понятна пользователю, то он может потребовать объяснения:
"Почему система задает тот или иной вопрос?", "как ответ, собираемый системой, получен?".