Fish (Fische) - Allgemeine Erklärung

Inhaltsverzeichnis


Einführung

"Fish" bezeichnet eine ganze Gruppe von Strategien, die alle dasselbe Prinzip verwenden, die aber (wie echte Fische auch) eine Unzahl an Unterarten hervorgebracht haben. Fische gehen von einfachen X-Wings (Erklärungen können in jedem Tutorial gefunden werden) bis zu kannibalistischen Finned Mutant Leviathans. Die größeren Exemplare können nur mit viel Mühe manuell gefunden werden und werden daher normalerweise eher von Computerprogrammen verwendet, aber die einfacheren Typen sind leicht zu erkennen und können ein Sudoku ziemlich schnell weiterbringen.

Dieser Abschnitt gibt einen Überblick über alle Arten von Fischen. Leser, die nur an einfachen Varianten interessiert sind und die Erklärungen hier zu mühsam finden, sollten sofort zu den Beschreibungen der Basic Fishes wechseln.

Fische sind Single Digit Patterns (Einzelziffer-Muster). "Einzelziffer" bedeutet, dass für die Suche prinzipiell nur Kandidaten für dieselbe Ziffer herangezogen werden. "Muster" bedeutet, dass die Position der Kandidaten im Gitter wichtig ist. Der Ausdruck "Muster" wird zur Unterscheidung von Ketten (engl.: chains) verwendet.

Prinzip

Das Prinzip eines Fisches ist sehr einfach: Man suche eine bestimmte Anzahl von Häusern, die sich nicht überschneiden. Diese Häuser werden als Base-Sets (Basismengen) bezeichnet (Set wird hier synonym für Haus verwendet), die in diesen Häusern enthaltenen Kandidaten sind die Basiskandidaten. Nicht überschneiden bedeutet hier, dass kein Basiskandidat in mehr als einem Haus enthalten sein darf, die Häuser selbst dürfen sich schon überlappen. Nun suche man eine gleiche Anzahl an sich nicht überschneidenden Häusern, die alle Basiskandidaten abdecken (engl.: cover). Diese neuen Häuser sind die Cover-Sets, sie enthalten die Coverkandidaten. Wenn eine solche Kombination existiert, können alle Coverkandidaten gelöscht werden, die nicht gleichzeitig Basiskandidaten sind.

Funktionsweise

Fische nützen die Tatsache aus, dass eine Ziffer in einem Haus nur einmal vorkommen kann. Da wir nur gleiche Kandidaten betrachten (die "Fischziffer"), muss jedes Base-Set genau eine Zelle mit der Fischziffer enthalten. Dasselbe gilt natürlich für die Cover-Sets. Weil aber jetzt alle Basiskandidaten Teil eines Cover-Sets sind, sind Platzierungen nur mehr sehr eingeschränkt möglich. Wenn man N Base-Sets und N Cover-Sets verwendet, müssen genau N Zellen die Fischziffer enthalten. Die Sudoku-Regel stellt sicher, dass in jedem Cover-Set genau ein Basiskandidat platziert werden muss. Wie üblich wissen wir nicht welcher, aber wir wissen, es ist genau einer, daher kann keiner der Coverkandidaten, die nicht Basiskandidaten sind, gesetzt werden. Sie werden alle gelöscht.


Formen und Größen

Die Anzahl an Base-/Cover-Sets bestimmt die Größe des Fisches. Die folgenden Namen werden normalerweise verwendet um die Größe zu beschreiben:

Beispiele können im Kapitel über Basic Fish gefunden werden.

Die Kombinationen von Haustypen (Zeilen, Spalten oder Blöcke), die für die Base- und Cover-Sets verwendet werden, bestimmen den Typ des Fisches (Typen werden als [Base-Sets]/[Cover-Sets] angegeben):

Wenn Fische aufgeschrieben werden, werden normalerweise die Base- und Cover-Sets angegeben, diese bestimmen dann den Fischtyp. Beispiele:

Beispiel für Franken und Mutant Fische können im Kapitel Complex Fish gefunden werden.


Fins (Flossen) und Sashiminess

(Exo) Fins ([Außen-] Flossen)

Der Trick beim Fischen besteht darin, Cover-Sets zu finden, die wirklich alle Basiskandidaten enthalten. Leider passiert es häufig, dass Basiskandidaten übrig bleiben. Das zerstört die Voraussetzung für den Fisch ("in jedem Cover-Set muss genau ein Basiskandidat gesetzt sein"), weil ja jeder der übrig gebliebenen Basiskandidaten gesetzt sein könnte. Diese Extra-Kandidaten werden Fins (Flossen), oder genauer Exo Fins (Außenflossen), zur Unterscheidung von Endo Fins (Innenflossen), genannt, aus dem Fisch wird ein Finned Fish (Fisch mit Flossen).

Die gute Nachricht ist, dass es unter bestimmten Umständen immer noch möglich ist, Kandidaten zu löschen. Die Logik funktioniert folgendermaßen: Entweder alle Fins sind nicht gesetzt, dann haben wir einen Fisch, der alle Coverkandidaten, die nicht Basiskandidaten sind, eliminiert (die möglichen Eliminierungen), oder eine der Fins ist gesetzt und eliminiert alle Kandidaten, die die Fin-Zelle sehen können. Wenn wir die beiden Möglichkeiten kombinieren, erhalten wir die folgende Regel: In einem Finned Fish können alle möglichen Eliminierungen gelöscht werden, die alle Fins sehen.

Beispiele für Finned Fish können im Kapitel Finned/Sashimim Fish gefunden werden.

