Как найти кратчайший путь: математик решил задачу, над которой ученые бились 40 лет
Одна из классических алгоритмических задач связана с вычислением кратчайшего пути между двумя точками. Казалось бы, это должно быть довольно просто, но у программ возникают проблемы, если маршрут проходит по изменяющейся сети — будь то дороги и развязки или потоки информации. Многие сталкивались с тем, что навигаторы иногда ведут водителя по не самому короткому маршруту, из-за чего из помощников эти программы превращаются в мешающий софт.
Датский ученый разработал алгоритм, который способен найти оптимальный путь между двумя точками. Под оптимальным в данном контексте понимается алгоритм, который тратит как можно меньше времени и памяти компьютера на вычисление наилучшего маршрута в сети. Это относится не только к дорожным и транспортным сетям, но и к интернету или любому другому типу сетей.
Исследователи представили сеть в виде так называемого динамического графа. Он представляет собой абстрактное представление сети, состоящей из ребер и узлов. Если переводить это на транспортную аналогию, то ребрами будут дороги, а узлами — перекрестки. Динамичный граф может изменяться с течением времени, поэтому новый алгоритм способен учитывать такие изменения.
Затрачивая минимальное количество вычислительных ресурсов программа определяет самый быстрый путь, учитывая, например, изменение длины ребер графа во времени. Для транспортной сети это эквивалентно образованию затора. Также, по словам авторов исследования, разработку можно использовать для оптимизации обработки данных — алгоритм позволит снизить время и вычислительные ресурсы, необходимые для операций с информационными потоками.
Исследование было представлено на конференции IEEE Symposium on Foundations of Computer Science.
Как составить самый короткий маршрут, если дорожная ситуация постоянно меняется? Теперь ученый создал алгоритм, который способен учитывать все изменения и эффективно обрабатывать поступающую информацию, затрачивая меньше времени и ресурсов, чем все современные программы