Метод представления информации о топологии карты в структуре идентификаторов пространственных объектов

Метод представления информации о топологии карты

99

УДК 680.5.01:621.384 DOI: 10.17586/0021-3454-2015-58-2-99-103

С. В. Еремеев, Д. Е. Андрианов, Д. В. Титов

МЕТОД ПРЕДСТАВЛЕНИЯ ИНФОРМАЦИИ О ТОПОЛОГИИ КАРТЫ

В СТРУКТУРЕ ИДЕНТИФИКАТОРОВ ПРОСТРАНСТВЕННЫХ ОБЪЕКТОВ

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

Ключевые слова: топологические отношения, идентификатор пространственного объекта, иерархия пространственных объектов.

Введение. Сложность взаимосвязей пространственной информации зависит от числа слоев, используемых в геоинформационных системах (ГИС) [1, 2]. Для анализа взаимосвязей применяются различные подходы, например используются пространственные запросы на основе языка SQL. В этом случае разрабатываются и внедряются различные ГИС-команды для определения взаимосвязей пространственных объектов (пересечение, построение буферной зоны, вложенность объектов, расстояние до объекта и т.д.). Использование этого подхода усложняется при возрастании количества пространственных объектов, особенно для муниципальных ГИС, где требуется быстрый ответ на запрос пользователя. Это связано с тем, что в основу анализа заложен принцип перебора координат объектов.

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

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

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

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

Проанализируем процесс кодирования естественных иерархических пространственных структур. Рассмотрим два примера. На рис. 1 и 2 представлены иерархии линейных и площадных объектов соответственно (а — исходная структура объектов, б — дерево взаимосвязей).

Линейные объекты имеют топологическую связь „Соседство“, площадные — „Содержит“.

ИЗВ. ВУЗОВ. ПРИБОРОСТРОЕНИЕ. 2015. Т. 58, № 2

100

С. В. Еремеев, Д. Е. Андрианов, Д. В. Титов

Кроме того, для представления таких иерархических структур часто используют квадродеревья, 5-деревья, 5-деревья и др.

а) х

2 3 5

6 4 7

9

00

4

6

Рис. 1

а)

б)

Рис. 2

Иерархические структуры, подобные представленным на рис. 1, использовались при кодировании сети дорог для задачи генерализации в работе [3], а на рис. 2 — для кодирования рельефа местности в задаче анализа пиков и впадин по высотным отметкам [4].

Разработка основ топологических отношений (матрица девяти пересечений [5]) продолжается в настоящее время (отношения направления: слева, справа и т.д.) [6].

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

Кодирование пространственных объектов по иерархии. Представление иерархии топологии карты с минимальной высотой дерева связей. Каждый объект на рис. 1 соседствует с другим объектом, а на рис. 2 — содержит другой объект следующего уровня. На рис. 3 тип связи показан на ребрах дерева, причем на рис. 3, а каждый объект соседствует с другим, а на рис. 3, б к типу связи „Содержит“ добавляется отношение „Входит“, т.е. объект 3 входит в объект 1.

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

2

6

7

4

5

3

5

1

5

ИЗВ. ВУЗОВ. ПРИБОРОСТРОЕНИЕ. 2015. Т. 58, № 2

Метод представления информации о топологии карты

101

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

Максимальная длина ветви на рис. 1, б — 6, а на рис. 3, а — 4, на рис. 2, б длина равна 4, а на рис. 3, б — 3. Причем для линейных объектов остается двусторонняя, т.е. одинаковая между родительским и дочерним объектами, связь ,,Соседство“. Для площадных объектов добавляется связь „Входит“, поскольку на дереве, приведенном на рис. 2, б, дочерние объекты входят в родительские, а все родительские объекты содержат все свои дочерние.

Алгоритм построения дерева пространственных отношений минимальной высоты. Деревья на рис. 1, б и 3, а, а также на рис. 2, б и 3, б связаны между собой. Покажем, как происходит преобразование одного дерева в другое.

