Концептуальная спецификация систем движущихся объектов
Исследование возможности использования системы концептуальных языков "Бинарная Модель Данных и Знаний" для решения задач, связанных со спецификацией систем движущихся объектов. Анализ абстракций, используемых при описании геометрических объектов.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | статья |
Язык | русский |
Дата добавления | 18.01.2018 |
Размер файла | 26,1 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru
КОНЦЕПТУАЛЬНАЯ СПЕЦИФИКАЦИЯ СИСТЕМ ДВИЖУЩИХСЯ ОБЪЕКТОВ
Тюхов Б.П., к.т.н., доцент
МИЭМ
e-mail: tuhov@mitme.ru
ВВЕДЕНИЕ
С появлением и успехом таких технологий, как GPS и ГЛОНАСС, и быстрым развитием беспроводной связи появилась возможность непрерывно отслеживать движущиеся физические объекты. Были разработаны компьютерные системы, обрабатывающие информацию о движущихся объектах (например, интеллектуальные системы управления дорожным движением). В таких системах ключевую роль играют базы данных, которые, в частности, хранят информацию о движении объектов. Такие базы данных называют MODB (Moving Object DataBases) [1, 2].
Общей характеристикой физических объектов является то, что они существуют в пространстве и времени. При моделировании в MODB физический объект представляется пространственно-временным (информационным) объектом, имеющим атрибуты, значениями которых служат положения физического объекта в текущий и предыдущие моменты времени. Также необходимо представлять различные свойства объекта, свойства траектории объекта, отношения между объектами и областями пространства и т.п. Таким образом, для представления систем движущихся объектов необходимы весьма выразительные средства для представления данных и знаний. Система концептуальных языков «Бинарная Модель Данных и Знаний» имеет такие средства
В настоящей работе мы покажем, как БМДЗ может быть использована для решения задач, связанных с концептуальной спецификацией систем движущихся объектов.
КРАТКИЕ СВЕДЕНИЯ О БИНАРНОЙ МОДЕЛИ ДАННЫХ И ЗНАНИЙ
Содержание этого раздела основано на работе [3].
Формальные понятия. Денотационная семантика концептуальных языков основана на определении формального понятия. Формальное понятие включает:
· имя понятия С;
· универсум понятия UC (т.е. множество имен, выбранных для обозначения возможных примеров понятия С);
· множество Г точек соотнесения (обозначают взгляды, точки зрения, контексты, моменты времени, интервалы времени и т.п.);
· для каждой точки соотнесения гГ - подмножество ЕСгUC (т.е. множество имен, обозначающих примеры понятия С в точке соотнесения г);
· для каждой точки соотнесения гГ отношение эквивалентности ~Cг , заданное на множестве ЕСг.
Пара ExtCг = (ЕСг,~Cг) называется экстенсионалом понятия С в точке соотнесения г. Семейство ExtC = {(ЕСг,~Cг) | гГ} называется полным экстенсионалом понятия С. Системой понятий называется (конечное) множество формальных понятий с одним и тем же множеством Г точек соотнесения. концептуальный бинарный движущийся геометрический
Предложения концептуальных языков можно классифицировать в зависимости от того, какие компоненты формальных понятий они специфицируют. В частности:
· структурные предложения специфицируют универсумы понятий;
· логические предложения специфицируют экстенсионалы понятий (равномерно по точкам соотнесения гГ);
· транзитные предложения специфицируют изменения экстенсионалов при переходе от одной точки соотнесения к другой. Точнее, пусть RГГ - бинарное отношение достижимости: г R д тогда и только тогда, когда возможен переход от точки соотнесения г в точку соотнесения д. (Например, если точками соотнесения являются числа 0,1,2,…, обозначающие моменты дискретного времени, то можно считать г R д тогда и только тогда, когда гд.) Изменение экстен-сионалов определяется множеством ЕСгЕСд = (ЕСг \ ЕСд)(ЕСд \ ЕСг). Таким образом, транзитные предложения специфицируют пары (ЕСгЕСд, ~), где ~ совпадает с ~Cг на ЕСг \ ЕСд и совпадает с ~Cд на ЕСд \ ЕСг .
Структурные предложения БМДЗ. Структурные предложения строятся из атомарных. Имеются следующие типы атомарных предложений: C[D], С[A:T], C[A:D], (C L D), (C L D)[E], (C L D)[A:T], (C L D)[A:D]. Здесь C, D, E, L - имена понятий, А - имя атрибута и Т - спецификация типа данных. Понятия C, D и E обозначают классы объектов, а понятие L - бинарную связь между классами C и D.
В качестве Т могут выступать примитивные предопределенные типы данных такие, как Boolean, String, Integer, Real и т.д. Но разработчик концептуальной модели имеет возможность определять свои абстрактные типы данных (АТД). Таким образом, в качестве Т он может взять определение АТД, состоящего из носителя V (т.е. области значений этого типа) и функций, заданных на V и, возможно, на носителях других АТД. В БМДЗ имеется соответствующий язык для спецификации АТД. Например, разработчик может задать следующие два АТД.
Окружность = (Центр:Точка, Радиус:Real).
Точка = (Абсцисса:Real, Ордината:Real).
FUN расст:(Точка,Точка) -> Real
расст(X,Y):= sqrt((X.Абсцисса-Y.Абсцисса)**2
(Х.Ордината-Y.Ордината)**2)
Имена понятий могут быть не только простыми, но и составными. Примерами составных имен являются C | D и C(*). Экстенсионалом понятия C | D является объединение экстенсионалов понятий C и D; экстенсионалом понятия C(*) является итерация экстенсионала С (т.е. примерами C(*) служат конечные множества примеров С).
Произвольное структурное предложение получается соединением атомарных структурных предложений. Например, из атомарных предложений
Авто[Марка:String], Авто[Производитель:Фирма],
Авто[Номер:String], Авто[Дата_выпуска:Date],
Авто[Мотор]
получается одно составное структурное предложение
Авто[Марка:String, Производитель:Фирма,
Номер:String, Дата_выпуска:Date, Мотор] (1)
Атомарные структурные предложения имеют следующую интерпретацию (определяющую соответствующие универсумы):
1) C[D], UC = SurrName{[D: x] | xSurr};
2) С[A:T], UC = SurrName{[A: x] | xT};
3) C[A:D], UC = SurrName{[A: x] | xSurr};
4) (C L D), UL = SurrName{[C: x, D: y] | x, y Surr};
5) (C L D)[E], UC = SurrName{[C: x, D: y, E: z] | x, y, z Surr};
6) (C L D)[A:T], UC= SurrName{[C: x, D: y, A: z] | x, ySurr, zT};
7) (C L D)[A:D], UC = SurrName{[C: x, D: y, A: z] | x, y, zSurr}.
Здесь Surr = {#1,#2,…} - множество суррогатов, т.е. стандартных имен, которые используются в качестве уникальных идентификаторов для объектов моделируемой предметной области, а Name - множество возможных имен для объектов. (Суррогаты назначаются системой БМДЗ, когда производится наполнение базы данных, структурированной по схеме структурных предложений; имена из Name назначаются разработчиками концептуальной модели.)
Интерпретация составного структурного предложения получается соединением интерпретаций его атомарных предложений. Как это делается, ясно из примера интерпретации предложения (1):
UАвто = SurrName
{[Марка: x, Производитель: у, Номер: z, Год_выпуска: u,
Мотор:v] | x, z String, y, vSurr, uInteger}.
Представление экстенсионалов. В том случае, когда экстенсионалом понятия С является конечное подмножество универсума UC, можно применить допущение замкнутого мира (CWA - closed-world assumption). Например, это допущение действует для класса Авто. Тогда ExtАвто можно представить таблицей со следующей «шапкой»:
Surr | Coref | Por | Марка | Производитель | Номер | Год_выпуска
В таблице в поле Surr записывается суррогат объекта, а в поле Coref - список кореферентных имен этого объекта. Поле Por (point-of-refrence) используется для записи точек соотнесения. Каждому примеру (элементу EАвто) и кореферентному ему суррогату отвечает строка таблицы. Например, в таблицу может входить строка
(#27, [`машина главврача'],- , RenaultLogan, Renault, Н993НТ199, 2007), которая определяет элементы ExtАвто - суррога #27 и кортеж.
е = [Марка:RenaultLogan', Производитель :Renault Номер: Н993НТ199, Год_выпуска:2007], а также кореференции
е ~ #27 ~ `машина главврача'. (Кореферентные имена - это те, которые обозначают один и тот же объект моделируемой предметной области.)
Схема структурных предложений, рассматриваемая в предположении замкнутого мира, является, в сущности, схемой объектно-ориентированной базы данных. Но в БМДЗ также возможно декларировать допущение замкнутого мира (OWA - open-world assumption). При этом допущении экстенсионалы понятий, как правило, являются бесконечными подмножествами универсумов. Поэтому для спецификации экстенсионалов понятий необходимы логические предложения, которые играют роль ограничений, налагаемых на имена из универсумов, чтобы они обозначали примеры этих понятий. Кроме того, частично экстенсионал может быть представлен таблицей, в шапке которой имеется также поле Sign; в этом поле в строке ставится знак «+» или «-» в зависимости от того, определяет или нет строка пример или контрпример понятия.
Замечание. Допущение открытого мира используется при осуществлении вывода (дедукции и абдукции) на основе концептуальных моделей, специфицированных в языках БМДЗ.
Используя атрибутные условия, можно определять производные понятия. Атрибутное условие - это конъюнкция атомарных атрибутных условий или их отрицаний. Атомарное атрибутное условие - выражение вида А и Х, где А - атрибут, Х - терм, составленный из констант, атрибутов, переменных и имен функций, а и - бинарное отношение (в частности, отношения: =, <, >, и т.п.) Например, выражение
Авто(Производитель = Форд; Год_выпуска > 2000)
определяет класс фордовских автомобилей, выпущенных после 2000 года.
Логические предложения. В БМДЗ имеются различные типы логических предложений. В частности, имеются логические предложения вида Q1 C(б) L(г) Q2 D(в), где Q1 и Q2 - кванторы, Q1, Q2{SOME, EACH}, C и D - имена классов, L - имя бинарной связи, а б, в и г - атрибутные условия. Возьмем, например, предложение
EACH Авто(Марка=форд_фокус; Дата_выпуска = 2000)
Куплен(Дата >= 2000)
SOME (Физ_лицо | Организация)
Неформально это предложение утверждает, что каждый автомобиль марки «Форд фокус», выпущенный в 2000 году, был куплен, начиная с 2000 года некоторым физическим лицом или организацией.
В БМДЗ имеется язык, являющийся вариантом языка интервальной логики Аллена [4]. Также имеются язык, позволяющий представлять знание о нечетких темпоральных интервалах [5], и язык для представления пространственных отношений. В частности, эти языки могут быть использованы для представления и анализа сценариев (на концептуальном уровне), описывающих расположение и динамику объектов. Например, утверждение «автомобиль с номером Н993НТ199 стоит слева от некоторого грузовика» можно записать так:
Авто(Номер= `Н993НТ199')LEFT
SOME Авто(Тип=грузовик)
СПЕЦИФИКАЦИЯ ДВИЖУЩИХСЯ ОБЪЕКТОВ
Абстракции для движущихся объектов. Описание движущихся объектов требует интеграции аспектов, касающихся как времени, так и пространства, поскольку геометрия объектов подвержена изменениям во времени.
Имеются три основных абстракции, используемые при описании геометрических объектов:
· точка - представляет объект, для которого существенно его положение, но не существенны его размер и конфигурация;
· линия (кривая в пространстве) - описывает движение в пространстве или связь;
· область - представляет объект, для которого существенны его размер (объем) и конфигурация.
Движение точки - это изменение ее положения во времени. В пространстве-времени такое движение представляется «мировой» линией. Движение области включает не только изменение ее положения, но изменение ее конфигурации (которая может расти или сокращаться). Таким образом, движение есть характеристика динамических объектов.
Динамические объекты и атрибуты. Динамические объекты - это объекты, имеющие атрибуты, значениями которых служат функции от переменной t, обозначающей моменты времени. Такие атрибуты называются динамическими. Они, в частности, рассматривались в работе [2]. Мотивом для введения динамических атрибутов при решении задач моделирования движущихся объектов было следующее.
Для того чтобы представить движущийся объект (например, автомобиль) в удаленной базе данных и отвечать на запросы, касающиеся позиции объекта (например, отвечать на запрос «Как далеко находится автомобиль скорой помощи с данным номером от ближайшей больницы?»), определяющие эту позицию данные должны все время обновляться. Однако такая ситуация не удовлетворительна, так как частое обновление данных и их передача существенно нагружает канал связи и требует дополнительных вычислительных ресурсов. Эту проблему можно решить, если ввести атрибут с параметром, определяющим функцию, значениями которой служит позиция объекта. В примере с автомобилем в качестве параметра можно взять вектор «направление-скорость», позволяющий аппроксимировать место нахождения автомобиля в течение некоторого интервала времени. Благодаря этому обновление базы данных будет выполняться только тогда, когда изменяется этот вектор.
Динамический атрибут А является составным атрибутом вида
А = (Value, UpdateTime, Function).
Для объекта Х значение Х. А.Value вычисляется следующим образом.
Во время X.A.UpdateTime (т.е. во время обновления значения атрибута А) значением этого атрибута является обновленное значение: Х.А.Value = X.A.UpdateTime. В последующий момент t до следующего обновления значение Х.А.Value определяется с помощью функции А.Function.
Пример 1. При моделировании полета самолета мы вводим понятие Самолет, экземпляром которого является объект Х, т.е. ХЕtСамолет. (Заметим, что здесь в качестве точек соотнесения мы рассматриваем моменты времени.) Понятие Самолет имеет атрибут Позиция (положение самолета), который является динамическим:
Позиция=(Value,Time,UpdateTime,Function).
Атрибут Value принимает значения в типе данных Координаты, который специфицируется предложением
DTYPE Координаты=(1корд:Real,2коорд:Real,
3коорд:Real).
Атрибут Function в качестве значения имеет спецификации функций. Например, в данном случае такой спецификацией может быть:
FUN fn1:(Координаты,Вектор,Скорость,Time)->
Координаты
fn1(U,V,W,Por):=(U.1коорд + V.1комп*V*W*Por,
U.2коорд + V.2комп*V*W*Por,
U.3коорд + V.3комп*V*W*Por).
DTYPE Вектор =(1комп:Real,2комп:Real,3комп:Real);
Скорость = Real,
Por = Time.
Здесь точка соотнесения Por представляет текущий момент времени. Эта спецификация определяет функцию, которая по координатам объекта, вектору, скорости и времени (точки соотнесения) дает новые координаты объекта (в новой точки соотнесения) в предположении, что этот момент времени раньше следующего обновления позиции объекта. Таким образом, позиция самолета вычисляется следующим оператором.
Х.Позиция.Value:= CASE[X.Позиция IF POR =
X.Позиция.UpdateTime,
fn1(X.Позиция.Value,Вектор,Скорость,Por)
IF POR < NEXT X.UpdateTime].
Замечание. Атрибуты понятий Вектор и Скорость также являются динамическими.
Использование динамических атрибутов позволяет делать прогноз о будущих их значениях для данного объекта.
Пример 2. Рассмотрим запрос «Войдет ли самолет RA-856119 через 2 минуты в опасную зону?». Предположим, что база знаний содержит, в частности, следующие предложения:
(Самолет Находится_в Зона(*))[Интервал:
(Нач:Время,Кон:Время)],
(X Находится Y):= X. INSIDE Y.Граница,
Зона[Вид:String,Граница].
Тогда запрос формально можно представить так:
?$-(Самолет X Находится_в Y Зона Z)=$;
X.Борт='RA-856119'; X.Позиция INSIDE Z.Граница;
Y.Интервал.Нач < Now+2; X.Вид ='опасная зона'.
Здесь $ - булева переменная. Таким образом, ответом на запрос будет 1 («да») или 0 («нет») в зависимости от того, находится или нет самолет X в зоне Z. Переменные X, Y и Z экзистенциально квантифицированы (неявным образом) и обозначают соответственно экземпляры понятий Самолет, Находится_в и Зона.
ЛИТЕРАТУРА
1. Wolfson O., Xu B., Chamberlain S., Jiang L. Moving Object Database: Issue and Solutions// Proceedings of the 10th International Conference on Scientific and Statistical Database Management, Naperville, 1998.
2. Sistla P., Wolfson O., Chamberlain S. Modeling and Querying Moving Objects // Proceedings 13th International Conference on Data Engineering, Birmingham, 1997.
3. Plesniewicz G.S. Binary Data and Knowledge Model// Knowledge-based Software Engineering/ Ed. by V. Stefanuk & K. Kaijiri. - Singapore: IOS Press, 2004.
4. Allen J.A. Maintaining Knowledge about Temporal Intervals// Communications of the ACM. - 1983. - Vol. 26.
5. Плесневич Г.С., Тюхов Б.П., Савенков С.С. Логика нечетких интервалов // Интегрированные модели и мягкие вычисления в искусственном интеллекте. Труды 3-го Международного научно-практического семинара (Коломна, 15-17 мая 2005 г.). - М.: Физматлит, 2005. - С. 94-100.
Размещено на Allbest.ru
...Подобные документы
Основные цели и задачи построения систем распознавания. Построение математической модели системы распознавания образов на примере алгоритма идентификации объектов военной техники в автоматизированных телекоммуникационных комплексах систем управления.
дипломная работа [332,2 K], добавлен 30.11.2012Создание системы видеонаблюдения для обеспечения требуемого уровня безопасности. Функция обнаружения движения. Обзор альтернативных вариантов построения информационной системы. Последовательность обработки фильтров. Графическая обработка видеопотоков.
курсовая работа [702,7 K], добавлен 16.01.2014Исследование свойств и поведения динамических объектов, описываемых системами обыкновенных нелинейных дифференциальных уравнений. Описание методов, программ и алгоритмов решения систем линейных и нелинейных алгебраических уравнений в системе MathCAD.
контрольная работа [255,1 K], добавлен 16.01.2009Изучение теоретических положений, раскрывающие структуру линейных и нелинейных стационарных и динамических объектов, математическое описание и решение задачи анализа объектов. Использование для решения функции системы математических расчетов MathCAD.
контрольная работа [317,7 K], добавлен 16.01.2009Определение понятия трехмерной компьютерной графики. Особенности создания 3D-объектов при помощи булевых операций, редактируемых поверхностей, на основе примитивов. Моделирование трехмерных объектов при помощи программного пакета Autodesk 3ds Max.
дипломная работа [4,2 M], добавлен 13.04.2014Моделирование пространства и способы представления пространственных объектов. Хранение и извлечение пространственных объектов. Применение географических баз данных. Классификация объектов на основе размерности. Мозаичное и векторное представление.
презентация [179,5 K], добавлен 11.10.2013Проектирование систем обработки данных для заданных объектов управления, автоматизированных систем разного назначения. Разработка автоматизированной системы приема заказов организации. Модель бизнес-процесса. Основные алгоритмы работы программы.
курсовая работа [910,8 K], добавлен 25.05.2015Анализ физических предпосылок селекции движущихся малоразмерных наземных целей по спектральным параметрам. Разработка алгоритмов обнаружения МНЦ и повышения эффективности их распознавания в интересах радиолокационных станций разведки и целеуказания.
дипломная работа [830,3 K], добавлен 28.04.2009Способы моделирования типовых геометрических объектов. Методы решения инженерно-геометрических задач в системах автоматизированного проектирования. Правила выполнения чертежей деталей, сборочных единиц, электрических схем по современным стандартам.
методичка [44,6 K], добавлен 29.11.2010Автоматизация работ по учету отремонтированных, реконструированных, модернизированных строительных объектов и объектов, подлежащих ликвидации. Анализ полученных данных, проектирование базы данных для хранения информации о заказах, клиентах и затратах.
курсовая работа [6,0 M], добавлен 01.07.2010Изучение теоретических положений, раскрывающих структуру линейных и нелинейных стационарных и динамических объектов. Математическое описание и решение задачи анализа такого рода объектов. Анализ линейных стационарных объектов. Средства матричной алгебры.
контрольная работа [1,4 M], добавлен 14.02.2009Построение информационной модели наиболее высокого уровня абстракции. Вид и содержание концептуальной модели базы данных. Установление связей между типами сущностей. Спецификация всех объектов, входящих в модель. Средства обеспечения целостности данных.
курсовая работа [2,6 M], добавлен 12.12.2011Проектирование информационно-поисковой системы "Цветы" для решения задач, связанных с предоставлением услуг по оформлению и доставке заказов букетов и композиций. Разработка объектов базы данных - транзакций, представлений, хранимых процедур и запросов.
курсовая работа [4,2 M], добавлен 26.11.2011Обзор алгоритмов распознания объектов на двумерных изображениях. Выбор языка программирования. Обнаружение устойчивых признаков изображения. Исследование алгоритмов поиска объектов на плоскости. Модификация алгоритма поиска максимума дискретной функции.
дипломная работа [1,0 M], добавлен 16.06.2013Задачи компьютерного зрения. Анализ, разработка и реализация алгоритмов поиска и определения движения объекта, его свойств и характеристик. Алгоритмы поиска и обработки найденных областей движения. Метод коррекции. Нахождение объекта по цветовому диапазон
статья [2,5 M], добавлен 29.09.2008Обзор моделей анализа и синтеза модульных систем обработки данных. Модели и методы решения задач дискретного программирования при проектировании. Декомпозиция прикладных задач и документов систем обработки данных на этапе технического проектирования.
диссертация [423,1 K], добавлен 07.12.2010Применение системы автоматизированного проектирования AutoCad при создании электронных чертежей. Основные алгоритмы работы и создания чертежей. Операции над файлами. Модификация и редактирование объектов на экране. Панель свойств объектов Properties.
курсовая работа [206,7 K], добавлен 21.12.2010Конструирование базы данных для бухгалтерского учета при начислении зарплаты сотрудникам. Функциональная структура, концептуальная, логическая и физическая модель БД. Выделение информационных объектов. Тексты SQL-запросов, результаты их выполнения.
курсовая работа [3,3 M], добавлен 27.10.2013Анализ видов обеспечения автоматизированных систем предприятия. Средства программирования распределенных систем обработки информации. Изучение особенностей использования технологии распределенных объектов. Эксплуатация программного обеспечения системы.
отчет по практике [486,0 K], добавлен 23.11.2014Разработка структуры реляционной базы данных для информационной системы "Распределение учебной нагрузки". Требования к информации, надежности, составу и параметрам технических средств. Нормализация информационных объектов, логическая модель данных.
курсовая работа [2,3 M], добавлен 03.05.2015