Not logged inCSS-Forum
Forum CSS-Online Help Search Login
CSS-Shop Impressum Datenschutz
Up Topic Hauptforen / CSS-Forum / Neuer Erfolg von MoGo (locked)
- - By Ingo Althöfer Date 2008-08-27 19:12
Hallo allerseits,

in Vorbereitung auf die Computer-Olympiade (Ende September/
Anfang Oktober in Peking) spielt das starke Go-Programm
MoGo immer wieder mal Testpartien auf dem Go-Server KGS,
meist unter dem Namen "MoGoTitan".

Gestern spielte es auf mittelmassiver Hardware gegen einen
6-Dan-Amateur aus Taiwan.
Auf 9x9-Brett (Komi 7.5) gewann MoGo 2 von 3 Partien.
Auf 19x19-Brett gab der 6-Dan dem Programm 5 Steine Vorgabe
und verlor dann relativ klar.

Die PArtien kann man aktuell noch vom Server herunterladen unter
http://www.gokgs.com/gameArchives.jsp?user=nutngo

Es sieht wirklich so aus, als hätte MoGo stabile Dan-Stärke.

Ingo Althöfer

PS: Laut Team-Aussage benutzt MoGo nur ein kleines Eröffnungs-Buch,
und zwar für 9x9-Partien mit Weiss.
Parent - - By Roland Rösler Date 2008-08-28 05:27
Was mich immer wieder nervt bei diesen Go Resultaten, ist diese Nebenbei-Bemerkung über die Vorgaben! Als wär das nix!
Anand gibt Minimax +9 (Dame) vor und verliert das Match 0-6! Toll! Endlich mal ein Schachprogramm, nachdem wir justieren können!
Bei Go hält man sich aber schon nach einer (handicap-) Partie für Super toll und verlangt nach der Anerkenniung (1-Dan).
Ich sage nur: Genius hat Kasparov schon in den 80-ern geschlagen (ohne Vorgabe! aber im Schnellschach) und keiner reklamierte GM-Stärke für Genius.

Fazit: Es ist schön, wenn man in der Go-Programmierung Fortschritte macht. Aber bitte sachte mit den Prognosen. Soll das Programm erst mal gegen 1-Dan Spieler antreten (ohne Vorgabe! auf 19x19) und mindestens 10 Spiele spielen und dann schauen wir uns das Ergebnis an!
Parent - By Markus Pillen Date 2008-08-28 08:02
Hallo Roland,
Beim Go ist es üblich, dass der stärkere Spieler dem schwächeren Steine vorgibt. Es ist so vorgegeben, wieviele Steine der stärkere Spieler dem schwächeren als Vorgabe gibt.

beste Grüße
Markus
Parent - By Horst Wandersleben (CSS-Forum) Date 2008-08-28 09:14
[quote="Roland Rösler"]
Was mich immer wieder nervt bei diesen Go Resultaten, ist diese Nebenbei-Bemerkung über die Vorgaben! Als wär das nix!
[/quote]
Hallo Roland,
hier kannst du dich ein bisschen schlau machen: http://de.wikipedia.org/wiki/Go_(Brettspiel)#Einstufung_und_Rangsysteme
Viele grüße Horst
Parent - - By Ingo Althöfer Date 2008-08-28 10:15
Lieber Herr Rösler,

[quote="Roland Rösler"]
Was mich immer wieder nervt bei diesen Go Resultaten,
ist diese Nebenbei-Bemerkung über die Vorgaben!
...
Fazit: Es ist schön, wenn man in der Go-Programmierung Fortschritte macht...
[/quote]

