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



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

Автоматизация построения многовариантных тестовых заданий на основе деревьев и/или Зорин Юрий Алексеевич

Автоматизация построения многовариантных тестовых заданий на основе деревьев и/или
<
Автоматизация построения многовариантных тестовых заданий на основе деревьев и/или Автоматизация построения многовариантных тестовых заданий на основе деревьев и/или Автоматизация построения многовариантных тестовых заданий на основе деревьев и/или Автоматизация построения многовариантных тестовых заданий на основе деревьев и/или Автоматизация построения многовариантных тестовых заданий на основе деревьев и/или Автоматизация построения многовариантных тестовых заданий на основе деревьев и/или Автоматизация построения многовариантных тестовых заданий на основе деревьев и/или Автоматизация построения многовариантных тестовых заданий на основе деревьев и/или Автоматизация построения многовариантных тестовых заданий на основе деревьев и/или Автоматизация построения многовариантных тестовых заданий на основе деревьев и/или Автоматизация построения многовариантных тестовых заданий на основе деревьев и/или Автоматизация построения многовариантных тестовых заданий на основе деревьев и/или
>

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

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

Зорин Юрий Алексеевич. Автоматизация построения многовариантных тестовых заданий на основе деревьев и/или: диссертация ... кандидата технических наук: 05.13.06 / Зорин Юрий Алексеевич;[Место защиты: Томский государственный университет систем управления и радиоэлектроники (ТУСУР)].- Томск, 2014.- 140 с.

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

Введение

Глава 1. Генераторы тестовых задач 12

1.1. Основные определения 12

1.2. Обзор литературы 13

1.3. Постановка проблемы 25

Выводы 29

Глава 2. Генерация тестовых заданий на основе деревьев и/или 31

2.1. Основные определения и понятия деревьев И/ИЛИ 31

2.1.1. Связь дерева И/ИЛИ с тестовым заданием 32

2.2. Алгоритмы получения варианта дерева И/ИЛИ 34

2.2.1. Алгоритм последовательной генерации 34

2.2.2. Алгоритм генерации варианта по номеру 36

2.3. Технологическая цепочка разработки генераторов вопросов 36

2.3.1 Виды тестовых контролей знаний 38

Классификация типов вопросов 39

2.3.3. Форматы представления тестовых заданий и вопросов 41

2.4. Методы построения алгоритмов генерации тестовых заданий на

основе деревьев И/ИЛИ 43

2.4.1 Именованные узлы 48

2.4.2. Смешанные узлы И 51

2.4.3. Интервальные значения в узлах ИЛИ 53

2.4.4. Условные узлы 54

Выводы 56

Глава 3. Язык и система построения генераторов задач 57

3.1. Требования к языку 57

3.2. Программная реализация возможностей деревьев И/ИЛИ 58

3.3. Реализация языка 61

3.3.1. Выбор языка разработки интерпретатора 61

3.3.2. Лексический и синтаксический анализ языка GILT 62

3.3.3. Вычисление мощности дерева И/ИЛИ 65

3.3.4. Нумерация и идентификация вариантов 66

3.4. Обзор языка GILT 68

3.5. Принцип построения генератора вопроса на языке GILT 72

3.6. Реализация системы построения генераторов заданий 79

3.7. Визуальная разработка генераторов 81

3.8. Банк генераторов 83

3.8.1. Выбор СУБД 83

3.8.2. Модель БД 85

3.8.3. Формат хранения генераторов 86

3.9. Мультимедийные данные генератора 86

3.10. Система ролей 90

3.11. Конструктор тестов 91

3.11.1. Шаблонизатор форматов представления 93

Выводы 95

Глава 4. Анализ инструментальной системы построения генераторов тестовых заданий 96

4.1. Исследование системы построения генераторов 96

4.2. Оценка времени создания генератора компьютерного тестового задания 99

4.3. Исследование эффективности использования генераторов при организации компьютерного тестирования 101

4.4. Оценка мощности созданных генераторов и вероятности выпадения одинакового варианта. 104

Выводы 107

Заключение 108

Литература 109

Обзор литературы

