Система верификации для параметрических классов задач по математике

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

Благодарности

Автор благодарит H.H. Васильева за большое внимание к проделанной работе и множество ценных советов и находок.

СПИСОК ЛИТЕРАТУРЫ

1. Vasiliev, N.: Monomial Orderings. Young Diagrams and Grubner Bases. Proceedings of the International Conference "Computer Algebra in Scientific Computing"

2. Vasiliev, N.. Pavlov, D.: Enumeration of finite monomial orderings and Young tableaux, in "Polynomial Computer Algebra" Proceedings of the International Conference PCA'08, pp. 71-76. St. Petersburg. 2008

3. Stanley, R.P.: Enumerative combinatorics vol. I and 2. Cambridge University Press

4. Faugnre J. C., Gianni P., Lazard D., Mora T. Efficient computation of zero-dimensional Grubner bases by change of ordering. Journal of Symbolic Computation 16. Issue 4 (1993) 329-344

5. Mora T., Robbiano L. The Grubner fan of an ideal. Journal of Symbolic Computation. 6, 2-3 (988) 183-208

6. Jensen, Anders N. Gfan, a software system for Grubner fans, http://www.math.tu-berlin.de/~jensen/ software/gfan/gfan.html

Манцеров Д. И.

Система верификации для параметрических

классов задач по математике

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

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

Система построена на параметрических классах объектов и включает в себя набор базовых примеров этих объектов, демонстри-

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

Примерами классов объектов могут служить. например, изучаемые в школе классы функций: линейные функции у = кх + Ь. логарифмические функции у = + с) и т.д.

Система верификации построена на следующих методических принципах.

• Система допускает несколько форм представления математических объектов[3]: возможно использование формульного, графического и вербального представлений объектов. Это дает возможность использовать в качестве элемента решения задачи переход от одной формы

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

• Система обрабатывает любые синтаксически правильные ответы ученика, в том числе, когда они являются лишь частичными решениями. Ученик может посмотреть несколько примеров, демонстрирующих неполноту или противоречивость ответа.

• Система не ограничивает ученика в форме записи ответа (предиката, описывающего множество решений), благодаря чему ученику предоставляется возможность найти собственное решение задачи, без "подгонки" под эталонную форму записи.

Система верификации построена на следующих технологических принципах.

• Система верификации создана на языке программирования JAVA. Применение этого языка позволило реализовать среду как в виде апплета. так и в виде программного приложения.

• Для хранения предикатов, примеров и задач в системе верификации используется формат XML.

• После создания в среде учителя задача является независимым объектом и может быть использована любой системой ученика, интерпретирующей внутренний формат задачи.

Для реализации системы использована компонентная модель организации программных сред [5]. К известным достоинствам компонентной модели организации программных сред для решения задачи - создания программного обеспечения (ПО) педагогического назначения -добавляются следующие факторы:

