En nog even inhakend, ik heb een stukje oude code teruggevonden om sudoku's deels mee op te lossen:
http://4bm.org/sudosol.php
Dit werkt met iteraties door meermaals op solve te klikken, en kan de meeste eenvoudige sudoku's aardig oplossen.
Het zoekt in eerste instantie naar geforceerde nummers. en daarna nog naar 'lone singles' in rijen en kolommen (maar niet in blokken).
Hoewel verre van volmaakt lost dit veel sudoku's zoals je ze vindt in puzzelbaadjes en dergelijke op. Soms lukt het niet gezien een aantal functies nog ontbreken (forced singles in blokken, detectie van forcing pairs en moeilijker). Toen ik het maakte had ik nog wel de intentie om in ieder geval forced singles in blokken op te lossen, maar het blijkt de meeste puzzelboekjes sudokus op te lossen zonder. Je kunt de kandidaat-nummers wel zien als het vastloopt en dan handmatig besluiten een nummer te kiezen.
Dit is overigens geen ideale sudouku oplosser voor computers: het pakt het probleem aan zoals een mens dan zou doen, zonder zaken te brute-forcen om een oplossing te verkrijgen. Zaken als forced pairs, triples, swordfishes en dergelijke moet je zelf uitvogelen, maar de triviale taken worden voor je gedaan.
Misschien is het wel aardig dit systeem uit te breiden voor het vinden van forced pairs/triplets/quadruplets en dergelijke. Dat zijn echter sudoku's die voor de gemiddelde mens nauwelijks oplosbaar zijn, en ik vraag me af of het dan nog efficienter is dan brute-forcen.