Доклад АКТО-2012 Душкин, Смирнова

19
Применение инструментов символьных вычислений для проверки решений задач из курсов для конструкторов и технологов в интеллектуальной обучающей веб-системе «Волга» Смирнова Н.В., Душкин Д.Н. ИПУ РАН им. В.А. Трапезникова 2012

Upload: dimitry-dushkin

Post on 05-Jul-2015

2.563 views

Category:

Technology


0 download

DESCRIPTION

Применение инструментов символьных вычислений для проверки решений задач из курсов для конструкторов и технологов в интеллектуальной обучающей веб-системе «Волга»

TRANSCRIPT

Page 1: Доклад АКТО-2012 Душкин, Смирнова

Применение инструментов символьных вычислений для проверки решений задач из

курсов для конструкторов и технологов в интеллектуальной обучающей веб-системе

«Волга»

Смирнова Н.В., Душкин Д.Н.

ИПУ РАН им. В.А. Трапезникова

2012

Page 2: Доклад АКТО-2012 Душкин, Смирнова

Автоматизированная проверка развернутых ответов обучаемого

• Современные ведущие системы дистанционного обучения имеют существенные ограничения на форму ответов обучаемых.

Page 3: Доклад АКТО-2012 Душкин, Смирнова

Автоматизированная проверка развернутых ответов обучаемого

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

Page 4: Доклад АКТО-2012 Душкин, Смирнова

Автоматизированная проверка развернутых ответов обучаемого

Page 5: Доклад АКТО-2012 Душкин, Смирнова

Автоматизированная проверка развернутых ответов обучаемого

• В ИОС «Волга» реализована проверка символьных ответов обучаемых.

• Ввод осуществляется либо в графическом режиме, либо в формате LaTeX.

Page 6: Доклад АКТО-2012 Душкин, Смирнова

6

Скриншот интерфейса

Page 7: Доклад АКТО-2012 Душкин, Смирнова

Скриншот интерфейса

Page 8: Доклад АКТО-2012 Душкин, Смирнова

Техническая платформа системы

• Архитектура «клиент-сервер»

• Клиент:

– Браузер: Google Chrome, Firefox, Opera, Internet Explorer 9+

– Отзывчивый интерфейс за счет технологии AJAX

Page 9: Доклад АКТО-2012 Душкин, Смирнова

Техническая платформа системы

• Сервер:

– Язык программирования Python

– Платформа (фреймворк) Django

– Python-библиотека символьных вычислений SymPy

Page 10: Доклад АКТО-2012 Душкин, Смирнова

Проверка решений студентов

Page 11: Доклад АКТО-2012 Душкин, Смирнова

Проверка решений студентов

Page 12: Доклад АКТО-2012 Душкин, Смирнова

Шаг студента правилен, если формула, введенная студентом, эквивалентна формуле соответствующего этапа.

x + y = 5 y +x = 5

Для того, чтобы проверить с помощью SymPy, эквивалентны ли

и

нужно написать такую команду

if (simplify((x + y - 5) – (y + x - 5)) == 0)

Проверка решений студентов

Page 13: Доклад АКТО-2012 Душкин, Смирнова

Иногда преподаватели могут требовать от студента более развернутого решения

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

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

Page 14: Доклад АКТО-2012 Душкин, Смирнова

Проверка решения на развернутость

Page 15: Доклад АКТО-2012 Душкин, Смирнова

Эвристика сравнения формулы шага студента с «обязательной формулой»

Page 16: Доклад АКТО-2012 Душкин, Смирнова

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

Пусть студент ввел формулу В этой формуле 6 арифм. знаков, столько же знаков в формулах (2) и (3) Далее сравниваем формулу студента с формулами (2) и (3)

2 2( , ) ( 4) ( 4)p a b

Page 17: Доклад АКТО-2012 Душкин, Смирнова

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

Студент ввел формулу Сравним формулу студента и формулу (2), которая имеет вид Упрощенная разность формул не сводится к 0 -> шаг студента не совпадает с «обязательной» формулой (2)

2 2( , ) ( 4) ( 4)p a b

2 2( , ) (1 5) (2 6)p a b

Page 18: Доклад АКТО-2012 Душкин, Смирнова

Обсуждение предложенного способа проверки решений

Как можно описать класс выражений, для которых функция simplify всегда выдает результат? Разработчики SymPy: обычно выражение не упрощается по одной из следующих причин: 1) требуемое упрощение очень сложное, 2) упрощение неприменимо для некоторых значений переменных*

*В процессе работы simplify не используются упрощения, которые не являются применимыми для всех комплексных чисел.

Например, верно только тогда, когда x – положительное число. Этих ограничений можно избежать путем дополнительных настроек.

x x

Page 19: Доклад АКТО-2012 Душкин, Смирнова

Спасибо за внимание!