Project: 15 Puzzle

Github: 15puzzle

Link: puzzle.michaelkim.me

About

This is a solver for the generalized 15-puzzle written in C++. It can optimally solve any p x q sized board, although it becomes very slow for boards larger than 4 x 4, and some 4 x 4 boards with long solutions.

To solve a puzzle, it uses the IDA* algorithm with an additive disjoint pattern database.

This solver has also been ported to WebAssembly using Emscripten here.

Read more about the solver on my blog post.