РОССИЙСКАЯ АКАДЕМИЯ НАУК

ДАЛЬНЕВОСТОЧНОЕ ОТДЕЛЕНИЕ

Институт автоматики и процессов управления

, ,

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

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

УДК 004.82:004.89

, , МОДЕЛЬ ОБЪЕКТОВ ВИРТУАЛЬНОГО МИРА ДЛЯ ДИАГНОСТИЧЕСКИХ МЕДИЦИНСКИХ КОМПЬЮТЕРНЫХ ТРЕНАЖЕРОВ. Владивосток: ИАПУ ДВО РАН, 201с.

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

Ответственный редактор к. т.н., доцент

Рецензент д. ф.-м. н., профессор ёв

Работа выполнена при финансовой поддержке РФФИ, грант «Управление концептуальными метаонтологиями, онтологиями, знаниями и данными в интеллектуальных системах» и ДВО РАН, грант «Разработка теоретических основ инструментальной поддержки проектирования, генерации и отладки диагностических компьютерных тренажеров».

Ó Институт автоматики и процессов управления ДВО РАН

Введение

Развитие информационных технологий, сети Интернет требуют разработки новых подходов к организации учебного процесса. Одним из эффективных средств обучения студентов являются компьютерные тренажеры, которые, как следует из литературы, улучшают качество обучения, снижают его стоимость, дают возможность обучаемым "проиграть" различные практические ситуации до начала их работы в реальных условиях, обеспечивают возможность удаленного обучения [1-3]. Особенно остро эта проблема стоит в медицине, поскольку в странах Евросоюза запрещено обучение студентов на реальных больных, в России требуется обязательное их согласие.

НЕ нашли? Не то? Что вы ищете?

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

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

1. Функции диагностического тренажера

и концепция инструментария для его разработки

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

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

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

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

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

·  разделение модели диагностического тренажера на компоненты, в соответствии с группами специалистов, участвующих в его разработке и задачами, которые они решают;

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

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

2. Модель диагностического тренажера

Анализ тренажеров, описанных в литературе [1-3], а также макет медицинского диагностического тренажера, созданный в коллективе, в котором работают авторы [4], позволил выделить следующие компоненты модели тренажера [5].

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

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

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

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

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

Далее в работе описываются общие характеристики виртуального мира и его объектов для диагностического компьютерного тренажера.

3. Виртуальный мир диагностического тренажера

Виртуальный мир является трехмерным и действие происходит в режиме реального времени.

Виртуальный мир состоит из множества объектов.

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

3.1. Характеристика объектов виртуального мира

Любая сцена виртуального мира состоит из объектов. К объектам

относятся и одушевленные предметы и неодушевленные. Таким образом, все, что есть на сцене – это объекты.

Объекты виртуального мира делятся на:

·  элементарные и составные,

·  одушевленные и неодушевленные.

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

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

Каждый объект обладает некоторым набором атрибутов, определяющих присущие ему свойства, положение в пространстве, отображение и т. д.

3.2. Атрибуты объектов виртуального мира

Атрибуты классифицируются на группы по разным критериям.

По уровню определения атрибуты делятся на 2 группы:

·  логического уровня – атрибуты, которые задает эксперт предметной области;

·  уровня представления – атрибуты, которые устанавливаются дизайнером.

По изменяемости атрибуты могут быть:

·  изменяемыми,

·  неизменяемыми.

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

По критерию необходимости атрибуты делятся на:

·  обязательные, которые должны присутствовать обязательно, либо при описании объекта, либо при описании его состояний;

·  необязательные, которые могут отсутствовать.

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

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

4. Основные классы объектов виртуального мира

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

Выделяется несколько основных классов объектов.

·  Простой (неизменяемый) объект – это объект, обладающий некоторым набором атрибутов, которые не изменяются в процессе воспроизведения сцены. Например, стол, стул.

·  Изменяемый объект – это объект, который является расширением неизменяемого объекта, т. е. обладает всеми его атрибутами, а также включает множество состояний, которые изменяют его атрибуты в процессе воспроизведения сцены. Например, лампа.