Пусть P — это исходное дерево пространственных отношений, а D — дерево пространственных отношений минимальной высоты. Преобразовать дерево P в D возможно, если связь между объектами:

1) не изменяется, это касается таких типов топологических отношений, как „Соседство^ „Пересечение^ „Непересечение“, „Эквивалентность“.

2) меняется на противоположную, например, тип „Содержит“ преобразуется в тип „Входит“. Отметим типы, которые изменяются: „Содержит“, „Входит“, „Содержит и граничит^ „Входит и граничит“. Также это правило действует для отношений направления: „Слева“, „Справа“, „Сверху“, „Снизу“.

В табл. 1 приведены правила преобразования пространственных отношений (топологических и отношений направления) для получения искомого дерева D.

Таблица 1

№ Связь в P Связь в D

1 „Соседство“ „Соседство“

2 „Пересечение^ „Пересечение“

3 „Непересечение“ „Непересечение“

4 „ Эквивалентность“ „Эквивалентность“

5 „Содержит“ „Входит“

6 „Входит“ „Содержит“

7 „Содержит и граничит“ „Входит и граничит“

8 „Входит и граничит“ „Содержит и граничит“

9 „Слева“ „Справа“

10 „Справа“ „Слева“

11 „Сверху“ „Снизу“

12 „Снизу“ „Сверху“

Алгоритм преобразования дерева P к D заключается в следующем. Для каждой вершины Vj дерева P вычисляется максимальная длина ветви h; (i = 1,2,..., п) из V; по всем направлениям (п — число вершин). Из hi выбирается минимальное значение, которое становится новым корнем дерева, т.е.

vo = vk : hk = min

Здесь v0 — такая вершина Vk (k e 1, 2,..., n), что ее длина hk является минимальной из всех максимальных длин h; (i = 1, 2,..., п) .

Таким образом, все дочерние вершины сохраняют тип пространственных отношений, а связь с родительской преобразуется в соответствии с правилами табл. 1.

Структура идентификатора пространственного объекта. На рис. 4 представлен пример кодирования пространственных объектов согласно рис. 3, а. В этом случае идентификаторы объектов будут иметь следующие коды: 1.0.0.0 — корневой объект 3, 1.1.0.0 — объект 2, 1.1.1.0 — 1, 1.1.2.0 — 4, 1.1.2.1 — 6, 1.2.0.0 — 5, 1.2.1.0 — 7, 1.2.1.1 — 8 и 1.2.2.0 — 9. Таким

ИЗВ. ВУЗОВ. ПРИБОРОСТРОЕНИЕ. 2015. Т. 58, № 2

102

С. В. Еремеев, Д. Е. Андрианов, Д. В. Титов

образом, в приведенном примере используется четырехуровневая иерархия объектов. Число уровней иерархии зависит от объема данных используемой ГИС, оно не изменяется на протяжении всей работы с картой. Если объект имеет в коде хотя бы одно число 0, то он находится не на последнем уровне иерархии и, возможно, является родителем. Объект, имеющий в своем идентификаторе числа, отличные от нуля, является листом дерева.

1

2

1

2

1 1

Рис. 4

Выбетем 255 объектов первого уровня, 255 — второго, третьего и четвертого. Например, идентификатор 62.71.125.0 означает, что объект находится на третьем уровне иерархии и связан с вышестоящими объектами 62.71.0.0 и 62.0.0.0. Такого кода, как 62.0.1.0, быть не может, поскольку наличие нуля на втором уровне предполагает, что за ним также идут нули, а сам объект либо имеет дочернюю иерархию, либо является конечным.

Чтобы учесть связи между объектами на разных уровнях, необходимо добавить их в структуру идентификатора.

Значение типа отношения находится в пределах от 1 до 7. Этого достаточно, чтобы закодировать наиболее часто используемые типы отношений в ГИС.

