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

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

CC BY
10
2
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
алгоритмы построения маршрута / кратчайший путь / графы / алгоритм Дейкстры / gpx-трек / route construction algorithms / shortest path / graphs / Dijkstra's algorithm / gpx-track

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Д.А. Крутько, В.В. Буряченко

Рассматриваются проблематика и подходы к автоматизированному поиску кратчайшего пути в трехмерном пространстве на территории Торгашинского хребта с использованием данных GPS-навигации.

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

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Д.А. Крутько, В.В. Буряченко

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

THE PROBLEM OF AUTOMATING THE HIKING ROUTES CONSTRUCTION IN THE KRASNOYARSK TERRITORY MOUNTAIN RANGES

The problems and approaches to the automated search for the shortest path in three-dimensional space on the territory of the Torgashinsky Range using GPS navigation data are considered.

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

УДК 004.021

ПРОБЛЕМА ПОИСКА КРАТЧАЙШЕГО ПУТИ В ТРЕХМЕРНОМ ПРОСТРАНСТВЕ НА ТЕРРИТОРИИ ТОРГАШИНСКОГО ХРЕБТА

Д. А. Крутько Научный руководитель - В. В. Буряченко

Сибирский государственный университет науки и технологий имени академика М. Ф. Решетнева Российская Федерация, 660037, г. Красноярск, просп. им. газ. «Красноярский рабочий», 31

E-mail:krutko.d00@gmail.com

Рассматриваются проблематика и подходы к автоматизированному поиску кратчайшего пути в трехмерном пространстве на территории Торгашинского хребта с использованием данных GPS-навигации.

Ключевые слова: алгоритмы построения маршрута, кратчайший путь, графы, алгоритм Дейкстры, gpx-трек.

THE PROBLEM OF AUTOMATING THE HIKING ROUTES CONSTRUCTION IN THE KRASNOYARSK TERRITORY MOUNTAIN RANGES

D. A. Krutko Scientific supervisor - V. V. Buryachenko

Reshetnev Siberian State University of Science and Technology 31, Krasnoyarskii rabochii prospekt, Krasnoyarsk, 660037, Russian Federation E-mail:krutko.d00@gmail.com

The problems and approaches to the automated search for the shortest path in three-dimensional space on the territory of the Torgashinsky Range using GPS navigation data are considered.

Keyword: route construction algorithms, shortest path, graphs, Dijkstra's algorithm, gpx-track.

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

Построение маршрута для туризма сводится к задаче поиска кратчайшего пути от одной вершины графа до другой [1]. Данная задача является одной из самых популярных задач в теории графов, следовательно, существует большое количество алгоритмов, позволяющих ее решить. Граф представляет собой абстрактный объект из множества вершин (узлов) и набора ребер - связей между парами вершин. Маршруты, которые состоят из связанных между собой перекрестков являются графом. Рассмотрим наиболее подробно такие алгоритмы, как: алгоритм Дейкстры, алгоритм Левита и алгоритм Флойда-Уоршелла.

Секция «Программные средства и информационные технологии»

Алгоритм Дейкстры - один из самых известных алгоритмов для поиска кратчайшего пути между вершинами графа [2]. Основная идея заключается в том, что алгоритм на каждом шаге «посещает» одну вершину и пытается минимизировать расстояние до соседних вершин. Работа алгоритма завершается, когда все вершины посещены.

У алгоритма Дейкстры имеется ряд достоинств, таких, как высокая скорость работы и высокая точность результата. К недостаткам алгоритма Дейкстры относится высокая вычислительная сложность. Сложность алгоритма Дейкстры зависит от способа нахождения вершины, способа хранения множества непосещённых вершин и способа обновления меток. Отсюда получаем, что реализация в данном методе потребует О(Ы) и 0(1) единиц соответственно. Учитывая, что первая операция выполняется N раз, а вторая в зависимости от построенного графа, получается сложность 0(Ы*Ы+М), где N - количество вершин, а М -константа, зависящая от построенного графа.

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

Установлено, что для графов с «геометрическим» происхождением, т.е. для графов, построенных на основе транспортных сетей и реальных расстояний, метод Левита оказывается наиболее быстрым. Помимо этого, он выигрывает и по простоте реализации.

Сложность алгоритма Левита в худшем случае составляет 0(Ы2 *М). Чтобы достичь такого времени работы необходимо, чтобы в графе ребра располагались в лексикографическом порядке. Более реальной оценкой данного метода является среднее время, а именно сложность 0(Ы * М). Однако, на реальных графах алгоритм Левита не многим уступает алгоритму Дейкстры.

Алгоритм Флойда-Уоршелла используется для нахождения кратчайших расстояний между всеми вершинами взвешенного графа без циклов с отрицательными весами с использованием метода динамического программирования. Недостаток алгоритма Флойда-Уоршелла в том, что он определяет только кратчайшее расстояние между всеми парами вершин, но не сохраняет информации о кратчайших путях, что необходимо в задачах построения маршрута [4].

Сложность алгоритма Флойда-Уоршелла имеет порядок 0(Ы3), поскольку в ней практически нет ничего, крове вложенных друг в друга трех циклов. Алгоритм применим к графам с произвольными, в том числе с отрицательными весами. Таким образом, он является более общим в сравнении с алгоритмом Дейкстры, который не работает с отрицательными весами ребер.

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

- низкая временная сложность работы алгоритма;

- высокая простота реализации алгоритма для мобильного приложения;

- работа для графов с положительными весами;

- точность результата;

- сохранение информации о кратчайших путях.

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

достоинствами алгоритма Дейкстры является высокая скорость работы и точность результата.

Библиографические ссылки

1. Проблема автоматизации построения схем маршрутов пешего туризма в горных массивах Красноярского края / Д.А. Крутько // Материалы VII международной научно-практической конференции «Актуальные проблемы авиации и космонавтики». - Красноярск, 2021. - Т. 2. - С. 260 -262.

2. Базовые алгоритмы нахождения кратчайших путей во взвешенных графах [Электронный ресурс]. URL:https://habr.com/ru/post/119158/ (дата обращения: 01.03.2022).

3. Алгоритм Левита - алгоритмы поиска на графах [Электронный ресурс]. URL:https://amp.ww.google-info.org/3957083/1/algoritm-levita.html (дата обращения: 02.03.2022).

4. Алгоритм Флойда-Уоршелла [Электронный ресурс]. URL: https://habr.com/ru/post/105825/ (дата обращения: 13.03.2022)

© Крутько Д. А., 2022

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