Messen der Schwierigkeit eines Str8ts
Posted: Sunday 13. June 2010, 13:24
Trephanor:
1. Zeilen-Spalten-Regel
2. Compartment-Check (Loop)
3. Hidden single
4. Paare (Loop)
5. Stranded digits (Loop)
6. Tripel
7. Hidden pairs/triples (noch nicht implementiert)
8. weiß ich noch nicht
9. Trial and Error (wird gerade implementiert)
Werden in einer Stufe Lösungen gefunden, so wird der Zähler um Anzahl_Lösungen x Lösungsstufe erhöht.
In den Stufen, die mit Loop gekennzeichnet sind, wird die Stufe solange wiederholt, wie sich die Zahl der Kandidaten reduziert. Jede Loop erhöht den Zähler um einen Punkt.
Sind alle Lösungslevel durchlaufen, ohne eine Lösung gefunden zu haben, wird nochmal von vorne gestartet, wenn sich die Zahl der Kandidaten verringert hat. Dies gibt weitere 5 Punkte.
Ist auch das nicht der Fall, wird abgebrochen. An dieser Stelle wird dann später der Trial-and-Error-Solver aufsetzen.
Damit wird folgendes erreicht:
Wenn mit der Zeilen-Spalten-Regel sofort 5 Lösungen gefunden werden, gibt das 6 Punkte (1 Loop, 5 Lösungen in Level 1). Werden die 5 Lösungen jeweils eine nach der anderen gefunden, d.h. in 5 Loops, dann gibt es 10 Punkte.
Die Ziffern aus höheren Leveln ergeben entsprechend mehr Punkte.
Ob die so ermittelten Schwierigkeiten stimmen (d.h. mit dem mittleren subjektiven Empfinden der Rätsellöser übereinstimmen), ist schwer zu sagen. Mit meinem persönlichen Empfinden stimmt das schon ziemlich gut.
Was noch nicht so richtig zutreffend bewertet wird, ist der Compartment Check: da ich den sehr präzise mache, egal ob eine Straße schon Ziffern enthält oder nicht, werden leichte und schwierig zu sehende Sachverhalte gleich bewertet. Vielleicht ändere ich das nochmal, um es dem menschlichen Vorgehen besser anzupassen.
Für die beiden heutigen ergibt sich:
Symmetrisch: 3 Sterne Nr. 301
Asymmetrisch: 2 Sterne Nr. 302
Mein Solver arbeitet in folgender Sequenz:Hier ein kleiner Vorschlag: Man berechnet die Sterne aufgrund der Häufigkeit der notwendigen gewichteten Lösungsarten. Dazu müsste man aber alle möglichen Lösungswege erst einmal identifizieren und bewerten. Ein kleines Beispiel:
J6 oben hätte eine Schwierigkeit von 0(S0), da direkt einsetzbar.
G8 hätte eine Schwierigkeit von 1 (S1), da man eindeutig aufgrund der Zeile von Beginn an die richtige Zahl einsetzen kann, dies aber nicht sofort ersichtlich ist.
usw.
1. Zeilen-Spalten-Regel
2. Compartment-Check (Loop)
3. Hidden single
4. Paare (Loop)
5. Stranded digits (Loop)
6. Tripel
7. Hidden pairs/triples (noch nicht implementiert)
8. weiß ich noch nicht
9. Trial and Error (wird gerade implementiert)
Werden in einer Stufe Lösungen gefunden, so wird der Zähler um Anzahl_Lösungen x Lösungsstufe erhöht.
In den Stufen, die mit Loop gekennzeichnet sind, wird die Stufe solange wiederholt, wie sich die Zahl der Kandidaten reduziert. Jede Loop erhöht den Zähler um einen Punkt.
Sind alle Lösungslevel durchlaufen, ohne eine Lösung gefunden zu haben, wird nochmal von vorne gestartet, wenn sich die Zahl der Kandidaten verringert hat. Dies gibt weitere 5 Punkte.
Ist auch das nicht der Fall, wird abgebrochen. An dieser Stelle wird dann später der Trial-and-Error-Solver aufsetzen.
Damit wird folgendes erreicht:
Wenn mit der Zeilen-Spalten-Regel sofort 5 Lösungen gefunden werden, gibt das 6 Punkte (1 Loop, 5 Lösungen in Level 1). Werden die 5 Lösungen jeweils eine nach der anderen gefunden, d.h. in 5 Loops, dann gibt es 10 Punkte.
Die Ziffern aus höheren Leveln ergeben entsprechend mehr Punkte.
Ob die so ermittelten Schwierigkeiten stimmen (d.h. mit dem mittleren subjektiven Empfinden der Rätsellöser übereinstimmen), ist schwer zu sagen. Mit meinem persönlichen Empfinden stimmt das schon ziemlich gut.
Was noch nicht so richtig zutreffend bewertet wird, ist der Compartment Check: da ich den sehr präzise mache, egal ob eine Straße schon Ziffern enthält oder nicht, werden leichte und schwierig zu sehende Sachverhalte gleich bewertet. Vielleicht ändere ich das nochmal, um es dem menschlichen Vorgehen besser anzupassen.
Für die beiden heutigen ergibt sich:
Symmetrisch: 3 Sterne Nr. 301
Asymmetrisch: 2 Sterne Nr. 302