Sashiminess

In Fischbeschreibungen im Internet kann man viele zusätzliche Einschränkungen bezüglich der Platzierung der Basiskandidaten finden (so und so viele Basiskandidaten mindestens in diesem oder jenem Base-Set). Diese Einschränkungen sind alle nicht nötig. Jeder Fisch, der gleich viele Base- und Cover-Sets besitzt, sodass alle Basiskandidaten in den Cover-Sets enthalten sind, funktioniert. Der Grund für diese Einschränkungen liegt in einer Diskussion, die immer noch nicht abgeschlossen ist: Die Frage der Degenerierung. Bestimmte Muster erfüllen zwar die Regeln für einen Fisch, aber sie enthalten einen kleinere Fisch, der zuerst verwendet werden könnte, oder sie könnten durch einfachere Strategien (normalerweise Singles und Locked Candidates) ersetzt werden. Manche Sudoku-Spieler bezeichnen solche Fische als "degeneriert" und betrachten sie nicht als gültig.

In mancherlei Hinsicht ist diese Diskussion rein akademisch. Ob der Fisch nun degeneriert ist oder nicht, die Eliminierungen, die durch ihn ausgelöst werden, sind immer gültig. Es gibt jedoch einen Spezialfall, wo der Unterschied wichtig ist, um die verschiedenen Fischnamen verstehen zu können: Hat ein degenerierter Fisch Flossen, dann können die einfacheren Spielzüge nicht ausgeführt werden, weil sie von den Flossen verhindert werden. Man erhält einen Finned Fish, der eigentlich gar kein Fisch wäre, hätte er nicht Flossen. Ein solcher Fisch wird oft als Sashimi bezeichnet.

Es wird immer noch darum gestritten, ob der Ausdruck Sashimi den Ausdruck Finned ersetzen sollte (häufigere Variante) oder ob er ein zusätzliches Attribut des Fischnamens sein sollte, der die Sashiminess (Sashimikeit - was für ein Wort!) des Fisches beschreibt. Je nachdem, für welche Seite man sich entscheidet, heißt es dann entweder Sashimi X-Wing oder Finned Sashimi X-Wing (man kann natürlich die Diskussion auch ignorieren und einfach bei Finned X-Wing bleiben - HoDoKu tut genau das für alle nicht Basis-Fische).


Endo Fins (Innenflossen) und Cannibalism (Kannibalismus)

Eine wichtige Einschränkung für Fische war, dass sich weder Base-Sets noch Cover-Sets überschneiden dürfen (und Überschneiden bedeutete: kein Basiskandidat durfte in mehr als einem Base-Set vorkommen und kein Coverkandidat in mehr als einem Cover-Set). Wenn man diese Einschränkung lockert, erhält man zwei fortgeschrittene Strategien: Endo Fins und Kannibalismus.

Endo Fins (Innenflossen)

Wenn ein Basiskandidat in mehr als einem Base-Set vorhanden ist, dann geht sich der ganze Fisch nicht mehr aus. Wenn dieser Kandidat gesetzt würde, wären auf einmal nur noch (N-1) Fischziffern für N Cover-Sets übrig: Ein Cover-Set hätte dann keinen Basiskandidaten gesetzt und der Fisch würde ungültig. Allerdings hatten wir schon einmal Basiskandidaten, die den Fisch zerstören, wenn sie gesetzt werden: Die Fins (Flossen).

Das oben Gesagte bedeutet, dass man Basiskandidaten, die in mehr als einem Base-Set vorkommen, zulassen kann, solange man sie als Fins behandelt. Um sie von den normalen Fins zu unterscheiden, werden sie Endo-Fins genannt.

Endo-Fins vergößern die Anzahl der möglichen Fischkombinationen beträchtlich (und damit auch die Anzahl der Eliminierungen, die durch Fische möglich sind), aber sie vergößern auch beträchtlich die Anzahl an möglichen Kombinationen für Base-Sets. Kombiniert man das mit der Tatsache, dass Endo-Fins nur in Franken und Mutant Fischen vorkommen können, sieht man, dass die schiere Anzahl an zu durchsuchenden möglichen Kombinationen für Finned Franken/Mutant Fish mit Endo-Fins eine manuelle Suche sehr schwer macht.

Cannibalism (Kannibalismus)

Betrachten wir nun, was passiert, wenn ein Basiskandidat in zwei Cover-Sets enthalten ist. Würde dieser Kandidat platziert, benötigte man immer noch N Basiskandidaten um die Sudoku-Regel für die Base-Sets zu erfüllen. Leider würden damit aber auch N Kandidaten in den Cover-Sets platziert. Da nun einer dieser Kandidaten für zwei Cover-Sets gültig ist, erhielte man ein Cover-Set mit zwei Zellen, die die Fischziffer enthalten, und das ist natürlich nicht möglich.

Fazit: Wenn der Fisch gültig sein soll, dann muss ein Basiskandidat, der in zwei Cover-Sets enthalten ist, ungültig sein, er kann eliminiert werden. Da er aber Teil des Base-Sets ist, ißt sich der Fisch quasi selbst. Ein solcher Fisch wird daher als Cannibalistic Fish bezeichnet.

Die Logik bleibt auch gültig, wenn der kannibalistische Fisch Flossen hat. Wie in jedem Finned Fish darf der Basiskandidat allerdings nur eliminiert werden, wenn er alle Fins sieht.


Copyright © 2008-12 by Bernhard Hobiger
Alles Material auf dieser Site unterliegt der GNU FDLv1.3.