ShortPath algoritm