Лабораторная работа №3 обратная цепочка рассуждений - umotnas.ru o_O
Главная
Поиск по ключевым словам:
страница 1
Похожие работы
Название работы Кол-во страниц Размер
Лабораторная работа Лабораторная работа Основы теории множеств 7 1675.01kb.
Лабораторная работа №1 Построение детерминированного синтаксического... 1 279.02kb.
Лабораторная работа №1 Установка и настройка сетевой карты. 1 58.04kb.
Лабораторная работа №1 по курсу "Информационная безопасность" Лабораторная... 1 122.31kb.
Лабораторная работа №6 по курсу "Информационная безопасность" Лабораторная... 1 57.72kb.
Лабораторная работа по курсу Радиотехника Москва 2003 1 183.89kb.
Вопросы по исиктуп для специальности «Культурология» 1 29.89kb.
Лабораторная работа №1 Законы сохранения в механике 2 612.89kb.
Методические указания для студентов специальности 220100 дневного... 1 261.44kb.
Лабораторная работа №1 по дисциплине: Дискретная математика Группа 1 77.9kb.
Лабораторная работа №2 цикл карно цель работы: изучение работы идеальной... 1 40.65kb.
Методические указания для студентов специальности 220100 дневного... 1 261.44kb.
Викторина для любознательных: «Занимательная биология» 1 9.92kb.

Лабораторная работа №3 обратная цепочка рассуждений - страница №1/1





Интеллектуальные информационные системы, Утёмов В.В.,2009



Лабораторная работа №3

ОБРАТНАЯ ЦЕПОЧКА РАССУЖДЕНИЙ

Цель работы

Изучение способа вывода новых знаний с помощью обратной цепочки рассуждений.


Задание

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




  • факты, которые были определены пользователем;

  • факты, которые были выведены из правил (с указанием номеров правил);

  • содержимое стека правил (при пошаговом выводе);

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

Отчет о лабораторной работе должен содержать:



  1. правила, составляющие базу знаний;

  2. общую сумму алгоритма обратной цепочки рассуждений;

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


Решение

Переменные:




  1. СГ – состояние горла

  2. Н – насморк

  3. К – кашель

  4. СМ – состояние миндалин

  5. Г – голос

  6. Т – температура

  7. ГБ – головная боль

  8. НС – наличие сыпи

  9. ОИ – общая интоксикация

10) ДЛ – давление

11) Д – диагноз


Правила:

  1. ЕСЛИ СГ = красное ТО К = сухой

  2. ЕСЛИ К = сухой И Т = невысокая И Н = да ТО Д = ОРВ

  3. ЕСЛИ ОИ = тяжелая И СМ = воспаленные И ГБ = да ТО Д = ангина

  4. ЕСЛИ ДЛ = высокое И СГ = красное И СМ = фиброзная пленка И ГБ = да ТО Д = дифтерия

  5. ЕСЛИ Т = высокая И Н = да И К = сухой И НС = да ТО Д = краснуха

  6. ЕСЛИ ОИ = тяжелая Г = охрипший И НС = да ТО Д = корь

  7. ЕСЛИ Т = высокая ТО ОИ = тяжелая

  8. ЕСЛИ ОИ = тяжелая И НС = да ТО Д = оспа

  9. ЕСЛИ К = влажный И ОИ = тяжелая ТО Д = бронхит

10) ЕСЛИ К = сухой ТО Г = охрипший

11) ЕСЛИ ОИ = тяжелая ТО ДЛ = высокое


Общая схема алгоритма обратной цепочки рассуждений:

  1. Определить переменную логического вывода.

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

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

  4. Если переменная, соответствующая номеру условия правила в вершине стека, определена, то увеличить номер условия на 1 и перейти к шагу 8.

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

  6. Если правило не найдено или предыдущий вывод неверен (см. шаг 9), то запросить значение переменной у пользователя, увеличить номер условия на 1 и перейти к шагу 8.

  7. Поместить найденное правило в стек и вернуться к правилу 4.

  8. Если номер условия меньше или равен числу фактов в условной части правила, то вернуться к шагу 4.

  9. Если условная часть истинна, то присвоить значение переменной из заключительной части правила, иначе предыдущий вывод неверен.

  10. Удалить правило из стека.

  11. Если переменная вывода определена, то перейти к шагу 13.

  12. Если стек пуст, то вернуться к шагу 2.

  13. Сообщить пользователю окончательный вывод.

  14. Конец алгоритма.

Алгоритм прекращает работу, если выполняется одно из двух условий:




  1. значение переменной вывода определено

  2. при полученных значениях переменных значение переменной вывода получить невозможно.

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


П2

1(К)

Определяем переменные из условной части правила П2. Первая переменная – К (кашель). В БЗ производим поиск правил, в заключительной части которых встречается переменная К. Таким правилом является правило П1. Помещаем его на вершину стека правил:




П1

1(СГ)

П2

1(К)

Переменная СГ из условной части правила П1 не определена и не встречается в заключительных частях правил БЗ. Поэтому ЭС запрашивает значение переменной СГ у пользователя:


Состояние горла?
Допустим, пользователь ответил: красное. Условная часть правила П1 признается истинной, поэтому переменной К присваивается значение сухой, и правило П1 удаляется из стека.
Имеем СГ = красное

К = сухой


Номер условия правила П2 увеличиваем на 1, что соответствует переменной Т (температура).


П2

2(Т)

Переменная Т из условной части правила П2 не определена и не встречается в заключительных частях правил БЗ. Поэтому ЭС запрашивает значение переменной Т у пользователя:


