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

кандидата технических наук
Перцовский, Станислав Леонидович
город
Владивосток
год
2007
специальность ВАК РФ
05.13.11
Диссертация по информатике, вычислительной технике и управлению на тему «Онтологоориентированный подход к разработке программных средств поддержки процесса сочинения последовательностей движений человека»

Автореферат диссертации по теме "Онтологоориентированный подход к разработке программных средств поддержки процесса сочинения последовательностей движений человека"

На правах рукописи

003055733 Перцовский Станислав Леонидович

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

05.13.11 - математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей

Автореферат диссертации на соискание ученой степени кандидата технических наук

Владивосток 2007

003055733

Работа выполнена в Отделе интеллектуальных систем Института автоматики и процессов управления ДВО РАН.

Научный руководитель: кандидат физико-математических наук, доцент

Гаврилова Татьяна Леонидовна.

Официальные оппоненты: доктор технических наук, профессор

Бобков Валерий Александрович,

кандидат физико-математических наук, доцент

Вольнов Игорь Николаевич.

Ведущая организация:

Институт прикладной математики им. М.В. Келдыша РАН (г. Москва).

Защита состоится" 16 " февраля 2007 г. в 10 часов на заседании диссертационного совета Д 005.007.01 в Институте автоматики и процессов управления ДВО РАН по адресу: 690041, г. Владивосток, ул. Радио, 5.

С диссертацией можно ознакомиться в библиотеке ИАПУ ДВО РАН.

Автореферат разослан " 12 " января 2007 г.

Ученый секретарь

диссертационного совета Д 005.007.01

ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ

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

В настоящее время компьютерных средств, помогающих, например, хореографам создавать новые танцы, известно немного. Можно привести примеры нескольких программ, помогающих хореографам в сочинении балетных танцев (DanceForms, Web3D Dance Composer), но для современных сольных танцев (ССТ) таких программ нет. Основная причина этого состоит в том, что все существующие программы для балетных хореографов базируются на устоявшихся знаниях о классическом балете — зафиксированном конечном множестве записей общеизвестных позиций, поз и движений танцора классического балета (записях Лабана). Подобные знания о ССТ не формализованы, сведения об этих танцах зачастую противоречивы, а способов записи таких танцев (кроме видеозаписи) нет. При сочинении новых ССТ какого-либо стиля хореограф не только сам решает, какие позы, позиции и движения, характерные для выбранного стиля, он будет использовать, но и сочиняет новые позы, позиции и движения, опираясь на собственные представления о стиле и о возможностях танцоров таких танцев.

Поиски программных средств, пригодных для оказания помощи авторам в других ПО при сочинении соответствующих последовательностей движений, к успеху не привели: существующие программные средства анимации движений человека рассчитаны на пользователей-программистов и/или базируются на фиксированном наборе возможных движений человекоподобной модели (например, Life Forms Studio или Poser).

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

При создании таких средств следует в первую очередь исследовать эту слабо формализованную ПО и построить её математическую модель. Это можно сделать в рамках онтологоориентированного подхода к разработке

программных систем (Клещев A.C., Артемьева И.Л., Guarino N.). Под онтологией предметной области здесь понимается множество определений терминов этой предметной области и описание связей между ними. При онтологоори-ентированном подходе к разработке программного средства на первом шаге процесса моделирования соответствующей ПО необходимо описать её онтологию, а на втором — построить математическую модель этой онтологии. На модели этой онтологии ставится (и решается) задача разработки программного средства.

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

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

В качестве объекта исследования рассматривается процесс сочинения хореографом ССТ стиля "Фанк" (ССТФ) как пример сочинения последовательности движений человека по авторскому сценарию.

Для достижения поставленной цели в диссертационной работе необходимо решить следующие задачи:

- построение онтологии ПО;

- построение модели этой онтологии;

- разработка методов создания интерактивной компоненты программного средства поддержки процесса сочинения последовательностей движений человека на основе построенной модели онтологии;

- разработка методов создания ядра программного средства поддержки процесса сочинения последовательностей движений человека на основе построенной модели онтологии;

- экспериментальное исследование предложенных моделей и методов -разработка и применение на практике экспериментальной версии программного средства поддержки процесса сочинения последовательностей движений человека в ПО "Хореография ССТФ".

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

Научная новизна работы состоит в следующем:

- разработаны принципы построения онтологии ПО "Процесс сочинения последовательностей движений человека" и на их основе построены онтология и её модель для ПО "Хореография ССТФ";

- разработаны принципы построения на основе онтологии ПО интерактивного компонента программного средства поддержки процесса сочинения последовательностей движений человека;

- разработаны онтологоориентированные методы создания ядра программного средства поддержки процесса сочинения последовательностей движений человека;

Практическая ценность работы состоит в следующем:

- разработаны язык диалога хореографа с программным средством поддержки процесса сочинения ССТФ и интерпретатор этого языка;

- создана программа "Dancer" - экспериментальная версия программного средства поддержки процесса сочинения ССТФ;

- результаты работы нашли применение в учебном процессе:

- в Дальневосточном государственном университете: материалы 2-ой главы диссертации используются в курсе лекций по дисциплине "Интеллектуальные системы" специальности "Математическое обеспечение и администрирование информационных систем",

- во Владивостокском государственном университете экономики и сервиса: онтология ПО "Хореография ССТФ" и программа "Dancer" используется при подготовке и проведении уроков хореографии;

- программное средство "Dancer Ml" (макетная версия программы "Dancer") зарегистрировано в Реестре программ для ЭВМ 5 сентября 2006 г. (Свидетельство Федеральной службы по интеллектуальной собственности, патентам и товарным знакам об официальной регистрации программы для ЭВМ№2006613128).

Апробация работы. Основные положения диссертации докладывались и обсуждались на Всероссийском научно-техническом фестивале молодежи "Мобильные роботы" (Москва, 2002), Дальневосточных математических школах-семинарах имени академика Е.В. Золотова (Владивосток, 2003, 2006; Хабаровск, 2005), Международных конкурсах компьютерных программ студентов, аспирантов и молодых специалистов (Владивосток, 2004, 2006), Научной конференции студентов и аспирантов ДВГУ (Владивосток, 2004), Международной мульти-конференции по систематике, кибернетике и информатике (Орландо, США, 2005), Международной научно-технической конференции "Интеллектуальные и многопроцессорные системы" (Дивноморск, 2005), а также на Объединённых семинарах Отдела интеллектуальных систем ИАПУ ДВО РАН и кафедры программного обеспечения ЭВМ Дальневосточного государственного университета.

Публикация результатов работы. По материалам диссертации опубликовано 13 работ.

Проводимые исследования поддерживались грантами на проект "Теоретические основы интеллектуальных систем, основанных на онтологиях, для интеллектуальной поддержки научных исследований" по программе № 16 фундаментальных исследований Президиума РАН и на проект Президиума ДВОРАН 06-Ш-Г-01-021.

