Электронная библиотека диссертаций и авторефератов России
dslib.net
Библиотека диссертаций
Навигация
Каталог диссертаций России
Англоязычные диссертации
Диссертации бесплатно
Предстоящие защиты
Рецензии на автореферат
Отчисления авторам
Мой кабинет
Заказы: забрать, оплатить
Мой личный счет
Мой профиль
Мой авторский профиль
Подписки на рассылки



расширенный поиск

Модели и алгоритмы верификации решений задач в системах электронного обучения Перченок Олег Владимирович

Модели и алгоритмы верификации решений задач в системах электронного обучения
<
Модели и алгоритмы верификации решений задач в системах электронного обучения Модели и алгоритмы верификации решений задач в системах электронного обучения Модели и алгоритмы верификации решений задач в системах электронного обучения Модели и алгоритмы верификации решений задач в системах электронного обучения Модели и алгоритмы верификации решений задач в системах электронного обучения Модели и алгоритмы верификации решений задач в системах электронного обучения Модели и алгоритмы верификации решений задач в системах электронного обучения Модели и алгоритмы верификации решений задач в системах электронного обучения Модели и алгоритмы верификации решений задач в системах электронного обучения Модели и алгоритмы верификации решений задач в системах электронного обучения Модели и алгоритмы верификации решений задач в системах электронного обучения Модели и алгоритмы верификации решений задач в системах электронного обучения
>

Диссертация - 480 руб., доставка 10 минут, круглосуточно, без выходных и праздников

Автореферат - бесплатно, доставка 10 минут, круглосуточно, без выходных и праздников

Перченок Олег Владимирович. Модели и алгоритмы верификации решений задач в системах электронного обучения: дис. ... кандидата технических наук: 05.13.06 / Перченок Олег Владимирович;[Место защиты: Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования «Санкт-Петербургский национальный исследовательский университет информационных технологий, механики и оптики»].- Санкт-Петербург, 2013. - 132 c.

Содержание к диссертации

Введение

Глава 1. Верификация задач в системах электронного обучения 11

1.1 Множественность форм представления знания как основа использования компьютерной поддержки предметного обучения 11

1.1.1 Множественность форм представления знаний в обучении математике 12

1.1.2 Использование возможностей множественности представления знаний в обучении дискретной математике в технических вузах 15

1.1.3 Использование возможностей множественности представления знаний в организации и поддержке исследовательской деятельности... 19

1.2 Подходы к верификации задач по программированию 20

1.3 Верификация задач по математике 25

1.3.1 Предметно-ориентированные языки 25

1.3.2 Верификация задач по геометрии 27

1.3.3 Верификация задач по алгебре 30

1.4 Выводы к первой главе 32

Глава 2. Модели и алгоритмы верификации задач 33

2.1. Математическая модель самопроверяемой задачи и абстрактная модель языка описания условия 33

2.2. Онтология самопроверяемых задач 36

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

2.4 Алгоритмы верификации задач 41

2.4.1 Алгоритм верификации задач класса CodeProblem 41

2.4.2 Алгоритм верификации задач класса PlotProblem 43

2.4.3 Алгоритм верификации задач класса ExpressionProblem 46

2.5 Выводы ко второй главе 48

Глава 3. Реализация систем электронного обучения, обеспечивающих поддержку самопроверяемых задач 49

3.1 Система электронного обучения WiseTasksGeometry 49

3.1.1 Онтология предметной области 50

3.1.2 Описание системы 54

3.1.3 Сравнение с другими системами динамической геометрии 64

3.2 Система электронного обучения WiseTasksDSP 70

3.2.1 Онтология предметной области 72

3.2.2 Описание системы 72

3.2.4 Сравнение с другими пособиями по изучению MATLAB 81

3.3 Выводы к третьей главе 82

Глава 4. Разработка учебных систем удаленного управления устройствами 84

4.1 Виртуальный музей занимательной науки 84

4.2 Разработка экспоната «Центробежная сила» 88

