Einzelnen Beitrag anzeigen

Benutzerbild von JasonDX
JasonDX
(CodeLib-Manager)

Registriert seit: 5. Aug 2004
Ort: München
1.062 Beiträge
 
#8

Re: Sudoku Zufallsgenerator mit Anzeige in 9*9 Stringrid

  Alt 28. Mai 2010, 00:39
Zitat von Delphi-Narr:
Wenn man nicht mehr als bis zu 40 Felder löscht, sollte sich kein Problem ergeben.
Ganz im Gegenteil. Als Beispiel ein 2x2-Sudoku:
Code:
xx 34
34 12
43 21
xx 34
Dieses hat bereits 2 verschiedene Lösungen, obwohl fast alle Zahlen eingetragen sind. Natürlich machts für die Lösbarkeit keinen Unterschied (allerhöchstens für die Schwierigkeit), aber zumindest nach eigenem Empfinden ist die Uneindeutigkeit eines Logikpuzzles definitiv spielspaßraubend. Insb. wenn du dann (bisher) nur eine Lösung als richtig anrechnest ist eine solche Situation mindestens suboptimal
Einen effizienten Algorithmus, eindeutige Sudokus zu generieren gibts AFAIK (noch) nicht. Die Holzhammermethode wäre natürlich, alle möglichen Lösungen zu berechnen. Ein anderer Weg wäre, das Sudoku auf Aussagenlogik zurückzuführen und es mit einem Implikationsgraphen zu probieren. Die letzte Möglichkeit die mir einfällt wäre eine Annäherung, d.h. zumindest bestimmte Fälle von mehrfachen Lösungen zu vermeiden. Situationen wie oben im 2x2-Sudoku kann man relativ leicht feststellen und durch hinzufügen einer Zahl lösen. Eine Garantie, dass das Sudoku damit eine eindeutige Lösung hat, ist das definitiv nicht; Aber die für den Spieler (IMO) nervigen Situationen kann man damit eliminieren. (Wenn das Puzzle zwar mehrere Lösungen hat, aber mit einer frühen Entscheidung des Spielers nur eine Lösung möglich ist, merkt der Spieler meist gar nicht, dass es noch andere gäbe).

greetz
Mike
Mike
Passion is no replacement for reason
  Mit Zitat antworten Zitat