Научная статья на тему 'НАБЛЮДАТЕЛЬ ИЗМЕНЕНИЙ В ЛЕСАХ КРАТЧАЙШИХ ПУТЕЙ НА ДИНАМИЧЕСКИХ ГРАФАХ ТРАНСПОРТНЫХ СЕТЕЙ'

НАБЛЮДАТЕЛЬ ИЗМЕНЕНИЙ В ЛЕСАХ КРАТЧАЙШИХ ПУТЕЙ НА ДИНАМИЧЕСКИХ ГРАФАХ ТРАНСПОРТНЫХ СЕТЕЙ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
43
17
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ТРАНСПОРТНЫЕ СЕТИ / КРАТЧАЙШИЕ ПУТИ / МЕТОД РЕОПТИМИЗАЦИИ / МОНИТОРИНГ ИЗМЕНЕНИЙ / TRANSPORT NETWORK / SHORTEST PATH / REOPTIMIZATION METHOD / MONITORING OF CHANGES

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Хаджинова Н. В., Ревотюк М. П., Шилин Л. Ю.

Цель работы - разработка базовых структур данных и эффективных по быстродействию и памяти алгоритмов слежения за изменениями предопределенных решений о множествах кратчайших путей на транспортных сетях, уведомления о которых получают автономные координируемые транспортные агенты с централизованным или коллективным управлением. Характерная особенность транспортных операций - независимость и асинхронность появления возмущений оптимальных решений, а также отсутствие глобального влияния отдельных возмущений на множество всех процессов на сети. Тем самым, очевидно, определяется целесообразность реализации идеи реоптимизации существующих решений в реальном времени по мере поступления информации о возмущениях структуры и параметров транспортной сети, различных ограничений на использование существующих кратчайших путей. В отличие от классических задач поиска кратчайших путей на статических или динамических графах, набор контролируемых наблюдателем ситуаций предлагается дополнить учетом ассоциаций деревьев кратчайших путей с фактически использующими такие пути агентами. Это позволит улучшить реактивность процессов уведомления агентов для своевременного переключения на новый путь. Пространство состояний поиска - динамически формируемый двудольный разреженный граф транспортной сети, представленный списком дуг. Базовый алгоритм поиска кратчайших путей использует схему Дейкстры, но реализует для формирования результата поиска метод бутстрэппинга. Компактность представления наблюдаемого леса кратчайших путей достигается отображением отдельных деревьев такого леса на проекцию вершин дерева в памяти, где позиция каждой вершины соответствует расстоянию от корня дерева. Предложенная версия построения процедуры поиска опирается на существующие в системах управления базами данных механизмы создания разных реляционных представлений физической модели данных. Это избавляет от необходимости решения технологических задач комплексирования гетерогенных моделей динамических транспортных сетей, распределения памяти. В результате спецификация различных правил логистики транспортных операций упрощается, так как такие операции в терминах объектно-ориентированных моделей легко определяются полиморфными классами переходов между узлами транспортной сети.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

OBSERVER OF CHANGES IN THE FOREST OF THE SHORTEST PATHS ON DYNAMIC GRAPHS OF TRANSPORT NETWORKS

The purpose of the work is the development of basic data structures, speed-efficient and memoryefficient algorithms for tracking changes in predefined decisions about sets of shortest paths on transport networks, notifications about which are received by autonomous coordinated transport agents with centralized or collective control. A characteristic feature of transport operations is the independence and asynchrony of the emergence of perturbations of optimal solutions, as well as the lack of global influence of individual perturbations on the set of all processes on the network. This clearly determines the feasibility of realizing the idea of reoptimizing existing solutions in real time as information is received about disturbances in the structure and parameters of the transport network, various restrictions on the use of existing shortest paths. In contrast to the classical problems of finding shortest paths on static or dynamic graphs, it is proposed to supplement the set of situations controlled by the observer by taking into account the associations of shortest path trees with agents that actually use such paths. This will improve the responsiveness of agent notification processes for timely switching to a new path. The space of search states is a dynamically generated bipartite sparse graph of the transport network, represented by a list of arcs. The basic algorithm for finding the shortest paths uses Dijkstra's scheme, but implements a bootstrapping method to generate the search result. The compactness of the representation of the observed forest of shortest paths is achieved by mapping individual trees of such a forest onto the projection of tree vertices in memory, where the position of each vertex corresponds to the distance from the tree root. The proposed version of the construction of the search procedure is based on the mechanisms existing in database management systems for creating different relational representations of the physical data model. This eliminates the need to solve technological problems of complexing heterogeneous models of dynamic transport networks, memory allocation. As a result, the specification of various rules for the logistics of transport operations is simplified, since such operations in terms of object-oriented models are easily determined by polymorphic classes of transitions between nodes of the transport network.

