Экспертная система для автоматизации построения компонентов системы Moodle

Автор работы: Пользователь скрыл имя, 07 Декабря 2013 в 19:24, дипломная работа

Краткое описание

Данный дипломный проект посвящен разработке экспертной системы для автоматизации построения компонентов в системе Moodle. В пояснительной записке представлены анализ предметной области, цели и задачи проекта, обзор существующих аналогов, структурная схема экспертной системы, база знаний экспертной системы и дерево вопросов, на которые пользователь будет отвечать в процессе работы с системой, а так же проведен сравнительный анализ языков программирования и моделей представления знаний.

Содержание

Введение 5
Основная часть 7
1 Специальная часть 7
1.1 Аналитический обзор системы Moodle 7
1.1.1 О системе Moodle 7
1.1.2 Преимущества Moodle 9
1.1.3 Экспертная система 11
1.2 Обзор существующих экспертных систем в данной предметной области 14
1.3 Постановка задачи на разработку экспертной системы 16
1.4 Анализ программного построения существующих модулей в системе Moodle 17
1.4.1 Содержимое папки базового модуля 18
1.4.2 Описание файлов 19
1.5 Разработка структурной схемы экспертной системы 21
1.6 Выбор программных средств для реализации экспертной системы 25
1.6.1 Perl 26
1.6.2 Delphi 27
1.6.3 Python 28
1.6.4 PHP: Hypertext Preprocessor 29
1.6.5 Сводная таблица сравнения языков программирования 31
1.7 Создание базы знаний экспертной системы 32
1.8 Разработка дерева вопросов 33
1.9 Выбор модели представления знаний 34
1.10 Выбор алгоритма поиска решений 37
1.11 Оценка эффективности системы 39
2 Экономическая часть 40
2.1 Расчет стоимости разработки экспертной системы 41
2.2 Расчет экономического эффекта экспертной системы 45
2.3 Показатели эффективности 50
3 Защита информации 52
3.1 Анализ возможных угроз безопасности информации в экспертной системе 53
3.2 Выбор средств защиты информации 56
Заключение 58
Приложения 59
Список использованной литературы 64

Прикрепленные файлы: 1 файл

Диплом прядкин.doc

— 589.50 Кб (Скачать документ)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Аннотация

Данный дипломный проект посвящен разработке экспертной системы для автоматизации построения компонентов в системе Moodle. В пояснительной записке представлены анализ предметной области, цели и задачи проекта, обзор существующих аналогов, структурная схема экспертной системы, база знаний экспертной системы и дерево вопросов, на которые пользователь будет отвечать в процессе работы с системой, а так же проведен сравнительный анализ языков программирования и моделей представления знаний.

Дипломный проект содержит 64 листа формата А4, 11 таблиц, 6 рисунков и 12 литературных источников.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Оглавление

 

 

 

 

 

 

 

 

 

Введение

Дистанционным обучением  может считаться любая форма  обучения, в которой преподаватель  и студенты разделены во времени  и пространстве. Появление Интернета  и Web-технологий дало новые возможности в развитии дистанционного обучения.

Систему дистанционного обучения посредством Интернета  можно определить как комплекс программно-технических  средств, методик и организационных  мероприятий, которые позволяют  обеспечить доставку образовательной информации учащимся по компьютерным сетям общего пользования, а также проверку знаний, полученных в рамках курса обучения конкретным слушателем, студентом, учащимся.

Использование систем дистанционного обучения несет определенные выгоды: такие системы позволяют вовлечь в процесс обучения большее количество учащихся и сделать его более доступным как с точки зрения стоимости обучения, так и с точки зрения территориальной удаленности преподавателей и обучаемых.

Среди основных преимуществ таких систем можно отметить следующие:

- возможность выбора обучаемым удобного места и времени для обучения;

      -  возможность получения доступа к учебным курсам лицам, которые не могут получить этот доступ непосредственно в силу определенных причин;

      - сокращение расходов на обучение - нет необходимости совершать дальние поездки для частных лиц, и для организаций - направлять сотрудников в командировки.

Возможность создавать  сайты для онлайн-обучения предоставляют  ряд средств, среди которых система управления курсами Moodle. Данная система имеет модульный принцип построения и открытый исходный код. Благодаря этому система постоянно модернизируется, дополняется новыми модулями, позволяющими усовершенствовать процесс обучения. Однако перед начинающими разработчиками возникает проблема отсутствия знаний для дальнейшей разработки модулей в системе Moodle. Эти знания в разрозненном состоянии можно получить из разных интернет-источников, но это лишь усложнит задачу программистов: они будут вынуждены затратить много  времени на их поиск, изучение.

