WWW.DISSERS.RU

БЕСПЛАТНАЯ ЭЛЕКТРОННАЯ БИБЛИОТЕКА

загрузка...
   Добро пожаловать!

Pages:     | 1 || 3 | 4 |

Придум. нового движ. всего тела Ритм композиции Такт Выбор движения из библиотеки Задание позиции Доля Полу-доля Рис. 1. Термины онтологии и их связь При описании онтологии танца стиля "Фанк" выделены три группы терминов: общие термины танца, термины танцевального ритма и термины танца, исполняемого в этом ритме. В онтологии выделены 37 вариантов - 7 - позиций стиля "Фанк". Для каждого из них составлено описание по следующему шаблону: название; словесное описание; характеристики. Любую позицию стиля "Фанк" можно представить некоторым описанием с фиксированными значениями характеристик. В онтологии танца описано также вариантов общепринятых для этого стиля движений различных частей тела.

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

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

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

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

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

Модель танцевального движения части тела fPMoveoD – это fPMove, исполняемое в течение D, а fBMoveD – это fBMove, исполняемое в течение D.

- 8 - fPMove представляет собой конечную последовательность моделей позиций некоторой части тела fPPose. Каждая такая модель принадлежит множеству моделей существующих позиций этой части тела – fPPoses. Аналогично для fBMove – эта модель движения представляет собой конечную последовательность моделей поз всего тела – fBPose. Эта модель описывает положение всех частей тела танцора и, соответственно, представляет собой множество моделей позиций всех частей тела танцора.

fDance Eight Eight fMoveD fMoveD fMoveHD fMoveHD fMoveD fBMoveD fPMoveoD fPMoveoD fPMoveHoD fPMoveHoD fBMoveHD fBMoveD счет долей в музыкальной композиции 1 8 1 и Рис. 2. Графическая иллюстрация математической модели танца Совокупность названий всех 18 деталей тела танцора – множество nBodyParts. Body – модель тела танцора: множество всех XPart, где X_ _nBodyParts.

В свою очередь, XPart – это последовательность параметров геометрического тела. fKt является моделью полного кинетотакта: последовательность упорядоченных пар (fPMoveoDi, XiKtPar) или одна пара (fBMoveD, KtPar), где XiKtPar – модель параметра кинетотакта для i-ой части тела, а KtPar – модель параметра кинетотакта для всего тела. fKts – множество всех возможных fKt. JointM(a, b) – модель ограничений на одновременность движений a и b: булевское значение, равное 0, если a и b можно выполнять одновременно, и равное 1 в противном случае. JointMs – множество всех JointM при различных возможных значениях a и b. Таким образом, fDancer – модель танцора стиля "Фанк", fDancer def (Body, fKts, JointMs).

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

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

2. Шаг процесса. Текущее состояние: конечная последовательность EB1, …, EBK моделей восьмёрок (быть может, пустая).

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

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

- Формирование хореографом новой восьмёрки EN, выбор им места вставки i в последовательность и вставка восьмерки в выбранное место;

новое текущее состояние EB1, …, EBi-1, EN, EBi, …, EBK.

- Выбор хореографом j-й восьмёрки в последовательности и удаление её;

новое текущее состояние EB1, …, EBj-1, EBj+1, …, EBK.

- 9 - Условие завершения процесса – внешнее (решение хореографа).

3. Заключительное состояние процесса: конечная последовательность EF1, …, EFN моделей восьмёрок (быть может, пустая).

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

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

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

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

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

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

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

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

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

Задание знач.

Выбор описания Выбор позиции из характ. детали EX позиции библиотеки части тела Задание знач. IN Указание дет.

характеристик части тела на Библиотека Задание позиции IN части тела модели танцора позиций пользователем IN EX EX Указание части Выбор тела танцора для элементарного IN Задание позы задания позиц.

движения EX EX Добавление Указание части Удаление Изображ.

элементарного тела танцора для элементарного модели EX EX движения добав. из библ.

движения танцора IN EX Действия над Задание Легенда Загрузка из Добавление элементарного библ. танц. характеристик IN преце движ. части тела танцев. движения танц. движения танц. движения...

EX -дент EX IN доли/полу-доли Выбор описания Загрузка из библ.

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

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

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

- 11 - Выбор восьмерки Удаление восьмерки Просмотр танца Запись танца Просмотр восьмерки меню меню меню меню меню Ф Ы В А...

Выбор позиции из библиотеки Загрузка танца из 1 2 Открытие меню библиотеки “восьмерка” список меню 2 список меню Открытие меню “танец” Выход Задание позиции меню меню 1 Задание длительности музыкальной доли Выбор танцевального меню движения Открытие меню команда меню “элементарное движение" Удаление танцевального меню Удаление элементарного движения меню движения меню Просмотр танцевального Открытие меню движения Выбор элементарного “танцевальное движение” Добавление движения меню элементарного движения меню меню меню Добавление танцевального движения Загрузка из библиотеки меню танцевального движения части тела Загрузка из библиотеки Запись в библиотеку Запись в библиотеку 1 меню танцевального движения танцевального движения танцевального движения всего тела всего тела части тела меню список 1 1 меню меню 2 список 2 3 Ф Ы В А... Ф Ы В А...

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

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

Этап 1:

Предметная извлечение знаний область Программное Онтология ПО средство Этап 2:

Этап 4: объектно-ориентированное формализация программирование извлеченных знаний Этап 3: построение Модель компьютерной Ядро онтологии модели на основе ПО формальной Рис. 5. Этапы разработки программного средства при использовании онтологоориентированного подхода к её разработке - 12 - Таким образом, третий этап создания программного средства поддержки процесса сочинения последовательностей движений человека состоит в построении компьютерных моделей (КМ) терминов онтологии ПО – ядра разрабатываемого программного средства. На четвертом этапе к ядру добавляется интерпретатор команд, интерфейс и другие программные компоненты.

Pages:     | 1 || 3 | 4 |






© 2011 www.dissers.ru - «Бесплатная электронная библиотека»