Текст научной работы на тему «НАБЛЮДАТЕЛЬ ИЗМЕНЕНИЙ В ЛЕСАХ КРАТЧАЙШИХ ПУТЕЙ НА ДИНАМИЧЕСКИХ ГРАФАХ ТРАНСПОРТНЫХ СЕТЕЙ»

(ее)

http://dx.doi.org/10.35596/1729-7648-2020-18-5-71-79

Оригинальная статья Original paper

УДК 681.2

НАБЛЮДАТЕЛЬ ИЗМЕНЕНИИ В ЛЕСАХ КРАТЧАЙШИХ ПУТЕЙ НА ДИНАМИЧЕСКИХ ГРАФАХ ТРАНСПОРТНЫХ СЕТЕЙ

ХАДЖИНОВА Н.В., РЕВОТЮК МП., ШИЛИН Л.Ю.

Белорусский государственный университет информатики и радиоэлектроники (г. Минск, Республика Беларусь)

Поступила в редакцию 29 июня 2020

© Белорусский государственный университет информатики и радиоэлектроники, 2020

Аннотация. Цель работы - разработка базовых структур данных и эффективных по быстродействию и памяти алгоритмов слежения за изменениями предопределенных решений о множествах кратчайших путей на транспортных сетях, уведомления о которых получают автономные координируемые транспортные агенты с централизованным или коллективным управлением. Характерная особенность транспортных операций - независимость и асинхронность появления возмущений оптимальных решений, а также отсутствие глобального влияния отдельных возмущений на множество всех процессов на сети. Тем самым, очевидно, определяется целесообразность реализации идеи реоптимизации существующих решений в реальном времени по мере поступления информации о возмущениях структуры и параметров транспортной сети, различных ограничений на использование существующих кратчайших путей. В отличие от классических задач поиска кратчайших путей на статических или динамических графах, набор контролируемых наблюдателем ситуаций предлагается дополнить учетом ассоциаций деревьев кратчайших путей с фактически использующими такие пути агентами. Это позволит улучшить реактивность процессов уведомления агентов для своевременного переключения на новый путь. Пространство состояний поиска - динамически формируемый двудольный разреженный граф транспортной сети, представленный списком дуг. Базовый алгоритм поиска кратчайших путей использует схему Дейкстры, но реализует для формирования результата поиска метод бутстрэппинга. Компактность представления наблюдаемого леса кратчайших путей достигается отображением отдельных деревьев такого леса на проекцию вершин дерева в памяти, где позиция каждой вершины соответствует расстоянию от корня дерева. Предложенная версия построения процедуры поиска опирается на существующие в системах управления базами данных механизмы создания разных реляционных представлений физической модели данных. Это избавляет от необходимости решения технологических задач комплексирования гетерогенных моделей динамических транспортных сетей, распределения памяти. В результате спецификация различных правил логистики транспортных операций упрощается, так как такие операции в терминах объектно-ориентированных моделей легко определяются полиморфными классами переходов между узлами транспортной сети.

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

Конфликт интересов. Авторы заявляют об отсутствии конфликта интересов.

Для цитирования. Хаджинова Н.В., Ревотюк М.П., Шилин Л.Ю. Наблюдатель изменений в лесах кратчайших путей на динамических графах транспортных сетей. Доклады БГУИР. 2020; 18(5): 71-79.

OBSERVER OF CHANGES IN THE FOREST OF THE SHORTEST PATHS ON DYNAMIC GRAPHS OF TRANSPORT NETWORKS

