change relatedNodes from set to a list for shortest path calculation
use DijkstraShortestPath method findPathBetween()