Рассмотрим некоторые объекты из рис. 3, а, пример кодирования которых представлен в табл. 2 (жирный шрифт — коды типов пространственных отношений): 001 в старших битах на всех уровнях, кроме первого, означает, что тип отношения дочернего объекта с родительским — это „Соседство“. Под другим номером можно закодировать и иные типы отношений, например, 010 — „Содержит“.

Таблица 2

№ Идентификатор объекта (двоичный код) Идентификатор объекта (десятичный код) Исходный объект

1 00000001.00000000.00000000.00000000 1.0.0.0 3

2 00000001.00100001.00000000.00000000 1.33.0.0 2

3 00000001.00100001.00100001.00000000 1.33.33.0 1

Для объекта 3 указывается в первом числе его код на верхнем уровне иерархии. Объект 2 принадлежит второму уровню иерархии, что видно из его кода на втором уровне, т.е. 00001. Причем объект 2 соседствует с объектом 3, что отражено в старших битах на втором уровне. Объект 1 находится на третьем уровне и соседствует с объектом 2.

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

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

В данном случае с объектом 2 связаны объекты 1 и 4, тип связи между ними „Соседство“.

ИЗВ. ВУЗОВ. ПРИБОРОСТРОЕНИЕ. 2015. Т. 58, № 2

Метод представления информации о топологии карты

103

Заключение. В статье рассмотрены подходы к хранению пространственных отношений в ГИС. Основное внимание уделено представлению естественных иерархических структур пространственных объектов. Разработан метод хранения информации о пространственных взаимосвязях непосредственно в идентификаторе объекта, приведена структура такого идентификатора.

Все уровни, кроме первого, содержат информацию о типе отношений с родительским объектом.

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

Работа выполнена в рамках гранта Президента РФ для молодых ученых-кандидатов наук (МК-1194.2014.8).

СПИСОК ЛИТЕРАТУРЫ

1. Еремеев С. В., Андрианов Д. Е., Комков В. А. Алгоритмы формирования графовой модели городской

территории в ГИС // Геоинформатика. 2013. № 4. C. 19—24.

2. Еремеев С. В., Андрианов Д. Е., Веденин А. С. Построение и использование топологических отношений между группами пространственных объектов в геоинформационных системах // Вестн. РГРТУ. 2014. № 1. C. 130—133.

3. Zhilin Li, Qi Zhou. Integration of linear and areal hierarchies for continuous multi-scale representation of road networks // Intern. J. of Geographical Information Science. 2012. Vol. 26. P. 855—880.

4. Guilbert E. Multi-level representation of terrain features on a contour map // Geoinformatica. 2013. Vol. 17. P. 301—324.

5. Egenhofer M., Franzosa R. Point-set topological spatial relationships // Intern. J. of Geographical Information Systems. 1991. Vol. 5. P. 161—174.

6. Clementini E. Directional relations and frames of reference // Geoinformatica. 2013. Vol. 17. P. 235—255.

Сергей Владимирович Еремеев

Дмитрий Евгеньевич Андрианов

Дмитрий Витальевич Титов

Рекомендована Юго-Западным государственным университетом

Сведения об авторах

канд. техн. наук, доцент; Муромский институт (филиал) Владимирского государственного университета им. А. Г. и Н. Г. Столетовых, кафедра информационных систем; E-mail: sv-eremeev@yandex.ru д-р техн. наук, доцент; Муромский институт (филиал) Владимирского государственного университета им. А. Г. и Н. Г. Столетовых, кафедра информационных систем; заведующий кафедрой;

E-mail: AndrianovDE@inbox.ru

канд. техн. наук; Юго-Западный государственный университет, кафедра вычислительной техники, Курск; старший преподаватель; E-mail: amazing2004@inbox.ru

Поступила в редакцию 10.09.14 г.

ИЗВ. ВУЗОВ. ПРИБОРОСТРОЕНИЕ. 2015. Т. 58, № 2