NATALIA V. KHAJYNOVA, MIKHAIL P. REVOTJUK, LEONID Y. SHILIN

Belarusian State University of Informatics and Radioelectronics (Minsk, Republic of Belarus)

Submitted 29 June 2020

© Belarusian State University of Informatics and Radioelectronics, 2020

Abstract. The purpose of the work is the development of basic data structures, speed-efficient and memory-efficient algorithms for tracking changes in predefined decisions about sets of shortest paths on transport networks, notifications about which are received by autonomous coordinated transport agents with centralized or collective control. A characteristic feature of transport operations is the independence and asynchrony of the emergence of perturbations of optimal solutions, as well as the lack of global influence of individual perturbations on the set of all processes on the network. This clearly determines the feasibility of realizing the idea of reoptimizing existing solutions in real time as information is received about disturbances in the structure and parameters of the transport network, various restrictions on the use of existing shortest paths. In contrast to the classical problems of finding shortest paths on static or dynamic graphs, it is proposed to supplement the set of situations controlled by the observer by taking into account the associations of shortest path trees with agents that actually use such paths. This will improve the responsiveness of agent notification processes for timely switching to a new path. The space of search states is a dynamically generated bipartite sparse graph of the transport network, represented by a list of arcs. The basic algorithm for finding the shortest paths uses Dijkstra's scheme, but implements a bootstrapping method to generate the search result. The compactness of the representation of the observed forest of shortest paths is achieved by mapping individual trees of such a forest onto the projection of tree vertices in memory, where the position of each vertex corresponds to the distance from the tree root. The proposed version of the construction of the search procedure is based on the mechanisms existing in database management systems for creating different relational representations of the physical data model. This eliminates the need to solve technological problems of complexing heterogeneous models of dynamic transport networks, memory allocation. As a result, the specification of various rules for the logistics of transport operations is simplified, since such operations in terms of object-oriented models are easily determined by polymorphic classes of transitions between nodes of the transport network.

Keywords: transport network, shortest path, reoptimization method, monitoring of changes.

Conflict of interests. The authors declare no conflict of interests.

For citation. Khajynova N.V., Revotjuk M.P., Shilin L.Y. Observer of changes in the forest of the shortest paths on dynamic graphs of transport networks. Doklady BGUIR. 2020; 18(5): 71-79.

Введение

Объект исследования - процессы управления системами взаимодействующих агентов, определяемые на динамических графах транспортных сетей в терминах задач поиска кратчайших путей. Подвижные агенты, автономно реализуя отдельные транспортные операции, при планировании своей деятельности нуждаются в актуальной информации об обстановке на транспортной сети. Такая информация может дополнять статические описания сетей в виде карт, дорожных знаков оперативными данными о различных ограничениях, природных или техногенных авариях, пробках. Оперативная информация из разных источников в полном объеме чаще всего может учитываться только централизованно (например, [1-3]), а специально создаваемый наблюдатель должен по мере ее поступления высылать уведомления зарегистрированным агентам о интересующих их изменениях. Интересы агента здесь и далее предполагаются отраженными на понятие кратчайшего пути на графе транспортной сети, узлы которой соответствуют фазам транспортного процесса. Способ отображения должен быть известным наблюдателю, а различные параметры модели

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

Пусть транспортная сеть задана нагруженным ориентированным графом G(V, E), где

V - множество вершин, E - множество дуг c весовой функцией W: E ^ R+ . Процесс построения дерева кратчайших путей лучшим для этого алгоритмом Дейкстры [4] реализует рекурсивный однократный просмотр дуг до исчерпания возможности его развития из исходной вершины и характеризуется вычислительной сложностью O(m + n • log 2 n), где m =| E |, n =| V

Очевидно, что реализация алгоритма Дейкстры на графах с изменяемой структурой порождает проблему выбора способа представления графа и пространства состояний процесса поиска решения. Нагруженный граф G(V,E), представляющий реальную транспортную сеть, обычно имеет незначительную степень связности вершин, поэтому практически задается списком дуг и полностью определяется тернарным отношением G(х, у, w), где х, y - концевые вершины дуги с весом w. В таких случаях описание графа задано легко модифицируемым списком дуг с расширяемыми множествами V и E .

