Linear search algorithm for strongly connected components in directed graphs based on the analysis of the matrixs transitive closure of binary relations

Анотація

Context. The relevance of the article is due to the need for further development of simple algorithms for analyzing the structural connectivity of network objects, in reducing the computational complexity and increasing the functional capabilities of such algorithms. The linear algorithm proposed in the article can be applied: in urban and rural transport route planning systems; in solving various types of problems related to carrying out restoration work on network objects after their destruction and the loss of certain connections between the elements of such objects (power supply systems, communication systems, transport networks, etc.); in developing options for effectively destroying key objects of the enemy’s critical infrastructure; in analyzing social networks for grouping individuals into groups by interest, etc. Objective. The goal of the work is to develop a linear algorithm for searching for strongly connected components in the structure of network objects, which is resistant to changes in the structure of objects and has a polynomial computational complexity. Method. The physical object to be studied is modeled by a connected directed graph. To determine the structure of the model graph components of strong connectivity, the idea of analyzing the presence of direct and reverse transitive closures between all pairs of vertices of the model graph was applied. Since there is a route (or arc) connecting them between all pairs of vertices included in any component of strong connectivity, then in the matrix of transitive closures of binary relations of such a graph there will always be unit blocks (transitivity compactions). Individual elements of these blocks in the matrix of transitive closures are scattered in a certain way. By analyzing the matrix for the presence of identical rows and identical columns, it is possible to establish their belonging to certain unit blocks. After such analysis and grouping the corresponding rows and columns into unit blocks, it is possible to determine the number of components of strong connectivity, as well as the index (vertex) composition of each component. To construct a matrix of transitive closures of binary relations, any of the known algorithms can be used, as discussed in the article. Therefore, the linear algorithm proposed in this article is conventionally divided into two main stages: the first is the search for transitive closures of binary relations of a model directed graph; the second is the determination of the matrix of inversereachability of the graph, the determination of the matrix of mutual reachability, and the search for unit blocks in the latter by lining them up on the main diagonal of the matrix. Results. 1) A theoretical basis for analyzing the matrix of transitive closures of binary relations of a model directed graph has been developed in order to determine the quantitative and index composition of strongly connected components in its composition; 2) In terms of graph theory, the search for strongly connected components in the structure of a network object is formalized; 3) The developed algorithm was verified for its ability to determine strongly connected components in the structure of a directed graph. Conclusions. Theoretical studies and a number of experiments confirm the possibility of using the proposed algorithm in the tasks of structural analysis of network objects. Since the well-known provisions of graph theory were used in the theoretical studies, which are interpreted unambiguously in this theory, the absence of any probabilistic processes allows us to consider the developed algorithm accurate. Polynomial estimates of its computational complexity allow it to be used in real-time scale.

Опис

Актуальність. Актуальність статті обумовлюється потребою у подальшому розвитку простих алгоритмів аналізу структурної зв’язності мережевих об’єктів, у зменшенні обчислювальної складності і збільшенні функціональних можливостей таких алгоритмів. Запропонований у статті лінійний алгоритм може бути застосований: у системах планування маршрутів руху міського та позаміського транспорту; у ході розв’язання різного роду задач, пов’язаних із проведенням відновлювальних робіт на мережевих об’єктах після їх руйнування і втрати певних зв’язків між елементами таких об’єктів (системи енергопостачання, системи зв’язку, транспортні мережі тощо); у ході вироблення варіантів щодо ефективного ураження ключових об’єктів критичної інфраструктури противника; під час аналізу соціальних мереж на предмет групування індивідів у групи за інтересами тощо. Мета роботи – розроблення лінійного алгоритму для пошуку в структурі мережевих об’єктів компонент сильної зв’язності, стійкого до змін структури об’єктів та такого, що має поліноміальну обчислювальну складність. Метод. Фізичний об’єкт, що підлягає дослідженню моделюється зв’язним орієнтованим графом. Для визначення в структурі модельного графа компонент сильної зв’язності застосовано ідею аналізу наявності прямих і зворотних транзитивних замкнень між всіма парами вершин модельного графа. Оскільки між всіма парами вершин, що входять в будь-яку компоненту сильної зв’язності, існує маршрут (або дуга), що їх зв’язує, то в матриці транзитивних замкнень бінарних відношень такого графу завжди існуватимуть одиничні блоки (ущільнення транзитивності). Окремі елементи цих блоків в матриці транзитивних замкнень розкидані певним чином. Аналізуючи матрицю на наявність однакових за складом рядків та однакових стовпців, можна встановити їх приналежність до певних одиничних блоків. Після такого аналізу і групування відповідних рядків і стовпців в одиничні блоки можна визначити кількість компонент сильної зв’язності, а також індексний (вершинний) склад кожної компоненти. Для побудови матриці транзитивних замкнень бінарних відношень можна застосовувати будь-який з відомих алгоритмів, про що йдеться в статті. Отже, лінійний алгоритм, що пропонується в цій статті, умовно ділиться на два основні етапи: перший – пошук транзитивних замкнень бінарних відношень модельного орієнтованого графа; другий – визначення матриці зворотних досяжностей графа, визначення матриці взаємних досяжностей, і пошук в складі останньої одиничних блоків шляхом вишиковування їх на головній діагоналі матриці. Результати. 1) Розроблено теоретичну основу аналізу матриці транзитивних замкнень бінарних відношень модельного орієнтованого графа з метою визначення в його складі кількісного і індексного складу компонент сильної зв’язності; 2) В термінах теорії графів формалізовано пошук компонент сильної зв’язності в структурі мережевого об’єкта; 3) Виконано верифікацію розробленого алгоритму на його здатність визначати в структурі орієнтованого графа компоненти сильної зв’язності. Висновки. Проведені теоретичні дослідження та низка проведених експериментів підтверджують можливість використання пропонованого алгоритму в задачах структурного аналізу мережевих об’єктів. Оскільки у ході теоретичних досліджень використані добре відомі положення теорії графів, які трактуються в цій теорії однозначно, відсутність будь-яких ймовірнісних процесів, дозволяють вважати розроблений алгоритм точним. Поліноміальні оцінки його обчислювальної складності дозволяють його використовувати в масштабі реального часу.

Бібліографічний опис

Linear search algorithm for strongly connected components in directed graphs based on the analysis of the matrixs transitive closure of binary relations / V. Batsamut, Y. Bashkatov, D. Morkvin, D. Tolstonosov, B. Sakhnevych, Y. Solodun // Radio Electronics, Computer Science, Control. – 2026. – № 2. – P. 148–157.

Колекції

Підтвердження

Рецензія

Додано до

Згадується в