·  Составной объект – это объект, который содержит множество других подчиненных объектов, расширяет изменяемый объект. Например, пациент.

·  Таблица (массив, регулярная структура) – это объект, имеющий линейно (в нескольких измерениях) упорядоченную структуру. Таблица расширяет изменяемый объект. Например, таблица для определения остроты зрения.

Диаграмма наследования классов объектов представлена на рис.1.

4.1. Простой объект

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

Рис. 1. Диаграмма наследования классов объектов

Обязательные атрибуты:

·  имя – уникальный идентификатор объекта, термин предметной области, значение строкового типа;

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

·  описание – текстовое описание объекта (которое делает эксперт предметной области), для пояснения его предназначения. Описание является своего рода "комментарием".

Атрибуты отображения:

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

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

Рис. 2. Модель стола

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

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

Рис. 3. Текстура и модель, покрытая этой текстурой.

Атрибуты отображения:

·  координаты - три вещественных числа (координаты x, y, z), которые определяют положение объекта на сцене в мировой системе координат;

·  углы вращения - три вещественных числа, углы вращения вокруг осей x, y, z (от нуля до 360 градусов). Это независимые числа и могут быть разными в разных состояниях объекта (у изменяемых объектов);

·  коэффициенты масштабирования - три вещественных числа, множители по осям x, y, z, которые необходимы для изменения размеров объекта.

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

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

Пример 1. Формальное описание объекта "Стол".

имя: "стол",

тип: простой объект,

описание: “стол – это вспомогательный объект, на котором лежит медицинский инструментарий”,

модель: “стол”,

координаты: [100, 100, 0].

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

4.2. Изменяемый объект

Изменяемый объект "наследуется" от простого и поэтому обладает всеми атрибутами, которые есть у простого объекта. В отличие от простого объекта изменяемый объект может обладать набором состояний. По сути, состояние – это новое описание данного объекта. Состояние может содержать все изменяемые атрибуты объекта с собственными значениями.

Атрибуты состояний:

·  множество состояний - содержит множество возможных состояний объекта. Каждое состояние – это некоторое множество изменяемых атрибутов объекта, которые есть у данного класса объектов. Множество атрибутов характеризуется тем, что содержит не все возможные изменяемые атрибуты класса, а только те, которые нужны для описания состояния. Таким образом, множество атрибутов может не содержать никаких атрибутов, а может содержать и все изменяемые атрибуты данного класса;

·  текущее состояние - содержит ссылку (название) на нужное состояние из представленного множества всех возможных состояний.

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

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

Пример 2. Формальное описание объекта "Аппарат Рота":

имя: "аппарат Рота",

тип: изменяемый объект,

описание: "осветитель таблиц для исследования остроты зрения ",

модель: "аппарат",

координаты: [20,10,0] (координаты соответственно для x–20, y – 10, z – 0),

Рис. 4. Аппарат Рота с таблицами для определения остроты зрения

множество состояний: [

«выключен»: {текстура: "выключенная"},

«включен»: {текстура: "включенная"} ],

текущее состояние: «выключен».

Окклюдер имеет одну и ту же модель и текстуры, следовательно, эти атрибуты у него – постоянные и записываются на уровне объекта. С другой стороны, в отличие от Аппарата Рота, он уже не лежит на одном и том месте в течение работы приложения, поэтому может иметь разные координаты и повороты, которые, соответственно, отображаются в его состояниях.

Пример 3. Формальное описание объекта "Окклюдер":

имя: "окклюдер",

тип: изменяемый объект,

описание: "ручной щиток для прикрытия одного глаза при проверке остроты зрения другого глаза",

модель: "окклюдер",

(текстуру можно не указывать, она есть в описании модели)

