ВВЕДЕНИЕ 5
ЦЕЛИ И ЗАДАЧИ 6
1 ОСНОВНЫЕ СВЕДЕНИЯ ОБ ЭКСПЕРТНЫХ СИСТЕМАХ 7
1.1 ПОНЯТИЕ ЭКСПЕРТНОЙ СИСТЕМЫ 7
1.2 АРХИТЕКТУРА ЭКСПЕРТНОЙ СИСТЕМЫ 7
1.3 ФУНКЦИОНИРОВАНИЕ ЭКСПЕРТНЫХ СИСТЕМ 9
1.4 ПРЕИМУЩЕСТВА ЭКСПЕРТНЫХ СИСТЕМ 10
1.5 ЭТАПЫ РАЗРАБОТКИ ПРОТОТИПА ЭКСПЕРТНОЙ СИСТЕМЫ 12
1.6 ОСНОВНЫЕ ВЫВОДЫ ПО РАЗДЕЛУ 1 16
2 ОСНОВНЫЕ СВЕДЕНИЯ О ПРОДУКЦИОННЫХ МОДЕЛЯХ ПРЕДСТАВЛЕНИЯ ЗНАНИЙ 17
2. 1 ОСНОВНЫЕ МОДЕЛИ ОПИСАНИЯ ЗНАНИЙ 18
2.2 ПРОДУКЦИОННАЯ МОДЕЛЬ ЗНАНИЙ 21
2.3 ОСОБЕННОСТИ ПРИМЕНЕНИЯ ПРОДУКЦИОННЫХ МОДЕЛЕЙ 23
2.4 ОСНОВНЫЕ ВЫВОДЫ ПО РАЗДЕЛУ 2 23
3 ПРЕДСТАВЛЕНИЕ НЕЧЕТКИХ ЗНАНИЙ 25
3.1 СУЩНОСТИ, ЗНАЧЕНИЯ И ФУНКЦИИ ПРИНАДЛЕЖНОСТИ 25
3.2 НЕЧЕТКИЕ ЧИСЛА 29
3.3 НЕЧЕТКИЕ МНОЖЕСТВА 29
3.4 ОПЕРАЦИИ НАД НЕЧЕТКИМИ МНОЖЕСТВАМИ 30
3.5 ОСНОВНЫЕ ВЫВОДЫ ПО РАЗДЕЛУ 3 33
4 ЗАЩИТА ИНФОРМАЦИИ 34
4.1 ОСНОВНЫЕ ОПРЕДЕЛЕНИЯ 34
4.2 КЛАССИФИКАЦИЯ МЕТОДОВ ЗАКРЫТИЯ ИНФОРМАЦИИ 35
4.3 СИММЕТРИЧНЫЕ МЕТОДЫ ШИФРОВАНИЯ 36
4.4 ОСНОВНЫЕ ВЫВОДЫ ПО РАЗДЕЛУ 4 40
5 ПРОГРАММНАЯ РЕАЛИЗАЦИЯ 41
5.1 ВЫБОР СРЕДЫ РАЗРАБОТКИ 41
5.2 ЯЗЫК C# 42
5.3 СРЕДА РАЗРАБОТКИ VISUAL STUDIO 45
5.4 ОСНОВНЫЕ ВЫВОДЫ ПО РАЗДЕЛУ 5 46
6 ФУНКЦИОНИРОВАНИЕ ЭКСПЕРТНОЙ СИСТЕМЫ 47
6.1 ИНСТРУКЦИЯ ДЛЯ ПРОГРАММИСТА 47
6.2 ХАРАКТЕРИСТИКИ ПРОГРАММЫ 47
6.3 ОБРАЩЕНИЕ К ПРОГРАММЕ 47
6.4 ВХОДНЫЕ И ВЫХОДНЫЕ ДАННЫЕ 47
6.5 ОПИСАНИЕ СТРУКТУР ДАННЫХ 49
6.6 ИНСТРУКЦИЯ ДЛЯ ПОЛЬЗОВАТЕЛЯ 53
ЗАКЛЮЧЕНИЕ 70
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 71
ПРИЛОЖЕНИЕ
Проблема выбора направления профильного обучения в школе была и остается актуальной. В мире множество различных профессий и каждая имеет свое определенное направление. Например, математическое направление включает в себя такие профессии как инженер, бухгалтер, архитектор; гуманитарное – психолог, преподаватель, актер и т. д.
Как правило, родители, заинтересованные в эффективном обучении ребенка в
школе, учитывают не только статус школы (лицей, гимназия), но и личностные характеристики ребенка (физиологические, интеллектуальные, психологические). Для
этого они должны выявить эти характеристики, выбрать направление обучения в
школе и сориентировать школьника на выбор профессии в будущем.
Такая экспертная система должна иметь возможность:
1. выявить личностные характеристики детей дошкольного и младшего
школьного возраста;
2. вывода рекомендуемого направление обучения ребенка в соответствии с
его личностными характеристиками;
3. помочь родителям сориентировать ребенка на выбор профессии в будущем и узнать об увлечениях ребенка;
4. хранения всех логинов, паролей и результатов тестирований в отдельных файлах;
5. добавления, удаления или изменения вопросов тестов;
6. обеспечить защиту важной информации, такой как логины и пароли
пользователей;
7. просмотра результатов в виде графиков или диаграмм по каждому
направлению.
Далее перейдем к определению цели работы и постановке задач, необходимых
для ее достижения.
В результате выполнения данной работы была создана экспертной системы
для выбора направления обучения ребенка в школе. При создании экспертной системы, я играла роль Когнитолога и Программиста. В роли Когнитолога было выбрано два варианта обработки тестирования:
1) с помощью системы баллов;
2) с помощью методов нечеткой логики.
В качестве программиста был разработан, во-первых, интерфейс между экспертной
системой и пользователем и, во-вторых, блока экспертной системы, который выдает
рекомендации на основе полученных знаний.
В качестве модели знаний для создания базы знаний были рассмотрены различные их варианты: фреймы, семантические сети, продукционные модели и онтологии. Наиболее подходящей моделью представления знаний была определена продукционная модель. Продукционная модель представляет собой набор правил вида:
ЕСЛИ причины, ТО следствия. Она позволяет систематизировать знания, делая их
более понятными и доступными для человека.
Были рассмотрены различные языки описания продукционной модели и инструменты их разработки. Из них более подробно изучены язык описания C# и среда
разработки VisualStudio. Данный программный продукт предоставляет инструменты
для описания классов продукционной модели, их структуры и свойств, связывающих различные классы. Также в нем существует возможность работы с нечеткой логикой и вывод графика функции принадлежности на основе полученных знаний.
Полученная экспертная система позволяет добавлять, удалять или корректировать вопросы тестов, сохранять логины и пароли пользователей, а также результаты пройденных тестирований в отдельных файлах, принадлежащих каждому пользователю.
В дальнейшем данная экспертная система может быть улучшена расширением
функционала интерфейса. Архитектура программной части системы разработана таким образом, что она может работать и с другими знаниями экспертов, которые
можно добавлять, удалять или корректировать.
1. Дж. Джарратано. Экспертные системы: принципы разработки и программирование / Дж. Джарратано, Г. Райли - 4-е изд.; пер. с англ. К. А. Птицына; И. д. «Вильямс», 2007. - 27 с.
2. Попов Э.В. Экспертные системы: Решение неформализованных задач в диалоге с ЭВМ. - М.: Наука. Гл. ред. физ.-мат. Лит., 1987. - 13 с.
3. Моисеев В.Б. Представление знаний в интеллектуальных системах. Информатика и образование,. №2, 2003 г. с. 84-91
4. Бернерс-Ли Т. Семантическая сеть [Электронный ресурс] / Т. Бернерс- Ли, Дж. Нендлерс, О. Лассила; пер. с англ. Е. В. Золин. - Электрон.текстовые дан. - Режим доступа: http://ezolin.pisem.net/logic/semantic web rus.html
5. К. Нейлор. Как построить свою экспертную систему.- М.: Энегроатомиздат, 2001. 49 с.
6. Минский М.Л. Фреймы для представления знаний. М.:Энергия, 1979. 33 с.
7. Ярушкина Н. Г. Методы нечетких экспертных систем в интеллектуальных САПР. - Саратов: Изд-во Сарат. ун-та, 1997. 44 с.
8. Представление и использование знаний / Под ред. Х. Уэно, М. Исидзука. - М.: Мир, 1989. 138-140 с.
9. Степанов Е.А., Корнеев И.К. Информационная безопасность и защита информации - М.: ИНФРА-М, 2001. - 304 с.
10. Тузовский А.Ф., Чириков С.В., Ямпольский В.З. Системы управления знаниями (методы и технологии) / Под общ.ред. В.З. Ямпольского. - Томск: Изд- во НТЛ, 2005. - 260 с.
11. Безбогов А. А. Методы и средства защиты компьютерной информации. / Безбогов А. А., Яковлев А. В., Шамкин В. Н.; Изд. ТГТУ, 2006. 104 с.
12. Коробова И. Л. Методы представления знаний. / Коробова И. Л., Федченко Т. М.; Изд. ТГТУ, 2003. 5 с.
13. И.Ю. Баженова. Языки программирования. - М.: Академия, 2012. - 368 с.
14. О.Л. Голицына, И.И. Попов. Программирование на языках высокого уровня. - М.: Форум, 2010. - 496 с.
15. Семакин И.Г., Шестаков А.П. Основы программирования - М.:
Мастерство, 2001. - 432 с.
16. Ф. А. Новиков. Системы представления знаний: Учеб.пособие. - СПб.: Изд-во Политехн. ун-та, 2010. 47 с.
17. В. Пономарев. Программирование на C++/C# в VisualStudio .NET. - СПб.: Изд-во БХВ - Петербург, 2004. 144-152 с.
18. Батыршин И.З. Основные операции нечеткой логики и их обобщения. - М.: Изд-во БИНОМ, 2006. 128 с.
19. А.В. Петраков. Основы практической защиты информации. Учебное пособие. - М.: Солон-Пресс, 2005. 184 с.
20. window.edu.ru - Бесплатная электронная библиотека [Инт. ресурс]. URL: http://window.edu.ru (дата обращения: 23.05.2016).
21. Шмидский Я.К. Программирование на языке С/С++ - М.: Диалектика, 2003. 152 с.
22. Т. А. Павловская. Паскаль. Программирование на языке высокого уровня. - СПб.: Изд-во «Питер», 2003. 26 с.
23. С. Д. Штовба. Проектирование нечетких систем средствами MATLAB. - М.: Изд-во «Горячая линия - Телеком», 2007. 188с.
24. С. В. Синицын, А. С. Михайлов, О. И. Хлытчиев. Программирование на языке высокого уровня. - М.: Академия, 2010. - 97-100 с.