Title: Dynamic programming subroutines based on the Dijkstra algorithm for finding minimum cost paths in directed networks