I find I keep coming back to this application every time I learn of a new optimization technique!
This time, it's projection onto (non-)convex sets, e.g. the "difference map" algorithm which was previously used to solve Sudoku puzzles (which is of-course another problem amenable to Linear Programming).
Here's an animation of the solver for a 30x30 image (note this seems to be as large as I could make it, the tiling projection is memory intensive..) using 24 grayscale Smith tiles:

A slightly longer walk-through of the projections I used can be found here, and I've attached the source-code. See the full discussion here: https://community.wolfram.com/groups/-/m/t/2823307
Hope you find watching the algorithm trying to climb out of a local minimum as mesmerizing as I do!
Attachments: