Использование технологий распределенных вычислений для решения сложных технических задач в дистанционной образовательной среде вуза

УДК 004.8

А. А. Большаков, В. П. Глазков, И. В. Егоров,

А. В. Лавров, С. В. Пчелинцева

ИСПОЛЬЗОВАНИЕ ТЕХНОЛОГИЙ РАСПРЕДЕЛЕННЫХ ВЫЧИСЛЕНИЙ ДЛЯ РЕШЕНИЯ СЛОЖНЫХ ТЕХНИЧЕСКИХ ЗАДАЧ В ДИСТАНЦИОННОЙ ОБРАЗОВАТЕЛЬНОЙ СРЕДЕ ВУЗА

Введение

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

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

Увеличение эффективности вычислительных систем связано с технологиями, предполагающими переход к альтернативным моделям вычислений. К ним можно отнести развивающиеся технологии распределенных вычислений, базирующиеся на кластерных системах с массивнопараллельной организацией функционирования на основе общедоступных серверов и микропроцессоров, а также на основе организации и осуществления параллельных вычислений в режиме удаленного доступа посредством сети Интернет. В частности, одной из подобных технологий является grid-система, представляющая собой географически распределенную инфраструктуру, которая объединяет множество ресурсов разных типов (процессоры, долговременная и оперативная память, хранилища и базы данных, сети). Доступ к ним пользователь может получить из любой точки, независимо от места их расположения. Grid-технологии предполагают коллективный, разделяемый режим доступа к ресурсам и связанным с ними услугам в рамках глобально распределенных виртуальных организаций, состоящих из предприятий и отдельных специалистов, совместно использующих общие ресурсы.

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

Одной из виртуальных организаций на базе проекта OurGrid, созданного в 2004 г. в бразильском университете Universidade Federal de Campina Grande, стал Саратовский государственный технический университет, как региональный центр научных исследований и дистанционного образования. Здесь в рамках проекта, реализуемого при технической и финансовой поддержке НР, создан grid-узел, позволяющий решать сложные и (или) задачи большой размерности, требующие большого объема вычислений, а также реализовать новый подход как к дистанционному образованию, так и к выполнению практических и курсовых работ по дисциплинам, требующим больших вычислительных мощностей.

Создание образовательной среды с использованием распределенных grid-вычислений

Созданная и внедренная система дистанционного образования на основе технологического комплекса, использующего grid-вычисления, представляет собой кросс-платформенную систему, где объединяющую роль образовательной среды выполняет MS SharePoint Learning Kit 1.2, для выполнения сложных и (или) скоростных вычислений используется программное обеспечение (ПО) OurGrid. Для дистанционного доступа к учебным ресурсам, управления учебным процессом и контроля успеваемости обучающихся используется программное средство Class Server.

Grid-узел, составляющий технологическое ядро, является программно-аппаратным комплексом серверов HP 4640 Integrity Itanium 2 х 4, 8Gb, операционной системы (ОС) Linux Red Hat AS 4.0 и ПО OurGrid 3.2.

Пилотный проект включает курсы по технологиям программирования и проектированию промышленных роботов для студентов специальностей «Информационные системы и технологии», «Информационные системы в медиаиндустрии», «Программное обеспечение вычислительных систем», «Робототехнические системы и комплексы» и направления «Мехатроника и робототехника».

Структура вычислительного grid-узла

В качестве grid-системы выбрана научная бесплатная инфраструктура OurGrid, которая предназначена для решения задач класса BoT (Bag of Tasks), т. е. задач, решение которых может быть выполнено параллельно независимо друг от друга. Система OurGrid состоит из трех частей:

— grid-машины, выполняющие решение отдельных частей задания, — Grid User Machine (GUM). На них устанавливается ПО, реализующее интерфейс GUM (UserAgent). Для обеспечения безопасности над слоем средств закрытия ресурсов ОС выстраивается слой SWAN, включающий виртуальную машину Xen, уровни выполнения, проверку целостности конфигурации;

— машины Peer — диспетчеры ресурсов, которые регистрируют списки доступных машинам GUM, выдают их по требованию для расчетов и ведут учет статистики по взаимному использованию ресурсов с другими машинами Peer. Они служат также для связи со всей сетью grid. Устанавливаемое ПО — Peer;

— рабочие места пользователей, с которых запускаются задачи для распределенного вычисления. Устанавливаемое ПО — MyGrid. Брокер MyGrid осуществляет планировку запуска заданий на выполнение, мониторинг запущенных задач, перезапуск на других GUM задачи, если предыдущий отказал.