Выходом из данной ситуации может являться объединение знаний в одном ресурсе. Это можно  сделать, создав какой-либо источник с  правилами написания компонентов  в системе Moodle. Но на изучение этих правил потребуется какое-то количество времени, и не всегда получится в результате этого изучения создание корректного модуля системы.  Поэтому для решения данной задачи целесообразно создать экспертную систему для автоматизации построения компонентов системы Moodle,  которая позволит разработчику получить возможность написания корректного модуля, не теряя времени на поиск знаний и изучение специфики системы.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Основная часть

1 Специальная часть

  • 1.1 Аналитический обзор системы Moodle

  • 1.1.1 О системе Moodle

Moodle - это система управления курсами (CMS) с открытым исходным кодом, также известная как система управления обучением (LMS) или виртуальная обучающая среда (VLE). Она стала очень популярной среди преподавателей во всем мире как средство для создания динамических веб-сайтов для учащихся. Для обеспечения работы она должна быть установлена на веб-сервере, либо на собственный компьютер, либо у хостинговой компании.

Целью проекта Moodle является предоставление преподавателям всегда самых лучших средств для управления и способствования процессу обучения. Есть несколько путей использования Moodle:

- Moodle имеет возможности  для масштабирования вплоть до  нескольких сотен тысяч учащихся, а может использоваться даже  для начальной школы или самостоятельного  обучения.

-   Многие организации  используют Moodle в качестве платформы  для создания полностью онлайновых  курсов (известное как смешанное  обучение).

-   Многим пользователям  нравятся модули элементов курса  (такие как форумы, базы данных  и вики) за возможность создания удобной среды для обмена информацией по изучаемым темам (в традициях социального конструктивизма), в то время как другие предпочитают использовать Moodle как способ предоставления информации для студентов (например, стандарт пакетов SCORM) и оценки обучения с использованием заданий или тестов.

Moodle относится к классу LMS (Learning Management System) — систем управления  обучением. В нашей стране подобное  программное обеспечение чаще  называют системами дистанционного  обучения (СДО), так как именно  при помощи подобных систем во многих вузах организовано дистанционное обучение. Moodle — это свободное программное обеспечение с лицензией GPL, что дает возможность бесплатного использования системы, а также ее безболезненного изменения в соответствии с нуждами образовательного учреждения и интеграции с другими продуктами. Moodle — аббревиатура от Modular Object-Oriented Dynamic Learning Environment (модульная объектно-ориентированная динамическая обучающая среда). Благодаря своим функциональным возможностям система приобрела большую популярность и успешно конкурирует с коммерческими LMS. Moodle используется более чем в 30 000 учебных заведений по всему миру и переведена почти на 80 языков, в том числе и на русский.[1]

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 1.1.2 Преимущества Moodle

Open Source СДО Moodle широко  известна в мире, используется  более чем в 100 странах.

По уровню предоставляемых  возможностей Moodle выдерживает сравнение  с известными коммерческими СДО, в то же время выгодно отличается от них тем, что распространяется в открытом исходном коде - это дает возможность «заточить» систему под особенности конкретного образовательного проекта, а при необходимости и встроить в нее новые модули.

Moodle ориентирована на  коллаборативные технологии обучения - позволяет организовать обучение в процессе совместного решения учебных задач, осуществлять взаимообмен знаниями.

Широкие возможности  для коммуникации – одна из самых  сильных сторон Moodle. Система поддерживает обмен файлами любых форматов - как между преподавателем и студентом, так и между самими студентами. Сервис рассылки позволяет оперативно информировать всех участников курса или отдельные группы о текущих событиях. Форум дает возможность организовать учебное обсуждение проблем, при этом обсуждение можно проводить по группам. К сообщениям в форуме можно прикреплять файлы любых форматов. Есть функция оценки сообщений – как преподавателями, так и студентами. Чат позволяет организовать учебное обсуждение проблем в режиме реального времени. Сервисы «Обмен сообщениями», «Комментарий» предназначены для индивидуальной коммуникации преподавателя и студента: рецензирования работ, обсуждения индивидуальных учебных проблем. Сервис «Учительский форум» дает педагогам возможность обсуждать профессиональные проблемы.

Важной особенностью Moodle является то, что система создает и хранит портфолио каждого обучающегося: все сданные им работы, все оценки и комментарии преподавателя к работам, все сообщения в форуме.

Преподаватель может  создавать и использовать в рамках курса любую систему оценивания. Все отметки по каждому курсу хранятся в сводной ведомости.

Moodle позволяет контролировать  “посещаемость”, активность студентов,  время их учебной работы в  сети.[2]

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 1.1.3 Экспертная система

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

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

Как правило, экспертные системы создаются для решения  практических задач в некоторых  узкоспециализированных областях, где  большую роль играют знания «бывалых»  специалистов. Экспертные системы были первыми разработками, которые смогли привлечь большое внимание к результатам исследований в области искусственного интеллекта.