Структура и объем работы. Диссертация состоит из введения, пяти глав, заключения, списка литературы и трех приложений. Основная часть работы изложена на 150 страниц текста, содержит 20 таблиц и 63 рисунка. Список литературы содержит 128 наименований.

СОДЕРЖАНИЕ РАБОТЫ

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

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

Во второй главе излагаются принципы построения онтологии ПО "Процесс сочинения последовательностей движений человека", описывается созданная на основе этих принципов онтология ПО "Хореография ССТФ" и строится её математическая модель.

Основными объектами ПО "Процесс сочинения последовательностей движений человека" являются последовательность движений, развивающаяся во времени, её сочинитель и её исполнитель. Поэтому в основу построения онтологии этой ПО положены следующие принципы: 1. Разделение онтологии ПО на три составные части:

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

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

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

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

В данной работе онтологоориентированный подход применяется для разработки программного средства поддержки процесса сочинения ССТФ. В соответствии с вышеуказанными принципами выделяются три составляющие онтологии ПО "Хореография ССТФ" (см. рис. 1).

Онтология танцора стиля "Фанк"

-^ Танцор |---> Тело танцора

Движение танцора I | { стиля "Фанк" ^ Деталь части тела

\] Танцор стиля I \ /I "Фанк" | \ Сцена

/ I Ограничение на I Парам, кинетотакта

