The MIP formulation of the puzzle is provided as a jupyter notebook. However, because of some math expressions, the jupyter notebook may not get rendered properly depending on where you are trying open it. So we provide a PDF version as well.
If you're only looking for the solution, it's here: solution