ПОЗИЦИОНИРОВАНИЕ ОБЪЕКТОВ В ДОРОЖНОЙ СЕТИ В СИСТЕМАХ МОНИТОРИНГА ГОРОДСКОГО ТРАНСПОРТА
Н. А. Шестаков
Институт кибернетики Национального исследовательского Томского политехнического университета, 634034, Томск, Россия
УДК 004.023
Рассмотрены принципы работы алгоритмов позиционирования. Разработан маршрутный алгоритм позиционирования в реальном времени OMAR, способный корректировать локальные ошибки построения маршрута, что позволяет уменьшить задержку позиционирования в зонах перекрестков и количество глобальных ошибок построения маршрута.
Ключевые слова: алгоритмы позиционирования, дорожная сеть, мобильные объекты, навигационная система.
The basic principles of map matching algorithms are described. The online map matching and route building algorithm OMAR is proposed. The significant feature of OMAR is the ability to correct route building local errors which reduces the map matching lag in crossroad areas and reduces the number of global route building errors.
Key words: Map Matching, Road Network, Mobile Objects, Navigation System.
Развитие технологий позиционирования приводит к повсеместному распространению систем и сервисов, использующих информацию о местоположении объектов. По мере усложнения этих систем, их интеграции с другими продуктами, появления в них функций анализа возникают новые задачи. Возможность получения более точных данных и развитие дорожной инфраструктуры повышают актуальность новых проблем, связанных с обработкой данных с мобильных объектов (МО).
В настоящей работе рассмотрена проблема позиционирования объектов, перемещающихся по дорожной сети города, в задачах, требующих построения и обработки маршрутов этих объектов. Описаны способы реализации алгоритмов и моделей позиционирования, приведены результаты разработки маршрутного алгоритма позиционирования в реальном времени OMAR.
Системы мониторинга мобильных объектов. Под системой мониторинга МО будем понимать систему, которая получает, сохраняет и обрабатывает данные о местоположениях МО. В данной работе рассматриваются системы слежения за перемещением транспорта по городской дорожной сети.
По количеству обрабатываемых МО системы мониторинга можно разделить на следующие группы:
- персональные навигаторы и трекеры;
- диспетчерские системы мониторинга (управление автопарком организации);
- системы контроля дорожного трафика; По архитектуре - на следующие группы:
- персональные системы (мобильные устройства, ноутбуки, встроенные в автомобиль);
- системы с выделенным сервером внутри организации (диспетчерские системы);
- системы с выделенным сервером, который управляется отдельной компанией и предоставляет услуги нескольким организациям.
Заметим, что система может поставляться в виде дистрибутива либо предоставляться как сервис.
Системы мониторинга выполняют следующие функции:
- контроль целевого использования транспорта;
- контроль соблюдения графика (маршрута) движения;
- сбор статистики и оптимизация маршрутов;
- обеспечение безопасности;
- помощь пользователю в выборе маршрута (в том числе с учетом дорожной ситуации);
- контроль соблюдения правил дорожного движения (например, intelligent speed adaptation systems);
- прочие "интеллектуальные" функции (предсказание маршрута движения, различные виды анализа накопленных данных и т. д.).
Позиционирование мобильных объектов. Существуют различные способы описания и задания местоположения объекта. Нередко выбор способа и системы координат основан на технических особенностях (возможностях) систем, которые предоставляют исходную навигационную информацию. Ниже приведены примеры таких систем:
- позиционирование по радиосигналу: сотовая связь, Wi-Fi, специальная сеть радиопередатчиков, RFID;
- глобальные навигационные спутниковые системы: GPS, ГЛОНАСС, Galileo;
- dead reckoning (используются установленные на транспортное средство датчики скорости, направления, ускорения, как правило, в сочетании с другими средствами, обеспечивающими установку начального местоположения; в качестве результата выдают перемещение относительно установленного начального положения и накопленную ошибку);
- датчики и радиомаяки, установленные вдоль дорог;
- камеры слежения (фиксируют только появление и параметры движения транспортного средства в определенном месте, где установлена камера).
В данной работе предполагается, что исходные навигационные данные получены с помощью глобальной навигационной спутниковой системы (а именно GPS). Это значит, что точность измерения координат составляет 5-20 м по горизонтали, период измерений равен 1 с.
Нередко движение МО происходит только по дорогам. В этом случае удобно (а в некоторых случаях необходимо) задавать не географические координаты, а местоположение на дороге, т. е. внутри дорожной сети (ДС). Способ задания местоположения внутри ДС зависит от способа представления ДС (модели ДС). Как правило, местоположение включает сегмент ДС и положение на сегменте (заданное расстоянием вдоль сегмента от его начала до места расположения объекта на нем). Местоположение точечного объекта, заданное в виде географических
координат, назовем геопозицией; местоположение, определенное в ДС, - позицией в ДС или просто позицией. Определение положения МО в ДС по его геопозиции называется map matching. Поскольку в русскоязычных источниках устойчивый термин отсутствует, введем термин "позиционирование МО в ДС". В результате позиционирования геопозиция МО преобразуется в позицию в ДС, а траектория МО преобразуется в путь на графе ДС. Алгоритм, осуществляющий позиционирование, будем называть алгоритмом позиционирования (АП).
Модели ДС. Предположим, что модель ДС включает следующие основные компоненты: топологию ДС, дорожные ограничения, геометрию ДС, прочую атрибутивную информацию.
Топология ДС (граф ДС). Как правило, граф ДС - это мультиграф, ребрам которого соответствуют участки дорог, а узлам - точки пересечения дорог на одном уровне (перекрестки). В некоторых случаях топология не задана как граф (например, в [1, 2] использован формат карты OpenStreetMap), но эквивалентна ему. Более сложные модели могут хранить информацию о полосах движения и моделировать ребрами графа отдельные полосы. Например, в [3] предложено несколько вариантов моделей ДС с поддержкой движения по полосам.
Дорожные ограничения. К числу ограничений можно отнести запреты поворотов или проезда (для различных категорий транспорта), ограничения скорости, информацию о разметке, категорию дороги. Иногда дорожные ограничения относят к топологии, так как часть из них (например, одностороннее движение) может быть задана структурой графа ДС. Тем не менее различие имеется даже в случае одностороннего движения, так как к разным категориям МО дорожные ограничения могут применяться по-разному (в результате получится несколько графов). Внесение запретов поворотов непосредственно в граф ДС (см., например, [4]) изменяет структуру графа и делает ее отличной от описанной выше.
Геометрия ДС. Геометрия ДС определяет географическое расположение дорог и перекрестков. Как правило, перекрестки заданы точками, а дороги - кривыми (полилиниями) в некоторой географической системе координат. Также в некоторых приложениях могут использоваться координаты высоты и расположение дорог, пересекающихся на разных уровнях. Заметим, что представление участка дороги в виде полилинии является приближенным. Это приводит к тому, что реальная длина участка оказывается больше длины полилинии, вычисленной как сумма ее отрезков (в зависимости от точности представления различие может достигать 30 % [1]).
Геометрия ДС описывает привязку элементов графа к местности. Далее будем считать, что каждой полилинии в геометрическом представлении соответствует дуга графа (т. е. полилинии не могут иметь общих точек, кроме крайних).
Атрибутивная информация. Атрибутивная информация представляет собой дополнительную информацию о дорогах: названия улиц, свойства дорожного покрытия и т. п.
Выбор модели ДС и позиционирование объектов в ней. Предлагаемый в данной работе АП является частью проекта-прототипа картографического сервиса ARDA [5, 6]. Одной из целей создания сервиса является исследование комплексных методов обработки маршрутов МО. В этом аспекте отображение траектории движения МО на топологию ДС (т. е. позиционирование) является одной из основных задач, эффективное решение которых необходимо для построения маршрутных путей объектов.
Ниже опишем некоторые особенности модели ДС, используемой в проекте ARDA.
Топология ДС является направленным мультиграфом, в котором узлы представляют собой точки пересечения дорог на одном уровне, а ребра - сегменты дорог между точками пересечения. Сегменты дорог с двусторонним движением представлены одним ребром графа, так же как и сегменты с односторонним движением (признак одностороннего движения задается отдельно для каждого сегмента). Направление ребер графа условно и необходимо для отсчета расстояния вдоль сегмента ДС. Каждому ребру графа поставлены в соответствие признак одностороннего движения ("да" или "нет") и длина сегмента ДС, соответствующего этому ребру.
Позиция точечного объекта задается кортежем P = {S, measure, dist}, где S - ребро графа ДС; measure - расстояние, отсчитываемое вдоль сегмента от начала ребра до точки на ребре, в которой расположен объект; dist - направление движения объекта вдоль ребра, принимающее одно из возможных значений: forward (вдоль направления ребра), reverse (противоположно направлению ребра) и unknown (не определено). В [1] приведено подобное определение для позиций точечных объектов, однако описание площадных объектов оставалось геометрическим. Чтобы не нарушать единообразие топологического подхода, автором данной работы предложены аналогичные преобразования для площадных объектов.
Местоположение площадного объекта в ДС будем задавать множеством позиций E = {Pj, P2,.,Pn}, которые будем называть позициями выхода из области. Множество Pi находится путем определения точек пересечения границы площадного объекта с сегментами ДС. Направление движения Pi задается из внутренней области объекта наружу.
Таким образом осуществляется переход от геометрического представления точечных и площадных объектов к топологическому представлению. Для реализации геометрического аспекта ДС каждому узлу графа поставлены в соответствие его географические координаты, а каждому ребру графа - ломаная линия (полилиния), описывающая форму соответствующего сегмента ДС. Полилиния задана последовательностью точек, для каждой точки заданы географические координаты и расстояние вдоль линии от начального узла ребра до этой точки.
Классификация алгоритмов позиционирования. Классификация АП по способу их работы - это деление на АП, работающие в режиме реального времени (АПРВ) (online map matching), и оффлайновые АП (offline map matching) [7]. АПРВ выдает результат (позицию МО в ДС) непосредственно после получения геопозиции объекта от навигационной системы. Время обработки одной геопозиции должно укладываться в интервал измерения геопозиций. АПРВ используется в навигационных приложениях, в которых необходимо определять актуальную позицию объекта. Оффлайновый АП рассчитывает позиции для траектории МО в целом, когда эта траектория (трек) полностью известна. Оффлайновый АП сохраняет для каждой геопозиции информацию не только о предыдущих местоположениях МО (как АПРВ), но и о последующих, что может быть использовано для более точного по сравнению с АПРВ позиционирования отдельных геопозиций. Оффлайновые АП могут использоваться, например, при расчете статистики перемещений (в моделях городского трафика, при расчете транспортных пробок и пр.) и показателей, которые нет необходимости определять в реальном времени.
Также могут различаться требования к результатам, которые должен выдавать АП. Одним из важных требований является необходимость определения маршрута МО. АП, не определяющий маршрут (назовем его безмаршрутным АП), определяет только позицию в ДС незави-
Рис. 1. Схема работы маршрутного АПРВ
симо от того, лежат ли они на топологически корректном пути. АП, который находит маршрут, назовем маршрутным АП. При таком типе позиционирования наряду с нахождением позиций МО в ДС необходимо анализировать траекторию движения МО на графе ДС. Маршрутный АПРВ должен выдавать актуальный путь МО в момент каждого измерения геопозиции МО.
Проблемы маршрутных АП и варианты предлагаемых решений описаны, например, в [1, 2, 8]. Маршрутные АП более чувствительны к ошибкам при позиционировании отдельных геопозиций, а также к ошибкам карты. Если текущая позиция МО на графе не связана с предыдущей позицией, то построить путь не удается. По-видимому, это свидетельствует об ошибке позиционирования (назовем ее локальной ошибкой). Безмаршрутный АП может продолжить работу, выполняя корректное позиционирование для последующих местоположений МО. Однако одно неверное позиционирование в маршрутном режиме может привести к дальнейшим безуспешным попыткам связать все последующие позиции с ошибочной позицией, в результате чего большая часть траектории движения не будет построена. Такую ошибку построения пути назовем глобальной ошибкой позиционирования.
Схема работы АПРВ. В результате анализа различных алгоритмов позиционирования составлена обобщенная схема работы маршрутного АПРВ (рис. 1). Реализации подобных алгоритмов могут различаться в деталях, но в целом схему можно считать типичной. Основное различие между алгоритмами состоит в том, каким образом реализованы блоки "Определить по-
зицию" и "Определить позицию в режиме инициализации". Результат работы алгоритма во многом зависит от выбранных модели ДС и способа представления маршрута, а также от прочих условий работы алгоритма.
Определение позиции обычно происходит по следующему алгоритму.
Шаг 1. В окрестности геопозиции МО выбрать сегменты дорожной сети, называемые сегментами-кандидатами.
Шаг 2. Для каждого сегмента-кандидата рассчитать веса эвристических функций (ЭФ).
Шаг 3. Из всех сегментов-кандидатов выбрать сегмент с наибольшим значением суммы весов ЭФ.
Шаг 4. Спроецировать геопозицию МО на выбранный сегмент-кандидат, получив искомую позицию в ДС.
Определение позиции в режиме инициализации осуществляется подобным способом, но с учетом того, что предыдущие позиции неизвестны и начало маршрута еще не сформировано.
Ключевым шагом является определение весов ЭФ. Именно хорошо подобранные ЭФ обеспечивают качественную работу АП. В АП наиболее часто используются следующие эвристики:
- расстояние от местоположения МО до сегмента-кандидата (минимальное);
- направление скорости МО по отношению к ориентации на карте сегмента-кандидата (должны быть сонаправлены);
- предпочтение сегменту, который соответствует той же дороге, что и сегмент предыдущей позиции (упрощенный топологический критерий);
- топологический критерий (возможность соединить новую и старую позиции на графе).
Существует большое количество вариантов реализации указанных эвристик. Также можно
различными способами комбинировать результаты применения ЭФ (в простейшем случае -складывать арифметически, но иногда реализуется и более сложная логика, например нечеткая [9]). Учитывая это, а также то, что алгоритмы выполняются в разном окружении и работают в системах, решающих различные задачи, становится практически невозможно реализовать несколько вариантов АП для сравнения, так как даже при подробном описании алгоритма в литературе реализация на другой платформе будет значительно отличаться. Так, автором данной работы ранее был реализован алгоритм из работы [1] на другой программной платформе (реализация описана в [10]), при этом часть функций исходного алгоритма потребовалось изменить.
АПРВ OMAR. В рамках проекта ARDA разработан АПРВ, получивший название OMAR (online map-matching algorithm with routing). При разработке детально рассматривался опыт создания и использования следующих двух алгоритмов.
1. Алгоритм Брилингайте [1]. Оффлайновый АП, строящий маршрут без использования некоторых известных эвристик. Для уменьшения количества глобальных ошибок не проводится позиционирование для геопозиций, входящих в зону перекрестка. В результате позиция МО определяется на выходе из зоны перекрестка, где ее можно определить более надежно, и соединяется с предыдущей позицией, формируя маршрут. Недостатком данного алгоритма является то, что в условиях плотной ДС перекрестки могут следовать достаточно часто, и суммарная длина зон перекрестков составляет достаточно большую часть пути. Это приводит к тому, что некоторые участки пути сокращаются в результате соединения удаленных позиций по этим зо-
Рис. 2. Коррекция маршрута: а - в сложной ситуации алгоритмом ошибочно выбран верхний сегмент; б - алгоритмом выбран нижний сегмент, путь скорректирован; в - последующее движение, подтверждающее верность выбора нижнего сегмента
нам. Если использовать данный алгоритм в режиме реального времени, это приведет к задержке позиционирования МО. Выполнялась реализация алгоритма на мобильной платформе [10].
2. Алгоритм Традишаускаса [11]. Безмаршрутный АПРВ, предназначенный для использования на устройствах с небольшой вычислительной мощностью. По этой причине топологические эвристики предельно упрощены, но использованы другие ЭФ, которые отсутствуют в алгоритме Брилингайте.
Рассмотрены также другие алгоритмы, во многих из которых используются сходные ЭФ.
Алгоритм OMAR, сочетающий преимущества алгоритмов Брилингайте и Традишаускаса, является маршрутным и при этом работает в режиме реального времени. Кроме того, важным нововведением является способность алгоритма корректировать маршрут в тех случаях, когда некоторые позиции были определены неверно (рис. 2) [12]. Насколько известно автору данной работы, использовать подобную функцию в АПРВ предложено впервые. Это позволило отказаться от эвристики зоны перекрестка и выполнять позиционирование сразу, исправляя возможные ошибки впоследствии. За счет этого OMAR строит маршрут в тех случаях, когда алгоритм Брилингайте ошибается и прекращает работу. Также быстрее определяется позиция МО. В то же время алгоритм чаще совершает ошибки при определении текущей позиции МО (так как делает выбор в неопределенных ситуациях), что может быть нежелательно в некоторых областях применения.
Существенно доработана ЭФ для расчета топологической эвристики. Как и в [8], при обновлении маршрута данная ЭФ учитывает возможность существования пути с учетом скорости и местоположения МО.
В результате численных экспериментов установлено, что введение функции коррекции маршрута позволяет уменьшить число глобальных ошибок на 20 % (по сравнению с эвристикой зоны перекрестка) и сократить интервал движения во время ожидания расчета позиции МО на перекрестке в среднем с 50 до 3 м (подробнее об этом критерии см. [12]).
Алгоритм реализован в среде .NET на языке C#. Дорожная сеть и прочая информация хранились в базе данных под управлением Microsoft SQL Server 2008. В качестве данных ДС были использованы открытые данные проекта OpenStreetMap и данные о перемещениях МО из проекта Spar paa fatten [11].
Заключение. В рамках картографического сервиса ARDA разработаны и реализованы модели ДС. Создан маршрутный АПРВ OMAR, способный корректировать маршрут. Эта особенность позволяет повысить качество работы АПРВ за счет уменьшения задержки позиционирования и уменьшения количества глобальных ошибок построения маршрута.
Список литературы
1. Brilingaite A., Jensen C. S. Enabling routes of road network constrained movements as mobile service context // Geoinformatica. 2007. V. 11, N 1. P. 55-102.
2. Brilingaite A., Jensen C. S. Online route prediction for automotive applications // Proc. of the 13 th World congress and exhibition on intelligent transport systems and services, London, 8-12 Oct., 2006. L.: S. n., 2006. P. 168-175.
3. Speicys L., Jensen C.S. Enabling location-based services - multi-graph representation of transportation networks // Geoinformatica. 2008. V. 12, N 2. P. 219-253.
4. Шестаков Н. А. Особенности решения задач на графах дорожных сетей с запретами поворотов // Тр. 16-й Междунар, науч.-практ. конф. студентов и молодых ученых "Современные техника и технологии", Томск, 12-16 апр. 2010 г. Томск: Том. политехи. ун-т. Т. 2. С. 412-414.
5. Шестаков Н. А. Проект картографического сервиса как платформы для создания мобильных сервисов // Сб. тр. 15-й Междунар. науч.-практ. конф. студентов и молодых ученых "Современные техника и технологии, Томск, 2009 г. Томск: Том. политехн. ун-т. Т. 2. C. 326-328.
6. Шестаков Н. А. Разработка картографического сервера в составе картографического сервиса ARDA // Сб. тр. 7-й Всерос. науч.-практ. конф. студентов, аспирантов и молодых ученых "Технологии Microsoft в теории и практике программирования", Томск, 23-24 марта 2010 г. Томск: Томск. политехн. ун-т, 2010. C. 63-65.
7. Jensen C. S., Tradisauskas N. Map matching // Encyclopedia of database systems. S. l. 2008. P. 1692-1696.
8. Krumm J., Letchner J., Horvitz E. Map matching with travel time constraints // IVI technology and intelligent transportation systems. Detroit: SAE International, 2007. P. 4-16.
9. Quddus M., Noland R., Ochieng W. A high accuracy fuzzy logic based map matching algorithm for road transport // IEEE J. Intelligent Transport Systems. 2006. V. 10, N 3. P. 103-115.
10. Шестаков Н. А., Jensen C. S. Расширение контекста мобильного сервиса маршрутом пользователя в платформе StreamSpin // Изв. ТПУ. 2009. Т. 314, № 5. С. 170-175.
11. Jensen C. S., Tradisauskas N., Juhl J., Lahrmann H. Map matching for intelligent speed adaptation // IEEE J. Intelligent Transport. Systems. 2009. V. 3, N 1. P. 57-66.
12. Шестаков Н. А. Алгоритмическое и программное обеспечение геоинформационной системы для мониторинга мобильных объектов в дорожной сети: Автореф. дис. ... канд. техн. наук. Томск: ТПУ, 2010. 12 с.
Шестаков Николай Александрович - канд. техн. наук, программист Института кибернетики Томского политехнического университета; тел. (382-2) 70 16 09; e-mail: [email protected]
Дата подачи - 04.11.11