uzluga.ru
добавить свой файл

Разработка подсистемы подготовки баз знаний для экспертной системы ESwin

1.Т. В. Зайцева


Белгородский государственный национальный исследовательский университет (НИУ «БелГУ»)

Белгород

zaitseva@bsu.edu.ru

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

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

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

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

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

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

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

Рассмотрим возможность применения генератора правил на на примере лабораторной работы в курсе «Интеллектуальные информационные системы». В ходе выполнения лабораторной работы ¹ 4 возникает необходимость разработки и создания экспертной системы с использованием ESwin.

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

Для демонстрационного выполнения лабораторной работы была выбрана тема «Выбор модема». Основными параметрами отличий модемов являются:

  • тип модема : ADSL, VDSL, SDSL, HDSL;

  • наличие маршрутизатора;

  • наличие коммутатора;

  • наличие DHCP-сервера;

  • поддержка VPN;

  • поддержка веб-интерфейса;

  • наличие встроенного сплитера;

  • адаптация для России.

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

В нашем случае В – это количество параметров различающих модемы (8), А – количество типов модемов (4), этот признак обладает наибольшим числом параметров. После создания и заполнения массива получим матрицу, представленную на рис. 1.




Рис. 1. Матрица параметров на примере


Следующим шагом заполняется второй двумерный массив размерностью (В+1)*С, где С – количество классов, заполняется классами с соответствующими им признаками.

После создания и заполнения второго массива получим матрицу, представленную на рис. 2.




Рис. 2. Матрица классов на примере


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

Затем редактируется сам код генерации, с подведением под заданные параметры генерации. Затем, после компиляции, запускаем программу, которая в процессе своей работы генерирует файл «rule», содержащий правила. Загружаем его в ESwin. И отвечаем на задаваемые вопросы.




Рис. 3. Заполненные поля label


Ниже на скриншотах показана работа экспертной системы, работающей на основании сгенерированных выше правил.

Первым шагом загружаем базу знаний (рис. 4).




Рис. 4. Загрузка базы знаний

Далее отвечаем на задаваемые экспертной системой вопросы (рис. 5). После ввода последнего значения экспертная система подбирает наиболее подходящий вариант и выводит результаты на дисплей (рис. 6).




Рис. 5. Выбор значения 1




Рис. 6. Результат работы ЭС


Затем проводтся апробация с различными комбинациями значений. Как показали испытания, программа работает стабильно с правилами, сгенерированными разработанным ПС.

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

Увеличение скорости набора правил, достигнутое за счет автоматической генерации правил, можно проследить в табл. «Скорость набора правил».


Скорость набора правил

^ Количество правил

Ручной набор правил

Генерация

До 20

15–20 мин

15–20 мин

20–100

0.9–1 мин/правило

0.3–0.35 мин/правило

100–500

1–1.2 мин/правило

0.15–0.2 мин/правило

500–1000

1.2–1.5 мин/правило

0.05–0.1 мин/правило

>1000

Проблематично

0.01–0.05 мин/правило


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

В результате проделанной работы создан программный продукт, способный автоматически генерировать правила по заданным параметрам.

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

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

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

В процессе разработки ПС и подготовки программной документации была разработана лабораторная работа «Автоматизированное создание правил с последующим использованием для разработки экспертных систем на основе ESWin». В данной работе используется программный продукт «Генератор правил ESwin» для создания экспертной системы. Лабораторная работа была внедрена в учебный процесс студентов 5-го курса факультета компьютерных наук и телекоммуникаций специальности «Прикладная информатика в экономике».