4.2.1 Физическая реализация 88

4.2.2 Программная реализация 89

4.3 Спецкурс «Удаленное управление устройствами» 92

4.4 Экспонат «Равномерное движение по окружности» 93

4.5 Выводы к четвертой главе 95

Глава 5. Экспериментальное исследование результатов диссертации 97

5.1 Опытная апробация рабочей версии системы WiseTasksGeometry 97

5.2 Тестирование второй рабочей версии продукта 105

5.2.1 Тестирование полноты решения функциональных задач 105

5.2.2 Тестирование удобства использования и эксплуатации 107

5.2.3 Прочие виды тестирования 108

5.3 Доработка рабочей версии по результатам опытной эксплуатации 109

5.4 Внедрение в средней школе 111

5.5 Показатели результатов экспериментов 118

5.6 Выводы к пятой главе 119

Заключение 120

Литература

Введение к работе

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

использование узкого класса задач (ответ с множественным выбором, ввод числа);

статичность, которая является потенциальным источником копирования;

возможные авторские ошибки в формулировках задач;

возможные ошибки в подготовке эталонных ответов.

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

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

Цель работы и задачи исследования. Целью работы является создание моделей, разработка и реализация алгоритмов верификации задач в системах электронного обучения.

В соответствии с указанной целью в работе сформулированы и решены следующие задачи:

  1. анализ проблем верификации решений задач в современных системах ЭО;

  2. разработка математической модели самопроверяемой задачи;

  3. создание модели представления знаний об абстрактных самопроверяемых задачах;

  4. разработка модели абстрактного предметно-ориентированного языка для описания условий задач;

  5. введение модели жизненного цикла программного средства по решению и составлению самопроверяемых задач;

  6. создание алгоритмов верификации самопроверяемых задач;

  7. разработка предметно-ориентированных языков для записи условий задач по геометрии и цифровой обработке сигналов;

  1. разработка программных средств для решения и составления задач по геометрии и по цифровой обработке сигналов на основе разработанных моделей и алгоритмов;

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

10) экспериментальное исследование результатов диссертации практике.
Объектом исследования являются программные модули систем ЭО, обес
печивающие верификацию решений задач.

Предметом исследования являются модели и алгоритмы, использование которых позволит систематизировать процесс автоматизации верификации решений задач в системах ЭО.

Методы исследования. При решении поставленных задач использовалась теория формальных языков, теория искусственного интеллекта, теория алгоритмов.

Положения, выносимые на защиту:

  1. разработана математическая модель самопроверяемой задачи;

  2. создана модель представления знаний об абстрактных самопроверяемых задачах;

  3. разработана модель абстрактного предметно-ориентированного языка для описания условий задач;

  4. разработана модель жизненного цикла программного средства для решения и составления самопроверяемых задач;

  5. созданы алгоритмы верификации самопроверяемых задач;

  6. разработан предметно-ориентированный язык описания задач на построение по геометрии;

  7. разработан предметно-ориентированный язык описания задач в области цифровой обработки сигналов;

  8. разработано программное средство по решению и составлению задач на построение по геометрии;

  9. создано программное средство по решению и составлению задач для цифровой обработки сигналов;

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

  2. проведен эксперимент по исследованию разработанных программных средств в двух учебных заведениях.

Научная новизна. Следующие результаты диссертации обладают научной новизной:

1) новая математическая модель самопроверяемых задач, которая приспосабливает структуру условия задачи для автоматической верификации и устанавливает взаимосвязи между математическими объектами «самопроверяемая задача», «абстрактный класс самопроверяемых задач», «предметно-ориентированный класс самопроверяемых задач», «верификатор задачи»;

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

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

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

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

