Автор: Пользователь скрыл имя, 23 Декабря 2012 в 03:15, курсовая работа
Проектирование баз знаний – одно из важнейших направлений искусственного интеллекта. Системы искусственного интеллекта отличаются от обычных программ тем, что они оперируют не данными, а знаниями.
Второе отличие состоит в том, что для обычных программ всегда программируется тот или иной результат, который должна выдать программа при определенных данных, а система искусственного интеллекта способна сама вырабатывать решения, которые в нее никто не закладывал.
Введение……………………………………………………………………………..4
1. Анализ предметной области..……………………………………………………5
2. Проектирование структуры базы данных предметной области.……………10
3. Проектирование базы знаний предметной области..……….………………..29
Заключение…………………………………………………………………………41
Список сокращений……………………………………………………………......42
Список использованных источников…………………………………………......43
Приложение А. Описание применения приложения
Приложение Б. Текст программы
2.6.1. Проектирование таблиц для выбранной СУБД
Приведем описание структуры таблиц для выбранной СУБД.
Таблица 2.6 - Недвижимость
Имя поля |
Тип поля |
Длина поля |
Номер_недвижимости |
Int |
4 byte |
Тип_недвижимости |
varchar(20) |
20 символов |
Адрес |
varchar(50) |
50 символов |
Стоимость |
Money |
8 byte |
Площадь |
Float |
8 byte |
ФИО_владельца |
varchar(50) |
50 символов |
Таблица 2.7 - Риелтор
Имя поля |
Тип поля |
Длина поля |
Номер_риелтора |
Int |
4 byte |
ФИО_риелтора |
varchar(50) |
50 символов |
Рабочий телефон |
Int |
4 byte |
Таблица 2.8 - Клиент
Имя поля |
Тип поля |
Длина поля |
Номер_клиента |
Int |
4 byte |
ФИО_клиента |
varchar(50) |
50 символов |
Телефон |
Int |
4 byte |
Номер_паспорта |
varchar(10) |
10 символов |
Таблица 2.9 - Услуга
Имя поля |
Тип поля |
Длина поля |
Номер_услуги |
Int |
4 byte |
Название |
varchar(20) |
20 символов |
Описание |
varchar(80) |
80 символов |
Стоимость |
Money |
16 byte |
Таблица 2.10 - Заявка
Имя поля |
Тип поля |
Длина поля |
Номер_заявки |
Int |
4 byte |
Номер_клиента |
Int |
4 byte |
Номер_услуги |
Int |
4 byte |
Дата_поступления |
Date |
8 byte |
Таблица 2.11 - Договор
Имя поля |
Тип поля |
Длина поля |
Номер_договора |
Int |
4 byte |
Номер_недвижимости |
Int |
4 byte |
Номер_риелтора |
Int |
4 byte |
Номер_заявки |
Int |
4 byte |
Дата_сделки |
Date |
8 byte |
Физическая модель БД в SQL Server 2005 представлена ниже:
Рисунок 2.9 – Физическая модель БД в SQL Server 2005.
2.7. Создание, загрузка и проверка БД
Создали БД в СУБД Microsoft SQL Server 2005. После создания БД перешли к процессу создания таблиц. Все созданные нами таблицы представлены на рисунках, расположенных ниже.
Рисунок 2.10 – Таблица «Недвижимость»
Рисунок 2.11 – Таблица «Риелтор»
Рисунок 2.12 – Таблица «Клиент»
Рисунок 2.13 – Таблица «Услуга»
Рисунок 2.14 – Таблица «Заявка»
Рисунок 2.15 – Таблица «Договор»
Разработаем массив данных для загрузки в БД и представим его в табличном виде (табл. 2.12-2.17).
Таблица 2.12 – Массив данных для загрузки в таблицу «Договор»
Таблица 2.13 – Массив данных для загрузки в таблицу «Клиент»
Таблица 2.14 – Массив данных для загрузки в таблицу «Риелтор»
Таблица 2.15 – Массив данных для загрузки в таблицу «Недвижимость»
Таблица 2.16 – Массив данных для загрузки в таблицу «Услуга»
Таблица 2.17 – Массив данных для загрузки в таблицу «Заявка»
Интерфейс (главное окно) приложения представлен на рисунке 2.16
Рисунок 2.16 – Интерфейс приложения.
Разработанные в приложении формы представлены в таблице 2.12.
Таблица 2.18 – Формы приложения
Номер формы |
Название формы |
Назаначение формы |
1 |
Form1 |
На данной форме расположено основное меню приложения |
2 |
Form2 |
Форма, позволяющая редактировать, удалять, добавлять договоры |
3 |
Form3 |
Форма, позволяющая редактировать, удалять, добавлять заявки |
4 |
Form4 |
Форма, позволяющая редактировать, удалять, добавлять клиентов |
5 |
Form5 |
Форма, позволяющая редактировать, удалять, добавлять недвижимость |
6 |
Form6 |
Форма, позволяющая редактировать, удалять, добавлять риелторов |
7 |
Form7 |
Форма, позволяющая редактировать, удалять, добавлять услуги |
8 |
Form8 |
Форма, позволяющая сортировать, фильтровать, осуществлять поиск в договорах |
9 |
Form9 |
Форма, позволяющая сортировать, фильтровать, осуществлять поиск в заявках |
10 |
Form10 |
Форма, позволяющая сортировать, фильтровать, осуществлять поиск в клиентах |
11 |
Form11 |
Форма, позволяющая сортировать, фильтровать, осуществлять поиск в недвижимости |
12 |
Form12 |
Форма, позволяющая сортировать, фильтровать, осуществлять поиск в риелторах |
13 |
Form13 |
Форма, позволяющая сортировать, фильтровать, осуществлять поиск в услугах |
14 |
Form14 |
Форма, отображающая отчёт о договорах |
15 |
Form15 |
Форма, отображающая отчёт о заявках |
16 |
Form16 |
Форма, отображающая отчёт о клиентах |
17 |
Form17 |
Форма, отображающая отчёт о недвижимости |
18 |
Form18 |
Форма, отображающая отчёт о риелторах |
19 |
Form19 |
Форма, отображающая отчёт о услугах |
Структуру ПО приложения представим в виде рисунка (рис. 2.17), на котором отобразим все компоненты приложения (формы) и связи между ними.
Рисунок 2.17 – Структура ПО приложения
Переход между компонентами ПО осуществляется либо через системное меню на главной форме либо через кнопки на других формах. Приложение завершает свою работу при закрытии Form1.
Результат работы программы представлен ниже.
Рисунок 2.18 – Интерфейс окна обработки таблицы “Недвижимость”.
Обработка таблиц “Договор”, “Заявка”, “Услуга”, “Клиент”, “Риелтор” производится аналогично таблице “Недвижимость”.
Рисунок 2.19 – Интерфейс окна для сортировки, поиска и фильтрации данных в таблице “Недвижимость”.
Сортировка, поиск и фильтрация данных таблиц “Договор”, “Заявка”, “Услуга”, “Клиент”, “Риелтор” производится аналогично таблице “Недвижимость”.
Рисунок 2.20 – Интерфейс окна для вывода отчета таблицы “Недвижимость”.
Вывод отчета таблиц “Договор”, “Заявка”, “Услуга”, “Клиент”, “Риелтор” производится аналогично таблице “Недвижимость”.
Как видно из рисунков 2.18 - 2.20 полученные данные совпадают с эталонными, следовательно, работа базы данных осуществляется корректно.
3. Проектирование базы знаний предметной области
3.1 Проектирование экспертной системы по предметной области
Для разработки экспертной системы выделим задачи, которые она должна выполнять:
Воспользуемся понятиями, выделенными ранее из предметной области:
Разработаем множество продукционных правил «если…, то…» функционирования нашей экспертной системы:
Построим дерево решений для
множества разработанных
Дерево решений для первого прецедента представлено на рисунке 3.1.