This is a great article on that — https://www.redblobgames.com/pathfinding/a-star/introduction.html (in russain).
It tells about Dijkstra, Breadth-first, Greedy and A* algorithms.
It’s all about optimization of one travel.
To optimize your entire network you should try to use Aint Colony algorithm — http://rain.ifmo.ru/cat/data/theory/unsorted/ant-algo-2006/article.pdf (it’s in russian). Another link to this PDF file — aca