Термин «генерация» происходит от латинского «generatio», что в переводе означает «рождение» или «размножение». Применяется для обозначения процесса получения нового объекта определённого типа, а под термином «генератор» подразумевается объект, который осуществляет процесс генерации [1].

Термин «генератор» применяется в широком спектре предметных областей. Так, существуют генераторы электроэнергии, тепла, электромагнитных импульсов, псевдослучайных чисел и т.д. Далее под словом «генератор» будем подразумевать программные генераторы. Программный генератор – класс компьютерных учебных программ, предназначенных для формирования учебного задания или вопроса [2].

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

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

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

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

Литература, исследования которой посвящены построению генераторов тестовых заданий не поддается счету. Для формирования проблемы следует рассмотреть наиболее популярные и претендующие на некую универсальность автоматизированные средства создания генераторов. Автоматизированные средства для конструирования и создания тестовых вопросов, не имеющие отношения к генерации вариантов, не рассматриваются. Системы разработки генераторов (СРГ) имеют различные характеристики, как с точки зрения применяемых алгоритмов и методов, так и со стороны применения. Самым распространенным и достаточно доступным с точки зрения восприятия для разработчика методом генерации относится подстановка численных параметров. Данный метод в очередной раз представлен в работе [5] и реализован в приложении IGOR (Item Generation OR). В статье автор описывает модель для представления задания с возможностью подстановки численных параметров для задач с выбором правильного варианта ответа:

Алгоритм последовательной генерации

Понятие дерева И/ИЛИ впервые было введено Д. Слейгом для построения системы взятия интегралов в символьном виде [35].

В дальнейшем деревья И/ИЛИ использовались во многих системах искусственного интеллекта решения задач в различных предметных областях. Использование деревьев И/ИЛИ освещается в работах Н. Нильсона [37], Э. Ханта [38], Э. В. Попова [39], Е. И. Ефимова [40], Братко [41].

Для представления тестового задания в виде дерева И/ИЛИ необходимо текст задания разбить на фрагменты. Обычно фрагменты разбиваются на узлы: постоянные и переменные [43]. Для переменных узлов записываются множества реализаций, каждый из которых представляет собой конкретный текст. Затем каждый из выделенных узлов реализаций анализируется и, если есть возможность, разбиваются на переменные и постоянные узлы. Рассмотрим пример построения дерева И/ИЛИ [44].

В ящике имеется 10 белых и 15 черных шаров. Вынимаются 4 шара. Какова вероятность того, что все вынутые шары будут одного цвета?

Для описания алгоритма генерации данной задачи, представим текст как совокупность строковых символов. Данное действие позволит получать различные варианты представления данной задачи за счет изменения заранее определенных групп символов (слов, чисел и т.д.). Весь текст условия задачи разделим на три фрагмента {А, В, С}, тогда узел Q будет И-узлом, содержащий узлы А, В, С. Каждый из фрагментов разделяется на фиксированные и переменные части. Например, узел В разбивается на три фиксированных фрагмента {Т4, Т8, Т12} и два переменных {V2, V3}, которые имеют по три варианта реализации. Ниже в табл. 2.1 перечислены

Алгоритм последовательной генерации вариантов дерева И/ИЛИ основан на представлении вариантов узлов ИЛИ в виде массива стеков. Каждый узел имеет уникальный идентификационный номер, а стек, соответствующий узлу, ИЛИ содержит последний полученный вариант данного узла. Алгоритм имеет универсальный характер, но требует, чтобы для дерева были описаны 2 функции: First и Next. Функция First обнуляет массив стеков, таким образом устанавливает метку на первый вариант дерева И/ИЛИ. Процедура Next, используя рекурсивный спуск по дереву увеличивает один из стеков на единицу.

Для идентификации узла ИЛИ, в этот же узел добавляется элемент с идентификационным номером, который не учитывается при подсчете мощности и при получении варианта (рис. 2.4).

Алгоритм генерации варианта дерева И/ИЛИ по номеру основан на том, что, зная номер варианта для заданного узла, можно пересчитать этот номер в номера вариантов его сыновей, основываясь на значениях функций wfsj. Данный алгоритм превосходит алгоритм последовательной генерации в скорости в случае получения одного или нескольких произвольных вариантов. Алгоритм последовательной генерации применим для получения множества вариантов одного и того же задания, - при формировании решебника [2].

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

