Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Архив4 / SII-kursach / СИИ / методички / МУ к лаб раб по СИИ.doc
Скачиваний:
56
Добавлен:
07.08.2013
Размер:
278 Кб
Скачать

2

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ

Государственное образовательное учреждение высшего профессионального образования “Московский государственный институт радиотехники, электроники и автоматики

(технический университет)”

Подлежит возврату

Системы искусственного интеллекта

Методические указания

по выполнению лабораторных работ

для студентов, обучающихся

по специальностям 230102 и 230201

МОСКВА 2007

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ

Государственное образовательное учреждение высшего профессионального образования “Московский государственный институт радиотехники, электроники и автоматики

(технический университет)”

Подлежит возврату

Системы искусственного интеллекта

Методические указания

по выполнению лабораторных работ

МОСКВА 2007

Составитель Г.Д. Потресова

Редактор А.И. Семенов

Методические указания к лабораторным работам по дисциплине «Системы искусственного интеллекта» предназначены для студентов 4-го курса дневного отделения специальностей 230102 и 230201.

Печатается по решению редакционно-издательского совета университета.

Рецензенты: И.И. Холкин,

А.П. Свиридов

©МИРЭА, 2007

Введение

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

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

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

Данный лабораторный практикум предназначен для изучения оболочки ЭС и получения практических навыков разработки ЭС на базе этой оболочки.

Программная реализация оболочки ЭС, которая используется в этих лабораторных работах, выполнена студентами МИРЭА. Принципы построения этой оболочки взяты из книги Б. Сойера и Д.Л. Фостера «Программирование экспертных систем на Паскале» [1].

Лабораторная работа № 1 Построение базы знаний экспертной системы на основе продукционной модели представления знаний.

Цель работы

Изучение взаимосвязи правил в базе знаний, построенной на основе продукционной модели представления знаний.

Задание

  1. Изучите базу знаний ЭС, указанную преподавателем.

  2. Постройте граф И/ИЛИ, взяв в качестве корневой вершины графа правило, указанное преподавателем.

Методические указания

Изучение базы знаний ЭС лучше всего начать с анализа концептуальной схемы, поскольку концептуальная схема дает наиболее общее представление о структуре базы знаний. Рассмотрим в качестве примера базу знаний ЭС прогнозирования продолжительности жизни человека. На рис. 1 представлена концептуальная схема этой ЭС. На этой схеме показаны связи между объектами, которые используются в процессе логических выводов. Терминальные объекты выделены на схеме жирными рамками.

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

Рис. 1. Концептуальная схема ЭС

Как видно из рис. 1, концептуальная схема дает представление не только о структуре базы знаний, но и о подходе к решению задач ЭС. Однако на концептуальной схеме указываются только имена объектов и не указываются их значения, поэтому для более полного представления процесса решения задач необходимо использовать граф И/ИЛИ.

На рис. 2 представлен фрагмент графа И/ИЛИ, соответствующего концептуальной схеме, показанной на рис. 1. На рис. 2 в кружках указаны номера правил, а в прямоугольниках – условия и заключения правил. На графе И-вершины помечены дугой.

Для построения графа И/ИЛИ найдите в базе знаний правило, указанное преподавателем, и представьте его в виде графа. Затем выберите одно из условий этого правила и найдите в базе знаний такие правила, у которых в заключении стоит та же пара <объект> = <значение>, что и в условии исходного правила. Добавьте граф этого правила к исходному графу.

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

Содержание отчета о работе

  1. Концептуальная схема базы знаний.

  2. Граф И/ИЛИ для одной из гипотез.

Контрольные вопросы

  1. В каких случаях при представлении продукционных правил в виде графа образуются вершины «ИЛИ»?

  2. Какую информацию о базе знаний можно получить из анализа ее концептуальной схемы?

  3. Какая связь существует между концептуальной схемой и графом И/ИЛИ?

Лабораторная работа № 2 Выполнение логических выводов в ЭС

Цель работы

Практическое освоение методов выполнения логических выводов при решении задач ЭС.

Задание

  1. Составьте и выполните тестовый пример в режиме консультации с ЭС, отслеживая процесс его выполнения по графу И/ИЛИ, построенному при выполнении лабораторной работы №1.

  2. Составьте таблицу, показывающую последовательность шагов, выполненных ЭС при решении тестового примера.

Методические указания

В оболочке Expert используются обратные выводы. Цель задается пользователем в виде имени объекта. ЭС, используя имеющиеся в БЗ правила, пытается получить значение указанного объекта-цели. Вывод начинается с поиска правила, которое содержит объект-цель в своей правой части (заключение правила). Поскольку заключение правила представлено в виде <объект> = <значение> КД = <коэффициент доверия>, то выбор правила, содержащего объект-цель в заключении этого правила, по существу является выдвижением гипотезы о значении объекта-цели. Количество возможных гипотез определяется количеством имеющихся в БЗ правил, которые содержат в правой части объект-цель.

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