Задачи поиска кратчайших путей для координируемых операций на транспортных сетях объективно локальны. Такие задачи можно представить отношением F(a,o,d), где а -агент, нуждающийся в описании кратчайшего пути из вершины o в вершину d графа сети, o, d е V. В любой момент времени существует потребность в наличии информации о кратчайших путях из множества X = {х | (?,х,?)е F} до множества Y = {y | (?,?,у) е F} . На практике для отдельной транспортной системы всегда справедливо | X |<<| V | и | Y |<<| V |, а информация о кратчайших путях актуальна лишь для множества агентов Z = {z | (z, ?,?) е F}.

В установившемся состоянии сети такая информация может выбираться из множества леса деревьев кратчайших путей, сохраняемых в таблице отношения Ts (s, х, d, p), где s -

корневой узел дерева, s е X; х - произвольный узел дерева, х е V; d - расстояние от корня s

до узла х , p - номер предшествующего узла кратчайшего пути в узел х. Здесь X -потенциально интересный для конкретной транспортной системы набор корневых вершин

дерева из леса, X с V. Кроме этого, полезно определить ограничение глубины деревьев

кратчайших путей множеством конечных вершин F, когда всегда справедливо Y с F.

Информация о возмущениях транспортной сети может быть задана списком дуг с изменившимися весами, представленным отношением R(х, у, w), где х, у - концевые вершины дуги с весом w (значение w = ю означает запрос удаления дуги х ^ у). При этом не обязательно выполнение условия х, у еV, что означает отсутствие запрета на коррекцию любой части графа транспортной сети. Если в этот момент выполняется условие (х е X) v (у е Y), то множество агентов J = {a | (a,o,d) е T(o,d,?,?)} должно получить информацию о новом пути после его реоптимизации.

Таким образом, фазы перехода между устанавливающимися состояниями процесса слежения за оптимальностью построенных на сети путей включают выявление факта R , этап реоптимизации и перестройки Ts (s, х, d, p) для изменившегося отношения G(х, у,w), выявление множества заинтересованных в актуальности информации агентов J и передачу им описания изменения оптимального пути. Далее, в контекстах обсуждения отдельного дерева в лесу, верхний индекс s, помечающий корень дерева, будем опускать.

Предмет обсуждения - модели и алгоритмы контроля состояния транспортной сети с уведомлением о результатах решения задачи реоптимизации дерева путей. В отличие от известных постановок задач реоптимизации дерева путей [4-7], здесь будут учитываться интересы потребителей результатов решения отдельных локальных задач в лесу подграфов исходного графа. Для этого, кроме сокращения времени на перестройку отдельного дерева путей, необходимо обеспечить формирование актуальных для планирования и реализации конкретных транспортных операций уведомлений об изменении кратчайших путей.

Методика решения задачи

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

Рассмотрим вначале форму задания графа транспортной сети, а затем модель переменных состояния поиска кратчайших путей. Здесь будут использованы понятия отношения и представлений (view) таблиц в терминах реляционных баз данных.

Пространство состояний поиска решения в традиционных реализациях алгоритма Дейкстры является проекцией множества вершин графа всей транспортной сети на D - массив расстояний вершин от корня дерева, P - массив номеров предшествующих вершин пути, Q -приоритетная очередь вершин, где элементы упорядочены по текущему значению расстояния от корня дерева [4, 5]. При этом | D |=| V |, | P |=| V |, | Q |<| V |.

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

