ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

advertisement
ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ
ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ
ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ
МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ ИНСТИТУТ
РАДИОТЕХНИКИ, ЭЛЕКТРОНИКИ И АВТОМАТИКИ
(ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ)
Факультет Киберенетики
Кафедра интеллектуальных
технологий и систем
Курсовой проект
Тема: Система – посредник в заключении договоров на покупку квартир
Дисциплина: Инженерия знаний
Студент: Жужман М.С.
Группа: ИИ-1-03
Руководитель: Потресова Г.Д.
МОСКВА 2005Задание
1. Исходные данные
1.1.Данные о клиентах, предлагающих товары
1.2.Данные о клиентах, желающих приобрести товары
2. Перечень разрабатываемых вопросов
2.1 Составление неформализованного описания предметной области
2.2 Составление концептуальной модели предметной области
2.3 Построение интенсиональной и экстенсиональной семантической
сети
2.4 Построение классифицирующей сети
2.5 Разработка метода формирования возможных вариантов договоров с
использованием классифицирующей сети
2.6 Определение критериев выбора наиболее предпочтительных
вариантов договоров
2.7 Разработка фреймовой модели представления знаний
2.8 Разработка программы для представления знаний. Тестирование
программы.
3. Перечень графических материалов
3.1 ER-диаграмма
3.2 Графическое представление интенсиональной семантической сети
3.3 Графическое представление экстенсиональной семантической сети
3.4 Классифицирующая сеть
3.5 Структура фреймов
3.6 Распечатки экранных форм для тестовых примеров
4. Календарный план-график работы
4.1 П.2.1 задания
4.2 П.2.2 и 3.1 задания
4.3 П.2.3, 3.2 и 3.3 задания
4.4 П.2.4-2.6 и 3.4 задания
4.5 П.2.7 и 3.5 задания
4.6 П.2.8 задания
4.7 П.2.9 и 3.6 задания
4.8 Оформление пояснительной записки
4.9 Защита курсового проекта
20.09.05
1.10.05
10.10.05
20.10.05
1.11.05
25.11.05
05.12.05
15.12.05
20.12.05
5. Задание выдано 7.09.04
Руководитель
Студент
Потресова Г.Д.
Жужман М.С.
_______________
_______________Введение
Инженерия знаний – область информатики, в рамках которой проводятся
исследования по представлению знаний в ЭВМ, поддержании их в актуальном
состоянии и манипулирование ими.
Человек-эксперт способен действовать на высоком уровне, так как много
знает об области своей деятельности. Это простое наблюдение является главным
обоснованием
для
разработки
сильных методов, или решателей проблем,
основанных на знаниях. Экспертные системы используют знания специфичной
предметной области. Обычно разработчики экспертной системы приобретают эти
знания
с помощью экспертов, методологию и деятельность которых затем
эмулирует система. Так же, как опытные люди, экспертные системы являются
«специалистами» по узкому кругу проблем. Подобно людям, они обладают как
теоретическими,
так
обеспечивающий
и
систему
практическими
знаниями,
знаниями:
обычно
человек-эксперт,
привносит
собственное
теоретическое понимание предметной области, а также снабжает систему
«хитростями», кратчайшими путями
решения
и эвристики, полученными из
опыта решения проблем.
Обычно экспертные системы могут отслеживать свои процессы рассуждения,
выводить промежуточные результаты, отвечать на вопросы о процессе решения,
позволяют модифицировать базу знаний, эвристически рассуждать.
Процесс
рассуждения экспертной системы
проверки, обеспечивая
информацию
о состоянии
должен быть открыт
решения
для
проблемы
и
объясняя выборы и решения, которые делает программа. Объяснения важны для
человека – эксперта, например врача или инженера, если он должен принять
рекомендацию компьютера. Действительно, мало кто
из экспертов
будет
понимать советы других людей, не говоря уже о том, чтобы следовать совету
машины, не учитывая её аргументацию. Как и любые программные средства
экспертные системы
должны обеспечивать простоту
прототипирования,
тестирования и изменения. Правила могут добавляться или удалятся без
необходимости дальнейших изменений всей программы. Лёгкость модификации
базы знаний является главным фактором производства успешных программ.
Экспертные системы строятся для решения широкого круга проблем в таких
областях, как: медицина, математика, машиностроение, химия, геология,
вычислительная техника, бизнес, законодательство, оборона, и образование.
В
пользовательском
интерфейсе можно
использовать:
Пользователь
вопросы, ответы;
меню;
естественный
язык;
графические
обозначения
Редактор базы знаний
Общая база знаний
Машина вывода
Данные частных
случаев
Подсистема
объяснений
Рис. 1. Архитектура типовой экспертной системы
Экспертные системы строятся методом последовательных приближений.
Выявляемые ошибки приводят к коррекции и наращиванию базы знаний. В этом
смысле база знаний скорее «растёт», чем конструируется. На рис.1. представлена
блок-схема, описывающая исследовательский цикл разработки программы.
Начало
Определение задач и целей
Разработка и создание прототипов
Тестирование/использование системы
Анализ и исправление недостатков
Требуется ли коррекция
проектного решения?
Готова ли система для
окончательного тестирования?
Окончательное
тестирование
Рис. 2. Исследовательский цикл разработки.
Инженерия знаний является сложной задачей, связанной с жизненными
циклом любой экспертной системы. Чтобы упростить эту задачу, полезно создать
концептуальную
модель-
реализованной
программой
рассматриваются
прослойку
следующие
При
между
человеческим
создании
вопросы.
Является
опытом
концептуальной
ли
решение
и
модели
проблемы
детерминированным или оно основано на поиске? Как выполняется рассуждение
: на основе данных (возможно, с генерацией и тестированием) или на основе
цели(с учётом некоторого множества вероятных гипотез)? Существуют ли стадии
рассуждения? Хорошо ли изучена область и может ли она обеспечить глубокие
прогнозирующие модели, или всё знание существенно эвристично? и т.д.
Получив ответы на эти и другие
вопросы, а также знания о предметной
области, можно приступать к разработке курсового проекта.
1 Исходные данные
1.1 Данные о клиентах, предлагающих товары.
Таблица предложения:
Поставщик Производи Названи
тель
е
Гнездо
Частота
Тип
процессора
процессора
поставки
Напряжение Критическа Кэш L2
питания
Тип ядра
я
Число
Кол-во Цена за
ядер
в заказе экземп
температура
ZLaw Inc.
Intel
Xeon
Socket604
3.6 ГГц
BOX
1,325 В
72°С
Frog Ltd.
AMD
Opteron
Socket940
2.2 ГГц
BOX
1,5 В
70°С
LTF Ltd.
AMD
Socket939
2.4 ГГц
BOX
1,4 В
65°С
Bog Inc.
AMD
SocketA
1,7 ГГц
OEM
1,6 B
90°С
Athlon64
Sempron
1.2 Данные о клиентах, желающих приобрести товары.
Таблица спроса:
ляр
1024
кб
1024
кб
1024
кб
1024
кб
Nocona
1
1
757
Sledgehammer
1
2
374
San Diego
1
1
200
Thoroughbred
1
5
81
Покупат Произв Назва
ель
одитель
ние
Гнездо
Частота
Тип
процессо процессо постав
ра
ра
ки
Напряже Критичес Кэш
ние
кая
Тип ядра
Числ Кол- Цена
о
L2
питания температ
Intel
Петров
AMD
Сидоров
AMD
Павлов
Intel
Платоно
в
AMD
Xeon
Socket60
4
Optero Socket94
n
0
Athlon Socket93
-64
Xeon
9
Socket60
4
Optero Socket94
n
0
3.6 ГГц
BOX
1,325 В
72°С
2.2 ГГц
BOX
1,5 В
70°С
2.4 ГГц
BOX
1,4 В
65°С
3.6 ГГц
BOX
1,3
72°С
2.4 ГГц
OEM
1,3
72°С
за
ядер заказ экзем
ура
Иванов
во в
1024
кб
е
пляр
1
1
757
1
2
1468
San Diego
1
1
200
Irwindale
1
1
797
Italy
2
1
522
Nocona
1024 Sledgeham
кб
1024
кб
2048
кб
1024
кб
mer
2 Разработка вопросов
2.1 Неформализованное описание предметной области.
В результате выполнения курсового проекта будет написана программа,
которая на основе введённых критериев и имеющейся у неё базы знаний, будет
выводить возможный договор и соответствующий ему спрос. На основе
полученных от пользователя, посредством тестирования, данных будет выведен
наиболее предпочтительный договор для пользователя.
В данном курсовом проекте программа будет работать в режиме
индивидуального пользователя.
2.2 Концептуальная модель предметной области.
Разработка системы, основанной на знаниях (СОЗ), начинается с анализа
предметной области и построения ее концептуальной модели.
Один из наиболее распространенных подходов к построению
концептуальной схемы был предложен П. Ченом в 1983г. Методика Чена
приводит к построению так называемой ЕR - диаграммы типов (Entity - relationship
diagram - диаграммы сущности связей). ЕR - диаграмма входит составным
элементом в модель сущностей и связей, или ЕR - модель.
В ЕR - модели множество классов объектов предметной области делится на
три подмножества: сущности, связи между сущностями, свойства сущностей и
связей. На ЕR-диаграмме классы объектов представляются вершинами графа.
Вершины, соответствующие сущностям изображаются прямоугольниками,
вершины, соответствующие связям - ромбами, а свойствам - кругами или овалами.
Ромб, изображающий связь, соединяется ребрами с прямоугольниками,
изображающими сущности, входящие в связь. Прямоугольник, соответствующий
сущности, соединяется ребрами с кругами, соответствующими свойствам этой
сущности (точнее множествам значений атрибутов этой сущности). При этом
ребра помечаются именами атрибутов. Аналогично представляются свойства
связей: кругами, которые соединяются ребрами с ромбом, изображающим связь.
Построение ER-диаграммы осуществляется на основе анализа описания
предметной области на естественном языке. Методика, предложенная П. Ченом,
позволяет регламентировать и упорядочить процесс построения ER-диаграммы,
эта методика в определенной мере отражает специфику конкретного
естественного языка (у Чена - английского).
Часто типом связи становится прямое дополнение, которое является именем
ситуации, создаваемой субъектом действия. Прилагательные, числительные,
различные меры обычно вводят характеристики сущностей и связей. Другие
характеристики связаны с местом и/или временем ситуации. В русском языке
многие характеристики можно ввести с помощью глагола "иметь" или
"характеризуется".
2.3 Интенсиональная и экстенсиональная семантические сети.
Сетевые модели представления знаний часто называют семантическими
сетями и выделяют в них два уровня. Верхний уровень - интенсиональная
семантическая сеть (ИСС) - представляет знания о классах объектов, нижний
уровень - экстенсиональная семантическая сеть (ЭСС) - знания о конкретных
объектах. ИСС кладется в основу базы знаний, а ЭСС представляет собой базу
данных. ИСС рассматривают как концептуальную схему предметной области.
При разработке баз данных (БД) для СОЗ часто используется реляционная
модель данных. Реляционная модель данных представляется множеством
нормализированных отношений, к которым применимы операции реляционной
алгебры. Эти отношения задаются на множестве атрибутов. Отношениям
соответствуют таблицы БД, а атрибутам - колонки этих таблиц.
В реляционном представлении ИСС отношения изображаются кругами,
классы значений атрибутов - прямоугольниками, а именами атрибутов помечены
ребра графа, связывающие вершины-отношения с вершинами-атрибутами.
От построенной ER- диаграммы легко перейти к реляционному
представлению ИСС (многоместными отношениями) с помощью следующих
правил. Все вершины-свойства ER-диаграммы становятся вершинами-атрибутами
на схеме, представляющей ИСС многоместными отношениями. Вершины-
сущности, не имеющие связанных с ними вершин-свойств, представляются
вершинами-атрибутами,
а
вершины-сущности,
имеющие
свойства,
представляются вершинами-отношениями.
Атрибутами отношения, представляющего сущность, являются свойства этой
сущности. Если среди этих атрибутов есть такой атрибут, который позволяет
однозначно идентифицировать каждую конкретную сущность, то этот атрибут
используется для связи данной сущности с другими вершинами-отношениями.
Если такого атрибута нет, то к множеству атрибутов-сущностей добавляется еще
один атрибут - код (идентификатор) сущности.
Вершины-связи
ER-диаграммы
могут
представляться
вершинамиотношениями.
2.4 Классифицирующая сеть.
Классифицирующие сети являются одним из классов однородных сетей.
Классифицирующие сети строятся на основе родовидового отношения sup,
заданного на множестве классов объектов. Это отношение интерпретируется
следующим образом: если Кi sup Кj, то в любой момент времени t каждый объект
о класса Кi является объектом класса Кj, т.е. Кj является надклассом Кi (или Кi
является подклассом Кj). Другими словами, если классы Кi и Кj связаны
t
t
t
отношением sup (т.е. Ki sup Kj) то t Ki Kj , где Ki - множество объектов
класса Кi в момент времени t.
Отношение sup является отношением частичного порядка и обладает
свойством транзитивности.
Графическое представление классифицирующей сети имеет вид
иерархической структуры.
Конкретные объекты, как правило, связываются с классами низшего уровня
иерархии отношением принадлежности isa. Запись k i isa K означает, что объект ki
является элементом класса К.
В случае прямой идентификации объектов (когда для идентификации
объектов используются уникальные имена или идентификаторы) ki является
именем конкретного объекта.
Если для некоторого класса объектов не заданы собственные имена объектов,
то для идентификации объектов этого класса можно использовать косвенную
идентификацию. Одним из наиболее употребительных способов косвенной
идентификации является указанием характеристик объектов.
В случае косвенной идентификации может использоваться классификация
объектов по нескольким аспектам.
В банках данных косвенная идентификация основана на использовании
ключей. Ключ - набор полей записи, значения которых однозначно определяют
запись в файле.
Файл состоит из записей, имеющих одинаковую структуру.
2.5 Метод формирования возможных
использованием классифицирующей сети.
вариантов
договоров
с
В создаваемой мной программе избран путь чёткого следование
определения указаниям пользователя. В программе будут уже заданы
промежутки значений атрибутов («нечёткие значения»), без
возможности их изменения для пользователя. Это служит для удобства
обращения с интерфейсом программы, не усложняется набор команд
для ввода пользователем, а уже изначально предлагается выбор из
промежутка значений. Учитывая это облегчение, пользователь может не
выбирать промежуток значений, при этом ему будет предоставлена
возможность самому выбрать интересующий его товар из
получившегося списка по другим, указанным им, критериям.
2.6 Критерий выбора наиболее предпочтительных вариантов договоров.
Критерием выбора наиболее подходящего договора является минимальная
цена.2.7 Фреймовая модель представления знаний.
Фреймы – это схема представления, ориентированная на включение в строго
организованные структуры данных неявных (подразумеваемых) информационных
связей, существующих в предметной области. Это представление поддерживает
организацию знаний в более сложные единицы, которые отображают структуру
объектов этой области. Фрейм может рассматриваться как статическая структура
данных, используемая для представления хорошо понятных стереотипных
ситуаций.
Фреймы обеспечивают механизм подобной организации, представляя
сущности как структурированные объекты с поименованными ячейками и
связанными с ними значениями. Таким образом, фрейм рассматривается как
единая сложная сущность.
Каждый отдельный фрейм можно рассматривать как структуру данных, во
многом подобную обычной «записи», с информацией, соответствующей
стереотипным сущностям. Ячейки фрейма содержат такую информацию.
1. Данные для идентификации фрейма.
2. Взаимосвязь этого фрейма с другими фреймами.
3. Дескрипторы требований для фрейма.
4. Процедурная информация об использовании описанной структуры.
Важной особенностью фреймов является возможность присоединить к
ячейке процедурный код.
5. Информация по умолчанию. Это значения ячейки, которые должны быть
истинными, если не найдены противоположные.
6. Информация для нового экземпляра. Многие ячейки фрейма могут
оставаться незаполненными, пока не указано значение для отдельного
экземпляра или пока они не понадобятся для некоторого аспекта решения
задачи.
Фреймы расширяют возможности семантических сетей рядом важных
особенностей.
Фреймы позволяют организовать иерархию знаний. В сети каждое понятие
представляется узлами и связями на одном и том же уровне детализации. Однако
очень часто для одних целей объект необходимо рассматривать как единую
сущность, а для других – учитывать детали его внутренней структуры. С помощью
процедурных вложений можно создавать демоны. Демон- это процедура, которая
является побочным эффектом некоторого другого действия в базе знаний.
Системы фреймов поддерживают наследование классов. Значения ячеек и
используемые по умолчанию значения класса наследуются через иерархию
класс/подкласс и класс/член.
Фреймы расширяют возможности семантических сетей, позволяя
представить сложные объекты не в виде большой семантической структуры, а в
виде единой сущности(фрейма). Это также позволяет естественным образом
представить стереотипные сущности, классы, наследование и значения по
умолчанию. Хотя фреймы, подобно логическим и сетевым представлениям,
являются мощным средством, многие проблемы организации сложных баз знаний
все должны решаться на основе опыта и интуиции программиста.2.8 Программа
для представления знаний. Тестирование программы.3 Графические
материалы
3.1 ER-диаграмма:
Производитель
Договор
Покупатель
Предложение
Процессоры
Спрос
Тип
поставки
Производитель
Кэш L2
Название
Частота
процессора
Напряжение
питания
Цена
Количество
Критическая
температура
Гнездо
процессора
3.2
Интенсиональная и семантическая сеть.
Этом разделе под кодом покупки будем понимать следующие значения:
Название, Гнездо процессора, Частота процессора, Тип поставки, Напряжение
питания, Критическая температура, Кэш L2, Тип ядра, Число ядер, Количество,
Цена за экземпляр. Всё это является характеристиками процессоров (товара),
непосредственно со спросом, предложением и договором не связанными.
Представление ИСС многоместными отношениями:
Количество
предложения
Предложение
Цена
предложения
Количество
договора
Договор
Код покупки
Цена договора
Количество
спроса
Спрос
Цена спроса
3.3 Экстенсиональная семантическая сеть.
300$
Предложение
Предложение
20
50
250$
250$
Товар_1
Договор
Договор
2
Товар_2
200$
200$
Спрос
Спрос
2
3.4 Классифицирующая сеть
Процессоры
Технические
характеристики
Тип поставки
Гнездо
процессора
Напряжение
питания
Частота
Критическая
температура
Ядро
Тип
BOX
Кэш
Количество
Ключ
OEM
3.5 Фреймовая модель представления знаний.
Покупка процессоров
Название
Специализация:процессоры
Специализация: Название
Содержит:
Название,
Гнездо процессора,
Частота процессора,
Тип поставки,
Напряжение питания,
Критическая температура,
Кэш L2,
Тип ядра
Назначение:
идентификация объекта
Гнездо процессора
Специализация: разъём
Назначение: определение
совместимости устройств
Напряжение питания
Специализация: питание
Назначение: экономия
ресурсов
Критическая
температура
Специализация:
температура
Назначение:
сохранность техники
Орбита
Специализация: орбита
Высота: MEO
Назначение: связь
Надежность
Специализация: надежность
Качество: 96-100%
Назначение: снижение риска
Кэш L2
Специализация:
память
Назначение:
производительность
Тип ядра
Специализация:
микросхема
Назначение:
производительность
Список использованной литературы
1.
Дж. Ф. Люгер – Искусственный интеллект. Стратегии и
методы решения сложных проблем.
2.
Потресова Г.Д. – Курс лекций по инженерии знаний.
Download