Составляющими системы OurGrid, таким образом, являются три компоненты: ПО MyGrid, Peer и User Agents. Программное обеспечение Peer и MyGrid выполняется только под управлением Linux, однако интерфейс User Agent может быть установлен на платформах ОС Windows и Linux.

Применение grid-технологий для решения робототехнических задач

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

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

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

Особенность решения обратной задачи кинематики о положении

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

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

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

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

Рис. 1. Робот-манипулятор с шестью вращательными степенями подвижности

Рис. 2. Пример кинематически избыточного манипулятора

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

Алгоритм поиска решения ОЗК при помощи grid-системы включает в себя следующие этапы:

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

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

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

Характеристики и функции обучающей среды

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

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

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

4 3 • •

б

Рис. 3. Положение и ориентация схвата в узловых точках: а - положение узловых точек; б - ориентация схвата в узловых точках

а

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

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

Структура обучающей системы

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

Рис. 4. Организационно-функциональная схема системы

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

На схеме системы приведена структура формата учебного материала - LRM (Learning Resource Material), поддерживаемого Class Server. Этот материал включает набор веб-страниц (каталогов), содержащих Web-контент и файл в формате XML (Index.xml) с метаданными описания. Формат LRM, в частности, позволяет форматировать вложения в заданиях учащихся для отправки задания, использовать вопросы с несколькими вариантами ответа и вопросы, требующие ввода данных в пустые поля, а также другие методы форматирования тестов, позволяющих преподавателю оценивать задание как вручную, так и автоматически с помощью Class Server.

Модули для прямой задачи кинематики и ввода коэффициентов аппроксимирующих полиномов решаются на стороне клиента и осуществляют визуализацию результатов с помощью библиотеки Java3D. Решение ОЗК в общем случае неоднозначно и требует перебора нескольких вариантов решений с выбором оптимального по некоторому критерию. Для ускорения процесса получения результата осуществляется распараллеливание процесса решения с использованием grid-системы (OurGrid).

Для связи апплета с модулем решения ОЗК используется web-сервис EDSWebServiсe, размещающий ОЗК для решения в grid-систему и возвращающий результат в апплет. Данный web-сервис принимает условия задачи от ОЗК-апплета, разбивает их на независимые части и посылает на выполнение машинам GUM, полученным от машины Peer. Для выполнения этих независимых частей на машины GUM отсылается исполняемый файл. Результаты работы в виде файлов возвращаются в ОЗК-сервлет, выбирается оптимальный вариант и отправляется ОЗК-апплету, в котором происходит визуализация решения. После выполнения задания результаты записываются в базы данных Class Server на основе доступа к службе CSDataService через API.

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

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

Для заданных кинематической схемы и 3D-модели робота-манипулятора (рис. 5) требуется сформировать программную траекторию, используя метод планирования в обобщенных координатах.

Рис. 5. Кинематическая схема и 3Б-модель манипулятора

Решение прямой задачи кинематики

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

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

Решение обратной задачи кинематики

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

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

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

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

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

Не ЕЛ УВ» 1тоег( Тоок Ое?йор адпёои I

ЬкеЯ Тоо15 ОмМор Шнкт Не1р

Не Е(И Ией 1гкег1 Тоок Ое5Йор Уйгккют |

вне ь I «а. а. о  I«!  |в

З-З-З-З-З, звено 3

Тип аппроксимации З-З-З-З-З.

I.-. I *  :: : : . : ^

1 / /

\\ \\ \\ / /

«1 \\ 35

Рис. 6. Законы изменения обобщенных координат, скорости, ускорения для заданной степени подвижности на экранной форме

Программная траектория

Тип аппроксимации З-З-З-З-З, звено 3

а б

Рис. 7. Программная траектория при правильно определенных коэффициентах: а - пространственная траектория; б - закон изменения обобщенной координаты

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

Заключение

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

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

Статья поступила в редакцию 14.12.2010

APPLICATION OF DISTRIBUTED CALCULATIONS TECHNOLOGIES FOR THE SOLUTION OF DIFFICULT TECHNICAL PROBLEMS IN THE DISTANCE EDUCATIONAL ENVIRONMENT OF HIGH SCHOOL

A. A. Bolshakov, V. P. Glazkov, I. V. Egorov,

A. V. Lavrov, S. V. Pchelintseva

The technique and results of the application of grid-technologies for the solution of robotics problems are considered in the paper. The structure of the distance educational environment for teaching the solution of direct and return problems is resulted at planning of a trajectory of manipulators of robots, and results of numerical modeling in the developed program environment are also shown.

Key words: educational environment, distributed calculations, grid-technologies, direct and return planning problem of a trajectory of the manipulator of the robot