This is from a practice AI exam from University of Berkeley, California.
Consider the state space graph shown above. A is the start state and G is the goal state. The costs for each edge are shown on the graph. Each edge can be traversed in both directions. Note that the heuristic h1 is consistent but the heuristic h2 is not consistent.
For each of the following graph search strategies (do not answer for tree search), mark which, if any, of the listed paths it could return. Note that for some search strategies the specific path returned might depend on tie-breaking behavior.
The search algorithms were depth first, breadth first, uniform cost, A* with h1 and A* with h2. The "listed paths" are A-B-D-G, A-C-D-G, and A-B-C-D-F-G
This is the search tree I built from the graph(with various heuristics and action costs):
The solution says that DFS would return A B D G, A C D G, and A B C D F G because "DFS can return any path"
I can understand that if the tie breaker were to be the earlier letter in the alphabet, DFS would return A B C D E G. If the tie breaker were the later letter in the alphabet, DFS would return A C D G. But I don't understand under what circumstance DFS would return A B D G or A B C D F G.
I also thought that DFS expands the deepest node and returns the solution that way. Is it true that it can returns any path solution? If so, how?