codecentric go challenge 2014: Abschließende Interviews

1 Kommentar

Die codecentric go challenge 2014 ist vorbei. Franz-Josef Dickhut konnte Crazy Stone, eines der beiden stärksten Go Programme weltweit, mit drei Siegen bei einer Niederlage niederringen. Die Spiele können auf go.codecentric.de nachgespielt und heruntergeladen werden.

Herzlichen Glückwunsch an Franz-Josef Dickhut und vielen Dank an codecentric für das Sponsoring der Veranstaltung!

Wie auch schon direkt vor dem Beginn des Wettkampfes wollen wir die Kontrahenten selbst zu Wort kommen lassen.

Die ersten Fragen gehen an den Sieger, Franz-Josef Dickhut (FJD):

1. Die Partien gegen Crazy Stone waren hart umkämpft und, so konnte man aus einigen Deiner Kommentare herauslesen, auch für Dich Schwerstarbeit. Warst Du von der Stärke von Crazy Stone überrascht oder hattest Du mit solch schweren Kämpfen gerechnet?

FJD: Was die Spieltärke angeht, war ich nicht zu sehr überrascht. Mit etwas Arbeit hatte ich schon gerechnet. Aber nachdem die erste Partie so schief lief, war der Druck schon sehr groß, und das hat die Arbeit dann zusätzlich anstrengend gemacht.
Ich fand es dann letztlich sehr schade, dass die letzte Partie eigentlich die am wenigsten interessante war. Schon am Anfang spielte Crazy Stone unerwartete – wohl auch schwache oder zumindest zu frühe – Züge, und dann kam auch schon das technische Problem, die weiße Gruppe starb und der Drops war gelutscht. Das war leider kein passender Abschluss für so ein enges und umkämpftes Match.

2. Letztendlich blieb Deine Niederlage im ersten Spiel ein Ausrutscher. Was war in Runde 1 passiert? Was war anders als in den Partien 2, 3 und 4?

FJD: In Runde 1 kam alles zusammen, was nicht passieren sollte: Eine Stellung, die Bots entgegen kommt (Moyo [eine große aber sehr lose, noch nicht fest abgeschlossene Gebietsanlage]), leichtsinniges Spiel und infolge dessen Fehler meinerseits. Demnach stand Crazy Stone früh klar vorn und dann kommen die Stärken der Monte-Carlo-Programme richtig gut zur Geltung. Ab der zweiten Partie habe ich vor allem vorsichtiger gespielt, um nicht wieder einen schnellen definitiven Nachteil zu riskieren. Und zur Entspannung habe ich nebenbei klassische Musik gehört, vielleicht hat das auch geholfen.

3. Eine Frage unter uns Go-Spielern: Zu welchen Zeitpunkten waren die einzelnen Partien Deiner Meinung nach weitgehend entschieden? Gerade für etwas schwächere Spieler – auch für mich – ist das schwer abzuschätzen, insbesondere da Crazy Stone mich durch seine vielen Kikashi-Züge [starke Droh-Züge, die sofort beantwortet werden müssen] verwirrte. Mir war selten klar, ob der Bot nun besonders clever war oder sich bereits im Panik-Modus befand, weil er zu verlieren glaubte.

FJD: Partie 1: eigentlich nach 70 Zügen vorbei. Ich denke aber, mit 170 auf 171 wäre es noch mal interessant geworden.
Partie 2: wirklich sicher war ich mir erst mit 183, obwohl ich schon vorher ein gutes Gefühl hatte (konkret etwa um Zug 143)
Partie 3: Das war die engste und schwierigste Partie des Matches, und als einziger Sieg von Weiß wohl auch der Knackpunkt. Während der Partie war es mir erst mit Zug 233/234 wirklich klar, dass ich gewonnen habe, aber die Partie war mit 210 definitiv entschieden.
Partie 4: Nach dem Anbinden mit Zug 81, wonach die weiße Gruppe rechts einfach und ohne Schäden für Schwarz tot war.