Экспертные системы  имеют одно большое отличие от других систем искусственного интеллекта: они не предназначены для решения  каких-то универсальных задач. Экспертные системы предназначены для качественного решения задач в определенной разработчиками области, в редких случаях – областях.

Экспертное знание –  это сочетание теоретического понимания  проблемы и практических навыков  ее решения, эффективность которых  доказана в результате практической деятельности экспертов в данной области. Фундаментом экспертной системы любого типа является база знаний, которая составляется на основе экспертных знаний специалистов. Правильно выбранный эксперт и удачная формализация его знаний позволяет наделить экспертную систему уникальными и ценными знаниями. Поэтому ценность всей экспертной системы как законченного продукта на 90% определяется качеством созданной базы знаний.

Экспертная система  – это не простая программа, которая  пишется одним или несколькими программистами.

Экспертная система  является плодом совместной работы экспертов  в данной предметной области, инженеров  по знаниям и программистов.

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

Эксперт предоставляет  необходимые знания о тщательно  отобранных примерах проблем и путей  их решения. Например, при создании экспертной системы диагностики  заболеваний врач рассказывает инженеру по знаниям об известных ему заболеваниях. Далее эксперт раскрывает список симптомов, которые сопровождают каждое заболевание и в заключение рассказывает об известных ему методах лечения. Инженер по знаниям, формализует всю полученную информацию в виде базы знаний и помогает программисту в написании экспертной системы.

Первую экспертную систему, которую назвали Dendral, разработали  в Стэнфорде в конце 1960-х г.г. Эта была экспертная система, определяющая строение органических молекул по химическим формулам и спектрографическим данным о химических связях в молекулах. Ценность Dendral заключалась в следующем. Органические молекулы, как правило, очень велики и поэтому число возможных структур этих молекул также велико. Благодаря эвристическим знаниям экспертов-химиков, заложенных в экспертную систему, правильное решение из миллиона возможных находилось всего за несколько попыток. Принципы и идеи, заложенные в Dendral оказались настолько эффективными, что они до сих пор применяются в химических и фармацевтических лабораториях по всему миру.

Экспертная система Dendral одной из первых использовала эвристические знания специалистов для достижения уровня эксперта в решении задач, однако методика современных экспертных систем связана с другой разработкой – Myсin. В ней использовались знания экспертов медицины для диагностики и лечения специального менингита и бактериальных инфекций крови.

Экспертная система Mycin, разработанная в том же Стэнфорде  в середине 1970-х г.г., одной из первых обратилась к проблеме принятия решений  на основе ненадежной или недостаточной  информации. Все рассуждения экспертной системы Mycin были основаны на принципах управляющей логики, соответствующих специфике предметной области. Многие методики разработки экспертных систем, использующиеся сегодня, были впервые разработаны в рамках проекта Mycin.

На сегодняшний день создано уже большое количество экспертных систем. С помощью них решается широкий круг задач, но исключительно в узкоспециализированных предметных областях. Как правило, эти области хорошо изучены и располагают более менее четкими стратегиями принятия решений.[3]

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 1.2 Обзор существующих экспертных систем в данной предметной области

Существуют экспертные системы, которые в результате своей  деятельности тоже получают программный  продукт. Они имеют ряд особенностей в построении, которые можно применить и для разрабатываемой экспертной системы. Например, система CLIPS является наиболее широко используемой экспертной системой благодаря своей скорости, эффективности и бесплатности. В ее основе лежит продукционная модель представления знаний, а результаты работы определяются с помощью прямого логического вывода. Кроме того, пополнение знаний в этой системе происходит автоматически.  

Другая система G2 Gensym представляет собой объектно-ориентированную интегрированную среду для разработки и сопровождения приложений реального времени, использующих базы знаний. Она тоже основана на продукционной модели представления знаний, поиск решения происходит методом «в глубину», а логический вывод имеет как прямой, так и обратный.

Система ЭКО используется как комплекс средств для создания статических экспертных систем. Имеет метод поиска решений «в ширину» и обратный логический вывод.

В таблице 1 представлено сравнение особенностей в построении существующих экспертных систем.

 

 

 

 

 

 

 

 

 

Таблица 1 – Обзор аналогов

Критерии

 сравнения

 

 

 

Программные продукты

Продукци-онная модель представ-ления  знаний

Использо-вание MySQL для управления знаниями

Метод поиска решений «в ширину»

Прямой логический вывод

Автома-тическое пополнение базы знаний

CLIPS

+

-

-

+

+

G2 Gensym

+

-

-

+

-

ЭКО

-

-

+

-

-

Разрабатываемая

+

+

+

+

+

Информация о работе Экспертная система для автоматизации построения компонентов системы Moodle