Как найти кратчайший путь: математик решил задачу, над которой ученые бились 40 лет

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

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

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

РЕКЛАМА – ПРОДОЛЖЕНИЕ НИЖЕ

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

Исследователи представили сеть в виде так называемого динамического графа. Он представляет собой абстрактное представление сети, состоящей из ребер и узлов. Если переводить это на транспортную аналогию, то ребрами будут дороги, а узлами — перекрестки. Динамичный граф может изменяться с течением времени, поэтому новый алгоритм способен учитывать такие изменения.

РЕКЛАМА – ПРОДОЛЖЕНИЕ НИЖЕ

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

Исследование было представлено на конференции IEEE Symposium on Foundations of Computer Science.