4. Wo liegen aus Deiner Sicht die besonderen Schwächen und Stärken von Crazy Stone? Sind die – soweit Du da Erfahrung hast – typisch für Monte-Carlo-Bots oder eher spezifisch für Crazy Stone?

FJD: Zunächst mal halte ich Crazy Stone für eines der Monte-Carlo-Programme, die am schwierigsten zurecht zu legen sind, obwohl es auch noch unter den typischen Problemen leidet. Dazu gehören offensichtlich die Ko-Schwäche [Ko: eine Art Zugwiederholung durch dauerndes Schlagen und Zurückschlagen], also eine Aversion Kos zu spielen und relative Unfähigkeit, Ko-Stellungen zu bewerten (was auch z.T. für Nakade [Gruppen mit einer potenziell toten Form] bzw Eckformen gilt). Eine weitere Schwäche ist aber auch gleichzeitig die große Stärke: Steht eine Partie gut für den Bot, sind sie unglaublich flexibel und gleichzeitig unbeirrbar auf dem Weg zum Partiegewinn. Steht eine Partie aber erst mal schlecht für den Bot, eventuell auch nur knapp, aber erkennbar für den Bot, dann suchen sie aktiv nach einer Möglichkeit wieder zwingend nach vorn zu kommen, was für den menschlichen Spieler aber naiv und panisch wirkt. Erfahrene Spieler wissen aber, dass das beste, was man in solchen Situationen tun kann, ist, die Partie unklar zu halten, entweder die Partie Stück für Stück wieder knapper zu machen oder die Varianz zu erhöhen, und darüber hinaus auch ein Stück weit auf „unforced“ Fehler des Gegners zu warten. Das fehlt den Bots meiner Meinung nach noch, zumindest in der Feinabstimmung.

5. Konntest Du Deinen Vorsatz durchhalten und einfach nur gutes Go spielen, oder hast Du im Verlauf des Matches doch versucht, spezielle Schwächen von Crazy Stone auszunutzen?

FJD: Ich habe schon versucht, die besten Züge zu spielen, jedenfalls soweit es mir möglich ist. Natürlich habe ich in Situationen, wo es halbwegs gleichwertige Alternativen gab, diejenige zu wählen versucht, die Crazy Stone vermutlich die größeren Probleme bereiten würde. Ich habe aber nicht absichtlich schlechte Züge gespielt, nur weil dabei vermutlich/hoffentlich irgendein bekanntes Bot-Problem zum Tragen käme.

6. Du hattest Dich mit der kommerziellen Version von Crazy Stone 2013 auf Deinen Gegner vorbereitet. Hat Dir diese Vorbereitung geholfen?

FJD: Es hat auf jeden Fall geholfen, obwohl ich mich erst gegen die Hilfe „gewehrt“ habe (das 5-3 Joseki [typische Zugabfolgen in einer Ecke] aus der ersten Partie hatte ich mir eigentlich anders vorgenommen, aber dann „überkam“ mich meine Experementierfreude). Auch einfache typische „Josekifehler“ wie mit S29 aus Partie 3, das Auslassen des Deckungszuges am Rand nach der Eckinvasion oben rechts, und Zug 22 in Partie 4, der 1-Punkt Sprung statt Strecken in dem 5-3 Joseki dort, waren mir bekannt und halbwegs erwartet, wobei es sich doch jedesmal wieder als schwierig erweist, so etwas dann auch in eine gute Stellung zu überführen.

7. Und empfandest Du Crazy Stone im Match stärker oder vergleichbar stark zu Deiner Trainingsversion?

FJD: Die Match-Version war schon stärker, jedoch ohne grundlegende Unterschiede. Es lag wohl an der Hardware, denn mein Rechner ist schon knapp vier Jahre alt – hat allerdings eine für damalige Verhältnisse ordentliche Ausstattung mit einem AMD 6-core Prozessor (müsste nochmal nachschauen, wenn die genaue Konfiguration interessant wäre).

8. Würdest Du, im Rückblick betrachtet, anders an das Match herangehen, bezogen sowohl auf die Vorbereitung als auch die konkreten Partien?