Этапы построения генераторов тестовых заданий изображены рисунке 2.5. Рисунок 2.5. Жизненный цикл генератора задач Под формализацией тестового задания понимается процесс формирования множества условий задания и его параметров. Одним из параметров, влияющим на выбор множества вариантов задания является мощность будущего генератора. Мощность генератора в конечном счете задает вероятность получения одного и того же задания. Например, что размер множества вариантов условий равен п, то при выборе с повторениями из него порядка sn элементов вероятность выбора двух и болееодинаковых варианта составляет более 50%. Другими словами если множество вариантов условий содержит 100 вариантов, то при повторении выбора случайного условия 13 раз вероятность получить два одинаковых условия задания составляет более 55% [16].

В качестве примера формализации множества условий заданий рассмотрим задачу решения квадратного уравнения. Общая форма записи квадратного уравнения выглядит следующим образом: ax2+bx + c = 0 (2.2)

Сразу же необходимо определиться с диапазонами выбираемых параметров a, b и c в пределах целых чисел [-100.. 100]. Стоит уточнить, что параметр a не может быть равен 0, иначе уравнение не будет являться квадратным. В процессе отладки разработчик генератора может расширить класс генератора, например, выбирать показатель степени 2 или 4, при условии выбора «четверки» необходимо учесть, что уравнение становится биквадратным.

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

Программная реализация возможностей деревьев И/ИЛИ

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

Наряду с печатными формами имеются автоматизированные системы, позволяющие автоматизировать контроль знаний. Поскольку автоматизированные системы контроля знаний начали развиваться исключительными темпами, на первый план встал вопрос об языке обмена, описывающим вопросы и задания. Задачей использования данного языка является предоставление возможности автору тестового задания, подготовленного в одной системе, легкого переноса его в другую систему [50, 51]. Форматов представления тестовых вопросов огромное количество. Многие форматы разработаны в рамках переноса между одной конкретной системой тестирования: MoodleXML, Blackboard, Learningwise, WebCT. Все они представляются в текстовом формате, либо в формате XML и отличаются только синтаксисов и поддержкой типов вопросов.

Также есть несколько форматов, которые предназначены для переноса вопросов между разными система контроля знаний:

GIFT является наиболее полным форматом доступным для импортирования вопросов в тесты системы из текстового файла. Он был разработан для возможности подготовки вопросов для тестов в виде текстового файла. Он поддерживает множественный ответ, ответ да/нет, короткий ответ, числовой ответ, соответствия, вставка слова вместо пробела и другие типы вопросов. Различные типы вопросов могут быть использованы в одном текстовом файле. Формат поддерживает комментарии к вопросу, названия вопросов, обратную связь и оценку [52].

Формат Aiken очень простой способ создания вопросов типа множественный ответ [52]. Однако все вышеописанные форматы, не смотря на то, что синтаксис описания вопросов в данных форматах легко восприимчив для разработчика вопросов, имеют ряд недостатков: поддержка только определенных типов вопросов; нет поддержки описания тестов; не поддерживают вставки картинок, видео и т.д.; нет поддержки алгоритма вычисления оценки за вопрос. Данные недостатки накладывают большие ограничения при разработке вопросов в данных форматах. Таким образом, в 1997 году был организован IMS-консорциум, целью которого являлась разработка открытой архитектуры для онлайн обучения. Из данного проекта вытекло несколько спецификаций, которые позволили описывать ресурсы дистанционного образования.

Спецификация консорциума IMS QTI определяет стандартный формат для представления содержимого тестовых заданий, оценки и результатов, поддерживающего обмен материалами между авторскими системами, внутри систем, источниками резервного хранения и другими автоматизированными обучающими системами. Формат позволяет обмениваться материалами, гарантируя их неизменность и однозначную трактовку. Целью создания формата было обеспечение взаимодействия между системами [50].

Спецификация содержит модель данных, определяющую структуру вопросов, оценку и результаты вопросов вместе в формате XML данных. Чаще всего спецификация используется в части описания вопросов. В оценочной же части и части результатов спецификация используется много реже [50].

