Backwards Chess Program Is there a chess program where you can create a position and the program creates a game, expecting the best possible moves to get there, or the most common?

A problem I would see is some positions might require a terrible move to get there, or have really extensive games to get to that point.

I feel like this could create creative attacks



-Most common= most frequent move, such as how e4 is commonly responded with e5 even though stockfish rates c5 (Sicilian defense) as a higher value choice via the Aplha-Beta Pruning Algorithm.

-"Best" move= pretty much what stockfish/Komodo/ Houdini 
Would choose as their algorithm chooses the highest value, safe move, as their programs can go deeper than our abilities
I think this is doable. However, it will depend on the number of pieces in the required position.
You see that many openings can be reached in multiple ways
(X,Y,Z,...) -&gt; P; where X, Y and Z are the sets of moves that get you from the initial position to the required position P.

This problem is NP-hard, because you can never know for sure which road was selected!

The best way for you is to study the positions of known games (which is most of the time is the case). Then search for [1] the game and play it back from the beginning.