102
НАУЧНЫЕ ВЕДОМОСТИ
Серия История. Политология. Экономика. Информатика. 2015 № 1 (198). Выпуск 33/1
СИСТЕМНЫМ АНАЛИЗ И УПРАВЛЕНИЕ
УДК 004.853
ВОЗМОЖНОСТИ И СРЕДСТВА WOLFRAM MATHEMATICA ДЛЯ РАЗРАБОТКИ ИНТЕЛЛЕКТУАЛЬНЫХ ОБУЧАЮЩИХ СИСТЕМ
В. Б. ТАРАНЧУК
Белорусский государственный университет г. Минск
e-mail: [email protected]
Описаны новые возможности и рекомендации применения технологий Wolfram Research для создания и сопровождения интеллектуальных обучающих систем. Приведены примеры из практики подготовки учебных материалов дисциплины «Компьютерная графика».
Ключевые слова: интерактивные образовательные ресурсы, система компьютерной алгебры Mathematica, формат вычисляемых документов, компьютерная графика.
Введение
Важным направлением развития современного образования является повышение эффективности использования информационных технологий [1, 2]. В настоящее время аппаратное и программное обеспечение компьютера предоставляют разные возможности создания и использования электронных документов с компонентами интеллекта, динамической интерактивности. Такие документы имеют ряд преимуществ перед печатными изданиями. Актуальной является задача определения требований к содержанию электронных документов (особенно при организации дистанционного обучения [3, 4]), способам их подготовки, типовым правилам визуализации информации, что предполагает решение ряда технических вопросов.
В данной работе описаны основные возможности и рекомендации применения технологий компании Wolfram Research, в частности, системы компьютерной алгебры Mathematica и формата вычисляемых документов CDF для создания и сопровождения интеллектуальных обучающих систем; приведены примеры из практики подготовки учебных материалов дисциплины «Компьютерная графика».
Базовый инструментарий
О системе Mathematica
В середине XX века на стыке математики и информатики возникло и интенсивно развивается фундаментальное научное направление компьютерная алгебра - наука об эффективных алгоритмах вычислений математических объектов. Направление компьютерная алгебра представлено теорией, технологиями, программными средствами. К при-
НАУЧНЫЕ ВЕДОМОСТИ
Серия История. Политология. Экономика. Информатика. 2015. №1 (198). Выпуск 33/1
103
кладным результатам относят разработанные алгоритмы и программное обеспечение для решения с помощью компьютера задач, в которых исходные данные и результаты имеют вид математических выражений, формул. Основным продуктом компьютерной алгебры стали программные системы компьютерной алгебры - СКА (Computer Algebra System, CAS).
Программных комплексов, выполняющих символьные вычисления, достаточно много; систематически выходят обновления и описания возможностей новых версий. С обзором СКА по состоянию на 2008 г. можно ознакомиться в книге [5], текущее состояние и основные функциональные возможности описаны в [6]. Большинство СКА не только применимы для исследования различных математических и научно-технических задач, но и содержат все составляющие языков программирования - де факто являются проблемно ориентированными языками программирования высокого уровня. Широкое распространение в настоящее время имеют следующие СКА: Derive, Maxima, Axiom, Reduce, MuPAD, Mathcad. Особое место занимает система компьютерной математики MATLAB. Лидерами СКА являются Mathematica и Maple - мощные системы с собственными ядрами символьных вычислений, оснащенные интеллектуальным пользовательским интерфейсом и обладающие широкими графическими и редакторскими возможностями. Эти две системы по факту являются кроме прочего интерактивными математическими энциклопедиями, в которых можно изучать описания, постановки задач, методы решения, выполнять упражнения.
Система компьютерной алгебры Mathematica компании Wolfram Research является одним из наиболее мощных и широко применяемых интегрированных интеллектуальных программных комплексов мультимедиа-технологии. В системе реализованы и доступны пользователям практически все возможности аналитических преобразований и численных расчётов, поддерживается работа с базами данных, графикой и звуком. Mathematica даёт пользователю возможности анализировать, манипулировать, иллюстрировать графиками все функции чистой и прикладной математики. Система обеспечивает расчеты с любой заданной точностью; построение двух- и трёхмерных графиков, их анимацию, формирование геометрических фигур; импорт, обработку, экспорт изображений, аудио и видео [6, 7]. Отмечаются уникальные возможности системы Mathematica в научно-методическом обеспечении образовательного процесса и научных исследований в высших учебных заведениях [7].
Формат вычисляемых документов (CDF)
Начиная с версии 8, пользователи Mathematica получили возможность создания интерактивных книг, отчётов, программных приложений в CDF формате [8]. Такие документы с помощью бесплатной программы CDF Player можно свободно распространять и работать с ними, в том числе в виде веб-объектов всех популярных браузеров. CDF документы можно создавать с инструментами интерактивности (меню, кнопками, указателями, бегунками, динамическими локаторами), с возможностями представления результатов в математической нотации, визуализации шагов вычислений и иллюстрирования графиками всех типов (1D, 2D, 3D, анимация), импорта и экспорта результатов во все общепринятые форматы данных и графики. Реакцией на команды пользователя через инструменты интерактивности являются обеспечиваемое использованием встроенной вычислительной подсистемы формирование и обновление контента. В документах формата CDF можно размещать текст, таблицы, изображения, аудио и видео, предусмотрено также использование печатной вёрстки и технических обозначений. Если предварительно необходимое запрограммировать, сгенерировать в Mathematica, то можно выполнять аналитические преобразования, вычисления, импорт и экспорт данных, графическую визуализацию; поддерживаются компоновки документа с разбивкой на страницы, со структурной детализацией; режим слайд-шоу, разные способы формирования и просмотра результатов в режиме реального времени. Важно, что формат CDF делает набор математических выражений семантически точным. В дополнение к качественной верстке, пригодной для публикаций, формулу можно вводить полностью набранной типографским способом и использовать для вычислений; также доступно указание формата вывода результатов: математическая нотация, формат языка программирования. Документ, первоначально
104
НАУЧНЫЕ ВЕДОМОСТИ
Серия История. Политология. Экономика. Информатика. 2015 № 1 (198). Выпуск 33/1
созданный в одном стиле, можно преобразовать в множество форм: отчет, статья, учебник, презентация, инфографика или приложение, возможно немедленное обновление стилей динамического и статического контента.
Проект Wolfram Demonstrations
Компанией Wolfram Research создан и регулярно обновляется систематизированный каталог свободно распространяемых онлайновых интерактивных демонстраций -программных приложений-проектов [9]. По состоянию на февраль 2015 г. в каталоге размещены и доступны посетителям сайта более 9890 демонстраций по разным разделам науки, техники, жизни. Целями проекта являются: демонстрация возможностей и приёмов программирования в системе Mathematica; расширение круга пользователей разработок Wolfram. Включённые в коллекцию модули с интерактивным интерфейсом динамически иллюстрируют решения задач, различные процессы и понятия в широком диапазоне областей: математика, естественные науки, техника, экономика и т.д.; охватывают различные уровни знаний от элементарной школьной математики до сложных тем, например, таких как квантовая механика или модели биологических организмов.
Все включаемые в каталог демонстрационные примеры имеют непосредственно связанный с графикой или визуализацией пользовательский интерфейс, который динамически пересчитывается в ответ на такие действия пользователя, как нажатие на кнопку или перетаскивание графического элемента [10]. Каждая демонстрация имеет описание представляемой идеи. Все модули коллекции доступны для скачивания в формате системы Mathematica NB и формате вычисляемых документов CDF.
Примеры реализаций
Основные компоненты, применяемые средства создания и сопровождения интеллектуальных обучающих систем отметим на примерах подготовки электронных интерактивных учебных материалов дисциплины «Компьютерная графика». Специфика преподавания этого предмета состоит в том, что в каждой теме изучается не только теоретический, но требуется сопровождающий иллюстративный графический материал. В отдельных темах математическая составляющая достаточно сложная, поэтому важно иметь возможность делать выкладки и преобразования, причём в математической нотации, на персональном компьютере. Наглядность представления материала, возможность конструирования воображаемых моделей по их математическим описаниям - одно из необходимых требований для корректного понимания сути моделей и их описаний. Создание интерактивных, динамических графиков, поясняющих примеров-иллюстраций, обычно, предполагает сложные геометрические расчёты и аналитические преобразования. Подготовка соответствующих программных приложений не только требует специальных навыков, но и очень трудоёмка. Система Mathematica предоставляет решение этой проблемы, в частности, через использование программных модулей Wolfram Demonstrations Project.
О программных модулях, используемых в темах дисциплины
В процессе преподавания в БГУ на факультете прикладной математики и информатики предмета «Компьютерная графика» (специальность «прикладная информатика») используются интерактивные демонстрации (программные приложения-проекты) из коллекций [9] по следующим темам:
• Цвет в компьютерной графике. Аддитивная, субтрактивная цветовые системы, модель «цветовой куб». Интуитивные цветовые модели и их геометрическая интерпретация. Стандартные цветовые системы и преобразования между ними.
• Математические основы машинной графики. Точка, вектор, расстояние на плоскости и в пространстве. Уравнения отрезка, луча в 2D и 3D: параметрические, с направляющим вектором. Нормаль. Расстояние до точки. Угол между прямыми.
• Преобразования координат. Однородные координаты. Геометрические преобразования в 2D и 3D. Матричное представление преобразований (сдвиг, отраже-
НАУЧНЫЕ ВЕДОМОСТИ
Серия История. Политология. Экономика. Информатика. 2015. №1 (198). Выпуск 33/1
105
ние/симметрия, поворот, масштаб). Задачи поворота вокруг произвольной оси, относительно точки. Композиция 3D преобразований, их коммутативность. Конвейер геометрических преобразований. Проекции, матрицы проективных преобразований.
• Основы обработки цифровых изображений. Линейные, нелинейные фильтры, примеры, морфологические операторы. Поиск границ на основе градиента, лапласиана.
• Построение реалистичных изображений. Модели освещения в компьютерной графике. Моделирование прозрачности. Построение теней. Текстура. Понятие, примеры воксельной графики.
Отметим несколько типичных первоисточников. Все перечисленные ниже проекты вызываются на сайте [9], можно скачать исходные коды или CDF документы, достаточно набрать название с удалением в нём пробелов.
Одна из начальных тем в компьютерной графике - цвет и цветовые модели. Из коллекции используются интерактивные модули визуализации различных цветовых моделей, выполнения преобразований между ними, в частности приложения: Colors of the Visible Spectrum; Overlapping Light Colors; Colored Lights; Named Colors; Select, View, and Compare Named Colors; Analogous and Complementary Colors; Newton's Color Wheel; Color Cube; Color Triangles; Color Space; Cartesian Color Coordinate Spaces; RGB and CMYK Colors; RGB Explorer; Orthogonal Views of Named RGB Colors; HSV Colors; HSV Loci in the RGB Color Space; CIE Chromaticity Diagram.
Модули, которые применяются при изучении разделов «Математические основы машинной графики»: Understanding 2D Translation; Understanding 2D Shearing; Understanding 2D Rotation; Understanding 2D Reflection; Understanding 2D Rescaling; 3D graphics modules: Understanding 3D Rotation; Understanding 3D Scaling; Understanding 3D Reflection; Understanding 3D Shearing; Two Models of Projective Geometry; Orthographic Projection of Parallelepipeds; Stereographic Projection of Platonic Solids; Dissection of a Prismatoid into Prisms; Cutoff Parallelepipeds.
Во всех модулях визуализации в NB, CDF документах кроме управления ползунками на панелях (геометрическими параметрами, цветами, прозрачностью выводимых объектов) пользователь может менять масштаб объекта, поворачивать его во всех направлениях. Т.к. доступны исходные коды, студентам предоставляются доработанные приложения, с использованием русскоязычной терминологии, оформления графики, как в базовых учебниках и пособиях; комментарии в модулях переведены на русский язык.
Технические решения на примере одной из тем дисциплины
Интерактивные электронные ресурсы при преподавании дисциплины «Компьютерная графика» используются на всех этапах: в лекциях, практических занятиях, контролируемой самостоятельной работе, текущем контроле знаний, в итоговой диагностике результатов учебной деятельности, которая выполняется в формате компьютерного тестирования. Приведём и поясним компоненты электронного учебно-методического комплекса на примере изучения темы «Геометрические преобразования в 2D и 3D. Матричное представление, композиция 3D преобразований». На рисунках ниже представлены скриншоты, иллюстрирующие кадры программного модуля, предоставляемого студентам.
На рисунке 1 показан фрагмент главного окна программного модуля. С модулем можно работать в Mathematica или, используя CDF Player, есть изложение теории, ссылки, формулировки заданий для выполнения; все тексты, где есть формулы, записаны в математической нотации. В исполняемых секциях можно выполнять символьные вычисления, преобразования, операции с матрицами, строятся требуемые изображения.
106
НАУЧНЫЕ ВЕДОМОСТИ
Серия История. Политология. Экономика. Информатика. 2015 № 1 (198). Выпуск 33/1
Рис. 1. Вид главного окна программного модуля, группы секций
Например, в блоке «Матрицы аффинных преобразований» (фрагмент показан на рисунке 2) в следующих секциях даны пояснения функций системы Mathematical Matrix-Form - вывод элементов одномерного или двумерного массива (списка) в матричном формате; Inverse, Transpose - обращение, транспонирование матрицы; Simplify - упрощение выражения. Эти функции представлены в виде упражнений, когда в заготовках можно менять значения, получать и просматривать результаты.
Рис. 2. Фрагмент окна блока «Матрицы аффинных преобразований»
Вид окна начальных секций блока «Конвейер геометрических преобразований» с постановкой задачи «Сложение преобразований 3D» показан на рисунке 3.
НАУЧНЫЕ ВЕДОМОСТИ
Серия История. Политология. Экономика. Информатика. 2015. №1 (198). Выпуск 33/1
107
Рис. 3. Фрагмент окна блока «Сложение преобразований 3D»
Рассматривается классическая задача получения итоговой матрицы преобразования, решение состоит в выполнении 4-х шагов: перенос и 3 поворота вокруг координатных осей (эскизы на рисунке 4) - эти шаги реализуются стандартными действиями применения соответствующих матриц. В модуле после каждого шага выводятся графики (исходный, результат), а также рассчитываются и выводятся координаты точек. Так на рисунке 5 контролируются координаты точки Q3, которая после этого шага преобразований должна оказаться на оси 0Z - первые 2 координаты нулевые.
Рис. 4. Фрагмент окна иллюстраций шагов конвейера преобразований
CG 09ГLed + KSR + Dract\nLi * - Wolfram Mathematica 1C.^ i _ ч
File Edit Insert Format Cell Graphics Evaluation Palettes Window Fielp П l"[82]:= ^ ■ i « H
5 Print[MQ3 = "r Q3wekt]
Ол[в2]:= (яр2-2 яр xq-xq^-fzp-zq}2)1 ^ c yp yq + , i 2 2\ r J (p-ч) Iх-E „ l Q3 = 0, 0, 1 f , 1 , 1 ^fp-q!2 (x2 + y2 + z2) J
Рис. 5. Фрагмент окна с результатами проверки правильности преобразования
108
НАУЧНЫЕ ВЕДОМОСТИ
Серия История. Политология. Экономика. Информатика. 2015 № 1 (198). Выпуск 33/1
Кроме секций документа с пояснениями и иллюстрациями алгоритмов преобразований студентам для освоения предлагается программный модуль Understanding3DRotation+.cdf, который адаптирован по оригиналу из каталога Wolfram Demonstrations Project Understanding3DRotation-author.nb (перевод, изменены начальные ракурсы и масштаб просмотра, добавлены пояснения частей кода). На рисунках 6, 7 показаны скриншоты панели управления, кадры с результатами работы модуля. Изменение значений wx, wy, wz - повороты, изменение px, py, pz обеспечивает смещение; реализованы и алгоритмы отсечения - видно на нижнем правом фрагменте рисунка 7. В приложении можно перемещать и поворачивать получаемую сцену; каждое действие управления можно выполнять, задавая значение параметра в поле ввода или перемещением бегунка, также можно запускать просмотр с автоматическим изменением параметра, регулировать скорость и направления прокрутки видео.
В модуле даны комментарии к основным функциям и опциям кода, чтобы студенты могли вносить изменения, а также заимствовать приёмы написания программы, упражняться, используя другие графические примитивы и фигуры. Например, поясняя использованную в коде функцию формирования и вывода графики Graphics3D, предлагается вместо примитива куб (Cuboid) получить изображения с сферой или цилиндром, конусом и др. (Sphere, Cylinder, Cone, Ball, Parallelepiped, Prism).
Относительно применяемых в модуле функций преобразования RotationTransform, TranslationTransform - дополнительно записаны пояснения и упражнения, чтобы студенты освоили функции системы AffineTransform, GeometricTransformation.
В части оформления, настройки вида объектов сцены в упражнения включены пояснения правил задания толщины и типа линии (Thickness, Dashed, Dotted, DotDashed, Thick, Thin, AbsoluteThickness), цветов и прозрачности (Colors, Opacity), управления кадром вывода (PlotRegion, PlotRange, PlotRangeClipping, AspectRatio, Scaled).
Рис. 6. Фрагмент панели управления, окна вывода с пояснениями объектов сцены
НАУЧНЫЕ ВЕДОМОСТИ
Серия История. Политология. Экономика. Информатика. 2015. №1 (198). Выпуск 33/1
109
Рис. 7. Фрагменты кадров с результатами поворотов и перемещений
Особое внимание уделено вопросам программирования динамического вывода, использования инструментов интерактивности - поясняются функции и опции динамических вычислений, включения и выключения индикаторов, организации флажков, кнопок, иерархических и выпадающих меню, локаторов (Manipulate, Dynamic, Initialization, Delimiter, PopupMenu, Checkbox, CheckboxBar, RadioButtonBar, SetterBar, TogglerBar, Con-trolType, Locator, Slider, Slider2D, ColorSlider, SaveDefinitions, AutorunSequencing).
Заключение
Описание компонент электронного документа поясняет, как применяемые средства обеспечивают процесс изучения дисциплины, когда теоретический материал увязывается с задачами усвоения и реализации базовых алгоритмов. Предлагаемая методика интегрирования интеллектуальных средств системы Mathematica, формата вычисляемых документов CDF, модулей коллекции демонстрационных интерактивных приложений расширяет границы создания и свободного распространения электронных интерактивных образовательных ресурсов.
Литература
1. Абламейко С.В., Казаченок В.В., Мандрик П.А. Современные информационные технологии в образовании // Информатизация образования - 2014: педагогические аспекты создания и функционирования виртуальной образовательной среды = Informatization of education - 2014: Pedagogical aspects of the development of virtual educational environment: материалы междунар. науч. конф., г. Минск, 22-25 окт. 2014 г. / - Минск, 2014. - С. 7 - 13.
2. Ломакин В.В., Асадуллаев Р.Г. Организация интеллектуального управления индивидуальными образовательными траекториями // Научные ведомости БелГУ. Серия: История. Политология. Экономика. Информатика 2013 г. № 22 (165) - выпуск 28/1, С. 167 - 173.
3. Дмитренко Т.А., Деркач Т.Н., Дмитренко А.А. Технология разработки системы дистанционного обучения // Научные ведомости БелГУ. Серия: История. Политология. Экономика. Информатика 2014 г. № 8 (179) - выпуск 30/1, С. 128 - 137.
110
НАУЧНЫЕ ВЕДОМОСТИ
Серия История. Политология. Экономика. Информатика. 2015 № 1 (198). Выпуск 33/1
4. Бровка Н.В., Голёнова И.А. Системы дистанционного обучения Moodle в процессе обучения студентов основам медицинской статистики // Информатизация образования - 2014: педагогические аспекты создания и функционирования виртуальной образовательной среды = Informatization of education - 2014: Pedagogical aspects of the development of virtual educational environment: материалы междунар. науч. конф., г. Минск, 22-25 окт. 2014 г. - Минск, 2014. -С. 50 - 53.
5. Дьяконов В.П. Энциклопедия компьютерной алгебры. - М.: ДМК Пресс, 2009. - 1264 с.
6. Таранчук В.Б. Основные функции систем компьютерной алгебры: пособие для студентов фак. прикладной математики и информатики. - Минск: БГУ, 2013. - 59 с.
7. Wolfram Mathematica. Наиболее полная система для современных технических вычислений в мире [Электронный ресурс]. URL: http://www.wolfram.com/mathematica. (Дата обращения: 4.02.2015)
8. CDF. Документы оживают благодаря возможностям вычислений [Электронный ресурс] URL: http://www.wolfram.com/cdf. (Дата обращения: 4.02.2015)
9. Wolfram Demonstrations Project [Электронный ресурс]. URL: http://demonstrations.wolfram.com. (Дата обращения: 4.02.2015)
10. Таранчук В.Б. О создании интерактивных образовательных ресурсов с использованием технологий Wolfram // Информатизация образования. - 2014. - № 1. - С. 78-89.
WOLFRAM MATHEMATICA OPPORTUNITIES AND TOOLS FOR DEVELOPMENT OF INTELLIGENT TUTORING SYSTEMS
Describes the new features and recommendations of technologies Wolfram Research for the creation and maintenance of intelligent tutoring systems. Examples are given of the practice of training materials discipline "Computer Graphics".
Keywords: interactive educational resources, computer algebra system Mathematica, Computable Document Format, computer graphics.
V. B. TARANCHUK
Belarusian State University, Minsk
e-mail: