Im having trouble understanding which node/state should be expanded next in an A* search tree when the evaluation function (f(n) = g(n) + h(n)) evaluates the same for two nodes.
Example 1
my understanding is that the frontier is stored as a priority queue ordered by f and therefore as the nodes on the frontier have the same value the the node added to the queue first will be evaluated.
Example 2
In this example the evaluation function of B was less than C and therefore expanded but generated a node D with the same f as C, in this case what node would be chosen for expansion next?
(I realise this question should probably have been posted on cstheory.stackexchange but I don't have enough reputation to post images, apologies)
Thanks in advance