FJD: Nicht wesentlich. Ich würde wohl versuchen, schon von der ersten Partie an etwas konzentrierter, weniger experimentell zu spielen, um mein Risiko für große Fehler zu reduzieren. Ich hatte ja schon vor dem Match vermutet, dass mir sowas in mindestens einer Partie passiert, aber es erhöht den Druck schon immens, wenn es gleich in der ersten passiert und man hinten liegt, ohne schon eine Idee zu haben, wie man dem Gegner normalerweise (ohne Patzer) beikommt. Das hat mich wirklich sehr verunsichert und mich einige Nerven gekostet.

9. Würdest Du für einen weiteren Wettkampf dieser Art im nächsten Jahr zur Verfügung stehen?

FJD: Ja, sogar gern.

Rémi Coulom (RC), Entwickler von Crazy Stone (Übersetzung aus dem Englischen durch den Autor):

1. Leider hattest Du nicht die Grid-Hardware zu Deiner Verfügung wie ursprünglich geplant, so dass Crazy Stone auf Deinem Desktop-Computer laufen musste. Außerdem hast Du für alle vier Spiele die kommerzielle Version Crazy Stone 2013 benutzt. Was war der Grund dafür?

RC: Die aktuelle experimentelle Version ist nicht viel stärker als die veröffentlichte kommerzielle Version, daher zog ich es vor, eine stabile und gut getestete Version während des Wettkampfes zu benutzen.

2. Die meisten Beobachter der Spiele hatten den Eindruck, dass Crazy Stones Monte Carlo Engine um so größere Probleme hat, je mehr nicht ausgespielte Stellungen es auf dem Brett gibt. Crazy Stone schien auch Schwierigkeiten mit der korrekten Bewertung bestimmter Eckstellungen zu haben. Was denkst Du zu diesen Beobachtungen?

RC: Crazy Stone ist jedes Mal komplett verwirrt, wenn die Monte-Carlo-Durchläufe ein Leben-und-Tod-Problem falsch bewerten. Dies ist ein Problem von Monte-Carlo-Programmen, das klar identifiziert ist. Eine gute Lösung ist nicht einfach zu finden.

3. Was sind Deiner Meinung nach die wichtigsten Gründe für die Niederlagen in Spiel 2, 3 und 4?

RC: Spiel 3 war sehr eng und ich bin als Spieler nicht stark genug, irgendein offensichtliches Missverständnis auf Seiten von Crazy Stone zu erkennen. In Spiel 2 und Spiel 4 gab es große Leben-und-Tod-Fehler in den Durchläufen.

4. Hard- und Software waren für alle vier Spiele des Wettbewerbs identisch. Gab es irgendeinen anderen Grund für die – von vielen Beobachtern so wahr genommene – vergleichsweise schwächere Vorstellung von Crazy Stone in Spiel 4? Oder war es schlicht Pech, das auf die falsche Bewertung der großen Leben-und-Tod-Stellung am rechten Brettrand schon früh im Spiel zurückzuführen ist?

RC: Ja, das war Pech. Es gab auch ein kleines technisches Problem während des Spiels. Crazy Stone kappte wegen eines Netzwerk-Problems die Verbindung, stellte sie dann wieder her, aber die erste Instanz der Engine lief immer noch im Hintergrund weiter, was die verfügbare Prozessorleistung reduzierte. Aber angesichts der falsch verstandenen Leben-und-Tod-Stellung am rechten Rand hätte Crazy Stone auch mit 1000 Mal mehr CPU-Leistung schlecht gespielt.

5. Das Zeit-Management von Crazy Stone für den Wettbewerb war recht einfach: Es dachte genau 38 Sekunden über jeden Zug nach. Glaubst Du, dass es im Bereich des Zeit-Managements von Monte-Carlo-Bots Verbesserungspotenzial gibt oder spielt dies nicht wirklich eine Rolle?

