Jag var på besök hemma hos föräldrarna nu i helgen. Eftersom blixten hade slagit ner och förstört i princip alla elektroniska apparater i huset, fick jag roa mig med att spela ett gammalt hederligt brädspel jag hittade längst in i bokhyllan.
Det är här mitt problem kommer in. Jag har tillbringade två dagar i sträck med att försöka lösa detta brädspel som heter Eremit. Men även om jag har varit jäkligt nära att klara spelet ett par hundra gånger har jag aldrig lyckats fullt ut. Jag vänder mig därför till Er, genier och fuskare på Swec, och efterlyser ett program som kan bruteforca ut en smart lösning.
Jag gjorde en snabb uppskattning och kom fram till att en vanlig bruteforce måste ta väldigt många dagar eftersom kombinationerna är otroligt många. Så det krävs en smart algoritm antagligen. Något jag inte har lyckats klura ut.
Brädspelet fungerar så här:
Man har en plan beståendes av 37 små hål. I var och ett av 36 av hålen ligger en kula. Endast mitthålet är tomt från början. Detta är alltså startläget.
Nu går spelet ut på att man skall göra sig av med så många kulor som möjligt. Det bästa man kan få är en kula kvar. Kanske 40 ggr har jag lyckats få två kulor kvar, men aldrig bara en.
Man får bort en kula genom att välja en valfri kula och hoppa över en annan. Den kulan man hoppar över plockas då bort. Man får inte hoppa diagonalt. Enbart vågrätt eller lodrätt. Och självklart måste kulan man 'hoppar' med landa i ett tomt hål.
Man får bara hoppa över en kula åt gången.
Det är alla regler i spelet.
Härmed utlyser jag detta till en programmeringstävling (eller i alla fall hoppas på att någon ser utmaningen i att skriva ett program som bruteforcar fram en bra lösning). Jag lovar en ljummen folkis till försten som kan presentera en lösning. Och skriv gärna hur ni gick till väga.
Edit:
Hittade en bild som kanske beskriver spelet lite bättre: