У меня есть этот код:
link(a,b,4).
link(a,c,2).
link(b,g,5).
link(c,g,6).
link(c,d,5).
link(d,g,3).
path(S,D,TDist):-
link(S,D,TDist).
path(S,D,TDist):-
link(S,X,TD1), path(X,D,TD2), TDist=TD1+TD2.
Это будет следовать стратегии поиска в глубину, но в результате я получу все пути и не покажу, какой из них самый короткий. Можно ли еще использовать эту стратегию и найти кратчайший путь? если нет, какую стратегию поиска использовать? и как я могу это реализовать.