Алгоритм Дейкстры для каждой вершины х требует представления множества непосредственно достижимых смежных вершин X, X = {k | w(x, k) > 0}, где w(х, k) - вес дуги х ^ k, х, k eV. На основе таблицы отношения G(х, y, w) для графа G легко построить его виртуальное представление Ох (х, y, w) в форме FSF (Forward Star Form). Индексация кортежей такой таблицы по ключу х формально определяет множество связей {(х, y, w), y e х'}, х eV. После этого проверка условия х e V состоит в оценке успеха поиска кортежа с ключом х в таблице Ох.

Обозначим для каждой вершины y множество входных смежных вершин ' y, ' y = {k | w(k, y) > 0}, где k, y e N. Виртуальное представление Gy (х, y, w) в форме BSF

(Backward Star Form) инверсии графа образуется после индексации таблицы отношения G(х, y, w) по ключу y. Такое представление определяет множество кортежей {(х, y, w), х e'y}, y eV. Успех поиска кортежа с ключом y в таблице G означает истинность условия y eV.

Таким образом, имеем V = Vx U V , что означает отсутствие необходимости явного отдельного определения множества V. Операция расширения двудольного графа G(V, E) реализуется на логическом уровне модели данных без использования понятия адресной функции. Это влечет отсутствие проблем комплексирования существующих моделей транспортной сети из разных источников и разной степени детализации. Кроме этого, доступно описание ограничений на условия перемещения на сети в терминах функций как отношений.

Так как любое дерево - связный граф, то если s - корневая вершина, а х - некоторый узел или лист дерева кратчайших путей, s,хeV, то кратчайший путь s^х можно восстановить обратным движением из листа х:

p(s, х) = {х, P( х), P^)),... s}. (1)

По определению элементы множества p(s, х) в (1) упорядочены по неубыванию значений расстояния от корня s . Альтернативы расширения дерева кратчайших путей представлены листьями без постоянной пометки, путь от корня до которых необязательно кратчайший.

Пусть Ьк - множество листьев существующего на этапе к дерева кратчайших путей, а I* - подмножество листьев без постоянной пометки. Согласно (1), на любом этапе

I = и^,х),х е I }• (2)

Рост дерева кратчайших путей происходит только из ближайшего к корню листа хк без пометки, хк = а^ттх{й(х), х е I*}. Лист хк превращается в узел ветвления после операции !к+1 = 1к\{хк} и до окончания поиска становится пассивным (получает постоянную метку). Ветвление из узла хк может привести к включению новых или коррекции в сторону уменьшения расстояния от корня 5 дерева существующих в 1*ш листьев из множества хк'. Так как каждому элементу х, х е Ьк, соответствует й(х) - длина пути до корня 5, то элементы множества 1* = {х | й(х) > й(хк),х е 1к} представляют приоритетную очередь [4, 5].

Очевидно, элементы х е Ьк \ I* остаются упорядоченными по невозрастанию значений й(х). Таким образом, необходимо отображение ассоциаций х ^ р(х), х ^ й(х) и й(х) ^ х среди переменных состояния процесса построения дерева. Для этого определим отношение Т(х, й, р), где х - номер узла дерева, й - расстояние от корня до узла х, р - номер

предшествующего узла не обязательно кратчайшего пути в узел х.

Состояние процесса построения дерева на любом его этапе к представлено тройками (х, й(х), р(х)), х е I*. Начальное состояние процесса построения дерева соответствует тройке (5,0,5). Условие завершения процесса - (I* = 0) или (хк = ?), если ^ - конечная вершина пути. В любом случае к <| У | после завершения поиска пути 5 ^

Важно отметить, что кортежи Т(х, й, р) задают динамически порождаемые графы дерева кратчайших путей (проекция Т(х, й, р) ^ Тр (х, р)) и дерева расстояний (проекция

Т(х,й,р) ^ Т(х,й)). Учитывая, по определению II, уникальность атрибута х в исходном отношении Т (х, й, р) и его упомянутых проекциях, Т (х, й, р) = (х, й) © Т (х, р), где символ © обозначает операцию соединения отношений по атрибуту х . Отсюда следует, что для отображения результата построения дерева кратчайших путей достаточно использовать рутинный в современных технологиях баз данных механизм виртуальных представлений отношения Т(х, й, р) .

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

Т0 - размещение кортежей в памяти на физическом уровне;

Тх - справочник номеров (идентификаторов) начальных вершин дуг графа;

Т - таблица значений расстояния до вершин графа от его корневой вершины;

Т - справочник номеров начальных и конечных вершин дуг графа (инверсия графа

дерева кратчайших путей, требующаяся для реализации алгоритмов реоптимизации).

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

