Solvers that need less known sides to solve a tile.
Solvers that finds a fit by trying each side. It can only find a fit if all open or closed sides are known.
Brute force checks each and every possible position until there is a solution. Backtracking does this as well, but more intelligent.