If I have finished implementing the A* algorithm in a maze for finding the shortest path to a single goal(just like the pacman game), how should I improve my current heuristic(manhattan distance to the goal + traveling cost so far from the start) so that my algorithm will support multiple goals in a maze. Basically, I want to find the shortest path to travel through all goals in the maze. In order to make sure the path is optimal, the heuristic function needs to be admissible assuming we ignore consistency in the problem.
I know this is like the traveling salesman problem, but right now I am only dealing with a relatively small amount of data, so I want to keep using the A start algorithm.
Any thoughts are welcome. Thanks!