Дата создания
МОСКОВСКИЙ ЭНЕРГЕТИЧЕСКИЙ ИНСТИТУТ
Сборник лабораторных работ
по курсу
ЭКСПЕРТНЫЕ СИСТЕМЫ И
СИСТЕМЫ ИСКУССТВЕННОГО ИНТЕЛЛЕКТА
Москва, 2006
РАЗРАБОТКА КОМПЛЕКСА ЛАБОРАТОРНЫХ РАБОТ В СРЕДЕ NEXPERT OBJECT
В методических указаниях дается описание экспертной оболочки NEXPERT OBJECT, предназначенной для реализации экспертных систем на ПЭВМ, совместимых с IBM PC. Рассматривается методика построения баз знаний, даны примеры функционирования готовых экспертных системы "Виды спорта" и "Библиотека".
Комплекс лабораторных работ предназначен для студентов и слушателей, выполняющих практические задания по курсу "Экспертные системы и системы искусственного интеллекта", а также для аспирантов, занимающихся вопросами реализации экспертных систем и систем искусственного интеллекта.
Введение
Экспертные системы получили широкое распространение в ходе развития методов обработки данных на ЭВМ. Они явились результатом последовательных попыток усовершенствовать и расширить автоматизацию некоторых видов обработки информации, обычно выполняемых человеком. Для решения такой задачи необходимо уметь представлять в компьютерной системе как данные, так и соответствующие процессы их обработки.
Существуют экспертные системы, которыми широко пользуются биологи, онкологи, математики, юристы, финансисты, нефтянники - сейчас уже очень трудно указать области, в которых возможности экспертных систем не были еще опробованы. Поэтому сейчас назрела необходимость расширения знаний в области экспертных систем.
В настоящее время экспертные системы создаются в так называемых “экспертных оболочках”. Поэтому при изучении эспертных систем важно ознакомиться, в первую очередь, с примером экспертной оболочки.
1. КРАТКОЕ ОПИСАНИЕ, ОСНОВНЫЕ ПОНЯТИЯ ОБОЛОЧКИ NEXPERT OBJECT
1.1. Определение экспертной системы
Экспертные системы - это программные комплексы, предназначенные для отображения и использования знаний в той или иной области при решении различных задач.
1.2. Определение экспертной оболоЧки
Экспертная оболочка - это среда для создания экспертных систем на любую тему.
1.3. Программно-аппаратные средства, необходимые длЯ работы с NEXPERT OBJECT
NEXPERT OBJECT версии 0 может работать на ПЭВМ семейства IBM PC/286 (и совместимых с ними), функционирующих под управлением операционной системы MS DOS (версия не ниже 5.0) в среде WINDOWS версия 2.03. Для работы с NEXPERT желательно иметь цветной монитор и обязательно манипулятор типа “мышь”.
1.4. Возможности NEXPERT OBJECT
Основные возможности NEXPERT OBJECT следующие:
- создание баз знаний по разным темам;
- редактирование баз знаний;
- просмотр баз знаний;
- проведение обработки знаний для выбранных данных и/или выдвинутых гипотез;
- создание файла отчета (протокола сеанса обработки знаний);
- поддержание связи с внешними прикладными программами, электронными таблицами, базами данных.
1.5. Основные понЯтиЯ NEXPERT OBJECT
Для представления знаний в системе NEXPERT OBJECT используются правила и объекты.
Правило - представляет собой рассуждение, а объекты описывают мир, в котором проводятся эти рассуждения. Остров знаний - это набор правил, связанных между собой. Правило (rule) - это островок знаний, моделирующий некоторую ситуацию и ее прямые следствия. Универсальный формат правил таков:
Если ... условия то ... гипотеза и выполнить ... действия,
где гипотеза - это утверждение, которое является истинным в случае выполнения всех условий, и ложным - в случае невыполнения хотя бы одного из условий. Вслед за “выполнить” находится ряд действий, предпринимаемых в случае истинности гипотезы.
Атом - это как бы элементарная единица правила, т.е. либо условие, либо гипотеза. Атом может принимать следующие значения: True (истина), False (ложь), Unknown (неизвестно), NotKnown (не определено), Current (текущее: для представления определенного условия под рассмотрением), Envoked (возбужденное: для исследуемых в данный момент гипотез, под фокусом внимания).
Объект (object) является элементарной единицей описания. Всякая вещь есть объект. Свойство (property) - это характеристика объекта. Класс - это множество объектов, которые могут обладать одними и теми же свойствами (см. рис. 1).
Рис. 1. Классы, объекты, свойства
Класс может хранить информацию, присущую всем объектам. Объекты, когда нужно, будут наследовать от класса эту информацию. Этот механизм называется наследованием. Класс может содержать подклассы, объект - подобъекты.
Когда какое-либо свойство приписывается объекту или классу, его называют слотом. Так, автомобиль_х.цвет - это слот.
1Мета-слоты - это функциональные описания, связанные с каждым свойством объекта и определяющие корректное поведение этого свойства. Мета-слоты объектно-зависимы, так, что каждое свойство может трактоваться различно в зависимости от того, к какому объекту или классу оно относится. Примеры мета-слотов: If-Change ("Если-изменен") - в случае изменения значения атома выполнить указанные действия; Order of Sources ("Порядок Источников") - указывает, из каких источников брать данные: запрашивать у пользователя, из файла базы данных, из внешней программы и т.д.; Inference Category ("Категория Вывода") - указывает, в каком порядке должны опрашиваться значения объектов/классов в процессе сеанса консультации. Сеанс консультации - это работа экспертной системы с конечным пользователем, т.е. на основе введенных пользователем данных система "консультирует" его, делает какие-либо выводы или заключения.
Под контекстом понимается механизм для работы с интуицией, т.е. экспериментальными знаниями эксперта, которые крайне трудно объяснить и представить в форме правил. Другими словами, это связь между двуми (или больше) островами знаний, которые явно между собой не связаны.
Сеть объектов - это структура организации объектов в данной базе знаний. На рис. 2 сеть объектов наглядно показывает взаимосвязи классов, подклассов, объектов, подобъектов:
Рис. 2. Сеть объектов
Сеть правил - это структура, наглядно показывающая взаимосвязи правил. Например:
(где Yes - “да”, No - “нет”, Is - “является”)
Рис. 3. Сеть правил
На рис. 3 видны два правила: п.1 и п.2.
Заключения (conclusions) - это результаты обработки базы знаний в зависимости от поставленной гипотезы или введенных данных.
В NEXPERT OBJECT существует возможность привязки текстовой или графической информации к какому-либо объекту (классу, гипотезе, данному). Текстовая информация - словесное описание объекта, т.е. это может быть расшифровка какого-либо сокращения, или это могут быть примечания, пояснения, например: к объекту PEVM привязан текстовый файл следующего содержания: “ПЭВМ - персональная электронно-вычислительная машина”. В качестве графической информации можно изобразить ПЭВМ схематически (в графическом файле, совместимом с системой NEXPERT OBJECT).
