Eberts Hutproblem
Eberts Hutproblem gehört zunächst in die Rubrik mathematischer Unterhaltungen und ist eines der zahlreichen Hutprobleme (engl. hat puzzles, oft auch prisoners and hat puzzles),[1] bei denen einer Anzahl von Spielern zufällig verschiedenfarbige Hüte aufgesetzt werden und man die eigene Hutfarbe nicht kennt, aber erraten soll und damit in der Regel etwas gewinnen kann. Eberts Hutproblem ist insofern etwas Besonderes, als es Verbindungen zur Kodierungstheorie und zu fehlerkorrigierenden Codes, insbesondere zu Hamming-Codes, gibt. Mit Todd Eberts Dissertation[2] ist dieses Problem 1998 bekannt geworden und z. B. auch in der Zeit[3] und in Spektrum der Wissenschaft[4] diskutiert worden.
Das Hutproblem mit drei Spielern
Das Spiel mit drei Spielern ist die bekannteste Variante. Die Spieler bekommen rein zufällig entweder einen roten oder einen blauen Hut aufgesetzt. Jeder Hutträger kann seine eigene Hutfarbe nicht erkennen. Die drei Spieler bilden ein Team und gewinnen, falls mindestens ein Spieler seine Hutfarbe richtig errät und keiner eine falsche Antwort gibt. Dabei darf jeder Spieler maximal einen Tipp abgeben und die Spieler dürfen untereinander keine Informationen austauschen. Jeder Spieler hat also nur drei Möglichkeiten: „Rot“ sagen, „Blau“ sagen oder schweigen. Eine naheliegende Strategie ist es, einen der Spieler zur Antwort zu verpflichten und die anderen schweigen zu lassen. Dieser eine Spieler wird dann mit der Wahrscheinlichkeit 50 % richtig antworten.
Allerdings kann das Team seine Gewinnwahrscheinlichkeit auf 75 % steigern, wenn jeder Spieler folgendermaßen entscheidet:
- Haben seine Mitspieler verschiedenfarbige Hüte, dann schweigt er.
- Haben sie gleichfarbige Hüte, dann nennt er die Hutfarbe, die seine Mitspieler nicht haben.
Es gibt insgesamt 8 mögliche Fälle der Hutverteilung auf die drei Köpfe, nämlich
- .
Nur in den beiden Fällen, dass alle die gleiche Hutfarbe tragen, ist die Antwort falsch, und dann antworten alle drei Spieler falsch. In den anderen sechs Fällen gibt genau ein Spieler die richtige Antwort, die anderen schweigen. Die Chance zu gewinnen liegt also bei 75 %. In den acht möglichen Fällen tippt jeder Spieler zweimal richtig und zweimal falsch. Der Clou dabei ist, dass sich die insgesamt sechs Falschantworten auf die zwei gleichfarbigen Fälle konzentrieren, während die sechs richtigen Antworten jeweils auf genau einen der weiteren sechs Fälle zutreffen. Die Team-Philosophie könnte man salopp so beschreiben: „Wenn schon verlieren, dann richtig. Gibt es im Team jemanden, der mehr weiß als du, dann schweige.“
Verallgemeinerung
Wenn die Anzahl der Spieler ist, dann kann das Team die Wahrscheinlichkeit des Verlierens auf reduzieren, im Fall bei Spielern also auf . Um hier eine Strategie zu formulieren, sind Grundgedanken zu fehlerkorrigierenden Codes nötig.
Fehlerkorrigierende Codes
Siehe dazu auch die populärwissenschaftliche Einführung in.[4] Eine Folge von Bits kann im Prinzip Nachrichten übermitteln, denn ist die Anzahl der Möglichkeiten, Nullen oder Einsen hintereinander zu schreiben. Wenn man Fehler erkennen bzw. korrigieren will, kann nicht jede dieser Bitfolgen eine Nachricht sein. Sei eine gewisse Bitfolge eine Nachricht, auch Codewort genannt. Die Bitfolgen, die sich vom Codewort an genau einer Stelle unterscheiden, heißen Fehlerwörter. Damit man Fehler korrigieren kann, darf ein solches Fehlerwort nicht zu mehreren Codewörtern gehören, d. h. jedes Codewort hat seine „eigenen“ Fehlerwörter. Von dem Vorrat der Bitfolgen verbraucht jedes Codewort Stück, eins für sich selber und für seine Fehlerwörter. Wenn selbst eine Zweierpotenz ist, können die Codewörter samt ihren Fehlerwörtern den Vorrat gerade restlos aufbrauchen. Daher kommt es, dass die Fälle besonders günstig zu behandeln sind. Beim fehlerkorrigierenden Code, den Richard Hamming im Jahr 1950[5] erfunden hat, korrigiert der Empfänger eine fehlerhafte Nachricht durch eine einfache Rechnung, die notfalls im Kopf durchgeführt werden kann.
Anwendung auf das Hutproblem
Die Spieler bekommen jeder eine Nummer von bis , aber als Dualzahl dargestellt. In der Reihenfolge der Spieler werden die Hutfarben als Bitfolge interpretiert, eine Null für einen roten Hut, eine Eins für einen blauen. Jeder Spieler sieht die Bitfolge mit Ausnahme seines eigenen Bits. Das Team der Spieler einigt sich auf folgende Strategie: Sie glauben, dass die Bitfolge ihrer Hüte ein Fehlerwort ist. Das ist durchschnittlich in Fällen richtig und nur in einem Fall falsch. Wenn die Bitfolge tatsächlich ein Codewort ist, dann tippen alle Spieler falsch. Wenn die Bitfolge ein Fehlerwort ist, erkennt das genau einer der Spieler, und zwar der, der an der Position des Fehlers steht. Er erhält nämlich durch Einsetzen von Null oder Eins für seine eigene Hutfarbe einmal das Codewort und einmal das Fehlerwort und kann damit seine (Fehlerwort-)Hutfarbe richtig erraten. Die anderen Spieler an den Nicht-Fehler-Positionen erreichen durch Einsetzen von Null oder Eins beide Male Fehlerwörter und schweigen.
Beispiel Hutproblem mit 7 Spielern
Hier handelt es sich um den sogenannten -Hamming-Code. Dabei steht die für die Bitfolgenlänge (bzw. Spieleranzahl) und durch für die Anzahl der dann möglichen Bitfolgen. Die steht durch für die Anzahl der Codewörter. Die folgenden Bitfolgen sind die Codewörter:
Codewörter | |||||||
---|---|---|---|---|---|---|---|
0000000 | 1000110 | 0100101 | 0010011 | 0001111 | 1100011 | 1010101 | 1001001 |
0110110 | 0101010 | 0011100 | 1110000 | 0111001 | 1101100 | 1011010 | 1111111 |
Dazu gibt es Fehlerwörter.
Für die sieben Spieler gibt es nun folgende Strategie: Jeder Spieler addiert (ohne Übertrag) die Dualzahlen der Spieler mit rotem Hut und erhält eine Prüfzahl .
- Besteht für einen Spieler aus lauter Nullen, so antwortet er „Rot“.
- Ergibt für einen Spieler seine eigene Spielernummer, so antwortet er „Blau“.
- In allen anderen Fällen schweigen die Spieler.
Als Beispiel zur Berechnung sei nun der Fall betrachtet, in dem die Spieler mit den vorher vereinbarten Nummern , und rote und die anderen blaue Hüte tragen. Dies entspricht dem Wort . Jeder Spieler stellt nun fest, welche anderen Spieler rote Hüte tragen und bestimmt deren Nummern in Dualschreibweise. Spieler zum Beispiel (wie jeder andere Spieler mit blauem Hut auch) findet also die Spieler und . Nun addiert er diese drei Zahlen ohne Übertrag oder anders ausgedrückt, er bestimmt für jede der drei Stellen einzeln, bei wie vielen der gefundenen Spieler an dieser Stelle eine steht. Ist diese Anzahl gerade, setzt er in an diese Stelle eine , ist sie ungerade, eine . An der ersten Stelle ist für die und die eine , insgesamt also zwei. Somit beginnt mit einer . An der zweiten Stelle hat nur die eine , also auch . An der dritten Stelle ist es nur die . Für ergibt sich somit . Zur Berechnung ist es also nicht notwendig, die Codewörter zu kennen.
Mit etwas Übung ist die Berechnung für die meisten bequemer, sie sollte jedoch nicht mit der „üblichen“ Addition (also der Addition mit Übertrag) verwechselt werden, wie das Ergebnis zeigt. Sie sollte auch nicht mit der Addition im Restklassenring modulo verwechselt werden, auch wenn das Ergebnis in diesem Beispiel gleich ist (siehe aber ).
Betrachten wir konkret zwei Fälle: Zuerst sei die Bitfolge der Hüte das Codewort
Spielernummer | 001 | 010 | 011 | 100 | 101 | 110 | 111 |
Codewort | 1 | 0 | 1 | 0 | 1 | 0 | 1 |
Hutfarbe | |||||||
Prüfzahl | 010+100+110=000 | 100+110=010 | 000 | 010+110=100 | 000 | 010+100=110 | 000 |
Spielerantwort |
Alle Spieler haben falsch geantwortet. Das passiert mit Wahrscheinlichkeit .
Sei nun die Bitfolge der Hüte das Fehlerwort . Das ist übrigens ein Fehlerwort zum Codewort , der Fehler liegt in der ersten Stelle.
Spielernummer | 001 | 010 | 011 | 100 | 101 | 110 | 111 |
Fehlerwort | 1 | 0 | 1 | 0 | 0 | 1 | 1 |
Hutfarbe | |||||||
Prüfzahl | 010+100+101=011 | 100+101=001 | 011 | 010+101=111 | 010+100=110 | 011 | 011 |
Spielerantwort | Schweigen | Schweigen | Schweigen | Schweigen | Schweigen | Schweigen |
Hier tippt, wie bei allen Fehlerwörtern, genau ein Spieler richtig.
Das Hutproblem für beliebige Spieleranzahl
Hier gibt es bislang keine optimale Verhaltensstrategie. Wenn , dann wäre es pragmatisch, nach dem Rezept für die nächstniedrigere Zweierpotenz zu spielen und sich damit die entsprechende Erfolgsrate zu sichern. Die überzähligen Spieler werden zum Schweigen verurteilt und deren Hutfarben werden nicht beachtet.
Einzelnachweise
- ↑ E. Brown, J. Tanton: A Dozen Hat Problems. In: Math Horizons. April 2009, S. 22–25.
- ↑ T. Ebert: Applications of Recursive Operators to Randomness and Complexity. Ph.D. Thesis, University of California, Santa Barbara 1998.
- ↑ Wolfgang Blum: Denksport für Hutträger. In: Die Zeit. 3. Mai 2001.
- ↑ a b Christoph Pöppe: Das Hutproblem. Spektrum der Wissenschaft, 1. September 2001.
- ↑ Richard W. Hamming: Error Detecting and Error Correcting Codes. In: Bell System Technical Journal. Band 29, Nr. 2, 1950, S. 147–160.