к0 - номер кортежа в таблице на физическом уровне;

7 о

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

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

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

таблицы представляет текущую позицию с определенным значением k0. Изменение значения

любого ключа упорядочения меняет соответствие k0 ^ kO без изменения k0 и выражения (2).

Поддержка понятия структурных индексов позволяет представить алгоритмы слежения за изменениями состояния сети средствами программирования реляционных баз данных.

Алгоритм мониторинга изменений дерева путей. Формирование в лесах подграфов графа транспортной сети дерева кратчайших путей с корнем в вершине 5 проводится по ранее рассмотренной схеме Дейкстры в представлении Td . Начальное состояние нового поиска -T0(x,d,p) = {(5,0,5)}. Далее, в представлении Tx организуется сканирование определяемой остающимися кортежами приоритетной очереди с целю построения дерева кратчайших путей. Процесс сканирования прерывается после достижения всех целевых вершин, перечисленных во множестве Y = {y | (?,?, y) е F . При этом целевые вершины могут встречаться на кратчайшем пути несколько раз и в любой момент времени исключаться из Y. Контроль необходимости продолжения поиска целевых вершин проводится после выделения при наличии из представления T (постоянной пометки) очередной вершины x .

После выборки очередной вершины из очереди в таблице отношения Td фиксируется позиция кортежа (x, dx,?) и в контексте отношения T проводится попытка расширения дерева в смежные вершины из множества {x1}. Если для некоторых вершин справедливо (y е x') л (y <£ Tx (x,?,?)), то в Tx добавляется новый кортеж (y,dx + cxy, x). Для вершин, включенных в Tx ранее, когда справедливо (y е x') л (y е Tx (x,?, ?)), выполняется попытка пересмотра кратчайшего пути: если dx + c <dy, то выполняется (y,?,?)^ (y,dx + cy) .

Изменения дуг сети, определяемые отношением R(x, y, w), должны быть учтены в новой версии графа Gx(x,y,w) . Пересмотр результата поиска кратчайшего дерева предлагается проводить посредством перестройки дерева, определяя начальное состояние по минимальному расстоянию от корня дерева до безусловно изменяемого поддерева с корнем xr = arg min k {dk | (k е Tx) л (k, ?, ?) е R)}. Это означает возврат в состояние выборки вершины xr из очереди и продолжение процесса ветвления по схеме Дейкстры для изменяемой части исходного дерева. Очевидно, что при равномерном распределении xr количество шагов (вычислительная сложность) процесса ветвления сокращается в среднем в два раза.

Процедура перестройки дерева характеризуется надежностью учета любых расширений условий ветвления и ограничений на структуру кратчайших путей. Тем не менее, при малых объемах изменений графа, последняя процедура может быть заменена одной из известных процедур реоптимизации [4, 6, 7] текущего дерева кратчайших путей по представлениям Tx и

T (в случае выполнения условий их корректного применения).

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

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

Встречный поиск методом бутстрэппинга. Известно, что в случае задач поиска кратчайшего пути между двумя вершинами целесообразно организовать встречный поиск на исходном графе и графе с инвертированными связями вершин. В результате вычислительная сложность поиска сокращается в два раза [4, 8, 9]. Рассмотрим далее способ реализации встречного поиска на реляционных представлениях модели сети и результата поиска.

Пометим элементы обозначения исходного графа символом '+', а инвертированного графа - символом '*'. Можно заметить, что требующиеся графы могут быть легко заданы виртуальными представлениями списка дуг исходного графа G(x, y, w), создаваемыми

необходимыми для бутстрэппинга структурами смежности FSF (G Gx) и BSF (G* = G ).

Пусть на исходном графе G+ указаны начальная и конечная вершины искомого кратчайшего пути 5 ^ t. Так как V+ П V* = 0, то встречный поиск можно вести порождением двух независимых волн поиска от корней деревьев на несвязном графе G+ G . Для этого достаточно одновременно начать процессы ветвления из вершин 5+ е V+ и t* е V *. Последнее соответствует формальному объединению графов фиктивной дугой 5+ ^ t , для которой w(5+, t*) = . Таким образом, расширенный граф GG оказывается проекцией двух виртуальных графов на список дуг G(x, y, w) . Последнее упрощает организацию поиска на динамических графах.

