
Original version from This story appeared in Quanta magazine.
If you want to solve a trimmable problem, it often helps organize. You might, for example, broke the problem on pieces and get rid of the easiest pieces first. But this type of sort has costs. You can finish too much time you put pieces in order.
This dilemma is especially relevant to one of the most informatics in Informatics: Finding the shortest path from a certain starting point in the network on any other point. It is like a Suped-Up version of the problem you need to solve every time you move: learning the best path from your new home for work, gym and supermarket.
“The shortest trails are a wonderful problem with which anyone in the world can connect with,” said Mikkel Thorup, a computer scientist at the University of Copenhagen.
Intuitively, it should be easiest to find the shortest path to nearby destinations. So, if you want to design the fastest possible algorithm for the shortest problems, it seems to be reasonable to start finding the closest point, and then next closest and so on. But to do this, you have to understand multiple times which point closest. You will arrange points per distance as you go. There are basic speed limitations for any algorithm that follows this approach: you can’t go faster than the time to be sorted.
Fourty years ago, researchers who design the shortest algorithms of the trails have launched this “sorting barrier”. Now the researcher team designed a new algorithm that breaks him. It does not sort, and works faster than any algorithm that makes it.
“The authors were funny in thoughts that they could break this barrier,” Robert Tarjan said, a computer scientist at the University University. “It’s an amazing score.”
Knowledge limit
To analyze the shortest paths problematic, researchers use language charts-networks or nodes, connected lines. Each connection between nodes is marked with a number called its weight, which can represent the length of that segment or time required to switch. There is usually a lot of routes between any two nodes, and the shortest one is whose weight is added to the smallest numbers. Given the chart and specific “source” node, the goal of the algorithm is to find the shortest path to each other node.
The most famous shortest algorithm, was designed by the Pionic Computer Scientist Edsger Dijkstra in 1956. year, the source begins and works outside step by step. It is an effective approach, because knowledge of the shortest road to the nearby nodes can help you find the shortest paths to distant. But because the end result is the sorted list of the shortest trails, the sort barrier sets the fundamental limit on how fast the algorithm can run.