• разработка специального ПО предполагает его открытость и легкость модификации, в том числе регулярное изменение старых и добавление новых модулей (создание педагоги-

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

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

• использование компонентной модели[6] предоставляет большую свободу в конструировании интерфейса, что является наиболее важным в создании ПО педагогического назначения.

Структура системы верификации

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

Отдельно выделены компоненты: виртуальная клавиатура учителя и виртуальная клавиатура ученика.

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

Главной особенностью компоненты ученика является механизм анализа ответа ученика.

Вам предикатов

Клллиатурл учителя

! I

Вам мдвч

Т-

Оболочке учет «ля

Виртуальная клавиатура учи»«ля

I - Файл описания параметрического

виргуалша* клавиатура учвиика

Рис. 1. Структура среды

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

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

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

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

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

Файл описания параметрического класса представляется в ХМЬ-формате и является элементом базы параметрических классов. Каждый класс включает в себя все необходимые данные, которые вводятся через форму, изображенную на рисунке 2. Файл с описаниями параметрического класса создается и редактируется только в оболочке учителя.

База примеров - это база значений параметров. представленных в виде хш!-файлов. Каж-

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

База предикатов - предикаты представляются в виде хш1-файлов. Каждый хш1-файл содержит предикаты одного параметрического класса. Предикаты задают свойства объектов определенного параметрического класса задач. Базу предикатов так же. как и базу примеров, можно создавать и редактировать только через оболочку учителя.

Виртуальная клавиатура используется для имитации компьютерной клавиатуры в оболочках учителя и ученика, расширенной параметрами класса и необходимыми математическими знаками. Данный компонент представляет собой объединение нескольких панелей с кнопками: панель функций, панель цифр, панель с операциями отношений, панель с логическими операциями и панель с параметрами параметрического класса задач. Каждому параметрическому классу и задачам, созданным на его основе, соответствует своя виртуальная клавиатура. Отдельные виртуальные клавиатуры отличаются друг от друга только составом кнопок на панели параметров. Хотя часть символов можно вводить и с помощью обычной клавиатуры, есть математические символы, которым на обычной клавиатуре кнопок не соответствует (например, "больше или равно"), в этом случае можно использовать только виртуальную клавиатуру. На рис. 2, 3. 4 изображены виртуальные клавиатуры в оболочках учителя и ученика.

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

Создание нового параметрического класса задач

Основным объектом среды верификации является параметрический класс. Каждый параметрический класс является фреймом (класс-шаблоном), определяющим в конечном счете особенности построенного на нем множества задач.

В данной системе параметрические классы задаются следующими элементами:

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

• параметры формулы функции или математического объекта;

• предикат функции или математического объекта - условие, наложенное на параметры класса (определяющая область допустимых значений, на котором будет идти верификация: например, для у = 1о§и(6.г + с) это условие а> \ &а*\.

На рис. 2 представлена форма для создания нового параметрического класса задач. Формулы и параметры класса перечисляются через запятую. Кроме полей для основных трех элементов описания математических объектов, есть два дополнительных поля: поле имени класса и поле для ввода независимых переменных (на данный момент система работает с одной независимой переменной).

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

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

зшЕзяасваавяпжс*^

множество объектов с параметрами (например, таблица Менделеева в химии).

После создания нового класса задач создается базовое множество примеров.

Наполнение базы примеров

В основе идеи использования примеров в нашей системе верификации лежит идея Патрика Уинстона [Winston, 1975а] о машинном обучении на основе примеров и контрпримеров. Оказывается, что при правильном чередовании сообщений самообучающейся программе о том. обладает ли данный пример некоторым свойством или нет, данной информации достаточно, чтобы программа быстро смогла "овладеть" сутью того или иного понятия. Такой метод обучения является также составной частью методики обучения математике.

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

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

На рис. 3 изображен модуль для генерации объектов по заданному условию.

ШЖШШШШВВШШШ^ -lei»!

Е. :

Целые числа

. Дробные числе

с И 1

к[ГТ"

Предика г:;

Ри. 3. Генератор примеров

Рассмотрим на примере создание объектов параметрического класса задач. На рисунке 3 представлен модуль, разработанный автором для создания объектов. В качестве примера использован параметрический класс, формула которого имеет вид /(У) = кх + Ь- линейная функция. После ввода интервалов для параметров к и Ъ и предиката на данные параметры происходит автоматическое создание примеров. Для демонстрации создания положительных и отрицательных примеров рассмотрим следующую задачу. При каком условии на параметры к и Ь линейная функция возрастает? Для данной задачи положительными примерами являются те объекты, для которых неравенство к > О приминает истинное значение. Остальные объекты будут относиться к отрицательным примерам.

База предикатов

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

Доступ к базе предикатов класс-шаблона предоставляется только после его создания. После того как создан класс-шаблон, переходим к созданию базы предикатов, которая изначально пуста. Чтобы добавить предикат параметрического класса, необходимо перейти в редактор предикатов. В редакторе задается сам предикат и его название. Каждый предикат

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

Название предиката необходимо для удобства его использования. Например, выберем класс-шаблон, формула которого имеет видДл ) = = ах2 + Ьх + с, а ф 0 - квадратичная функция об-

Ь2 п

щего вида, - и рассмотрим предикат с-->0.

4 а

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

Из рис. 1 видно, что изменения в базе предикатов никак не отразятся на содержании базы примеров. Обратное также верно.

База примеров и предикатов используются всегда вместе.

На рис. 4 представлено окно с базой предикатов для линейной функции вида у = кх + Ь.

Создание задачи

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

Рис. 4. Предикаты линейной функции

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

Поддержка решения задачи в оболочке ученика

В оболочке ученика среды верификации реализована идея Пойа [ 1 ] об исследовательском подходе к математической задаче. В его методике большое значение придается самостоятельной деятельности по открытию и исследованию математических закономерностей. Процесс решения задачи подробно описан нами в статье [4].

Заключение

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

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

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

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

СПИСОК ЛИТЕРАТУРЫ

1. Дж. Пойа Математическое открытие. - Москва. Главная редакция физико-математической литературы. Издание второе, стереотипное. Перевод B.C. Бермана. Издательство "Книга", 1976.

2. Pozdnyakov S. Computer technologies and productive learning in mathematics. 9th International Congress on Mathematical Education (1CME9) on behalf of the International Commission on Mathematical

Instruction (ICMI).Tokyo/Makuhari. Japan, from July 31 to August 6. 2000.

3. Pozdnyakov S. Mathematical models of intellectual dialogue in Computer Aided Learning. World Conference on Twenty-First Century Mathematics. Proseedings. School of Mathematical Sciences, GC University. Lahore, Punjab (Pakistan). 2005.

4. Манцсров Д.И. Среда УепПег-КО: верификация решений задач по математике. "Компьютерные инструменты в образовании". - Санкт-Петербург, Автономная некоммерческая организация "Центр Информатизации Образования "КИО", 2006. -С. 36-41

5. http://www.osp.ru/os/1999/04/179785/_pl.html: Надежда Куцевич. Компонентные технологии в системах промышленной автоматизации

6. The JavaBeans 1.01 specification. - Sun Microsystems. July, 1997.

Канунникова E.A., Колтунов Jl. И., Потапенко А.H.

Численное моделирование распределенных

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

Введение

В прикладных исследованиях электротехнических систем встречается необходимость расчета электрических полей (ЭП) для высоковольтных линий электропередач (ЛЭП) переменного и постоянного тока [1.2], для систем молниезащит [3], для высоковольтных электростатических систем типа однозонных и двухзонных электрофильтров в системах очистки газа [4, 5], распределенных систем ионизации воздуха типа модификации "Аэроион-Про" [6] и др.

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

Я,/Я <1000, Н1с1< 100.

I Л 3

где Н1 - расстояние между противоположными стенами зала; Я - расстояние от ко-ронирующего провода до стены; с1 - диаметр провода.

Решения внешних краевых задач связаны с определенными сложностями, и поэтому для их преодоления предлагаются новые методы, среди которых метод полос [7]. метод точных искусственных граничных условий [8], метод квазиравномерных сеток [9]. метод инверсии для численного решения внешних краевых задач [10] и др. В этой работе для численного моделирования распределенных электротехнических систем в полубезграничных областях используется метод [10] в виде модифицированного метода инверсии для полубезграничных сред (МИПБС). При этом в [10] показывается, что в численном методе моделирования применяется переход от исследуемой области О к составной из Э'и О', причем при переходе от Э' до О'с помощью инверсии сохраняется шаблон расчетной схемы в силу свойства конформных отображений сохранения углов и постоянства растяжений.

1. Постановка задач для исследования распределенных электротехнических систем

1.1. Математическая модель для исследования ЭП высоковольтной линии электропередачи на примере ЛЭП

ЛЭП представляет собой высоковольтную биполярную линию постоянного тока мощностью 1920 МВт и длиной 1420 км, состоящей из двух линий напряжением +533 кВ и-533 кВ. расположенных на расстоянии 1 км [2]. т.е. их электрические поля не влияют друг на друга. Схема ЛЭП постоянного тока показана на рис. 1а и соответствующая ей схема моделирования - на рис. 16. Определяется ЭП одной линии ЛЭП с расщепленным полюсом Ар, состоящим из