I am currently working on an indoor routing project for a multilevel building.For this, I want to find a shortest path over multiple level (or 'floors'). I have read some papers on A* in such an environment and I think I understand why it is needed to first let the algorithm calculate the shortest path to the next structure to overcome the vertical movement. As an example, consider two level of which the source node is on the first floor and the destination on the second. First the algorithm should calculate the path to the closest elevator in the first floor. However, I only THINK that I have understood it, but I cannot find any proof of it if I'm really correct. Maybe one of you could have a short look at the following image. This image shows the case where I think A* would not find a path as the vertical movement structure (e.g. the elevator, which would be here the grey nodes) is not set as a destination. A* would 'heat in the wrong direction' and ignore the nodes which actually would lead to the destination. Here, in the image, it ignores the outgreyed nodes which are representing the elevator. Is this a correct example for the difficulty you face when applying A* on a multilevel network?
I understand, that the used heuristic (here Euclidean distance) would lead the algorithm to, roughly spoken, 'search in the wrong space' in which it cannot find the destination node. Further, the heuristic prevents to search in other locations, like a barrier.