Внедрение результатов. Результаты диссертационного исследования были использованы при проведении в Санкт-Петербургском государственном электротехническом университете «ЛЭТИ» им. В.И. Ульянова-Ленина научно-исследовательской работы «Программа стратегического развития СПбГЭТУ ЛЭТИ» (2012-2013, тема № ВМ-2-24): разработано и внедрено два программных продукта (имеются свидетельство о регистрации программы «Система ЭО, обеспечивающая автоматическую проверку решения математических задач по описанию их условий» № 2012611757 от 16.02.2012 г. и свидетельство о регистрации «Программы составления автоматически верифицируемых задач в области цифровой обработки сигналов» № 2013610852 от 9.01.2013 г.). Программное средство по геометрии внедрено в образовательный процесс в средней школе № 521 Санкт-Петербурга с углубленным изучением математики и информатики, а также на курсах повышения квалификации учителей в обществе с ограниченной ответственностью «ИНТОКС» (г. Санкт-Петербург). Работа поддержана грантом правительства Санкт-Петербурга для студентов и аспирантов в 2012 г. (Диплом серии ПСП № 12286).

Апробация результатов работы. Основные положения и результаты работы докладывались и обсуждались на VII международной научно-методической конференции "Дистанционное обучение - образовательная среда XXI века" (Минск, декабрь 2011 г.); на XVIII Международной научно-методической конференции "Современное образование: содержание, технологии, качество» (СПб, апрель 2012 г); на XII Южно-Российской межрегиональной научно-практической

конференции-выставки «Информационных технологии в образовании - 2012» (Ростов-на-Дону, ноябрь 2012 г); на IV Всероссийской научно-практической конференции «Информационные технологии в образовании» (Саратов, ноябрь 2012 г.); на XVII Санкт-Петербургской Ассамблее молодых ученых и специалистов (СПб, декабрь 2012 г.); на 12-ом международном конгрессе по математическому образованию ICME-12 (Сеул, Корея, июль 2012 г.); на XIX Международной научно-методической конференции "Современное образование: содержание, технологии, качество» (СПб, апрель 2013 г).

Публикации. По теме диссертации опубликованы 10 научных работ, включая 3 статьи в изданиях, рекомендованных ВАК РФ [1-3], 6 работ в материалах международных, национальных и региональных конференций [4,5,7-10] и 1 коллективную монографию [6]. Получено 2 свидетельства об официальной регистрации программы для ЭВМ [11,12].

Личный вклад автора. Содержание диссертации и положения, выносимые на защиту, отражают персональный вклад автора в опубликованные работы. Подготовка к публикации некоторых полученных результатов проводилась совместно с соавторами, причём в шести публикациях из десяти вклад автора был определяющим [1-3, 5, 7-9]. Все представленные в диссертации результаты получены лично автором.

Структура и объем диссертации. Диссертация состоит из введения, 5 глав, заключения, библиографии (65 пунктов) и приложений. Общий объем диссертации 130 страниц, из них 125 страниц основного текста, включая 50 рисунков.

Множественность форм представления знаний в обучении математике

Формирование информационной среды процесса обучения требует изучения форм, в которых передается знание. Даже беглый взгляд на преподавание любого предмета показывает постоянное изменение этих форм и параллельное существование различных форм. Формы представления знаний зависят и от самого предмета. На эволюцию форм влияет развитие предмета и изменение взглядов на психологию обучения. В конечном счете, предметный и психологический фактор синтезируются в методических воззрениях. Анализ различных подходов к преподаванию с точки зрения форм представления знания был сделан в работе [1]. Приведем кратко основные результаты, сформулированные в монографии [1]. Представление знания моделями, примерами. Тезис: «Одним из подходов в обучении знанию является поиск подходящего образа, примера, модели, адекватно отражающей это знание».

Следующим шагом после того, как аналог найден, является привязка новых знаний к этому образу или интерпретация в терминах данной модели. Таким образом, знание здесь представляется моделью и набором связей между моделью и новыми понятиями. Представление знания умениями и навыками. Тезис. «Любое знание можно представить системой действий с идеальными объектами».

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

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

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

Представление знания внутрипредметными связями. Эту форму представления знания можно охарактеризовать следующим тезисом: «Любое знание можно представить его связями с другими знаниями».

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

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

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