множество состояний: [

«лежит на столе»: {координаты: [1,2,3], повороты: [0,0,0]} (внутри фигурных скобок описываем все необходимые атрибуты с нужными значениями, которые должны выполниться в данном состоянии),

«в руке пациента»: {координаты: [4,5,6], повороты: [0,0,0]},

«в руке пациента, закрывает левый глаз»: {координаты: [7,8,9], повороты: [0, 90, 0]},

«в руке пациента, закрывает правый глаз»: {координаты: [7,8,9], повороты: [0, 90, 0]}],

текущее состояние: «в руке пациента, закрывает левый глаз»…

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

4.3. Составной объект

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

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

Дочерние объекты могут быть объектами любых типов. Вложенность не ограничена. У всех дочерних объектов (или подобъектов) обязательно есть состояния, соответствующие состояниям родительского объекта (могут быть и свои уникальные состояния, но те, которые есть у родительского объекта, должны быть в обязательном порядке). Такая иерархическая связь обеспечивает управление всем сложным объектом, как единым целым. Таким образом, если, например, у родительского объекта изменить состояние, то, «спускаясь вниз» по всем подчиненным объектам и находя состояние с таким же названием, которое было выбрано для родительского объекта, будут меняться состояния дочернего объекта.

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

Пациент в данном примере имеет следующие постоянные атрибуты: модель (не включая модели рук и головы), текстуры, координаты (если он только сидит на стуле, в противном случае, они могут быть изменяемыми). Изменяемые атрибуты у сложного объекта могут вообще отсутствовать, но присутствовать в дочерних объектах. Состояния родительского объекта (имеется в виду, что с такими же названиями) в обязательном порядке должны присутствовать в дочерних объектах. Пациент – это объект - человек, который должен помимо всего прочего иметь следующие управляемые части: голова, глаза, руки. Эти части образуют иерархию и образуют единое целое. Человек – составной объект, так как при изменении состояния целого, меняются и состояния его составных частей. Например, если человеку нужно изменить состояние на "держит окклюдер левой рукой", то это же состояние должно выполниться и у левой руки (если она не держала до этого окклюдер), и у правой руки (если в ней находился в прошлый раз окклюдер), и у окклюдера. Окклюдер является дополнительным объектом, и связь с ним реализуется путем указания у объекта «рука» дочернего объекта. Для того чтобы обеспечить синхронность изменения состояний у пациента и его частей, соответственные состояния имеют одинаковые названия. Таким образом, для того чтобы пациент смог изменить состояние на "держит окклюдер в левой руке" у всех его изменяемых частей и у окклюдера, должны быть созданы состояния с одинаковым названием "держит окклюдер в левой руке". При этом атрибуты состояний у каждой части-объекта могут различаться. На рис.5. представлена схема изменения состояния "держит окклюдер в левой руке" у объекта "Пациент".

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

Рис. 5. Изменение состояний у объекта "Пациент"

Пример 4. Формальное описание объекта "Пациент":

имя: "пациент",

тип: составной,

описание: "человек, подвергающийся медицинскому обследованию, наблюдению и/или лечению",

модель: человек,

координаты: [5,10,0],

множество состояний: [

"сидит, руки на коленях, без окклюдера": {},

"сидит, держит окклюдер левой рукой, правая рука на коленях": {},

"сидит, держит окклюдер правой рукой, левая рука на коленях": {} ]

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

текущее состояние: «сидит, руки на коленях, без окклюдера»,

дочерние объекты: ["рука левая", "рука правая", "голова", …].

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

Пример 5. Формальное описание дочернего объекта "Рука левая":

имя: "рука левая",

тип: составной,

описание: "управляемая часть пациента",

модель: рука,

множество состояний: [ "сидит, руки на коленях, без окклюдера": {координаты: [1,2,3], повороты: [0, 0, 0]},

"сидит, держит окклюдер в левой руке, правая рука на коленях": {координаты: [4,5,6], повороты: [0, 0, 0], дочерний объект: "окклюдер"},

"сидит, держит окклюдер в правой руке, левая рука на коленях": {координаты: [7,8,9], повороты: [0, 90, 0]} ]

