Описание иерархической структуры понятий и диаграмма представления
Лабораторный практикум
по дисциплине
«Интеллектуальные системы
И технологии»
для студентов специальности
09.05.01 – Применение и эксплуатация автоматизированных
код направления систем специального назначения
специализация
Автоматизированные системы обработки информации и управления
Воронеж 2017
Содержание
Лабораторная работа №1. Семантические сети. 3
Лабораторная работа №2. Продукционная модель представления знаний. 22
Лабораторная работа №3. Фреймовая модель представления знаний. 28
Лабораторная работа №4. Модель, основанная на нечеткой логике. 38
Лабораторная работа №5. Нейронные сети. 53
Лабораторная работа № 6 Генетический алгоритм. 70
Лабораторная работа №7. Разработка специальных моделей представления знаний для БЗ и БД и правил для машины вывода. 80
Библиографический список. 98
Структура отчета по лабораторной работе. 99
Лабораторная работа №1.
Семантические сети
Цель работы: получение знаний, умений и навыков по созданию базы знаний, представляющей собой семантическую сеть.
Семантическая сеть.В основе семантической модели лежит граф, собирающий вокруг одного узла всю информацию по данному узлу. Семантическая сеть состоит из множества объединенных концептуальных графов, каждый из которых соответствует некоторой логической формуле со своими именами и аргументами предикатов, связанными друг с другом по установленным правилам.
Узлы графа соответствуют понятиям и объектам, а дуги – отношениям между объектами. Формально сеть можно задать в следующем виде:
- – множество информационных единиц;
- – множество типов связей между информационными единицами;
§ – отображение, задающее конкретные отношения из имеющихся типов между элементами .
Различают экстенсиональные и интенсиональные семантические сети. Экстенсиональная семантическая сеть описывает конкретные отношения данной ситуации. Интенсиональная – имена классов объектов, а не индивидуальные имена объектов. Связи в интенсиональной сети отражают те отношения, которые всегда присущи объектам данного класса.
Семантическая сеть как модель наиболее часто используется для представления декларативных знаний. С помощью этой модели реализуются такие свойства системы знаний, как интерпретируемость и связность, в том числе по отношениям и . За счет этих свойств семантическая сеть позволяет снизить объем хранимых данных, обеспечивает вывод умозаключений по ассоциативным связям.
Примером семантической сети может служить фрагмент описания вычислительной техники, показанный на рисунке 1.
Семантическая сеть дает возможность охарактеризовать отношения между понятиями. Часто понятия представляют словом или набором слов. Простым примером является иерархическая сеть, где понятия являются таксономическими терминами и единственным отношением явлется type-of (относится к типу) (гипонимные отношения – hyponymous relationship, когда одно понятие включает в себя другие понятия). Более сложные симантические сети включают в себя отношения различных типов такие как твердость, температура, сделано из, текстура и цвет. Одной из самых больших семантических сетей является WordNet, лексическая база данных английского языка.
Рисунок 1 Фрагмент описания вычислительной техники
В узком смысле семантические отношения определяют связи между понятиями или значениями. Понятие [школа] следует отличать от слова ‘школа’. [Школа] является [образовательным учреждением]. Это указывает иерархическое отношение между двумя понятиями или значениями, которое является разновидностью из длинного ряда семантических отношений.
Понятие [Школа] может, например, быть выражено в терминах или выражениях ‘школа’, ‘школьное здание (schoolhouse)’ и ‘место обучения’. Отношение между ‘школа’ и ‘школьное здание’ является синонимическим между этими двумя выражениями, в то время как отношение между ‘школа’ и ‘место обучения’ является отношением между словом и выражением или фразой. Отношения между словами являются лексическими отношениями. 'Школа' имеет значение [группа людей, кто прошел обучение в определенном коллективе или в учреждении или придерживаются некоторых взглядов]. This is a homonym relation: Two senses share the same word or expression: ‘school’. Синонимы и омонимы не являются отношениями между понятиями, а понятиями, выраженными идентичными или разными символами.
Отношение между понятиями, смыслами или значениями не следует смешивать с отношениями между терминами, словами и выражениями или символами, которые используются для выражения понятия. Однако, довольно часто эти два вида отношений смешиваются.
Некоторые важные виды семантических отношений перечислены ниже:
· Антонимия(A противоположно B; то есть холодный противоположен теплому)
· Ассоциативные отношения: отношение, которое определено психологически: некоторые люди ассоциируют понятия (кто-то ассоциирует A с B). Ассоциативными отношениями часто считаются неспецифицированные отношения.
· Причино-следственные отношения: A является причиной B. Например: цинга вызывается недостатком витамина C.
· Омоним. Два понятия A и B, обозначаются одним символом. Пример: в английском языке финансовое учреждение и берег реки выражается одним словом bank (слово имеет два смысла).
· Гипонимные отношения (отношение типа "является" или гипоним-гиперним), родовидовые отношения: иерархические отношения подчинения. (A является разновидностью B; A является более узким понятием, чем B; B более широкое понятие, чем A). отношение типа "является" обозначает, что объект принадлежит некоторому классу. Например, "автомобиль - является транспортным средством" и "цыпленок является птицей". Когда все отношения в системе имеют тип "является", система представляет собой таксономию. Опция "типичный" позволяет вам выделить все конкретные разновидности (образцы, гипонимы) понятия. Опция "специфичный" позволяет вам выделить общий гиперним всех конкретных разновидностей понятия.
· Случай отношения. (“случай”, понятие примера) обозначает семантические отношения между общим понятием и индивидуальными случаями понятия. A является примером B. Пример: Москва является примером общего понятия столица.
· Отношения положения: семантическое отношение, в котором понятие указывает на положение предмета, обозначенного другим понятием. A размещено в B; пример: меньшинства в Дании.
· Меронимия. А является частью Б (отношение целого и части): отношение между целым и частями. Мероним является названием части содержимого или членство в каком-то составе. Меронимия противоположна голонимии (B содержит A, которая является ее частью). A уже, чем B; B шире, чем A.
· Пассивное отношение: Семантическое отношение между двумя понятиями, одно из которых подвержено воздействию другого.
· Парадигматические отношения. Семантическое отношение между двумя понятиями, которые рассматриваются фиксированным, самоочевидным или установленным по соглашению. Примеры: мать / ребенок; жир /ожирение; штат /его столица.
· Многозначность: многозначным считается слово, которое имеет несколько значений, которые отличаются друг от друга.
· Владение: отношение между владельцем и владением.
· Связанные термины. Термин, который семантически связан с другим термином. В тезаурусах связанные термины отмечаются RT и используются для семантических отношений, которые отличаются от отношения синонимичности (USE; UF), гипонимности, и партитивных отношений (BT; NT). Связанные термины могут, например, выражать антогонистичесикие отношения, активные/пассивные отношения, причинно-следственные связи, отношения положения или парадигматические отношения.
· Синонимия (A означает то же что и B; A эквивалентно B).
· Временные отношения: Семантическое отношение, в котором понятие указывает на время или период, относящиеся к другому понятию. Пример: Вторая мировая война, 1939-1945.
· Тропонимия определена в WordNet 2 как: семантическое отношение, сопряженное с чем-то сходным (или значение: "названия мест в области").
Семантические отношения могут отражать отношения в языке, включая отношения между объектами и их символами. Ограничение числа семантических отношений представляется не важным. В отдельных областях постоянно выявляются новые виды семантических отношений. Только в медицине идентифицировано 38 семантических отношений.
Наиболее широко используемые семантические отношения имеют сходство со списком категорий, например, с 10-ю знаменитыми Аристотелевыми категориями:
1. Содержание
2. количество
3. качество
4. отношение
5. где (место)
6. когда (время)
7. находящийся в положении (позиция)
8. имеющий (состояние)
9. делающий, (действие)
10. подвергнутый
Имеется сходство и с широко используемыми грамматическими категориями. Такие категории и грамматические отношения представляют собой обобщения или генерализации.
Самая старая известная семантическая сеть была разработана в 3 веке нашей эры греческим философом Порфирием в своем комментарии к категориям Аристотеля. Порфирий использовал его, чтобы проиллюстрировать метод Аристотеля определения категорий, указав род или общий тип и различия, которые отличают различные подтипы одного и того же надтипа. На рисунке 2 показан вариант древа Порфирия, как это было нарисовано логиком Петром Испанским (1239). Это иллюстрирует категории под вещество, которое называется высший род или наиболее общую категорию.
Данный граф является одним из великого множества. Его отличает только древний возраст.
Строя такие графы и присваивая ребрам графа определенные веса (метрики) в соответствии со степенью сродства понятий, можно подойти к решению проблемы контекста. При этом предполагается, что существует множество семантических деревьев, характеризующих общие языковые связи. Тогда при выявлении контекстного значения определенного слова или группы слов в пределах конкретного текстового фрагмента, строятся семантические деревья для этого фрагмента. В этих деревьях веса берутся из общеязыковых деревьев. Если слово или группа слов имеет более одного значения, ребра графа с наибольшим весом могут указать на предпочтительное контекстное значение
Рисунок 2. Дерево понятий, нарисованное логиком Питером Испанским (1329 год)
Примеры.
Элементы семантической сети
Семантическая сеть представляет собой ориентированный граф с помеченными (поименованными) дугами и вершинами. Основными элементами сети являются вершины и дуги. При этом вершинам семантической сети соответствуют понятия, события и свойства (рис. 11).
Рисунок 11. Вершины семантической сети.
· Понятия – представляют собой сведения об абстрактных или физических объектах предметной области или реального мира.
· События – представляют собой действия происходящие в реальном мире и определяются:
o указанием типа действия;
o указанием ролей, которые играют объекты в этом действии.
· Свойства – используются для уточнения понятий и событий. Применительно к понятиям они описывают их особенности и характеристики (цвет, размер, качество), а применительно к событиям – продолжительность, время, место.
Дуги графа семантической сети — отображают многообразие семантических отношений, которые условно можно разделить на четыре класса (рис. 12).
Рисунок 12. Классификация семантических отношений.
Лингвистические отношения – отображают смысловую взаимосвязь между событиями, между событиями и понятиями или свойствами. Лингвистические отношения бывают:
· глагольные (время, вид, род, залог, наклонение);
· атрибутивные (цвет, размер, форма);
· падежными.
Логические отношения – это операции, используемые в исчислении высказываний (алгебре логики): дизъюнкция, конъюнкция, инверсия, импликация.
Теоретико-множественные – это отношение подмножеств, отношение части и целого, отношение множества и элемента. Примерами таких отношений являются "IS-A" и "PART-OF".
Квантифицированные отношения – это отношения, которые используют логические кванторы общности и существования. Они используются для представления таких знаний как «Любой станок надо ремонтировать», «Существует работник А, обслуживающий склад Б».
Пример представления знаний семантической сетью
Поставим задачу разработки семантической модели представления знаний, которые содержатся в следующем описании некоторой предметной области:
«Если станок закончил обработку, робот грузит кассету с деталями на робокар, который перевозит их на склад».На первом этапе решения этой задачи необходимо выделить основные объекты и понятия, о которых идет речь в данном описании, а также события и действия, которые устанавливают взаимосвязи между этими объектами и понятиями.
Из анализа содержания исходной фразы следует, что в ней взаимодействуют такие основные понятия, как "Cтанок", "Деталь", "Кассета", "Робот", "Робокар" и "Склад". К числу основных событий, которые в исходной фразе описываются глаголом, следует отнести: "Закончил", "Грузит", "Перевозит".
На основе выделенных понятий и событий появляется возможность из исходного описания предметной области выделить описание элементарных действий:
· F1 – станок закончил обработку
· F2 – работник грузит
· F3 – робокар перевозит
Однако эти действия в исходной фразе описаны недостаточно однозначно, и требуется более подробный анализ предметной области для доопределения выделенных понятий. На основе проведенного анализа, знания могут быть доопределы, и представлены следующим набором действий:
· F1 – станок закончил обработку детали
· F2 – робот грузит кассету на робокар
· F3 – робокар перевозит кассету на склад
· F4 – кассета содержит детали
На втором этапе необходимо установить связь между выделенными, в описании предметной области, действиями. В качестве примера рассмотрим взаимодействия только двух событий: "F1–Закончил обработку" и "F2–Грузит". Графическое представление этого взаимодействия в виде фрагмента семантической сети может иметь вид, представленный на рис. 17.
Рисунок 17. Фрагмент сети, описывающий взаимодействие событий F1 и F2.
Выполнив аналогичный анализ для всех возможных сочетаний взаимодействий всех возможных событий, появится возможность построить обобщенную модель семантической сети, которая будет описывать знания об исходной предметной области. Для рассматриваемого примера такая сеть будет иметь вид, представленный на рис. 18.
Рисунок 18. Обобщенная семантическая сеть.
Заметим, что при описании фраз естественного языка факты часто называют высказываниями. Кроме этого, как отмечалось выше, схема семантической сети может служить простым описанием знаний о предметной области к реализации на языке Пролог. В качестве примера можно привести набор основных Пролог-правил, которые содержатся в полученном фрагменте семантической сети:
грузит(робот, X, робокар):– закончил_обработку(станок, Z), содержит(X, Z). перевозит(X, Y, склад) :– грузит (робот, Y, X). содержит(кассета, X) :– закончил_обработку(станок, X).Варианты для выполнения лабораторной работы №1
Вариант 1
Компания, в которой Вы работаете, получила задание на разработку справочной системы по журналам издательства «Издательство Мечты». Данная компания выпускает различные по целевой аудитории, ценовой категории и объему страниц журналы.
Вам необходимо построить модуль на основе семантической сети, позволяющий определить целевую аудиторию для различных журналов, а также для кого предназначено издание и его стоимость. Ваша задача построить семантическую сеть на основе информации, представленной в таблице 2.
Таблица 2
Название журнала | Основная целевая аудитория | Стоимость одного номера, руб. | Объем страниц журнала | Какая информация представлена в журнале | Возможна ли подписка на журнал |
Тюниг автомобилей | Мужчины | Современные технологии тюнинга автомобилей | нет | ||
Мода | Женщины | Новейшие тенденции моды | да | ||
Компьютерные и видео игры | Мужчины и женщины | Все о компьютерных и видео играх | нет | ||
Рукоделие | Женщины | Эксклюзивные вещи своими руками | да | ||
Фотография | Мужчины и женщины | Основы и секреты фотографии | да | ||
Кино и музыка | Мужчины и женщины | Только актуальная информация и кино и музыке | нет |
В построенной семантической сети определить:
1. Какой журнал предоставляет информацию о современных технологии тюнинга автомобилей?
2. Какие журналы предназначены для мужчин?
3. Какие журналы стоят 100 рублей?
4. На какие журналы можно оформить подписку?
Вариант 2
Ваша задача состоит в создании экспертной системы АСУ предприятия, автоматизирующей контроль за выполнением задач коллективом предприятия. АСУ следует построить в виде семантической сети.
Система должна описывать структуру предприятия, в том числе руководство и структуру отделов.
Система так же должна описывать выполняемые предприятием задания, в том числе:
1. Наименование задания.
2. Сроки его выполнения.
3. Этапы выполнения задания и их очередность.
Для каждого этапа описывается:
1. Отдел, выполняющий этап.
2. Ответственное лицо, обычно – руководитель отдела или подразделения.
3. Сроки начала и окончания этапа.
Предприятие, для которого строится система – ООО «Созвездие»:
Директор: Иванов И.И.
Отдел разработки, нач. отдела – Перов П.П.
В составе отдела разработки:
Бюро постановки задач, нач. бюро – Сидоров С.С.
Бюро программирования, нач. бюро – Брайан Керниган
Бюро сопровождения, нач. бюро – Билл Гейтс
Отдел маркетинга, нач. отдела – Тошико Ямада
Задания в работе:
1. Разработка текстового редактора «Созвездие», этапы – постановка задачи, программирование, продвижение на рынок, поддержка.
2. Разработка Интернет - браузера «Созвездие», этапы – постановка задачи, программирование, продвижение на рынок, поддержка.
В построенной семантической сети определить:
1. Кто является начальником отдела маркетинга?
2. Какие задания выполняет ООО «Созвездие»?
3. Чем занимается Иванов И.И.?
4. Какие сроки выполнения заданы для разработки Интернет - браузера?
Лабораторная работа №2.
Продукционная модель представления знаний
Цель работы: получение знаний, умений и навыков по созданию базы знаний, представляющей собой продукционную модель представления знаний.
Продукционная модель – это модель, основанная на правилах, позволяющая представить знание в виде предложений типа:
«ЕСЛИ условие, ТО действие»
Продукционная модель обладает тем недостатком, что при накоплении достаточно большого числа (порядка нескольких сотен) продукций они начинают противоречить друг другу.
В общем случае продукционную модель можно представить в следующем виде:
- N – имя продукции;
- A – сфера применения продукции;
- U – условие применимости продукции;
- C – ядро продукции;
- I – постусловия продукции, актуализирующиеся при положительной реализации продукции;
- R – комментарий, неформальное пояснение (обоснование) продукции, время введения в базу знаний и т. д.;
Системы обработки знаний, использующие продукционную модель, получили название «продукционных систем». В состав экспертных систем продукционного типа входят: база правил (знаний), рабочая память и интерпретатор правил (решатель), реализующий определенный механизм логического вывода. Любое продукционное правило, содержащееся в базе знаний, состоит из двух частей: антецедента и консеквентна. Антецедент представляет собой посылку правила (условную часть) и состоит из элементарных предложений, соединенных логическими связками «и», «или». Консеквент (заключение) включает одно или несколько предложений, которые выражают либо некоторый факт, либо указание на определенное действие, подлежащее исполнению. Продукционные правила принято записывать в виде антецедент-консеквент.
Примеры продукционных правил:
ЕСЛИ
«двигатель не заводится»
И
«стартер двигателя не работает»
ТО
«неполадки в системе электропитания стартера»
Любое правило состоит из одной или нескольких пар «атрибут-значение». В рабочей памяти систем, основанных на продукционных моделях, хранятся пары атрибут-значение, истинность которых установлена в процессе решения конкретной задачи к некоторому текущему моменту времени. Содержимое рабочей памяти изменяется в процессе решения задачи. Это происходит по мере срабатывания правил. Правило срабатывает, если при сопоставлении фактов, содержащихся в рабочей памяти, с антецедентом анализируемого правила имеет место совпадение, при этом заключение сработавшего правила заносится в рабочую память. Поэтому в процессе логического вывода объём фактов в рабочей памяти, как правило, увеличивается (уменьшаться он может в том случае, если действие какого-нибудь правила состоит в удалении фактов из рабочей памяти). В процессе логического вывода каждое правило из базы правил может сработать только один раз.
Существуют два типа продукционных систем – с «прямыми»и «обратными»выводами. Прямые выводы реализуют стратегию «от фактов к заключениям». При обратных выводах выдвигаются гипотезы вероятностных заключений, которые могут быть подтверждены или опровергнуты на основании фактов, поступающих в рабочую память. Существуют также системы с двунаправленными выводами.
Основные достоинства систем, основанных на продукционных моделях, связаны с простотой представления знаний и организации логического вывода. К недостаткам таких систем можно отнести следующее:
· отличие от структур знаний, свойственных человеку;
· неясность взаимных отношений правил;
· сложность оценки целостного образа знаний;
· низкая эффективность обработки знаний.
При разработке небольших систем (десятки правил) проявляются в основном положительные стороны продукционных моделей знаний, однако при увеличении объёма знаний более заметными становятся слабые стороны.
Пример.
Задача. Построить продукционную модель представления знаний в
предметной области «Ресторан» (посещение ресторана).
Описание процесса решения.Для построения продукционной модели представления знаний необходимо выполнить следующие шаги:
1) Определить целевые действия задачи (являющиеся решениями).
2) Определить промежуточные действия или цепочку действий, между начальным состоянием и конечным (между тем, что имеется, и целевым действием).
3) Опередить условия для каждого действия, при котором его целесообразно и возможно выполнить. Определить порядок выполнения действий.
4) Добавить конкретики при необходимости, исходя из поставленной задачи.
5) Преобразовать полученный порядок действий и соответствующие им условия в продукции.
6) Для проверки правильности построения продукций записать цепочки продукций, явно проследив связи между ними.
Этот набор шагов предполагает движение при построении продукционной модели от результата к начальному состоянию, но возможно и движение от начального состояния к результату (шаги 1 и 2).
Решение.
1) Обязательное действие, выполняемое в ресторанах – поглощение пищи и ее оплата. Значит, есть уже два целевых действия «съесть пищу» и «оплатить», которые взаимосвязаны и следуют друг за другом.
2) Прежде чем что-либо съесть в ресторане, туда нужно придти, дождаться официанта и сделать заказ. Кроме того, нужно выбрать, в какой именно ресторан пойти. Значит, цепочка промежуточных действий: «выбор ресторана и путь туда», «сделать заказ официанту».
3) Прежде чем идти в ресторан, необходимо убедиться, что есть необходимая сумма денег. Выбор ресторана может обуславливаться многими причинами, выберем территориальный признак – к какому ближе в тот и идем. В разных ресторанах работают разные люди, поэтому в зависимости от выбора ресторана, официанты будут разные.
Кроме того, разные рестораны специализируются на разных кухнях, поэтому заказанные блюда будут в разных ресторанах отличаться. Значит вначале идут действия, позволяющие выбрать ресторан, затем характеризующие рестораны, а уже после заказ, еда, и оплата заказа.
4) Пусть в задаче будут рассматриваться два ресторана: «Вкусная еда» и «Вкуснятина». Первый –паб и заказы приносят быстрее, чем во втором, второй –пиццерия. В первом работает официант Сергей, а во втором официантка Марина. Петр –это клиент.
5) Выше описанное можно преобразовать в следующие предложения типа «Если, то»:
* Если субъект хочет есть и у субъекта есть достаточная сумма денег, то субъект может пойти в ресторан.
* Если субъект ближе к ресторану «Вкусная еда», чем к ресторану «Вкуснятина» и субъект может пойти в ресторан, то субъект идет в ресторан «Вкусная еда».
* Если субъект ближе к ресторану «Вкуснятина», чем к ресторану «Вкусная еда» и субъект может пойти в ресторан, то субъект идет в ресторан«Вкуснятина».
* Если субъект идет в ресторан «Вкуснятина» и в ресторане «Вкуснятина» работает официант Марина, то у субъекта принимает заказ Марина.
* Если субъект идет в ресторан «Вкусная еда» и в ресторане «Вкусная еда» работает официант Сергей, то у субъекта принимает заказ Сергей.
* Если субъект выбрал блюда и у субъекта принимает заказ Марина, то заказ принесут через 20 мин.
* Если субъект выбрал блюда и у субъекта принимает заказ Сергей, то заказ принесут через 10 мин.
* Если заказ принесут через 20 мин. или заказ принесут через 10 мин., то субъект может есть.
* Если субъект может есть, то после еды субъект должен оплатить заказ.
Введем обозначения для фактов (Ф), действий (Д) и продукций (П), тогда:
Субъект = Петр;
Ф1= субъект хочет есть;
Ф2= у субъекта есть достаточная сумма денег;
Ф3= субъект ближе к ресторану «Вкусная еда», чем к «Вкуснятина»;
Ф4=в ресторане «Вкуснятина» работает официант Марина;
Ф5=в ресторане «Вкусная еда» работает официант Сергей;
Ф6= субъект выбрал блюда;
Д1= субъект может пойти в ресторан;
Д2=субъект идет в ресторан «Вкусная еда»;
Д3=субъект идет в ресторан «Вкуснятина»;
Д4= у субъекта принимает заказ Марина;
Д5=у субъекта принимает заказ Сергей;
Д6=заказ принесут через 20 мин.
Д7=заказ принесут через 10 мин.
Д8=после еды субъект должен оплатить заказ.
Для продукций установим приоритет (в скобках перед запятой, чем выше приоритет, чем раньше проверяется правило).
П1(4 , Ф1 и Ф2)= Д1;
П2(5 , Ф3 и Д1)= Д2;
П3(4 , не Ф3 и Д1)= Д3;
П4(3 , Д3 и Ф4)= Д4;
П5(3 , Д2 и Ф5)= Д5;
П6(2 , Д4)= Д6;
П7(2 , Д5)= Д7;
П8(1 , Д6 или Д7)= Д8;
6) Для отображения взаимосвязи продукций построим граф (рис. 2.1).
Рисунок 2.1. Схема продукций предметной области «Ресторан».
Варианты лабораторной работы №2
1. Построить продукционную модель представления знаний в предметной области «Аэропорт» (диспетчерская).
2. Построить продукционную модель представления знаний в предметной области «Железная дорога» (продажа билетов).
3. Построить продукционную модель представления знаний в предметной области «Торговый центр» (организация).
4. Построить продукционную модель представления знаний в предметной области «Автозаправка» (обслуживание клиентов).
5. Построить продукционную модель представления знаний в предметной области «Автопарк» (пассажирские перевозки).
6. Построить продукционную модель представления знаний в предметной области «Компьютерные сети» (организация).
7. Построить продукционную модель представления знаний в предметной области «Университет» (учебный процесс).
8. Построить продукционную модель представления знаний в предметной области «Компьютерная безопасность» (средства и способы ее обеспечения).
9. Построить продукционную модель представления знаний в предметной области «Компьютерная безопасность» (угрозы).
10. Построить продукционную модель представления знаний в предметной области «Интернет-кафе» (организация и обслуживание).
11. Построить продукционную модель представления знаний в предметной области «Разработка информационных систем» (ведение информационного проекта).
12. Построить продукционную модель представления знаний в предметной области «Туристическое агентство» (работа с клиентами).
13. Построить продукционную модель представления знаний в предметной области «Зоопарк» (организация).
14. Построить продукционную модель представления знаний в предметной области «Прокат автомобилей» (ассортимент и работа с клиентами).
15. Построить продукционную модель представления знаний в предметной области «Операционные системы» (функционирование).
16. Построить продукционную модель представления знаний в предметной области «Кинопрокат» (ассортимент и работа с клиентами).
17. Построить продукционную модель представления знаний в предметной области «Информационные системы» (виды и функционирование).
18. Построить продукционную модель представления знаний в предметной области «Предприятие» (структура и функционирование).
Лабораторная работа №3.
Фреймовая модель представления знаний
Цель работы: получение знаний, умений и навыков по созданию базы знаний, представляющей собой фреймовую модель представления знаний.
Фрейм (англ. frame — каркас или рамка) предложен М.Минским в 70-е гг. прошлого века как структура знаний для восприятия пространственных сцен. Эта модель, как и семантическая сеть, имеет глубокое психологическое обоснование.
Под фреймом понимается абстрактный образ или ситуация. Например: слово "комната" вызывает у слушающих образ комнаты, "жилое помещение с четырьмя стенами, полом, потолком, окнами и дверью, площадью 6-20 м2.
В отличие от моделей других типов во фреймовых моделях фиксируется жесткая структура информационных единиц, которая называется протофреймом. В общем виде она выглядит следующим образом:
Структуру фрейма можно представить так:
ИМЯ ФРЕЙМА:
(имя 1-го слота: значение 1-го слота),
(имя 2-го слота: значение 2-го слота),
(имя N-ro слота: значение N-го слота).
Ту же запись представим в виде таблицы, дополнив двумя столбцами.
Имя фрейма | имя слота | тип слота | значение слота | присоединенная процедура |
В таблице дополнительные столбцы предназначены для описания типа слота и возможного присоединения к тому или иному слоту специальных процедур, что допускается в теории фреймов. В качестве значения слота может выступать имя другого фрейма; так образуют сети фреймов.
Различают фреймы-образцы, или прототипы, хранящиеся в базе знаний, и фреймы-экземпляры, которые создаются для отображения реальных ситуаций на основе поступающих данных.
Модель фрейма является достаточно универсальной, поскольку позволяет отобразить все многообразие знаний о мире через:
• фреймы-структуры, для обозначения объектов и понятий (заем, залог, вексель);
• фреймы-роли (менеджер, кассир, клиент);
• фреймы-сценарии (банкротство, собрание акционеров, празднование именин);
• фреймы-ситуации (тревога, авария, рабочий режим устройства) и др.
Важнейшим свойством теории фреймов является заимствованное из теории семантических сетей наследование свойств. И во фреймах, и в семантических сетях наследование происходит по АКО-связям (A-Kind-Of = это). Слот АКО указывает на фрейм более высокого уровня иерархии, откуда неявно наследуются, т.е. переносятся, значения аналогичных слотов.
Например, в сети фреймов на рис. 3.1 понятие "ученик" наследует свойства фреймов "ребенок" и "человек", которые находятся на более высоком уровне иерархии. Так, на вопрос: "Любят ли ученики сладкое?" Следует ответ: "Да", так как этим свойством обладают все дети, что указано во фрейме "ребенок". Наследование свойств может быть частичным, так, возраст для учеников не наследуется из фрейма "ребенок", поскольку указан явно в своем собственном фрейме.
Основным преимуществом фреймов как модели представления знаний является способность отражать концептуальную основу организации памяти человека, а также ее гибкость и наглядность.
Рисунок 3.1. Сеть фреймов
Пример решения задачи
Задача. Построить фреймовую модель представления знаний в предметной области «Ресторан» (посещение ресторана).
Описание процесса решения.Для построения фреймовой модели представления знаний необходимо выполнить следующие шаги:
1) Определить абстрактные объекты и понятия предметной области, необходимые для решения поставленной задачи. Оформить их в виде фреймов-прототипов (фреймов-объектов, фреймов-ролей).
2) Задать конкретные объекты предметной области. Оформить их в виде фреймов-экземпляров (фреймов-объектов, фреймов-ролей).
3) Определить набор возможных ситуаций. Оформить их в виде фреймов-ситуаций (прототипы). Если существуют прецеденты по ситуациям в предметной области, добавить фреймы-экземпляры (фреймы-ситуации).
4) Описать динамику развития ситуаций (переход от одних к другим) через набор сцен. Оформить их в виде фреймов-сценариев.
5) Добавить фреймы-объекты сценариев и сцен, которые отражают данные конкретной задачи.
Решение.
1) Ключевые понятия данной предметной области – ресторан, тот, кто посещает ресторан (клиент) и те, кто его обслуживают (повара, метрдотели, официанты, для простоты ограничимся только официантами).
У обслуживающего персонала и клиентов есть общие характеристики, поэтому целесообразно выделить общее абстрактное понятие – человек.
Тогда фреймы «Ресторан» и «Человек» являются прототипами-образцами, а фреймы «Оф