\[| Кинетсггакт ^ / ( / * Полный кинетогакт у' Верхняя (нижняя) граница параметра кикетототакта

( Онтология пронесся сочинения ')

Просмотр танца, нсп.танцором Запись танца Добавление восьм.

Удаление восьм._

ТТроШотр восьмер.7

исп. танцором Добавл. пол. кинет. Удален, пол, кинет.

Хореограф

Формир. танца

Формир. восьмерки

Форм. пол. кинет.

Просмотр пол. кин. Добавление кинет. Удаление кинет.

Формир. кинет.

Придум. нового движ. частитела

Придум. нового движ. всего тела

Выбор движения из библиотеки

Задание позиции

Рис. 1. Термины онтологии и их связь При описании онтологии танца стиля "Фанк" выделены три труппы терминов: общие термины танца, термины танцевального ритма и термины танца, исполняемого в этом ритме. В онтологии выделены 37 вариантов

позиций стиля "Фанк". Для каждого из них составлено описание по следующему шаблону: название; словесное описание; характеристики. Любую позицию стиля "Фанк" можно представить некоторым описанием с фиксированными значениями характеристик. В онтологии танца описано также 15 вариантов общепринятых для этого стиля движений различных частей тела.

Онтология танцора. Тело танцора - это совокупность всех деталей частей тела танцора, соединенных между собой в соответствии с анатомией человека. Элементарное танцевальное движение под музыку, исполняемое танцором, называется кинетотактом. Полный кинетотакт - совокупность всех кинетотактов, исполняемых в течение доли музыкального такта. Каждый кинетотакт имеет атрибуты - параметры кинетотакта: угол движения детали части тела, угол вращения всего тела, угол поворота всего тела и высота прыжка. Ограничение на совместные движения - это указание на невозможность совместных движений некоторых деталей частей тела и/или всего тела стиля танца "Фанк", обусловленную анатомией человека.

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

Построенная онтология ПО "Хореография ССТФ" удовлетворяет принципу однозначности терминов. Термины всех трёх онтологий связаны между собой естественным образом иерархией понятий.

Математическая модель онтологии состоит из моделей терминов и моделей отношений между ними.

Модель танца fDance всегда состоит из некоторого количества моделей восьмерок Eight и исполняется в течение одной музыкальной композиции /Music (рис. 2). Таким образом, для того, чтобы создать танец, нужно последовательно создавать восьмерки. Восьмерка исполняется в течение одного такта Т. Каждая восьмерка представляет собой либо последовательность, состоящую из восьми моделей танцевальных движений доли JMoveD, либо последовательность, состоящую из нескольких (от девяти до шестнадцати) моделей танцевальных движений долей fMoveD и полу-долей fMoveHp (каждую долю D музыки стиля "Фанк" можно разделить на две полу-доли HalfD, и HalfDi). Модель танцевального движения доли /Move/, представляет собой либо множество моделей танцевальных движений частей тела fPMoveoD, исполняемых в течение этой доли, либо модель танцевального движения всего тела fBMoveD. Аналогично для JMoveHD.

Модель танцевального движения части тела fPMoveoD — это fPMove, исполняемое в течение Д a fBMoveo ~ это fBMove, исполняемое в течение D.

/РМоге представляет собой конечную последовательность моделей позиций некоторой части тела /РРоье. Каждая такая модель принадлежит множеству моделей существующих позиций этой части тела - /РРозея. Аналогично для /ВМоуе - эта модель движения представляет собой конечную последовательность моделей поз всего тела — /ВРоБе. Эта модель описывает положение всех частей тела танцора и, соответственно, представляет собой множество моделей позиций всех частей тела танцора.

fDance

Eight .... eisht

fMoveB ... fMoveHD - fMoveH0 ... /Movep

yBiore^ - /TOoveH^ !BMoveHe

I ' | ' счет долен в * | * | ' ' |'

| 1 |................^ з -___«авдгй.'адгун'а..^ j [■_________________ и )........\ 8 |

Рис. 2. Графическая иллюстрация математической модели танца Совокупность названий всех 18 деталей тела танцора - множество nBody-Parts. Body — модель тела танцора: множество всех XPart, где X е nBodyParts. В свою очередь, XPart - это последовательность параметров геометрического тела. fKt является моделью полного кинетотакта: последовательность упорядоченных пар (fPMoveoDi, XjKtPar) или одна пара (fBMoveD, KtPar), где X,KtPar — модель параметра кинетотакта для /-ой части тела, a KtPar — модель параметра кинетотакта для всего тела. fKts - множество всех возможных fKt. JoirttM(a, b) -модель ограничений на одновременность движений а и Ь: булевское значение, равное 0, если а и b можно выполнять одновременно, и равное 1 в противном случае. JointMs - множество всех JointM при различных возможных значениях а и Ъ. Таким образом, fDancer — модель танцора стиля "Фанк", fDancer м {Body, fKts, JointMs).

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

1. Начальное состояние: пустая последовательность моделей восьмёрок.

2. Шаг процесса. Текущее состояние: конечная последовательность Ев¡, ...,

ЕВк моделей восьмёрок (быть может, пустая).

Преобразование - альтернатива:

- Просмотр хореографом последовательности восьмёрок; новое (следующее) текущее состояние - та же последовательность ЕВ/,..., Евк.

- Формирование хореографом новой восьмёрки Еы, выбор им места вставки /' в последовательность и вставка восьмерки в выбранное место; новое текущее состояние Еп¡,..., EB,_i, EN, EBh ..., Евк.

- Выбор хореографом j-й восьмёрки в последовательности и удаление её; новое текущее состояние Евь ..., EBj.h EBj+h ..., ЕВк-

Условие завершения процесса - внешнее (решение хореографа). 3. Заключительное состояние процесса: конечная последовательность

Ер 1,..., Е'дг моделей восьмёрок (быть может, пустая).

Связь терминов моделей всех трех онтологий устанавливается аналогично тому, как это сделано на рис. 1.

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

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

1. Язык диалога пользователей с программным средством строится как язык последовательностей команд, причём

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

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

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

2. В состав интерактивного компонента входит интерпретатор команд.

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

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

Рис. 3. Диаграмма прецедентов для пользователя - хореографа Например, описание прецедента "удаление танцевального движения" выглядит так: если текущее танцевальное движение - последнее в восьмерке, то удаляются все элементарные движения, в него входящие; в противном случае текущее танцевальное движение удаляется из восьмерки, и текущим становится следующее танцевальное движение (при этом первая поза в следующем танцевальном движении заменяется на последнюю позу в текущем танцевальном движении). Удаление невозможно, если в его результате танцевальное движение полу-доли "встанет" на первое место в восьмерке, или в восьмерке появятся два танцевальных движений полу-доли, "стоящих" вместе.

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

В формальном описании синтаксиса языка команд пользователя множество терминальных символов — это имена команд меню, имена движений и позиций, характеристики позиций и движений, значения координат курсора мыши, алфавит для задания имен танцев и движений и т.п.; аксиома - нетерминал <команда>; множество правил грамматики, записанных в расширенной форме Бэкуса-Наура, содержит около 120 правил.

Рис. 4. Описание языка пользователя

Интерпретатор команд обрабатывает команды пользователя программного средства поддержки процесса сочинения ССТФ. Интерпретатор команд состоит из восьми модулей: модуль инициализации средств управления, модуль ожидания команд пользователя, модуль обработки команд мыши и т.п.

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

Программное средство

Предметная область

Этап 1:

извлечение знаний

Онтология ПО

Этагу4: объектно-ориентированное

программирование

Ч

Этап 2: формализация извлеченных знаний

Ядро

Этап 3: построение ^ компьютерной "модели на основе формальной

Модель онтологии ПО

Рис. 5. Этапы разработки программного средства при использовании онтологоориентированного подхода к её разработке

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

В качестве онтологоориентированного метода разработки ядра программного средства поддержки процесса сочинения последовательностей движений человека предлагается сопоставление каждой модели термина в модели онтологии ПО - его компьютерной модели. В данной работе для создания ядра программного средства использовались конструкции языка С++.

Приведённые ниже примеры правил сопоставления определяются особенностями модели онтологии ПО "Хореография ССТФ": в ней используются только пять видов математических объектов (множество имён, кортеж элементов, множество кортежей, альтернативная конструкция и конечная последовательность, моделирующая процесс, состоящий из конечного числа шагов). Знак "—>■" в тексте этих правил читается как "сопоставляется".

- Множеству имен N в математической модели онтологии сопоставляется перечислимое множество _N:

NM {bh ...., bN) -> enum__N {bl,...., bN}, где bi, ...,bN- имена в математической модели.

- Кортежу элементов S в математической модели онтологии сопоставляется класс S:

5Й(?/,..... qк) - class {77 _ql;....; TN_qN\ ml;...; тН\}, где q,, ..., qK-элементы кортежа, jjl, ..., _qN- переменные класса _S типа Т],..., TN(Nможет быть равно К), соответственно, ml,..., mH- методы класса S. Методы класса используются в том случае, когда значения переменных задаются непосредственно (пользователем) или с помощью других классов.

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

- Процессу формирования в математической модели онтологии Р сопоставляется функция _Р, телом которой является цикл обработки команд хореографа:

РмSTEP,,...., STEPc _Р() {for (int i = 1; i < G; /++)

{if (...)...; if(...)...;};}; здесь STEP,, ...., STEPc- шаги процесса формирования, if (...)- условный оператор выбора команд хореографа.

Анализ структуры модели онтологии ПО "Хореография ССТФ" показал, что для создания ядра программного средства поддержки процесса сочинения ССТФ необходимо построить: КМ записи танца, КМ реалистичного изображения тела танцора, КМ анимации танцора и КМ процесса сочинения. Эти четыре компьютерные модели в совокупности образуют КМ танца, которая и служит ядром программного средства поддержки процесса сочинения ССТФ.

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

Ниже приведен список этих классов, после имени класса указаны его члены.

- "описание позиции": имя части тела, имя позиции, параметры позиции;

- "позиция": идентификатор (указатель на) объект класса описания позиции, значения параметров позиции, функция (метод класса) для получения от пользователя-хореографа значений параметров позиции;

- "поза": массив объектов класса "позиция" для всех частей тела;

- "движение": количество позиций (или поз) из которых состоит движение, массив объектов класса "позиция" (или объектов класса "поза");

- "общепринятое движение": имя части тела (в случае движения части тела), имя движения, значения характеристик движения, объект класса "движение";

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

- "восьмерка": номер восьмерки в последовательности восьмерок, массив объектов класса "движение, исполняемое в течение доли (полу-доли)";

- "танец стиля "Фанк": количество восьмерок в танце, момент времени начала танца, протяженность музыкальной доли во времени, массив объектов класса "восьмерка".

Для отображения созданной КМ записи танца в работе предлагается графический элемент "лента" (рис. 6).

1 , 2 3 и 4 5 6 7 8

« / ш/ г ■Ч. Т ■Й % .¡р. Ж . У Л и А Д Ж

|/| /I И 11 I 111 ШИПИ I

Рис. 6. Пример фрагмента ленты - отображение восьмерки. 1 - лента музыкального ритма, 2 - лента танцора, 3 - лента отображения "ключей"

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

- "часть скелета": имя части тела (скелета), идентификатор "родительской" части скелета (указатель на неё), значения углов поворота части скелета относительно "родительской" части тела;

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

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

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

Ядро программного средства поддержки процесса сочинения ССТФ состоит из пяти модулей: инициализации ядра, формирования позы танцора в любой момент времени, работы с лентой, обработки команд, отображения, - а также трёх пополняемых библиотек: позиций, движений и танцев.

Пятая глава посвящена экспериментальному исследованию эффективности использования разработанного программного средства поддержки процесса сочинения ССТФ - программы Dancer. Экспериментатор - практикующий хореограф - сочинял различные танцы стиля "Фанк" и их фрагменты с использованием программы "Dancer". Цель проведения таких экспериментов - оценить удобство и целесообразность использования программного средства, построенного на основе онтологоориентированного подхода, в творческой деятельности хореографа и его ученика (при создании танца и обучении танцу). Для оценки результатов проведения экспериментов хореограф выделил важные для него характеристики процессов сочинения танцев и обучения танцам и ввёл для каждой из них относительную временную шкалу: на ней временная характеристика процесса сочинения с использованием программы "Dancer" сравнивалась с одноименными характеристиками других процессов сочинения танцев (протекающих без применения компьютера). Диаграмма со шкалой для всех характеристик представлена на рис. 7. Далее приводятся эти характеристики и их сравнительная оценка, данные хореографом после проведения всех экспериментов с программой "Dancer".

1, Время обучения танцам. При классическом обучении хореограф последовательно показывает движения танца ученикам; сложные движения показывает более детально, в замедленном темпе. При таком обучении ученики хорошо усваивают материал и, соответственно, общее время обучения танцам существенно уменьшается. Это же можно сделать, используя программы "Dancer": при просмотре ученик может уменьшить скорость показа и детально рассмотреть позы, составляющее движение.

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

очень бьюро чрчем- медленно очень быстро лемо медленно

ЕЭ Запись Лабана О Видеозапись □ Непосредственно DnC "Dancer"

Рис. 7. Сравнительная оценка временных характеристик процесса сочинения танцев с использованием программы "Dancer" и без неё

3. Время редактирования записи танца. Предварительно изучив запись Лабана, можно было бы, вообще говоря, прочитать запись танца и изменить её. Но, как было указано выше, эта запись для современных танцев практически не используется. Для изменения видеозаписи танца нужно было бы заново ИСПОЛНИТЬ танец (или его фрагмент). В программе "Dancer" можно легко вернуться к любому движению, удалить его из последовательности, сформировать позы нового движения, используя графическую модель танцора, и добавить это движение в последовательность.

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

5. Время формирования танца хореографом, предварительно изучившим язык диалога с программой "Dancer". И при непосредственном формировании танца, и при использовании видеоаппаратуры хореографу нужно самому неоднократно исполнять танец; естественно, хореограф при этом устаёт физически. Использование программы "Dancer" существенно ускоряет процесс формирования танца (к тому же, при этом хореограф не устает).

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

7. Время обучения навыкам формирования и записи танцев (для непрофессионального хореографа). Если танец возьмётся формировать непрофессиональный хореограф, то ещё до начала формирования ему придётся изучить стиль, позы и движения этого танца, а также профессиональные термины хореографов. В составе программы "Dancer" находятся библиотеки позиций и движений танцев этого стиля, которые непрофессиональный хореограф сможет использовать без предварительного обучения.

8. Время обучения навыкам формирования и записи танца (для профессионального хореографа). Запись Лабана очень сложна, любому хореографу нужно потратить очень большое количество времени для её изучения. Если же профессиональный хореограф формирует танец непосредственно перед зеркалом и запоминает его, изучать технику записи танца ему не нужно. Время обучения использованию программы "Dancer" сведено к минимуму - в программе используются наглядные графические образы и профессиональная терминология хореографа.

Основные выводы хореографа по результатам экспериментов.

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

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

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

ОСНОВНЫЕ РЕЗУЛЬТАТЫ РАБОТЫ

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

2. Разработаны принципы построения онтологии ПО "Процесс сочинения последовательностей движений человека", и на их основе построена онтология ПО "Хореография ССТФ", в составе которой три компонента: онтология танца, онтология танцора и онтология процесса сочинения танца стиля "Фанк". Разработаны математические и компьютерные модели построенной онтологии.

3. Разработаны принципы построения интерактивного компонента программного средства поддержки процесса сочинения последовательностей движений человека; на их основе разработан язык диалога хореографа с программным средством поддержки сочинения ССТФ и интерпретатор этого языка.

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

5. С использованием этих методов создана интерактивная программа "Dancer" - экспериментальная версия программного средства поддержки процесса сочинения хореографом ССТФ.

ОПУБЛИКОВАННЫЕ РАБОТЫ ПО ТЕМЕ ДИССЕРТАЦИИ

1. Перцовский C.JI. Модели танца и танцора в программном средстве для создания и изучения танцев. Тез. докл. // Дальневосточная математическая школа-семинар имени акад. Е.В. Золотова. Владивосток, 2003. С. 89-90.

2. Перцовский С.Л. Моделирование предметной области "Хореография" // Информатика и системы управления. 2003. № 2 (6). С. 22-31.

3. Перцовский С.Л. DANCER_M1 - макетная версия системы автоматизированного проектирования для создания и воспроизведения современного сольного танца. Тез. докл. // Международный конкурс компьютерных про-

грамм студентов, аспирантов и молодых специалистов "Программист 2004". Владивосток, 2004. С.22-25.

4. Перцовский СЛ. DANCER_M1 - макетная версия системы автоматизированного проектирования для создания и воспроизведения современного сольного танца. Мат. докл. К Научная конференция студентов и аспирантов ДВГУ. Владивосток, 2004. С. 118-120.

5. Pertsovskiy S.L. Computer Simulation of Dance Designing // Proceedings of the 9th World Multi-Conference on Systemics, Cybernetics and Informatics. Orlando, Florida, USA, July 10-13,2005. P. 324-329.

6. Перцовский C.J1. Система автоматизированного проектирования сольного танца: онтологии предметной области и их модели. Тез. докл. // XXX Дальневосточная математическая школа-семинар имени академика Е.В. Золотова. Хабаровск, 2005. С. 193-194.

7. Перцовский C.JI. Моделирование процесса проектирования современного сольного танца: онтологии предметной области и их модели. Тез. докл. // Интеллектуальные и многопроцессорные системы (ИМС'2005). Дивноморск, Сентябрь 2005. С. 412-416.

8. Перцовский C.JI. САПР современного сольного танца, основанная на онтоло-гиях. Сборник докладов // Открытый дальневосточный конкурс программных средств студентов, аспирантов и молодых специалистов "Программист 2006". Владивосток, Апрель 2006. С. 81-84.

9. Перцовский C.JI. Построение САПР современного сольного танца. Обзор литературы. Владивосток: ИАПУ ДВО РАН, 2006. 64 с.

10. Перцовский C.JI., Варнина A.C. Разработка интеллектуальной САПР современного сольного танца на основе онтологии // Вестник ДВО РАН. 2006. № 3 (127). С. 163-169.

11. Перцовский C.JI., Онтологоориентированный подход к разработке САПР современного сольного танца // Информатика и системы управления. 2006. № 1(11). С. 52-61.

12. Перцовский C.JI. Язык пользователя САПР современного сольного танца. Тез. докл. // XXXI Дальневосточная математическая школа-семинар имени академика Е.В. Золотова. Владивосток, 2006. С. 179-180.

13. Гаврилова T.JL, Перцовский C.JI. Dancer_Ml - программа для создания танца стиля "Фанк". Макетная версия. Свидетельство Федеральной службы по интеллектуальной собственности, патентам и товарным знакам об официальной регистрации программы для ЭВМ № 2006613128. Зарегистрировано в Реестре программ для ЭВМ 5 сентября 2006 г.

Личный вклад автора. Все результаты, составляющие основное содержание диссертации, получены автором самостоятельно. В работе [10] автором построены онтология и модель онтологии предметной области. В работе [13] автором разработана программа "Dancer_Ml".

Перцовскин Станислав Леонидович

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

Автореферат

Подписано к печати 11.01.2007 Усл.п.л. 1,0 Уч.-изд.л. 0,8

Формат 60x84/16 Тираж 100 Заказ 1-2007

Издано ИАПУ ДВО РАН. Владивосток, Радио, 5.

Отпечатано участком оперативной печати ИАПУ ДВО РАН. Владивосток, Радио, 5.

Оглавление автор диссертации — кандидата технических наук Перцовский, Станислав Леонидович

ВВЕДЕНИЕ.

Глава 1. Проблема использования компьютеров в творческой деятельности человека.

1.1. Программные средства поддержки творческой деятельности человека.

1.2. Поддержка процесса сочинения танцев.

1.2.1. Развитие способов записи танца.

1.2.2. Способы записи танца в настоящее время.

1.2.3. Программные средства поддержки процесса сочинения танцев.

1.3. Методы построения графической модели танцора.

1.3.1. Виды графических моделей.

1.3.2. Представление модели в виде сегментов или бесшовного каркаса.

1.3.3. Анимация модели человека: иерархические цепочки.

1.3.4. Анимация модели человека: скелет и деформация поверхности.

1.3.5. Анимация модели человека: движения всего тела.

1.3.6. Моделирование одежды.

Выводы.

Глава 2. Онтология предметной области и её математическая модель.

2.1. Принципы построения онтологии ПО "Процесс сочинения последовательностей движений человека".

2.2. Онтология ПО "Хореография ССТФ".

2.2.1. Онтология танца.

2.2.2. Онтология танцора.

2.2.3. Онтология процесса сочинения.

2.2.4. Связь терминов онтологии.

2.3. Математическая модель онтологии ПО "Хореография ССТФ".

2.3.1. Модель онтологии танца.

2.3.2. Модель онтологии танцора.

2.3.3. Модель онтологии процесса сочинения.

2.4. Постановка задачи создания программного средства поддержки процесса сочинения ССТФ.

Выводы.

Глава 3. Интерактивный компонент программного средства поддержки процесса сочинения последовательностей движений человека.

-33.1. Принципы разработки интерактивного компонента программного средства поддержки процесса сочинения последовательностей движений человека.

3.2. Язык диалога пользователей программного средства поддержки процесса сочинения ССТФ.

3.2.1. Прагматика языка.

3.2.2. Семантика языка.

3.2.3. Синтаксис языка.

3.3. Интерпретатор команд пользователя программного средства поддержки процесса сочинения ССТФ.

3.3.1. Требования к интерпретатору команд.

3.3.2. Архитектура интерпретатора.

Выводы.

Глава 4. Методы разработки программного средства поддержки процесса сочинения последовательностей движений человека.

4.1. Методы разработки ядра программного средства поддержки процесса сочинения последовательностей движений человека.

4.2. Методы разработки ядра программного средства поддержки процесса сочинения ССТФ.

4.2.1. Методы построения компьютерной модели записи танца.

4.2.2. Методы построения компьютерной модели тела танцора.

4.2.3. Методы построения модели анимации танцора.

4.2.4. Методы построения модели процесса сочинения.

4.3. Разработка и реализация программного средства поддержки процесса сочинения ССТФ.

4.3.1. Требования к программному средству.

4.3.2. Архитектура программного средства.

4.3.3. Экспериментальная версия программного средства поддержки процесса сочинения ССТФ.

Выводы.

Глава 5. Экспериментальное исследование эффективности использования программного средства поддержки процесса сочинения ССТФ.

5.1. Описание экспериментов.

5.2. Оценка результатов экспериментов.

Выводы, сделанные хореографом.

Введение 2007 год, диссертация по информатике, вычислительной технике и управлению, Перцовский, Станислав Леонидович

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

В настоящее время компьютерных средств, помогающих, например, хореографам создавать новые танцы, известно немного. Можно привести примеры нескольких программ, помогающих хореографам в сочинении балетных танцев (DanceForms, Web3D Dance Composer), но для современных сольных танцев (ССТ) таких программ нет. Основная причина этого состоит в том, что все существующие программы для балетных хореографов базируются на устоявшихся знаниях о классическом балете -зафиксированном конечном множестве записей общеизвестных позиций, поз и движений танцора классического балета (записях Лабана). Подобные знания о ССТ не формализованы, сведения об этих танцах зачастую противоречивы, а способов записи таких танцев (кроме видеозаписи) нет. При сочинении новых ССТ какого-либо стиля хореограф не только сам решает, какие позы, позиции и движения, характерные для выбранного стиля, он будет использовать, но и сочиняет новые позы, позиции и движения, опираясь на собственные представления о стиле и о возможностях танцоров таких танцев.

Поиски программных средств, пригодных для оказания помощи авторам в других ПО при сочинении соответствующих последовательностей движений, к успеху не привели: существующие программные средства анимации движений человека рассчитаны на пользователей-программистов и/или базируются на фиксированном наборе возможных движений человекоподобной модели (например, Life Forms Studio или Poser).

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

При создании таких средств следует в первую очередь исследовать эту слабо формализованную ПО и построить её математическую модель. Это можно сделать в рамках онтологоориентированного подхода к разработке программных систем (Клещев A.C., Артемьева И.Л., Guarino N.). Под онтологией предметной области здесь понимается множество определений терминов этой предметной области и описание связей между ними. При онтологоориентированном подходе к разработке программного средства на первом шаге процесса моделирования соответствующей ПО необходимо описать её онтологию, а на втором - построить математическую модель этой онтологии. На модели этой онтологии ставится (и решается) задача разработки программного средства.

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

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

-6В качестве объекта исследования рассматривается процесс сочинения хореографом ССТ стиля "Фанк" (ССТФ) как пример сочинения последовательности движений человека по авторскому сценарию.

Для достижения поставленной цели в диссертационной работе необходимо решить следующие задачи:

- построение онтологии ПО;

- построение модели этой онтологии;

- разработка методов создания интерактивной компоненты программного средства поддержки процесса сочинения последовательностей движений человека на основе построенной модели онтологии;

- разработка методов создания ядра программного средства поддержки процесса сочинения последовательностей движений человека на основе построенной модели онтологии;

- экспериментальное исследование предложенных моделей и методов -разработка и применение на практике экспериментальной версии программного средства поддержки процесса сочинения последовательностей движений человека в ПО "Хореография ССТФ".

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

Научная новизна работы состоит в следующем:

- разработаны принципы построения онтологии ПО "Процесс сочинения последовательностей движений человека" и на их основе построены онтология и её модель для ПО "Хореография ССТФ";

- 7- разработаны принципы построения на основе онтологии ПО интерактивного компонента программного средства поддержки процесса сочинения последовательностей движений человека;

- разработаны онтологоориентированные методы создания ядра программного средства поддержки процесса сочинения последовательностей движений человека;

Практическая ценность работы состоит в следующем:

- разработаны язык диалога хореографа с программным средством поддержки процесса сочинения ССТФ и интерпретатор этого языка;

- создана программа "Dancer" - экспериментальная версия программного средства поддержки процесса сочинения ССТФ;

- результаты работы нашли применение в учебном процессе:

- в Дальневосточном государственном университете: материалы 2-ой главы диссертации используются в курсе лекций по дисциплине "Интеллектуальные системы" специальности "Математическое обеспечение и администрирование информационных систем",

- во Владивостокском государственном университете экономики и сервиса: онтология ПО "Хореография ССТФ" и программа "Dancer" используется при подготовке и проведении уроков хореографии;

- программное средство "DancerMl" (макетная версия программы "Dancer") зарегистрировано в Реестре программ для ЭВМ 5 сентября 2006 г. (Свидетельство Федеральной службы по интеллектуальной собственности, патентам и товарным знакам об официальной регистрации программы для ЭВМ № 2006613128).

Апробация работы. Основные положения диссертации докладывались и обсуждались на Всероссийском научно-техническом фестивале молодежи "Мобильные роботы" (Москва, 2002), Дальневосточных математических школах-семинарах имени академика Е.В. Золотова (Владивосток, 2003, 2006; Хабаровск, 2005), Международных конкурсах компьютерных программ студентов, аспирантов и молодых специалистов (Владивосток, 2004, 2006), Научной конференции студентов и аспирантов ДВГУ (Владивосток, 2004), Международной мульти-конференции по систематике, кибернетике и информатике (Орландо, США, 2005), Международной научно-технической конференции "Интеллектуальные и многопроцессорные системы" (Дивноморск, 2005), а также на Объединённых семинарах Отдела интеллектуальных систем ИАПУ ДВО РАН и кафедры программного обеспечения ЭВМ Дальневосточного государственного университета.

Публикация результатов работы. По материалам диссертации опубликовано 13 работ.

Проводимые исследования поддерживались грантами на проект "Теоретические основы интеллектуальных систем, основанных на онтологиях, для интеллектуальной поддержки научных исследований" по программе № 16 фундаментальных исследований Президиума РАН и на проект Президиума ДВО РАН 06-Ш-Г-01 -021.

Структура и объем работы. Диссертация состоит из введения, пяти глав, заключения, списка литературы и трех приложений. Основная часть работы изложена на 150 страниц текста, содержит 20 таблиц и 63 рисунка. Список литературы содержит 128 наименований.

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

Выводы, сделанные хореографом

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

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

Во многих танцевальных школах преподается дисциплина "Искусство балетмейстера": учитель дает задание каждому ученику выучить некоторый этюд; на следующем занятии учитель расставляет учеников на сцене, и все они исполняют групповую сцену. Используя программное средство поддержки процесса сочинения ССТФ, учитель может довольно быстро подготовить требуемое количество этюдов и раздать ученикам записи этих этюдов. Учителю не нужно тратить время на персональный показ этюда ученику, что значительно ускоряет процесс обучения.

Главы диссертации и программа "Dancer" используются в учебном процессе в Дальневосточном государственном университете и Владивостокском государственном университете экономики и сервиса (Приложение IV).

ЗАКЛЮЧЕНИЕ

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

2. Разработаны принципы построения онтологии ПО "Процесс сочинения последовательностей движений человека", и на их основе построена онтология ПО "Хореография ССТФ", в составе которой три компонента: онтология танца, онтология танцора и онтология процесса сочинения танца стиля "Фанк". Разработаны математические и компьютерные модели построенной онтологии.

3. Разработаны принципы построения интерактивного компонента программного средства поддержки процесса сочинения последовательностей движений человека; на их основе разработан язык диалога хореографа с программным средством поддержки сочинения ССТФ и интерпретатор этого языка.

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

5. С использованием этих методов создана интерактивная программа "Dancer" - экспериментальная версия программного средства поддержки процесса сочинения хореографом ССТФ.

Библиография Перцовский, Станислав Леонидович, диссертация по теме Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей

1. Базовые движения House, Hip-Hop: учимся танцевать клубные танцы (школа танцев S VEUX, г. Москва). M.: ООО "Видеогурман", 2004.1 электрон, опт. диск (DVD-ROM).

2. Базовые движения R'n'B: учимся танцевать клубные танцы (школа танцев SVETIX, г. Москва). М.: ООО "Видеогурман", 2004. 1 электрон, опт. диск (DVD-ROM).

3. Бессонов С. Описание видеосистемы как системы // Мир NVidia. 2002. http://www.nvworld.ru/docs/video.html

4. Бриллиант К. Цифровая модель человека: Пер. с англ. М.: КУДИЦ-Образ, 2004.400 с.

5. Буч Г., Рамбо Д., Дкекобсон A. UML. Руководство пользователя: Пер. с англ. М.: ДМК Пресс, 2001.432 с.

6. Бэйн С., Уилкинсон Н. Эффективная работа: CorelDRAW 12: Пер. с англ. СПб.: Питер, 2005.736 с.

7. Ваткин С. GameDev.ru. Скелетная анимация. GameDev.ru, 2006. http://www.gamedev.ru/coding/10917. shtml.

8. Вигерс К. Разработка требований к программному обеспечению: Пер. с англ. М.: Издательско-торговый дом "Русская Редакция", 2004. 576 с.

9. Вортекс. Театр-школа современного танца "Вортекс". М., The Танец, 2006. http://teamur.narod.ru.

10. Вяткин А. Кино умерло, да здравствует кино! // Компьютерра. 2002. № 12.

11. Гордеев A.B. Молчанов А.Ю. СПб.: Питер, 2003. 736 с.

12. Дейтел X., Дейтел П. Как программировать на С++: Пер. с англ. М.: ЗАО "Издательство Бином", 1998. 1024 с.

13. Карасева Э.В., Чумаченко И.Н. Photoshop CS2. Полное руководство. M.: HT Пресс, 2005.408 с.

14. Клещев A.C., Артемьева И.Л. Математические модели онтологий предметных областей. Ч. 2. Компоненты модели // Научно-техническая информация. Сер. 2. "Информационные процессы и системы". 2001. № 3. С. 19-28.

15. Кнут Д.Е. Искусство программирования для ЭВМ: Пер. с англ. М.: Мир, 1976.

16. Коган Б.И., Матвеева Т.О. Формальное специфицирование требований к качеству программных средств. Владивосток, 1997. (Препринт ИАПУ ДВО РАН).

17. Леоненков A.B. Самоучитель UML. СПб.: БХВ-Петербург, 2002. 304 с.

18. Лисициан С. Запись движений (кинетография). М.: Искусство, 1940.

19. МакНикол Г. Погружение в третье измерение // Publish. 1997. № 4.

20. Матвеева Т.О., Старовойтов И.В. Улучшение плана программного проекта на основеанализа характеристик его формальной модели // Электронный журнал

21. ИССЛЕДОВАНО В РОССИИ". 2003. № 6. Р. 1716-1767.

22. Маэстри Д. Компьютерная анимация персонажей. СПб.: Питер, 2000.336 с.

23. Маэстри Д. Компьютерная анимация персонажей: Пер. с англ. СПб.: Питер, 2001.336 с.

24. Маэстри Д. Секреты анимации персонажей. СПб.: Питер, 2002.224 с.

25. Молчанов А.Ю. Системное программное обеспечение. СПб.: Питер, 2005. 400 с.

26. Мэрдок К.Л. 3ds max 6. Библия пользователя: Пер. с англ. Киев: Вильяме, 2005.1288 с.

27. Навойчик А.И. Общая биомеханика. Гродно: Гродненский государственныйуниверситет имени Янки Купалы. 2000.

28. Наш Сад: программа дизайна ландшафта: Наш Сад, Сад и Огород, Дача, Планировка. M.: ДиКомп, 2006. http://soft.dicomp.ru.

29. Никитин В.Ю. Модерн-джаз танец: История. Методика. Практика. M.: ГИТИС, 2000.440 с. Ожегов С.И., Шведова Н.Ю. Толковый словарь русского языка. M.: ИТИ Технологии, 2005.944 с.

30. Перцовский С.Л. Модели танца и танцора в программном средстве для создания и изучения танцев. Тез. докл. // Дальневосточная математическая школа-семинар имени акад. Е.В. Золотова. Владивосток, 2003а. С. 89-90.

31. Перцовский С.Л. Моделирование предметной области "Хореография" // Информатика и системы управления. 20036. № 2 (6). С. 22-31.

32. Перцовский C.JI. САПР современного сольного танца, основанная на онтологиях. Сборник докладов // Открытый дальневосточный конкурс программных средств студентов, аспирантов и молодых специалистов "Программист 2006". Владивосток, Апрель 2006а. С. 81-84.

33. Перцовский C.J1. Построение САПР современного сольного танца. Обзор литературы. Владивосток: ИАПУ ДВО РАН, 20066. 64 с.

34. Перцовский C.JI. Язык пользователя САПР современного сольного танца. Тез. докл. // XXXI Дальневосточная математическая школа-семинар имени академика Е.В. Золотова. Владивосток, 2006д. С. 179-180.

35. Роджерс Д., Адаме Д. Математические основы машинной графики. М.: Мир, 2001.604 с.

36. Сапин M.P. Анатомия человека. В 2-х книгах. M.: Оникс, 2002. 895 с.

37. Сапин М.Р. Анатомия человека. В 2-х книгах. М.: Оникс, 2002. 895 с.

38. Страуструп Б. Язык программирования С++. Специальное издание: Пер. с англ. М.:1. Бином, 2005.1104 с.

39. Тальман H.M., Тальман Д. Система для анимации виртуальных людей // Открытые Системы. 1996. Т. 19. № 5. Р. 19-27.

40. Badler N., Smoliar S. Digital Representations of Human Movement // Computing Surveys. 1979. V. 11. N1. P. 19-38.

41. Baroque Dance. Washington, DC: The Library of Congress, 2006. http://memory.loc.gov/ammem/dihtml/diessay4.html.

42. Beckmann P., Wells S. Exploring 3D Modeling with Maya 6. NY: Thomson Delmar Learning, 2004.408 p.

43. Bloomer P.A., Hammarlund T. In a funk: recognize signs of funk injury and keep your attitude fresh - funk aerobic exercises, includes related article // American Fitness Magazine. 1992. V. 10. N5. P. 36-38.

44. Bodenheimer B., Rose C., Rosenthal S., Pella J. The process of motion capture: dealing with the data // Proceedings of the Eurographics Workshop. Boulogne-sur-Mer, France, 1997. P. 3-18.

45. Boulic R., Magnenat-Thalmann N., Thalmann D. A global human walking model with realtime kinematic personification // The Visual Computer. 1990. V.6. N 6. P. 344-358.

46. Bustamove. Online guide on Hip-Hop dance. Bustamove, Inc, 2006. http://www.bustamove.com.

47. Calvert T., Bruderlin A., Dill J., Schiphorst T., Welman C. Desktop animation of multiple human figures // IEEE Computer Graphics and Applications. 1993. V. 13. N 3. P. 18-26.

48. Calvert T., Welman C., Gaudet S., Schiphorst T., Lee C. Composition of multiple figure sequences for dance and animation // The Visual Computer. 1991. V. 7. N 2. P. 114-121.

49. Calvert T., Wilke L., Ryman R., Fox I. Applications of computers to dance // Proceedings of the IEEE Computer Graphics and Applications. 2005. V. 25. N 2. P. 6-12.

50. Capell S., Green S., Curless B., Duchamp T., Popovic Z. Interactive Skeleton-Driven Dynamic Deformations // ACM Transactions on Graphics. 2002. V.21.N 3. P. 586-593.

51. Chen M., Tucker J. Constructive Volume Geometry // Computer Graphics Forum. 2000. V. 19. N4. P. 281-293.

52. Dance Notation Bureau. NY: Dance Notation Bureau, 2006. http://dancenotation.org.

53. DanceForms: Dance Technology and Dance Choreography Software. Vancouver: Credo Interactive Inc., 2006. http://www.charactermotion.com/danceforms.

54. Douros I., Buxton B., Dekker L. An Improved Algorithm for Reconstruction of the Surface of the Human Body from 3D Scanner Data Using Local B-Spline Patches // Proceedings of IEEE International Workshop on Modelling People. Corfu, Greece, 1999. P. 29.

55. Fedor M. Application of inverse kinematics for skeleton manipulation in real-time // Proceedings of the 19th spring conference on computer graphics. Budmerice, Slovakia, 2003. P. 203-212.

56. Forsberg A., Dieterich M., Zeleznik R. The Music Notepad // Proceedings of the 11th annual ACM symposium on User interface software and technology. Sun Francisco, CA, 1998. P. 203-210.

57. Grochow K., Martin S.L., Hertzmann A., Popovic Z. Style-based Inverse Kinematics // ACM Transactions on Graphics. 2004. V.23. N 3. P. 522-531.

58. Gruber T.R. Towards Principles for the Design of Ontologies Used for Knowledge Sharing // The International Journal of Human-Computer Studies. 1994. V. 43. P. 907-928.

59. Guarino N. Understanding, Building, and Using Ontologies // The International Journal of Human-Computer Studies. 1996. V. 46. P. 293-310.

60. Guest A.N. Labanotation, the system of analyzing and recording movement. NY: Routledge Publisher, 2005.487 p.

61. Henson D. Damn's Dance Grooves. NY: Razor & Tie Direct, L.L.C., 2005.1 электрон, опт. диск (DVD-ROM).

62. Herbinson-Evans D. A Potential for Graphic Synergy. Sydney, 2003. 5 p. (University of Sydney, Basser Department of Computer Science, Technical Report 422).

63. Hilton A., Beresford D., Gentils Т., Smith R., Sun W. Virtual People: Capturing Human Models to Populate Virtual Worlds // Proceedings of the Computer Animation. Geneva, 1999. P. 174.

64. Hilton A., Beresford D., Gentils Т., Smith R., Sun W., Illingworth J. Whole-body modeling of people from multiview images to populate virtual worlds // The Visual Computer. 2000. V. 16. P. 441^36.

65. Hodgson J., Preston-Dunlop V. Rudolf Laban: An Introduction to His Work & Influence // The Journal of the Society for Dance Research. 1994. V. 12. N 1. P. 70-72.

66. Hohne K.H., Bomans M., Riemer M., Schubert R., Tiede U., Lierse W. A 3D anatomical atlas based on a volume model // IEEE Computer Graphics and Applications. 1992. V. 12. N 4. P. 72-28.

67. Human characteristics database. Tokyo: National Institute of Technology and Evaluation, 2006. http://www.tech.nite.go.jp/human/.

68. KL. London: International Council of Kinetography Laban, 2006. http://www.ickl.org.

69. Jianhua S., Thalmann D. Interactive Shape Design Using Metaballs and Splines // Proceedings of Implicit Surface '95, Eurographics Workshop on Implicit Surfaces. Grenoble, France, 1995. P. 187-196.

70. Johnson V. Dance training: the funk series //American Fitness Magazine. 1993. V. 11.N3.P. 52-55.

71. Kilgariff E., Fernando R. The GeForce 6 Series GPU Architecture // GPU Gems 2. 2005. P. 471^91.

72. Menache A. Understanding Motion Capture for Computer Animation and Video Games. San Fransisco: Morgan Kaufmann, 1999.238 p.

73. Meredith M., Maddock S. Real-time inverse kinematics: The return of the Jacobian. -Sheffield, 2004. 15 p. (Department of Computer Science, University of Sheffield, Technical Report CS-04-06).

74. Мок E. Computer 3D Hand Modeling and Visualization // PennScience. 2003. V. 2. N1. P. 32-36. Moonwalk // Wikipedia: the free encyclopedia. St. Petersburg, FL: Wikimedia Foundation Inc., 2006. http://en.wikipedia.org/wiki/Moonwalk(dance).

75. Nishita Т., Nakamae E. A Method for Displaying Metaballs by using Bezier Clipping // Computer Graphics Forum. 1994. V. 13. N 3. P. 271-280

76. Okino: Skeletons and Mesh Skinning. Toronto: Okino Computer Graphics, Inc., 2006. http://www.okino.com/conv/skinning.htm.

77. Parent R. Computer Animation: Algorithms and Techniques. San Fransisco: Morgan Kaufmann, 1999. 560 p.

78. Pertsovskiy S.L. Computer Simulation of Dance Designing // Proceedings of the 9th World Multi-Conference on Systemics, Cybernetics and Informatics. Orlando, Florida, USA, July 10-13,2005. P. 324-329.

79. Porter Т., Susman G. Creating Lifelike Characters in Pixar Movies // Communications of the ACM. 2000. V. 43. N 1. P. 25-29.

80. Poser // Wikipedia: the free encyclopedia. St. Petersburg, FL: Wikimedia Foundation Inc., 2006. http://en.wikipedia.org/wiki/Poser.

81. RENDER.RU: Он-лайн журнал по 3D графике и анимации. Уроки. СПб.: ALS Group, 2006. http://www.render.ru/books/index.php?bookcat=l.

82. Rivera F. Inside trueSpace. NY: New Riders Press, 1999. 696 p.

83. Rizzo B. Simply Funk: Learn to Hip Hop. NY: Riz-Biz Productions, Inc, 2005.1 электрон, опт. диск (DVD-ROM).

84. Saint-Leon // BalletMet. Columbus, OH: BalletMet Dance Centre, 2006. http://www.balletmet.org/notes/saintleon.html. •

85. Sanford K. 3ds Max 6 Animation and Visual Effects Techniques // Chapter 5 Constructing the Generic Man Character. NY: Charles River Media, 2003. P. 142-176.

86. Sannier G., Thalmann M.N. A user-friendly texture-fitting methodolgy for virtual humans //Proceedings of the Computer Graphics International. Hasselt-Diepenbeek, Belgium,1997. P.167-176.

87. Silaghi M., Plankers R., Boulic R., Fua P., Thalmann D. Local and global skeleton fitting techniques for optical motion capture // Lecture Notes In Computer Science. 1998. V. 1537. P. 26-40.

88. Simons T. Cakewalk Home Studio XL 2004 // Presentations. 2004. V. 18. N 7.

89. Social Dance // The Library of Congress. Washington, DC: The Library of Congress, 2006. http://rs6.loc.gov/ammem/dihtml/diessay6.html.

90. Soga A., Umino В., Yasuda T. A System for Choreographic Simulation of Ballet Using a 3D Motion Archive on the Web // Lecture Notes in Computer Science. 2004. V. 3179. P. 227-238.

91. Topaz M. Elementary Labanotation: A Study Guide. Second Edition. Hightstown, NJ.: Princeton Book, 1996.209 p.

92. Villa-Uriol M., Sainz M., Kuester F., Bagherzadeh N. Automatic creation of three-dimensional avatars //Proceedings of the SPIE. Santa Clara, CA, USA, 2003. V. 5013. P. 14-25.

93. VisiCon: программа для дизайна интерьеров. СПб.: GrandSofit, 2006. http://www.visicon.ru.

94. VoxeBD: Voxel based modeling software. Everygraph, 2006. http://www.everygraph.com/ir ame.php?contents=product&name=voxel3d.

95. Voxlap: an open source voxel engine software. Ken Silverman, 2006. http://advsys.net/ken/voxlap.htm.

96. Watt M.A. Advanced Animation and Rendering Techniques. Third Edition. NY: ACM Press, 1994.455 p.

97. Welman C. Inverse Kinematics and Geometric Constraints for Articulated Figure Manipulation. Master thesis. Simon Fraser University, Burnaby, British Columbia, Canada. 1993.77 p.

98. Wentk R., Credo Life Forms 4.0 // PC Plus. 2005. N 232.

99. Wilke L., Calvert T., Ryman R., Fox I. From dance notation to human animation: The LabanDancer project: Motion Capture and Retrieval // Computer Animation and Virtual Worlds. 2005. V. 16. P. 201-211.

100. Wyvill G., Kunii T. A functional model for constructive solid geometry // The Visual Computer. 1985. V. 1. N 1. P. 3-14.

101. Zankl M, Wittmann A. The adult male voxel model "Golem" segmented from whole-body CT patient data // Radiation and Environmental Biophysics. 2001. V. 40. N 2. P. 153- 162.

102. Zorn // Wikipedia: the free encyclopedia. St. Petersburg, FL: Wikimedia Foundation Inc., 2006. http://fr.wikipedia.org/wiki/friedrichalbertzom.