текущее состояние: «сидит, руки на коленях, без окклюдера».

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

У состояний "руки" есть атрибут "дочерний объект", с помощью которого добавляется или убирается подчиненный объект "окклюдер".

4.4. Объект Таблица

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

·  множество элементов (оптотипов) строки: буквы, цифры, кольца, полоски, рисунки);

·  высота элемента в пикселях.

Элемент строки – это название оптотипа, отображаемого на этом месте в таблице. Например, "буква Ш". Элемент строки может быть простым (строка, имя элемента), а может быть сложным – также содержать в себе некоторый набор атрибутов: имя элемента, ширина элемента в пикселях, какие-то другие атрибуты.

Атрибуты таблицы:

·  строки – ряды элементов,

·  картинки - набор шаблонов картинок, соответствующих элементам таблицы. Например, элементу "буква Ш" должна соответствовать картинка буквы Ш. На рис.6 представлена схема объекта «Таблица».

Рис. 6. Схема объекта "Таблица"

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

Пример 6. Формальное описание объекта "Таблица для определения остроты зрения»":

имя: "таблица для определения остроты зрения Сивцева",

тип: таблица,

описание: "таблица, состоящая из 12 рядов оптотипов «буквы»",

модель: "плакат",

координаты: [5, 5, 0],

строки: [

1-ая строка {элементы: ["буква Ш", "буква Б"], высота: 70 мм}, …

2-ая строка {элементы: ["буква М", "буква Н", "буква К"], высота: 35 мм},

3-ья строка {…,}

картинки: {"буква Ш", "буква Б", "буква М", "буква Н", "буква К", … }, множество состояний: {«освещена», «неосвещена»},

текущее состояние: «неосвещена"…

Заключение

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

Литература

1.  Гаммер компьютерных имитационных тренажеров и систем виртуальной реальности в учебном процессе // http://cde. *****/publ1/.

2.  Донской на базе ЭВМ для оперативного персонала ТЭЦ // http://simulators. *****/intro. htm..

3.  Компьютерные тренажеры нового поколения // http://www. *****/?p=400322.

4. , , Черняховская создания компьютерных тренажеров в офтальмологии //Компьютер на службе медицины. Мат. 4-ой научно-практической конференции. Владивосток, 2002, С.. 14-15

5. V. Gribova. The concept of an intelligent tool for development of diagnostic computer simulators // Proceedings of First Russia and Pacific Conference on Computer Technology and Applications (RPC 2010). [Electronic res.]. Vladivostok (Russia), 6-9 September 2010. - Vladivostok: IACP FEB RAS, 2010. - ISBN: 67-3-4 (CD). Pp.63-65.

Оглавление

Введение……………………………………………………………………….3

1. Функции диагностического тренажера и требования к инструментарию для их разработки……………………………………………………………..3

2. Модель диагностического медицинского тренажера…………………….5

3. Виртуальный мир диагностического тренажера………………………….7

3.1 Характеристика объектов виртуального мира……………………...7

3.2. Атрибуты объектов виртуального мира…………………………….8

4. Основные классы объектов виртуального мира…………………………..9

4.1. Простой объект……………………………………………………….9

4.2. Изменяемый объект…………………………………………………14

4.3. Составной объект……………………………………………………17

4.4. Объект Таблица…………………………………………………......22

Заключение…………………………………………………………………….23

Литература…………………………………………………………………. 25

д. т.н., профессор, заведующий лаборатории интеллектуальных систем ИАПУ ДВО РАН

к. м.н., н. с. лаборатории интеллектуальных систем ИАПУ ДВО РАН

инженер лаборатории интеллектуальных систем ИАПУ ДВО РАН

д. м. н., главный научный сотрудник лаборатории интеллектуальных систем ИАПУ ДВО РАН

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

Подписано к печати 12.10.2010 г. Усл. п. л. 1,05. Уч.-изд. л. 0,88.

Формат 60*84/16. Тираж 20. Заказ 15.

____________________________________________________

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

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

Владивосток, Радио, 5.