Формат IMS QTI может быть использован для описания любого тестового задания.

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

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

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

Если в ответе десятичная дробь, то ответ округлить до тысячных. Дробную часть отделять точкой. Если предел не существует вводить слово нет. Если ответы -,+,, то вводить слово -бск, +бск, бск.

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

Оценка времени создания генератора компьютерного тестового задания

Дерево И/ИЛИ алгоритма генерации вариантов ответов В качестве блока решения, учитывая простоту задания, можно опустить описания шагов решения и ограничится описанием общего решения: из формулы вычисления периода пружинного маятника (3.1) видно, что период пропорционален квадратному корню массы, и обратно пропорционален корню жесткости пружины.

После описания подобных схем в виде деревьев И/ИЛИ можно приступать к синтаксическому описанию алгоритма генерации, отладке и проверке работоспособности алгоритма. Алгоритм задания целиком будет состоять из корневого узла И и четырех сыновей: problem, solution, answer, select. На языка GILT данная конструкция выглядит следующим образом: ( problem( код алгоритма задания ), solution( код алгоритма решения ), answer( код алгоритма ответа ), select( код алгоритма вариантов ответов ) ) Целиком код описания алгоритма генерации данной задачи на языке GILT представлен в приложении 4.

Первый вариант реализации подразумевает создание библиотеки функций или классов для построения генераторов объектов на одном из языков программирования. Создание генератора в этом случае сводится к написанию программы на данном языке с применением функционала библиотеки. Библиотека в этом случае играет роль вспомогательного инструмента, реализующего часто используемые алгоритмы. Такой подход обеспечивает гибкость и универсальность, но не удовлетворяет критерию usability. При таком походе имеет смысл создавать рассматриваемую библиотеку на языке программирования С++, т.к. в настоящее время он является одним из самых распространённых языков программирования. Ещё одним важным фактором при выборе данного языка программирования является возможность реализации на нем обобщенных алгоритмов и типов данных при помощи шаблонов [59].

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

Разработка еще одного варианта подразумевает создание RAD-системы (от англ. rapid application development - быстрая разработка приложений) -средства визуального программирования [60]. Данный подход существенно упрощает использование системы.

Процесс построения инструментальной системы построения генераторов комбинаторных множеств на основе деревьев И/ИЛИ под названием «Платан» можно разделить на несколько основных частей:

Схема взаимодействия модулей системы Для реализации системы выбран язык программирования С# с применением библиотеки .NET, являющимся одним из популярных языков программирования, зарекомендовавшим себя в большом количестве проектов [61]. «Платан» является сетевой системой, реализующую разработку генераторов вопросов через браузер. Последнее подразумевает использование технологии ASP.NET при разработке системы с использованием структуры приложения MVC [62].

Визуальная разработка генераторов Визуальная разработка алгоритма – способ создания алгоритма путём манипулирования графическими объектами вместо написания синтаксических конструкций [63]. Графическое представление дерева И/ИЛИ является наглядной структурой для разработки и отладки генераторов. Учитывая момент, что все взаимодействие с системой разработчик ведет через браузер, необходимы инструменты построения древовидных структур, описывающими языком разметки HTML+CSS. Наиболее простой и распространенной библиотекой реализующей динамические свойства элементов в браузере является библиотека jQuery [64]. jQuery обладает множеством модулей и компонентов упрощающие разработку веб-приложений. Наиболее подходящим компонентом для построения древовидных структур является jOrgChart, которая доступна в свободном доступе с открытым исходным кодом [65].

Отличие дерева И/ИЛИ от структуры, используемой в компоненте jOrgChart является наличие у дерева И/ИЛИ различных типов узлов. Применение формального языка описания внешнего вида веб-элементов на странице CSS позволит создавать древовидную структуру дерева И/ИЛИ с помощью данного компонента. В табл. 3.5 приведены соответствия цветовых схем типам узлам. Пример описанного генератора задания с использованием модифицированного компонента jOrgChart приведено в приложении 7.

Похожие диссертации на Автоматизация построения многовариантных тестовых заданий на основе деревьев и/или