Инструментальная форма представления знания. Для такой формы представления знаний формирование интеллектуальных моделей обеспечивается введением в «среду обитания» ребенка «умных вещей», овеществляющих плодотворные идеи. Идея инструментального представления знаний развивается в работах С. Паперта. Инструментальная форма представления знаний имеет общие черты с операционным представлением: в обоих случаях знание представляется некоторым действием. С другой стороны, инструментальное представление имеет общие черты с модельным представлением: действие направлено на физический объект – инструмент. Существенным для развития этой формы знания стало появление компьютера. Компьютерный инструмент легко модифицируется, хранится, размножается и «транспортируется». Кроме того, расходы на создание такого образца затрачиваются меньшие, чем на создание физической модели. Далее рассмотрим два важных примера применения вышеизложенной методологии к преподаванию дискретной математики: один будет касаться программы обучения в вузах, второй – школьной тематики.

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

Онтология самопроверяемых задач

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

Поясним сказанное на примере. Пример. Рассмотрим следующую комбинаторную задачу и две формы описания задачи этой задачи: предикативную (для описания условия); алгоритмическую (для описания решения). Задача. «Найдите количество шестизначных чисел, цифры которых идут в неубывающем порядке».

Представление задачи в предикативной форме. Рассмотрим множество всех упорядоченных наборов из шести десятичных цифр (а1} а2, а3, а4, а5, аб) таких, что а1ф0 и al а2 аЗ а4 а5 аб. Это множество наборов можно сгенерировать по описанию и сосчитать его элементы. Представление задачи в алгоритмической форме. В данном случае это просто формула решения задачи: число сочетаний

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

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

В качестве примера приведен тренажер работы с СУБД MySQL (составление запросов) [12]. Тренажер состоит из трех основных компонентов: модуля для обучения и контроля знаний студента, модуля преподавателя для создания и редактирования задач и модуля помощи. Особенностью данного SQL-тренажера является то, что обучение языку запросов ведется на реально существующих базах данных, размещенных на сервере, посредством web-клиента, что позволяет студенту и преподавателю работать с тренажером на любом компьютере, подключенном к сети Интернет.

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

Клиентами являются браузеры студентов и преподавателя, серверная часть состоит из нескольких компонентов и размещена на выделенном сервере с постоянным IP-адресом (сервер ИКТ).

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

А.В. Лямин и О.Е. Вашенков в статье [13] описывают подход к верификации задач по информатике (программного кода) в виртуальных лабораториях информационно-образовательной среды AcademicNT.

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

Сравнение с другими системами динамической геометрии

Существующие системы динамической геометрии, такие как «Живая математика» (The Geometer s Sketchpad), Cabri, Cinderella, GeoGebra [42], 1С Математический Конструктор (1С МК) и др. основаны на выполнении ряда геометрических построений, преобразований и измерений. Все они, кроме последней (1С МК) не имеют инструментов для проверки решений (в Cabri есть возможность проверять выполнение простейших отношений, например параллельность линейных объектов). В 1С МК автор задачи может построить предварительно е решение (задать линейный алгоритм построением динамического чертежа). После этого ученик может проверить свое решение, сравнив его динамически с эталонным (то есть, решение будет признано правильным даже при ином алгоритме решения).

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

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

Для решения задач на построение по геометрии была разработана система WiseTasksGeometry (Wise tasks – умные задачи, свидетельство о регистрации программы № 2012611757 от 16.02.2012 г.). Программа использует систему GeoGebra для построения чертежей. Согласно классификации из первой главы, данные задачи относятся к классу PlotProblem.

В процессе разработки системы была составлена онтология предметной области для задач на построение по геометрии. Онтология была создана в системе Protg. Иерархия классов данной онтологии изображена на рисунке 8, описание классов приведено в таблице 8, а описание свойств – в таблице 9.

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