С целью различения процессов на G+ и G , результат поиска кратчайшего пути от вершины 5 к вершине t при встречном поиске будет представлен деревьями, где узлы идентифицируются конкатенацией номеров вершин исходного графа и признаками принадлежности к виртуальным графам G+ или G*: x5 = x+'+', xeV5; xt = x+'*', xeVt.

Здесь множества вершин V5 с V + и Vt с V* встречных деревьев формируются рекурсивным переносом на очередном шаге ветвления буквенными символами признаков принадлежности определенному дереву (направления поиска) от корней из начального состояния: s5 = 5+'+'; tt = t+'*'. Для этого представим переменные состояния процесса построения дерева кортежами расширенного отношения T(x, d, p) ^ T(x, d, p, q, z), где q - признак направления поиска (q e {'+','*'}) ; z - признак постоянной пометки узла дерева (z е {0,1}) .

Состояние процесса построения деревьев встречного поиска на любом его этапе к должно быть представлено пятерками (x,d(x),p(x),q(x),?),x eL*. Начальное состояние процесса построения деревьев соответствует пятеркам (5,0,5,'+',0) и (t,0,t,'*',0). Условие завершения процесса - (L* = 0) . При попытке постоянной пометки вершины x некоторого дерева, когда сопряженная вершина уже является постоянно помеченной [8], процесс приостанавливается1. После этого необходимо завершить порождение одного из деревьев до встречи с оставшимися помеченными вершинами сопряженного дерева с целью окончательного выделения вершины сопряжения кратчайших путей на встречно растущих деревьях [4, 9]. Далее, следует вернуться по обратному пути до конечной вершины в исходном графе, используя (1).

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

1 Ревотюк М.П., Хаджинова Н.В. Встречный поиск кратчайших путей на больших динамических графах методом бутстрэппинга. BIG DATA and Advanced Analytics = BIG DATA и анализ высокого уровня: сб. материалов VI Междунар. науч.-практ. конф. (Республика Беларусь, Минск, 20-21 мая 2020 г.). Минск: Бестпринт, 2020;(1):324-331. Revotjuk M.P., Khajynova N.V. Point-to-point searching of the shortest paths on the big dynamic graphs by the bootstrapping method. Proc. of VI Int. Conf. "BIG DATA and Advanced Analytics" (Republic Belarus, Minsk, 2020 May 20-21). Minsk: Bestprint, 2020;(1):324-331. (In Russ.)

Доклады БГУИР Вокывт БОШК 2020, Т. 18, № 5_2020, Уоь. 18, Мо. 5

Результаты и их обсуждение

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

Список дуг графа транспортной сети может быть задан вариантами представлений таблицы 0(х, у, w) - О0, структур смежности прямого и инвертированного графов - Ох и ^ . Потребность в памяти для представлений графа транспортной сети - о(т + п), где т =| У |, п =| Е |. Результат поиска кратчайших путей задается вариантами представлений отношения таблицы Т(х, й, р, q, z) - Т0, структур смежности прямого и инвертированного дерева кратчайших путей - Тх и Т , списком элементов приоритетной очереди Тй . Потребность в памяти для представления результата - О (п).

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

Заключение

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

Список литературы

1. Sun Y., Yu X., Bie R., Song H. Discovering time-dependent shortest path on traffic graph for drivers towards green driving. Journal of Network and Computer Applications. 2017;83:204-212.

2. Рубанов И.В., Баркетов М.С., Ковалев М.Я. Моделирование движения объектов без остановок по сети пересекающихся маршрутов. Информатика. 2018;15(1):21-33.

3. Рыбак В.А., Рябычина О.П. Система экологического мониторинга атмосферного воздуха. Доклады БГУИР. 2020;18(4):36-43.

4. Ferone D., Festa P., Napoletano A., Pastore T. Shortest paths on dynamic graphs: a survey. Pesquisa Operacional. 2017;37(3):487-508.