Температура?
Допустим, пользователь ответил: высокая. Переменной Т присваивается значение

высокая.

Имеем СГ = красное

К = сухой

Т = высокая


Номер условия правила П2 увеличиваем на 1, что соответствует переменной Н (насморк).


П2

3(Н)

Переменная Н из условной части правила П2 не определена и не встречается в заключительных частях правил БЗ. Поэтому ЭС запрашивает значение переменной Н у пользователя:


Есть насморк?
Допустим, пользователь ответил: нет. Переменной Н присваивается значение

нет.
Имеем СГ = красное

К = сухой

Т = высокая

Н = нет


Условное выражение правила П2 признается ложным и удаляется из стека, т. о. из БЗ выбираем следующее правило, в заключительной части которого встречается переменная вывода Д.

Это правило П3. Заносим его в стек вывода и делаем текущим первую переменную из условной части правила П3.




П3

1(ОИ)

Переменная ОИ из условной части правила П3 встречается в заключительной части правила П7, поэтому правило П7 заносим на вершину стека правил вывода.




П7

1(Т)

П3

1(ОИ)

Переменная Т определена и имеет значение высокая. Следовательно условная часть правила П7 – истинна, и переменной ОИ присваиваем значение тяжелая, и правило П7 удаляем из стека. Номер условия правила П3 увеличиваем на 1, что соответствует переменной СМ (состояние миндалин).

Имеем СГ = красное

К = сухой

Т = высокая

Н = нет

ОИ = тяжелая


П3

2(СМ)

Переменная СМ из условной части правила П3 не определена и не встречается в заключительных частях правил БЗ. Поэтому ЭС запрашивает значение переменной СМ у пользователя:


Состояние миндалин?
Допустим, пользователь ответил: фиброзная пленка. Переменной СМ присваивается значение фиброзная пленка.

Номер условия правила П3 увеличиваем на 1, что соответствует переменной ГБ (головная боль).


Имеем СГ = красное

К = сухой

Т = высокая

Н = нет

ОИ = тяжелая

СМ = фиброзная пленка




П3

3(ГБ)

Переменная ГБ из условной части правила П3 не определена и не встречается в заключительных частях правил БЗ. Поэтому ЭС запрашивает значение переменной ГБ у пользователя:


Есть головная боль?
Допустим, пользователь ответил: да. Переменной ГБ присваивается значение да.

Условное выражение правила П2 признается ложным и удаляется из стека, т. о. из БЗ выбираем следующее правило, в заключительной части которого встречается переменная вывода Д.


Имеем СГ = красное

К = сухой

Т = высокая

Н = нет

ОИ = тяжелая

СМ = фиброзная пленка

ГБ = да


П4

1(ДЛ)

Переменная ДЛ из условной части правила П4 встречается в заключительной части правила П11, поэтому правило П11 заносим на вершину стека правил вывода.




П11

1(ОИ)

П4

1(ДЛ)

Переменная ОИ определена и имеет значение тяжелая. Следовательно, условная часть правила П11 – истинна, и переменной ДЛ присваиваем значение высокое, и правило П11 удаляем из стека. Номер условия правила П4 увеличиваем на 1, что соответствует переменной СГ (состояние горла).


Имеем СГ = красное

К = сухой

Т = высокая

Н = нет

ОИ = тяжелая

СМ = фиброзная пленка

ГБ = да

ДЛ = высокое




П4

2(СГ)

Переменная СГ определена и имеет значение красное.

Номер условия правила П4 увеличиваем на 1, что соответствует переменной СМ (состояние миндалин).

П4

3(СМ)

Переменная СМ определена и имеет значение фиброзная пленка.

Номер условия правила П4 увеличиваем на 1, что соответствует переменной ГБ (головная боль).



П4

4(ГБ)

Переменная ГБ определена и имеет значение фиброзная пленка.

Условная часть правила П4 истинна, поэтому переменной Д присваиваем значение дифтерия.

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


Факты, которые определены пользователем:
СГ = красное

Т = высокая

Н = нет

СМ = фиброзная пленка

ГБ = да
Факты, которые выведены из правил:
Правило 1: К = сухой

Правило 7: ОИ = тяжелая

Правило 11: ДЛ = высокое

Лабораторная работа №4

РАСЧЕТ ВЕРОЯТНОСТЕЙ ИСТИННОСТИ УТВЕРЖДЕНИЯ
Цель работы

Изучение метода расчета вероятностей появления фактов с использованием условных вероятностей.


Задание

Для результирующего факта последовательных правил из базы знаний, разработанной в лабораторной работе 1, рассчитать вероятность его появления. Данные для расчета взять из таб.4.1 в соответствии с номером варианта. Знание вероятности Р(А) задать самостоятельно (Р(А)≠0,4)


Отчет о лабораторной работе должен содержать:

  1. исходные данные: исходные правила, значения вероятностей;

  2. расчет вероятностей;

  3. полученный ответ

Решение
Переменные:




  1. СГ – состояние горла

  2. К – кашель

  3. Г – голос

Правила:
1) ЕСЛИ СГ = красное ТО К = сухой

10) ЕСЛИ К = сухой ТО Г = охрипший
Решение:
Предположим, что лингвистическая переменная СГ принимает только значения «красное» и «нормальное», а переменная К – «сухой» и «влажный», и никаких других вариантов не существует.

Для расчетов по формулам




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

По первой формуле получаем:


По первой формуле получаем:




Таким образом, при заданных вероятностях появлениях фактов голос будет охрипшим с вероятностью 21,4%.