Поддержка динамической геометрии необходима для построения чертежей к задачам. Реализация собственной системы динамической геометрии трудоемка, но существует немалое количество уже реализованных систем. Необходимо было исследовать существующие системы и выбрать из них ту, которая реализована на платформе Java, имеет открытый исходный код, имеет все необходимые возможности и хороший пользовательский интерфейс. Из свободных систем динамической геометрии, реализованных на Java, в конце концов, мы остановились на двух: GeoGebra и CaRMetal. Предпочтение было отдано первому варианту, потому что CaRMetal, во-первых, не устроил нас своим интерфейсом. Он имеет слишком много элементов управления и разнообразных панелей с настройками, которые, хоть и позволяют сделать массу невозможно для GeoGebra, но при этом пугают пользователей. Во-вторых, при попытке программистами выделить редактор из CaRMetal, чтобы воспользоваться им в разрабатываемой системе, оказалось, что это выделение связано с определенными сложностями, которых не обнаружилось при выделении редактора из GeoGebra. Программа GeoGebra написана Маркусом Хохенвартером на языке Java (работает на большом числе операционных систем). Переведена на 39 языков. [42]

Для иллюстрации структуры системы приведен пример задачи: «Дана прямая а и точка А. Построить прямую b, параллельную а, проходящую через точку А.». Данная задача в среде учителя и ученика приведена соответственно на рисунках 9 и 10. Рисунок 9 – Задача в модуле учителя

Модуль учителя состоит из предметно-ориентированного редактора (рис. 9, сверху), в котором автор вводит условие, и области построения исходного чертежа (рис. 9, снизу).

Модуль ученика состоит из текста задачи (рис. 10, сверху каждого окна) и области построения решения задачи (рис. 10, снизу каждого окна). При вызове проверки задачи (кнопка «Проверить ответ») в случае правильного ответа появляется соответствующее сообщение (рис. 10, окно сверху), а в случае неправильного ответа в сообщение включается первый по порядку предикат, который не выполнен для данного решения (рис. 10, окно снизу). В окне снизу на рисунке 10 ученик решил задачу «на глаз», без строгих геометрических построений, поэтому данное решение засчитано неверным.

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

Раскрытый список из редактора приведен на рисунке 11. Рисунок 11 – Список доступных инструментов В формальном условии задачи можно описывать отношения между базовыми геометрическими объектами, такими как точка, окружность, отрезок, луч, прямая. Возможны ссылки как на объекты исходного чертежа, так и на те объекты, которые необходимо построить ученику (рис. 12).

В соответствии с абстрактной грамматикой предметно ориентированного языка описания условий (1) был разработан предметно ориентированный язык описания условия геометрической задачи.

Описание задачи находится внутри тега task, который имеет атрибут «name» - имя задачи. Оно состоит из списков инструментов, предикатов и текстового условия задачи.

Инструменты перечисляются внутри тега «instruments». Каждый инструмент представляет собой тег «instrument» c атрибутом «name» -название инструмента.

Условия для проверки (предикаты) содержатся внутри тега «predicates». Каждый предикат представляет собой тег «predicate» c атрибутом «name» - название предиката. Внутри тега указываются параметры предиката – геометрические объекты.

Геометрический объект (элемент) описывается тегом «geoElement» с атрибутами «type» - тип объекта (прямая, окружность и т.д.), «locType» - тип расположения объекта (на исходном чертеже или для построения учеником).

Спецкурс «Удаленное управление устройствами»

В пакете MATLAB выполняется одна виртуальная машина Java (Java Virtual Machine, JVM), а система WiseTasksDSP запущена на другой. Взаимодействие между ними происходит через интерфейс RMI (Remote Method Invocation, удаленный вызов методов)[46]. В состав MATLAB входит библиотека jmi.jar, вызовы методов которой организуются при помощи свободно распространяемой библиотеки MatlabControl.jar [47]. Эта библиотека содержит «заглушки» (stubs) методов, реализуемых в jmi.jar, и включена в систему WiseTasksDSP. Система состоит из модуля преподавателя и модуля студента. В модуле преподавателя педагог вводит условие задачи на предметно ориентированном языке.

