Solve 8 puzzle by breadth-first search, depth-first serach, lower-bound search.
Considered the cost of each step is 1.
Limited the depth considering the maximum number of moves is 31.
Use Manhattan distance and limit the depth.
You look at example.py and will know how to use this program.