RC: Ja sicher, dieser Bereich könnte verbessert werden. Bei Computer-Go-Turnieren gibt es für gewöhnlich eine Sudden-Death Zeitregelung, womit Crazy Stone geschickter umgeht. Die Heuristiken für das Zeit-Management für diese Art von Byoyomi Zeitkontrolle [wie in der codecentric go challenge 2014 verwendet] zu optimieren, ist nicht sehr interessant. Ich ziehe es vor, meine Energie auf wichtigere Probleme zu fokussieren.

6. Nutzt Crazy Stone die Bedenkzeit des Gegners für eigene Berechnungen?

RC: Ja.

7. Konntest Du über Stärken und Schwächen von Crazy Stone aufgrund des Matches mit Franz-Josef Dickhut neue Erkenntnisse gewinnen?

RC: Nein. Die Schwächen von Crazy Stone sind identifiziert. Das Problem ist, dass ich nicht weiß, wie ich sie gut beseitigen soll. Bei top Go-Programmen gibt es seit fast zwei Jahren keinen Fortschritt mehr.

8. Was sind Deine Prioritäten für die Verbesserung von Crazy Stone? Welche Themen wirst Du als nächste angehen?

RC: Das Hauptproblem ist, die Zufalls-Durchläufe intelligenter zu machen. In der Vergangenheit gab es Fortschritte bei Crazy Stone, indem weitere Muster in die Durchläufe eingebracht wurden. Ich glaube, dass ich die Spielstärke immer noch erhöhen kann, indem ich die Muster weiter verbessere, aber das wird nicht alles lösen. Es ist nicht möglich, Muster zu haben, die für jedes mögliche Spiel funktionieren. Es werden immer Konfigurationen in Spielen auftauchen, bei denen die Durchlauf-Muster Leben-und-Tod falsch bewerten. Die Lösung ist, die Strategie für Monte-Carlo-Durchläufe online anzupassen. Einige Algorithmen wurden vorgeschlagen, aber sie funktionieren noch nicht gut genug.

9. Wann gibt es die nächste kommerzielle Version von Crazy Stone?

RC: Über konkrete Zeitpunkte kann ich nichts sagen, aber es wird neue Versionen geben. Eine Version für den Windows-8-Store wird schon bald veröffentlicht. Für diese neue Version habe ich viel daran gearbeitet, den Spielstil von Crazy Stone im Endspiel zu verbessern: Wenn es klar gewinnt oder verliert, wird es anders als früher weniger verrückte Züge spielen, die Punkte wegwerfen. Ich habe auch „einfache“ Spielstufen eingeführt, die für Anfänger angenehmer zu spielen sein sollten.

10. Noch eine etwas schwierigere Frage nach einem Zeitrahmen: Wie lange noch werden Franz-Josef Dickhut oder andere starke Amateur-Spieler eine Chance gegen Bots haben? Und wie viel länger werden Profis durchhalten?

RC: Keine Ahnung. Sobald jemand eine gute Lösung für das Problem mit den Monte-Carlo-Durchläufen findet, das ich in Antwort Nr. 8 beschrieben habe, kann es sehr schnell unschlagbare Programme geben.

11. Würdest Du für einen weiteren Wettkampf dieser Art im nächsten Jahr zur Verfügung stehen?

RC: Ja, sogar gern.

Dr. Raymond Georg Snatzke

Der promovierte Mathematiker Georg Snatzke ist seit 2007 bei codecentric. Sein Schwerpunkt sind alle Bereiche rund um das Thema Performance: Application Performance Management (APM), insbesondere mit AppDynamics, Performance-Analyse und -Optimierung sowie natürlich Lasttests. Georg ist zufrieden, wenn er schwarzen Rauch aus den Systemen aufsteigen sieht, die er unter Last setzen darf.

Share on FacebookGoogle+Share on LinkedInTweet about this on TwitterShare on RedditDigg thisShare on StumbleUpon

Kommentare

  • Thomas Jaspers

    27. November 2014 von Thomas Jaspers

    War eine klasse Aktion und sehr interessante Interviews … habe doch glatt mal wieder eine Go-App installiert und ein wenig gespielt 🙂

Kommentieren

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.