Согласно классификации из первой главы задачи по ЦОС относятся к абстрактному классу CodeProblem и имеют следующую структуру: Интерес представляют последние две структурные единицы. Инструменты – это список функций MATLAB (из стандартного набора) и элементов Simulink, доступных студенту при решении задачи. Также в него можно включать группы ДПФ), «функция ifft» (для вычисления обратного ДПФ), «набор функций Signal Processing Toolbox» (библиотека функций для обработки сигналов), «элемент Сумматор» (элемент Simulink, предназначенный для суммирования входов). При решении задачи студенты также могут использовать любые арифметические функции и операции.функций и элементов. Примеры: «функция fft» (для вычисления прямого

Верификатор – это логическая функция MATLAB, проверяющая решение ученика путем перебора значений параметров. Возвращает значение «истина», если решение признано верным на всех итерациях циклов. Особенностью функции является обязательное присутствие макрокоманды «Решение;», на место которой при проверке подставляется скрипт-решение студента.

Решение задачи происходит в модуле студента. Этот модуль позволяет загрузить задачу, ввести скрипт-решение, используя только разрешенные инструменты, и вызвать проверку, т.е. запустить верификатор с подставленным в него скриптом-решением.

Упрощенная1 грамматика разработанного предметно-ориентированного языка в расширенной форме Бэкуса-Наура [22] приведена ниже со следующими соглашениями: ::= – отделяет название лексемы от ее описания {A} – ноль или более элементов А; [A] – элемент А может входить или не входить; (А В) – группа элементов; АB – либо А, либо В. Упрощенная грамматика Описание ::= Заголовок ТекстовоеУсловие [Изображение] Инструменты Верификатор Заголовок ::= Заголовок: Текст ТекстовоеУсловие ::= Условие: Текст Изображение ::= Изображение к условию: ИмяФайла 1 Упрощение грамматики состоит в отсутствии раскрытия нетерминалов «Текст», «ИмяФайла», «НачФрагментКода», «КонФрагментКода» ввиду неважности их формального описания для понимания структуры предметно-ориентированного языка Инструменты ::= Инструменты: [{Инструмент}] Верификатор ::= Верификатор: КодФункцииВерификатора Инструмент ::= ТипИнструмента Идентификатор ТипИнструмента::= Функция ЭлементНабор функцийНабор элементов Идентификатор ::= (a .. z A .. Z _ ){ (a .. z A .. Z 0 .. 9 _ )} КодФункцииВерификатора ::= НачФрагментКода Решение; КонФрагментКода

Далее приведен пример структурированной задачи по ЦОС. Она посвящена нахождению верхней граничной частоты спектра аналогового (непрерывного) сигнала и проверки частоты дискретизации дискретного сигнала на допустимость для точного (без потерь информации) восстановления исходного (аналогового) сигнала из дискретного на основе теоремы Котельникова [48]. При определении верхней граничной частоты спектра аналогового сигнала используется 10% критерий (на практике также используются и другие критерии определения верхней граничной частоты), т.е. за верхнюю граничную частоту принимается ближайшая к нулевой частота, при которой значение амплитудного спектра аналогового сигнала составляет 10% от максимума.

Условие задачи может быть сформулировано на предметно-ориентированном языке следующим образом:

Заголовок: Определение верхней граничной частоты спектра аналогового сигнала и проверка частоты дискретизации дискретного сигнала в соответствии с теоремой Котельникова. Условие: Дан исходный аналоговый сигнал s(n) длины N (значения находятся в массиве S, T_an – шаг по времени для значений аналогового сигнала). Частота дискретизации дискретного сигнала Fs. С помощью MATLAB определить верхнюю граничную частоту спектра аналогового сигнала (Fup) по 10%-ному критерию и проверить, подходит ли данная частота дискретизации для представления данного сигнала в дискретном виде без потерь информации. Если подходит, присвоить переменной isOK значение true.

Похожие диссертации на Модели и алгоритмы верификации решений задач в системах электронного обучения