Vorgabe ist im Go wirklich etwas ganz Alltägliches. Zum Beispiel
beziehen sich auch die hochdotierten Geldpreise des Taiwanesen
Dr. Ing (kurz "Ingo-Preis" genannt") auf Go im Vorgabe-Modus.
Siehe
http://senseis.xmp.net/?IngPrize

Leider ist der Preis nach dem Tod des Dr. Ing irgendwie versickert...

Ingo Althöfer
Parent - By Ingo Althöfer Date 2008-08-28 10:16
Sorry für den Freud'schen Fehler.
Der Preis heisst natürlich Ing-Preis und nicht
Ingo-Preis. So viel Geld hätte ich dann doch
nicht über.

Ingo Althöfer
Parent - - By Jens Heerklotz Date 2008-08-28 12:57
Na auch Mogo wird sich ein wenig in acht nehmen müssen vor Leela. Das Leela Dings was Gian Carlo, der Programmierer von Sjeng nun auch schon seit einiger Zei schreibselt ist ebenfalls verdammt gut und hat Mogo auch bereits kräftig Konkurrenz gemacht. Schade das hier der gleiche Irrsinn einsetzt wie beim Schach, das man sich nämlich nur nach dem vermeintlichen Leitwolf Rybk (oder Mogo in dem Fall) umschaut und andere ganz vergisst.
Parent - By Ingo Althöfer Date 2008-08-28 14:12
Lieber Herr Heerklotz,

[quote="Jens Heerklotz"]
...Schade das hier der gleiche Irrsinn einsetzt wie beim Schach, das man sich
nämlich nur nach dem vermeintlichen Leitwolf Rybk (oder Mogo in dem Fall)
umschaut ...
[/quote]

Es ist ein bisschen anders. MoGo ist auf normaler Hardware
momentan wohl nur etwas besser als einige andere Go-Programme.
Aber das (grosse) französisch-niederländische MoGo-Team treibt
viel Hardware-Aufwand (z.B. wiederholte Nutzung von Teilen des
Amsterdamer Huygens-Clusters), um in Schaupartien Durchbrüche
zu erreichen. Mit den 9x9-Erfolgen (ohne Vorgabe) gegen Profi-Spieler
und den 19x19-Erfolgen (mit Vorgabe) gegen Profis und starke Amateure
hat es ja auch schon einige Male geklappt.

Einige Äusserungen im KGS-Chat kann man übrigens so interpretieren,
dass MoGo bei der Olympiade in Peking auch auf sehr starker Hardware
laufen soll. Der Aufwand geht also ein bisschen in die Richtung,
die früher IBM mit Deep Blue eingeschlagen hatte.

Ich bin jedenfalls gespannt auf die Go-Wettberwerbe bei der Computer-
Olympiade und hoffe, dass jemand Ergebnisse und sgf's von den Pekinger
Partien postet bzw. ins Netz hängt.

Interessant bei dem Ganzen ist, dass Europäer derzeit einen deutlichen
Vorsprung vor den asiatischen Programmierern zu haben scheinen.

Ingo Althöfer.
Parent - - By Ingo Althöfer Date 2008-08-28 19:50
Bitte um Entschuldigung an die, die sich von den
Beiträgen zum Computer-Go genervt fühlen. Aber in der
dortigen Szene ist momentan eine unglaubliche
Aufbruchstimmung. Sehr interessant zu lesen ist das
entsprechende internationale Forum unter
http://computer-go.org/pipermail/computer-go/2008-August/
(Das ist der Archivordner mit den bisher ca 538 Postings im August 2008.)

In
http://computer-go.org/pipermail/computer-go/2008-August/016031.html
schreibt Bob Hearn in Erwiderung auf einen Text von Don Dailey (ja, der Don
Dailey aus der Computer-Schach-Szene), dass sich nach Teamaussage die Leistung
von MoGo bei Verdoppelung der Hardware-Geschwindigkeit (entweder durch
schnellere Prozessoren oder groessere Parallelisierung) so steigere,
dass das schnellere Programm 62 % der Punkte gegen die Basisversion
hole. Das entspricht - in Elo - einer Steigerung von rund 90 Punkten.

Bei der Olympiade in Peking will das MoGo-Team mit Hardware antreten,
die noch stärker ist als die beim 9-Steine-Vorgabe-Sieg gegen den
Profi-8-Dan. (In Peking wird es übrigens um die Computer-Olympiade
herum zwei weitere Computer-Go-Turniere geben, wobei es zumindest
bei einem davon Preisgelder in Gesamthöhe von ca 10.000 US-Dollar gibt.)

Und so, wie mit einigen Jahren Verzögerung die DeepBlue-Supercomputer-
Leistung von PC-Schach-Programmen erreicht und übertroffen wurde,
könnte es auch im Computer-Go sein, dass in mittlerer Zukunft Go-
Programme auf normalen PCs Dan-Stärke haben.

Ingo Althöfer

PS: Über 30 Jahre lang war die Computer-Go-Szene ein selbstzufriedener
Schlafwagen-Verein (weshalb ich Anfang 2004 dort auch wieder ausgestiegen
war) - und jetzt blüht sie auf wie eine Wüste nach dem Regen...
Parent - By Kurt Utzinger Date 2008-08-28 23:18
[quote="Ingo Althöfer"]
Bitte um Entschuldigung an die, die sich von den
Beiträgen zum Computer-Go genervt fühlen.
[/quote]

Weshalb sollte man sich genervt fühlen. Dieses Forum heisst ja
"Computer, Schach und Spiele". Als einer, der keine Ahnung von
Go hat, lese ich solche Beiträge normal einfach nicht, weil ich sie
so oder so nicht verstehen kann.
Mfg
Kurt
Parent - - By Thomas Cutter Date 2008-08-29 09:39
Vorweg, allzuviel Kenntnisse habe ich nicht von der Go-Programmierung.

Stimmt es, daß die jüngsten Erfolge i.w. auf die Monte-Carlo Evaluation beruhen?
Falls das so ist, ist es meiner Einschätzung nach kein Wunder, wenn gerade massiv parallele Maschinen große Fortschritte machen.

Gruß Thomas
Parent - - By Ingo Althöfer Date 2008-08-29 13:40
Lieber Herr Cutter,

[quote="Thomas Cutter"]
... Stimmt es, daß die jüngsten Erfolge i.w. auf die Monte-Carlo Evaluation beruhen?
Falls das so ist, ist es meiner Einschätzung nach kein Wunder, wenn gerade massiv parallele Maschinen große Fortschritte machen.

Gruß Thomas
[/quote]

Es hängt in der Tat derzeit praktisch der ganze Programmier-Fortschritt
beim Go am

Monte-Carlo-Ansatz: Stellungen werden nicht, wie seit Shannon üblich,
durch Bewertungsfunktionen bewertet, sondern durch die Durchschnitts-
Ergebnisse von (zum Teil heuristisch gesteuerten) Zufallspartien.

Natürlich lässt sich solch ein Ansatz wunderbar parallelisieren.
Ganz naiv kann man z.B. einfach die zu spielenden Serien von
Zufallspartien auf mehrere Prozessoren verteilen.

Übrigens hat Hiroshi Yamashita, der Programmierer hinter dem
Go-Programm Aya, in seiner Meldung zur kommenden Computer-
Olympiade geschrieben:
"I have written Go program for 12 years,
but MC bot took only half a month."

Es ist wirklich ein Hauptvorteil bei Monte Carlo, dass eine Basisversion
leicht zu programmieren ist und man schnell Erfolgserlebnisse sieht.

Ingo Althöfer
Parent - - By Thomas Cutter Date 2008-08-29 17:00
Danke für die Informationen!

Offenbar werden Schach und Go-Programme damit ganz unterschiedliche Wege in Zukunft gehen. Die kommenden Hardware-Entwicklungen sind gerade für unabhängig parallelisierbare Teilaufgaben optimal. Gibt es schon Programmierer, die versuchen den MC-Ansatz in Grafikkarten auszulagern?

Für Schach dürfte MC wohl kaum funktionieren und die Grenzen der parallelen Verarbeitung hat offenbar Hydra weitgehend ausgelotet. Zumindest vermute ist das, da der Designansatz "kommt was Stärkeres (und haut die Köpfe ab), dann kommen wir mit doppelt so vielen zurück" zumindest mit dem Erscheinen von Rybka nicht umgesetzt wurde.

Gruß Thomas
Parent - - By Ingo Althöfer Date 2008-08-30 08:51
Lieber Herr Cutter,

[quote="Thomas Cutter"]
.... Gibt es schon Programmierer, die versuchen den
MC-Ansatz in Grafikkarten auszulagern?
[/quote]

Keine Ahnung, da bin ich aber auch technisch nicht bewandert.
Enthalten Grafikkarten denn z.B. so etwas wie (Pseudo)-Zufalls-Generatoren,
die ja für MC nötig sind?

MC in Grafikkarten könnte ich mir als sinnvoll vorstellen z.B. bei
Spielen wie dem ungewöhnlichen "Py" von Cameron Browne.

http://www.cameronius.com/games/py/

Interessanterweise schreibt Browne (2003) dort:
"Below is a screen shot of a computer Py player free for download.
Unfortunately it only plays a random game at this point."

Vielleicht lässt sich MC hier sinnvoll einsetzen.
(Es macht übrigens Spass, mit dem Py-Computer-Player
von Browne herumzudatteln.

Ingo Althöfer
Parent - - By Benno Hartwig Date 2008-08-30 12:33
Code:
Enthalten Grafikkarten denn z.B. so etwas wie (Pseudo)-Zufalls-Generatoren,
die ja für MC nötig sind?


(Pseudo)-Zufalls-Generatoren sind Routinen, die deterministisch wie jedes andere Programm arbeiten.
(Aus dem ggw. Zustand wird ein neuer Zustand und eben die Zufallszahl berechnet usw.)
Ich sehe kein Problem, solch eine Routine auch in Grafikkarten arbeiten zu lassen.

Benno
Parent - - By Ingo Althöfer Date 2008-08-30 13:47
Lieber Herr Hartwig,

der kritischste Punkt bei Pseudo-Zufallsgeneratoren ist die
Initialisierung. Gerade beim simultanen Einsatz solcher
Generatoren wird man die Initialisierung nicht mit Hand
machen können, sondern z.B. auf Pseudo-Zufallsgrössen
wie die Systemzeit zurückgreifen.
Und da hat man dann ein Problem, wenn die Grafikkarte
simultan mehrere Initialisierungen vorzunehmen hat.

Ingo Althöfer

[quote="Benno Hartwig"]
Code:
Enthalten Grafikkarten denn z.B. so etwas wie (Pseudo)-Zufalls-Generatoren,
die ja für MC nötig sind?


(Pseudo)-Zufalls-Generatoren sind Routinen, die deterministisch wie jedes andere Programm arbeiten.
(Aus dem ggw. Zustand wird ein neuer Zustand und eben die Zufallszahl berechnet usw.)
Ich sehe kein Problem, solch eine Routine auch in Grafikkarten arbeiten zu lassen.

Benno
[/quote]
Parent - By Benno Hartwig Date 2008-08-30 20:09
Code:
der kritischste Punkt bei Pseudo-Zufallsgeneratoren ist die
Initialisierung

Hallo Ingo,

Ich vermag hierin nicht Kritisches zu erkennen.
Ohne dass ich Erfahrung in der Programminierung von Grafikkarten habe vermute ich doch, dass es kein besonderes Problem sein sollte, jedem dort gestarteten Prozess eine Saat zur Initialisierung seines Pseudo-Zufallszahlengenerators mitzugeben.
Dass hier wirklich mehrere Initialisierungen notwendig sind, erscheint mir zudem auch zweifelhaft. Vermutlich könnte der Zustand des einen dort laufenden Generators an einer Stelle gehalten werden, müsste der Generator nur einmal initialisiert werden. Und er könnte von mehreren Prozessen genutzt werden.
Aber selbst wenn mehrere Prozesse notwendig wären, müsste die Initialisierungsinformationen nur mit dem sowieso zu übertragenden Daten mitübermittelt werden.

OK, Erfahrung mir Grafikkartenprogrammierung habe ich nicht
Gerade mit den Zufallszahlengenaratoren erwarte ich aber gar keine Probleme.

Benno 
Up Topic Hauptforen / CSS-Forum / Neuer Erfolg von MoGo (locked)

Powered by mwForum 2.29.3 © 1999-2014 Markus Wichitill