5. Pugliese L.D.P., Guerriero F. A survey of resource constrained shortest path problems: Exact solution approaches. Networks. 2013;62(3):183-200.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

6. Pallottino M.S., Scutelli M.G. A new algorithm for reoptimizing shortest paths when the arc costs change. Operations Research Letters. 2003;31(2):149-160.

7. Hooks E., Yang B. Updating paths in time-varying networks given arc weight changes. Transportation Science. 2005;39(4):451-464.

8. Nicholson T.A.J. Finding the Shortest Route between Two Points in a Network. The Computer Journal. 1966;9(3):275-280.

9. Ревотюк М.П., Кароли М.К., Хаджинова Н.В. Быстрый поиск кратчайших путей на графах с предопределенными решениями. Доклады БГУИР. 2014;4(82):73-79.

References

1. Sun Y., Yu X., Bie R., Song H. Discovering time-dependent shortest path on traffic graph for drivers towards green driving. Journal of Network and Computer Applications. 2017;83:204-212.

2. Rubanov I.V., Barketau M.S., Kovalyov M.Y. [Modeling movement of objects without stops in a network of crossing routes]. Informatika = Informatics. 2018;15(1):21-33. (In Russ.)

3. Rybak V.A., Ryabichina O.P. [Ecological monitoring system of the atmosphere]. Doklady BGUIR = Doklady BSUIR. 2020;18(4):36-43. (In Russ.)

4. Ferone D., Festa P., Napoletano A., Pastore T. Shortest paths on dynamic graphs: a survey. Pesquisa Operacional. 2017;37(3):487-508.

5. Pugliese L.D.P., Guerriero F. A survey of resource constrained shortest path problems: Exact solution approaches. Networks. 2013;62(3):183-200.

6. Pallottino M.S., Scutelli M.G. A new algorithm for reoptimizing shortest paths when the arc costs change. Operations Research Letters. 2003;31(2):149-160.

7. Hooks E., Yang B. Updating paths in time-varying networks given arc weight changes. Transportation Science. 2005;39(4):451-464.

8. Nicholson T.A.J. Finding the Shortest Route between Two Points in a Network. The Computer Journal. 1966;9(3):275-280.

9. Revotjuk M.P., Qaraleh M.K., Khajynova N.V. [Quick search of the shortest paths on the graph with a predetermined decision]. Doklady BGUIR = Doklady BSUIR. 2014;4(82):73-79. (In Russ.)

Вклад авторов

Все авторы в равной степени внесли вклад в написание статьи.

Authors' contribution

All authors equally contributed to the writing of the article.

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

Хаджинова Н.В., старший преподаватель кафедры информационных технологий автоматизированных систем Белорусского государственного университета информатики и радиоэлектроники.

Ревотюк М.П., к.т.н., доцент, доцент кафедры информационных технологий автоматизированных систем Белорусского государственного университета информатики и радиоэлектроники.

Шилин Л.Ю., д.т.н., профессор, декан факультета информационных технологий и управления Белорусского государственного университета информатики и радиоэлектроники.

Адрес для корреспонденции

220013, Республика Беларусь,

г. Минск, ул. П. Бровки, 6,

Белорусский государственный университет

информатики и радиоэлектроники

тел. +375-17-293-86-58;

e-mail: rmp@bsuir.by

Ревотюк Михаил Павлович

Information about the authors

Khajynova N.V., Senior Lecturer of Information Technologies in Automated Systems Department of Belarusian State University of Informatics and Radioelectronics.

Revotjuk M.P., PhD, Associate Professor, Associate Professor of Information Technologies in Automated Systems Department of Belarusian State University of Informatics and Radioelectronics.

Shilin L.Y., D.Sci., Professor, Dean of Faculty of Information Technologies and Control of Belarusian State University of Informatics and Radioelectronics.

Address for correspondence

220013, Republic of Belarus, Minsk, P. Brovka str., 6, Belarusian State University of Informatics and Radioelectronics tel. +375-17-293-86-58; e-mail: rmp@bsuir.by Revotjuk Mikhail Pavlovich

i Надоели баннеры? Вы всегда можете отключить рекламу.