В начале консультации с ЭС, построенной на базе оболочки EXPERT, система просит пользователя ввести цель. Цель задается пользователем в виде имени объекта, например, «продолжительность».

В БЗ имеется 15 правил, содержащих объект “продолжительность” в заключении правила:

Правило 63: ЕСЛИ основная_продолжительность=72 И

фактор=ноль

ТО продолжительность=72_года.

Правило 64: ЕСЛИ основная_продолжительность=67 И

фактор=ноль

ТО продолжительность=67_лет.

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Правило 77: ЕСЛИ основная_продолжительность=60 И

фактор=минус_12

ТО продолжительность=48_лет.

Первая составляющая посылки правила 63 может быть сопоставлена с заключением правила 6:

Правило 6: ЕСЛИ возраст=25_или_меньше И

пол=женский

ТО основная_продолжительность=72.

Поскольку правил, имеющих в правой части объект “возраст” нет и значение этого объекта не было введено пользователем раньше в процессе диалога, то ЭС задает пользователю вопрос

Сколько лет испытуемому?

1. 25_или_меньше

2. 25-55

3. 55_или_больше

Если пользователь выберет ответ 1, то ему будет задан вопрос

Какого пола испытуемый?

1. мужской

2. женский

Если пользователь выберет ответ 2, то правило 6 будет выполнено и, следовательно, первая составляющая посылки правила 63 будет истинной.

Если же пользователь выберет ответ 1 (мужской), то поскольку правило 6 не выполняется, система будет искать другое правило с тем же заключением, что и правило 6 (т.е. основная_продолжительность=72). Но такого правила в БЗ нет, поэтому правило 63 не может быть выполнено и система ищет новое правило, в правой части которого стоит объект “продолжительность”. Это правило 64, которое представляет новую гипотезу (продолжительность=67_лет), и ЭС вновь выполняет логические выводы, пытаясь подтвердить эту гипотезу.

Представьте последовательность шагов, которые были выполнены ЭС в процессе консультации в виде таблицы, содержащей следующие графы:

1) номер шага;

2) текущая гипотеза (подцель), которую ЭС пытается подтвердить на данном шаге;

3) конфликтное множество правил (правила, которые могут быть выполнены на данном шаге);

4) правило, выбранное из конфликтного множества и выполненное на данном шаге;

5) список подцелей, которые были сформированы в процессе логических выводов и которые нуждаются в подтверждении;

6) факт, который подтвердил или опроверг текущую подцель.

Содержание отчета о работе

  1. Протокол диалога с ЭС при выполнении тестового примера

  2. Граф И/ИЛИ для тестового примера

  3. Таблица, показывающая последовательность шагов при выполнении тестового примера.

Контрольные вопросы

  1. Как выполняются логические выводы в оболочке Expert?

  2. Как выдвигаются гипотезы при выполнении обратных выводов?

  3. Какие правила образуют конфликтное множество?

  4. Как проверяется истинность условий, которые представляются терминальными вершинами И/ИЛИ графа?

  5. Как строится граф И/ИЛИ для тестового примера?

Лабораторная работа № 3 Разработка базы знаний для ЭС диагностики

Цель работы

Практическое освоение методов построения ЭС для решения задач диагностики.

Задание

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

  2. Составьте правила, вопросы и разрешенные значения, необходимые для решения тестовой задачи и введите их в базу знаний ЭС.

  3. Проверьте решение тестовой задачи в режиме консультации с ЭС.

Методические указания

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

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

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

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

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

Такой подход к построению ЭС диагностики является неудовлетворительным.

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

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

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

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

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

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

Содержание отчета о работе

  1. Постановка задачи диагностики.

  2. Классифицирующая сеть.

  3. Решающий граф для тестовой задачи.

  4. Правила, вопросы и разрешенные значения для тестовой задачи.

  5. Протокол диалога с ЭС при решении тестовой задачи.

Контрольные вопросы

  1. Какие задачи относятся к задачам диагностики?

  2. В каких областях используются ЭС диагностики?

  3. Какие задачи решают ЭС диагностики в области медицины?

  4. Как ЭС диагностики используются в области техники?

  5. Какую роль играет классифицирующая сеть при решении задач диагностики?

Лабораторная работа № 4 Тестирование ЭС

Цель работы

Практическое освоение методов поиска ошибок в базе знаний ЭС и анализа полноты базы знаний.

Задание

  1. Составьте тестовые примеры. На графе И/ИЛИ, представляющем базу знаний ЭС выделите решающие деревья, соответствующие этим примерам и определите ожидаемые результаты их выполнения.

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

  3. Для указанных преподавателем терминальных объектов проверьте наличие вопросов и списков разрешенных значений, а также соответствие разрешенных значений тем значениям, которые используются в условиях правил.

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