Mortal Coil is a fun programming challenge at http://hacker.org/coil
I've spent a bunch of time on this, doing both algorithm design and (python!) optimization.
There are a few approaches.
There is also lots of caching that can be done.
Nobody I know has gotten far with abstract analysis beyond simply looking for dead ends - but there are clearly some opportunities for it.
But in the end, computers are so fast, why not just try lots of combinations?
The CEO of Roblox tweeted out an invite for an interview for people who do well enough at it! https://twitter.com/davidbaszucki/status/667173653574914050?lang=en