Boggle-oplosser
Jaren geleden heb ik eens een Boggle-oplosser geprogrammeerd in PHP. Er stonden al een hoop andere op internet (Untangle, NetBoggle, Boggle Solver, Automated Boggle Solver, en nog veel meer), maar toch niet helemaal wat ik zocht. Om te beginnen vinden de meeste alleen Engelse woorden, en speel ik Boggle in het Nederlands. En verder was de layout van een stel andere net niet mooi genoeg naar mijn wensen.
Natuurlijk vond ik het ook leuk om eens een stukje te programmeren. De maker van een van de bestaande programma’s heeft een uitgebreide beschrijving van de werking van zijn programma online gezet. Deze beschrijving heb ik uitgewerkt in een objectgeoriënteerd stukje PHP. Nu is PHP een geïnterpreteerde computertaal, en daardoor niet ontzettend snel. Toen ik mijn code op mijn studentenwebsite bij Wiskunde zette, was het altijd spannend of de oplossing binnen 30 seconden te voorschijn kwam. Na 30 seconden stopte de webserver (grit) namelijk met rekenen. Daardoor heeft de solver nooit het grote publiek bereikt.
Inmiddels, 6 jaar later, is mijn website al drie keer verhuisd, en ook de boggle-machine is er nog. Ik heb ‘m vanochtend even aangepast aan de nieuwste PHP-eisen, waardoor hij het weer doet. En gelukkig is de computer van m’n huidige website-hoster een stuk sneller dan ollie.
Het programma, nog steeds met de werknaam losop.php is te gebruiken via http://www.tammo80.nl/losop.php?board=aagrmvndifesarte. Om een ander boggle-bord te proberen, moet je de letters in het adres aanpassen (daar heb ik nog geen mooie interface voor gemaakt, maar wie weet).
Update 2014: Ik heb nu ook een iPhone-variant gemaakt: . Je kunt met je iPhone automatisch de letters scannen, en ziet het resultaat dan ook in de app.
Leuk probleempje inderdaad! En het werkt snel.
Maar waarom die heap? Een willekeurige array/lijst/uw-favoriete-set volstaat toch als je toch geen speciale prioriteiten toekent? Of heb ik te snel gelezen…?
Comment by Arthur — 28 February 2010 @ 20:31
Als ik het me zo snel goed herinner, is de heap ervoor dat alles netjes op alfabetische volgorde gebeurt. Maar ik zoek het nog voor je uit.
Comment by tammojan — 28 February 2010 @ 20:47
Hoi Tammojan!
Wat een prachtig programmaatje!
Ik ben zelf al de hele avond op zoek naar het boggle spel in het Nederlands online. Maar ik kan het helemaal nergens vinden! Heb jij een tip?
Groetjes,
Brigitte
Comment by Brigitte — 4 May 2011 @ 00:36
Hey, leuk dat je dit nog altijd online hebt staan.. kun je het misschien ook uitbreiden, dat het board customizable is zoals bij http://www.wordsolver.co.uk/?
Comment by James — 8 May 2013 @ 11:30
Dat kan geloof ik wel, ik zal kijken of ik er een keer tijd voor heb :)
Comment by tammojan — 8 May 2013 @ 12:38
top! ik maak er best vaak gebruik van.
Comment by James — 9 May 2013 @ 18:04
Ha, het blijkt allang klaar te zijn (maar ik was vergeten dat ik het al gemaakt had). Je kunt als extra parameter een n meegeven, die de grootte van het bord is. Voorbeeldje:
http://www.tammo80.nl/losop5.php?board=aagrmvndifesarterjeleqast&n=5
Comment by tammojan — 9 May 2013 @ 21:00
ah! super! ik wist dat het niet heel lastig kon zijn aangezien je natuurlijk al specifieke waarden aan het 4×4 board moest geven.
hartstikke bedankt voor je werk :D
Comment by James — 10 May 2013 @ 19:11
Echt knap werk, bedankt voor uw gestoken tijd hierin. Er valt mij alleen iets op als ik de iPhone applicatie vergelijk met de feature op de website. De app pakt wel vervoegingen van werkwoorden mee, maar de site zelf niet helaas. Enig idee waarom? Bij uw bord van Ruzzle, die op YouTube staat bijvoorbeeld, kwam toedien(t) helemaal niet naar voren als oplossing op uw site. In tegenstelling tot uw app. Ik hoor graag van u!
Comment by Bob — 23 May 2014 @ 16:59
Klopt, ze gebruiken een verschillende woordenlijst. De woordenlijst op de website is meer geënt op Boggle, en in het bijzonder de ‘Dijkema-regels’ over toegestane woorden daar. Dat wil zeggen dat vervoegingen volgens mij bij Boggle niet mogen.
De app gebruikt een andere woordenlijst, van opentaal.org, waarin net als in Ruzzle alle vervoegingen wel staan.
Comment by tammojan — 23 May 2014 @ 20:43