Not logged inCSS-Forum
Forum CSS-Online Help Search Login
CSS-Shop Impressum Datenschutz
Up Topic Hauptforen / CSS-Forum / Neue Erkenntnisse zum Ultra-Blitz/Bullet
1 2 Previous Next  
- - By Stefan Pohl Date 2012-08-29 09:32
Hallo zusammen,

ich bin ja von einigen Leuten für mein ultraschnelles Testtempo in meiner LS-Rangliste (20''+250ms) kritisiert worden. Und Fakt ist ja, daß Houdini 1.5a in meiner Liste sehr weit (zu weit) hinter Houdini 2.0c liegt (knapp 35 Elo, zu erwarten wären maximal 10-20 Elo). Dieser (zu) weite Abstand und auch die Tatsache, daß Houdini 2.0c bei weniger als 150ms Fischerbonus anfängt Zeitverluste en masse zu produzieren (im Gegensatz zu anderen Engines), haben mich veranlaßt, meine LS-Rangliste mit etwas mehr als der doppelten Bedenkzeit neu zu erstellen: 45''+500ms. Mit einer Mindestrechenzeit von nunmehr 500ms und einer durchschnittlichen Rechenzeit (gemittelt über alle Züge aus allen Partien durch die LittleBlitzerGUI) von ca. 900-1000ms sollten alle möglichen Verzerrungen, die es evt. durch Windoof-Lags und/oder Engine-Initialisierungsprozesse geben könnte, kein Thema mehr sein. Dummerweise dauert nun ein Testdurchlauf einer Engine mit 10000 Partien 5 Tage statt 2,5 wie bisher (mit 4 Cores schaffe ich bei diesem Tempo 2000 Partien pro Tag). Und die Neuerstellung der Liste wird ca. 50 Tage brauchen (außerdem mache ich noch demnächst 2 Wochen Urlaub in Ägypten).
Die gute Nachricht ist, daß der Houdini 2.0c Test-Gauntlet durch ist und der Houdini 1.5a Test-Gauntlet schon recht weit fortgeschritten ist, so daß ich sagen kann, daß beide Engines jetzt sehr viel dichter zusammenliegen, was ihre Elo-Zahl angeht (vermutlich so in der Gegend von 10-15 Elo, aber das ist z.Zt. noch eine Schätzung).

Es ist natürlich schade um die bisherige Testerei mit der LS-Liste, aber zu meiner Ehrenrettung möchte ich hier auch anmerken, daß bisher noch niemand eine Rangliste mit so kurzen Bedenkzeiten (und so vielen Partien und so kleiner Errorbar!) erstellt hat. Daher sind das Lernprozesse aufgrund mangelnder Erfahrungswerte. Und das macht für mich auch den Reiz am Computerschach aus: auch nach 30 Jahren Beschäftigung mit diesem Hobby, kann ich immer noch was dazulernen.

Sobald die neue LS-Rangliste fertig ist, wird sie hier gepostet. Aber das wird wohl noch ca. 2 Monate dauern - sofern alles glattgeht. Aber da die LittleBlitzerGUI bei mir noch nie abgestürzt ist (nach nunmehr ca. 250000 Partien!!!) und bei mir in Berlin auch die Stromversorgung sehr zuverlässig ist (will ich auch hoffen, bei den unverschämten Preisen!), hoffe ich mal das Beste. Zudem muß ich ja sowieso die ganze Testerei in einzelne Gauntlets aufsplitten, weil ja im RoundRobin-Modus die LittleBlitzerGUI die Stellungen aus dem PGN-Vorgabefile zufällig auswählt und nicht sequentiell und vertauschten Farben wiederholt, abspielt. Das klappt leider nur im Gauntlet-Modus. Aber dafür hat das den Vorteil, daß man immer wieder Zwischenresultate backuppen und den Rechner frisch booten kann. Beides ist bei längeren Testreihen ja durchaus empfehlenswert - insofern mache ich hier aus der Not eine Tugend.

Grüße an alle - Stefan
Parent - By Stefan Pohl Date 2012-08-29 10:13
Noch eine kleine Ergänzung: Die durchschnittliche Rechenzeit von 900-1000ms bezieht sich immer auf die gesamte Partie. Da zum Ende hin ja sehr viel schneller gezogen wird, nämlich im Tempo des Fischerbonus, da die Basiszeit dann ja aufgebraucht ist, wird natürlich im Mittelspiel deutlich länger gerechnet (mindestens 2000ms (also 2'') pro Zug).
Die Gesamtrechenzeit pro Partie liegt jetzt (pro Engine) im Schnitt bei etwas mehr als 80'', also sogar 20'' mehr als beim klassischen Bullet. Das sollte nun wirklich jeder Engine auf meiner halbwegs modernen Hardware für "vernünftiges" Schach reichen...

Grüße - Stefan
Parent - - By Stefan Schiffermueller Date 2012-08-29 10:50
Hallo Stefan,

ich hatte auch mal ein paar Engines bei ultra kurzen Bedenkzeiten unter Arena-GUI getestet. Bei Fischerboni unter 250ms häuften sich die Time-Losses. Also eine gute Übereinstimmung zu Deinen Beobachtungen. Ich finde Deine Liste interessant, weil es sonst keine präzise Liste bei sehr kurzen Bedenkzeiten gibt. Diese kurzen Zeiten benötigt man aber bei der Analyse, wenn man Züge vor- und zurückspielt. Es wird die die Disziplin Marathonlauf, 5000m-Lauf, 400m-Lauf getestet. Aber der 100m-Lauf fehlte bislang.
Parent - - By Benno Hartwig Date 2012-08-29 15:38
[quote="Stefan Schiffermueller"]...Es wird die die Disziplin Marathonlauf, 5000m-Lauf, 400m-Lauf getestet. Aber der 100m-Lauf fehlte bislang.[/quote]Mancher empfindet vielleicht eher: Es wird die die Disziplin 400m-Lauf und 80m-Lauf getestet. Aber der 10m-Lauf fehlte bislang.
(Wo in diesem Lauf-Bild wäre der Fernschach-Computereinsatz und das 3-Minuten/Zug-Turnierschach einzusortieren?)

Auch wenn der 10m-Lauf an sich nicht unbedingt interessieren mag, so finde ich doch sehr interessant(!) zu erfahren, wie diese Ergebnisse korrelieren mit denen über eine längere Distanz.

Benno
Parent - - By Michael Scheidl Date 2012-08-29 16:15 Edited 2012-08-29 16:20
Fernschach ist der Marathon und 3 Minuten pro Zug ist irgend etwas "mittleres"... es gibt beim Laufsport sehr viele verschiedene Distanzen. Eine Zuordnung wäre notgedrungen willkürlich.

Schachstudien lösen ist der Hürdenlauf.

Aber was mir am Statement von Stefan S. oben gefallen hat ist:

Zitat:
Diese kurzen Zeiten benötigt man aber bei der Analyse, wenn man Züge vor- und zurückspielt.

Genau das methodisch zu testen, hat noch niemand in Angriff genommen. Dabei wäre das vielleicht viel praxisrelevanter als Eng-Eng-Spielstärke. Eine Engine kann im Partiespiel sehr stark, aber in punkto Hashlernen völlig unfähig sein! Es gibt ja immer noch Engines die sich beim Vor- und Zurückgehen im Analysemodus absolut gar nichts merken. Allerdings, im Topsegment der besten 10...20 wie sie etwa IPON darbietet, ist mir momentan kein "Sünder" bewußt... Aber ich habe das nicht überprüft, insbesondere die Kommerziellen nicht.

Ich finde, künftig sollten aussagekräftige Enginetests ein bißchen von "sterilen" Laborstandards weg kommen, eine gewisse Dosis Chaos injizieren (z.B. breit gefächerte Eröffnungsvarianten ohne anschließenden Seitenwechsel, um nur ein Beispiel zu nennen), und viel mehr darauf Bedacht nehmen wie Engines wirklich benützt werden. Dafür sollten Aussagen getroffen werden, nicht nur für Eng-Eng-Partien die eine eher exotische Anwendung darstellen für Leute, denen fad im Schädl ist und denen sonst nichts sinnvolles einfällt...
Parent - By Benno Hartwig Date 2012-08-29 16:44
[quote="Michael Scheidl"]Fernschach ist der Marathon und 3 Minuten pro Zug ist irgend etwas "mittleres"... es gibt beim Laufsport sehr viele verschiedene Distanzen. Eine Zuordnung wäre notgedrungen willkürlich.[/quote]Klar. Aber ich wollte halt unterstreichen, dass 'Marathon' heute kaum getestet wird, dass auch das 'mittlere' Turnierschach kaum in Ratinglisten betrachtet wird. Hier kümmert man sich (aus sehr guten Gründen natürlich) nur um kürzere Zeiten/kürzere Laufdistanzen.
Im Gegensatz zu den Menschen vermute ich bei den Engines aber auch, dass die guten Sprinter meist auch gute Marathonläufer abgeben.
Und "wie kurz die Distanz nun werden darf, damit diese Einschätzung noch trifft?" ist halt eine Frage, die dieses Projekt so interessant macht.

Benno
Parent - - By Ingo Bauer Date 2012-08-29 17:51
[quote="Michael Scheidl"]

Ich finde, künftig sollten aussagekräftige Enginetests ein bißchen von "sterilen" Laborstandards weg kommen, eine gewisse Dosis Chaos injizieren (z.B. breit gefächerte Eröffnungsvarianten ohne anschließenden Seitenwechsel, um nur ein Beispiel zu nennen),...
[/quote]

Ich bin auch dafür das ein Prostatakrebsmittel mal nur an Frauen gesteset wird um von den Laborstandars wegzukommen und um zu sehen ob sich das in der Praxis nicht viel besser bewährt ...

So ein Schmarrn!

Gruß
Ingo
Parent - - By Michael Scheidl Date 2012-08-29 18:38
Es tut mir leid daß Du meinen Ansatz nicht verstehst. Ich halte Deine Rangliste für eine der besten, aber trotzdem: Du testest etwas ab das es in einer "Normalpraxis" (wie ich gerne sage) eines Schachspielers nicht gibt. Laborstandards sind einfach zu steril, sie sind zu praxisfern. Nur Dummköpfe kaufen Schachengines mit dem einzigen Ziel sie mit immer denselben Eröffnungen aufeinander zu hetzen.

Beispielhaftes Stichwort Hashlernen: Null Effekt in Deiner Rangliste, aber sehr wichtig für die Analysepraxis.

Ich bin auch dafür Stellungslernen uneingeschränkt zur Wirkung kommen zu lassen: Genau das ist ja der Vorteil lernfähiger Engines! Wer das abdreht testet Kastraten.

Wahrscheinlich verstehst Du mich nicht. - Aber nur ein Tipp: Es ist als Gedankenexperiment nützlich sich hin und wieder vorzustellen, was wäre wenn meine Überzeugungen genau verkehrt sind und das Gegenteil richtig ist? Nur so, ganz unverbindlich als Anregung.

Diesen Schritt habe ich gemacht, denn früher war für mich die "Out of the box-Testphilosophie" quasi Pflicht. Ich gebe mir die Freiheit manchmal meine Meinungen zu ändern. Jetzt meine ich: Je näher Testbedingungen an einer typischen Anwenderpraxis sind, desto besser! Kein normaler Schachspieler beschränkt sich auf einen engen Satz an Eröffnungsvarianten, und kein normaler User wird Lernfähigkeiten einer Engine ruinieren. Im Gegenteil, er wird sich darüber freuen und davon profitieren.
Parent - - By Ingo Bauer Date 2012-08-29 20:19 Edited 2012-08-29 20:22
[quote="Michael Scheidl"]
Es tut mir leid ...
[/quote]

Der erste Halbsatz und schon gelogen

[quote="Michael Scheidl"]
.... Jetzt meine ich: Je näher Testbedingungen an einer typischen Anwenderpraxis sind, desto besser! Kein normaler Schachspieler beschränkt sich auf einen engen Satz an Eröffnungsvarianten, und kein normaler User wird Lernfähigkeiten einer Engine ruinieren. Im Gegenteil, er wird sich darüber freuen und davon profitieren.
[/quote]

Schöne Theorie, allein DIE Anwenderpraxis gibt es nicht jeder macht das etwas anders und das was "jeder" macht läßt sich nicht testen. Deswegen ist eine 'sterile' (ich würde das reproduzierbar nennen) Testumgebung die Beste. Natürlich bildet das nicht dass ab was der Anwender (jeder individuel) macht, aber von da aus muß jeder seinen eigenen 'Hausverstand' gebrauchen.
Das meine 75 Stellungen nicht "das Schach' abbilden ist mir schon klar, nur gibt es keine andere bessere Testmethode. Deine Forderung schreibt sich nett runter, und klingt liberal und ach so progressiv, hat aber weder Hand noch Fuß weil die Vergleichbarkeit von Engines dann noch weiter sinkt - Schmarrn eben, sagte ich schon.
Deine Rückwärtsanalyse ist ein wichtiges Feature, läßt sich nur überhaupt nicht sinnvoll für 'das Schach' testen, sondern hakt daran, dass man auch nur bestimmte Positionen testen kann und daraus auf das große Ganze schließt. Das muß aber individuell je Engine geschene und hat mit Enginetesten nichts zu tun, wiel die Bewertung des Ganzen entweder subjektiv ist oder man hart beim Rückwärtsgehen zählen muß und das geht heute nicht automatisiert was Grundlage ist um gesischerte, belastbare Aussagen zu bekommen. Wie du schon sagtest, eine Engine die völlig versagt kennst du unter den IPON Top20 nicht (ich auch nicht), sie wäre auch ziemlich schnell entlavt und untendurch.

Deine Forderung ist unausgegoren und nicht praktikabel. Wenn du meinst das doch, dann mach es. Ich war der Meinung das es besser geht als die Etablierten und habe, wie ich meine, dafür auch einige ANerkennung bekommen. Irgendwann kommt jemand und läßt auch mich alt aussehen, da bin ich sicher, dein Vorschlag ist es nicht - da bin ich auch sicher!

Gruß
Ingo
Parent - - By Klaus Kruse Date 2012-08-29 21:02
Das meine 75 Stellungen nicht "das Schach' abbilden ist mir schon klar, nur gibt es keine andere bessere Testmethode.

aha .... also ist Deine Testmethode die beste, die es gibt?????????????
Parent - By Ingo Bauer Date 2012-08-31 10:15 Edited 2012-08-31 10:19
Hast du eine bessere? Wenn ja, leg los!

Viel Glück
Ingo

PS: Das erste mal das "Klaus Kruse"* etwas postet. Interessant das sich Leute hier bei solchen Kinkerlitzchen nicht trauen mit ihrem Namen zu unterschreiben.

* Vor Ewigkeiten gab es einen "Claus Kruse", ich nehme aber an das jemand schon weiß wie er seinen Vornamen schreibt oder er benutzt das Pseudonym wenn er nicht mit seinem echten Namen unterschreiben will - in dem Fall sollte er sich aber auf einen Namen einigen.
Parent - - By Michael Scheidl Date 2012-08-30 01:38
Zitat:
Deine Rückwärtsanalyse ist ein wichtiges Feature, läßt sich nur überhaupt nicht sinnvoll für 'das Schach' testen, sondern hakt daran, dass man auch nur bestimmte Positionen testen kann und daraus auf das große Ganze schließt.

Das ist kein prinzipieller Einwand, sondern er unterwirft sich nur den derzeitigen, mangelhaften Testmöglichkeiten. Sind offensichtliche Qualitätsfaktoren von Engines, wie eben z.B. das Hashlernen, unwichtig nur weil sie mit den zur Zeit zur Verfügung stehenden Mitteln nicht automatisiert getestet werden können?

Damit wir uns nicht mißverstehen, ich halte die IPON-Liste für eine hervorragende, methodisch wunderbar saubere Informationsquelle und ich verstehe auch, daß es viel persönlichen Einsatz erfordert diese zu erstellen. Herzlichen Dank dafür!

Manchmal meckere ich weil meine Gedanken und Ideen offenbar zu weit in die Zukunft reichen, und die Gegenwart im Vergleich sprichwörtlich "alt aussieht"...
Parent - - By Ingo Bauer Date 2012-08-30 08:46
[quote="Michael Scheidl"]
Sind offensichtliche Qualitätsfaktoren von Engines, wie eben z.B. das Hashlernen, unwichtig nur weil sie mit den zur Zeit zur Verfügung stehenden Mitteln nicht automatisiert getestet werden können?
[/quote]

Nein und ich schrieb ja auch "... Rückwärtsanalyse ist ein wichtiges Feature ...". Da sind wir uns einig. Nur wiederhole ich: Testen, im Sinne von einer klar definierten Testumgebung und mit statistisch ausreichender Relevanz läßt sich das nicht (zumindest sehe ich nicht mal ein Lichtchen am Horizont dafür)

[quote="Michael Scheidl"]
... Manchmal meckere ich weil meine Gedanken und Ideen offenbar zu weit in die Zukunft reichen, und die Gegenwart im Vergleich sprichwörtlich "alt aussieht"...
[/quote]

Meine Zukunftsgedanken sind da pessimistischer. Engine-Computerschach stirbt! Spätestens die Enginegenaration die in meiner Liste mit 2900 geführt wird erfüllt alle Wünsche die jeder menschliche Computerschacher haben kann. Selbst die Top GMs sehen in diesen Engines keine Unterschiede mehr. ... Im Moment rollt der Wagen noch, wird aber langsamer - sprich, die Gier nach der besten Engine ist noch da (auch bei den GMs, weil sie sich vermeintlich einen Vorteil erhoffen), wird sich aber abschleifen. Das Interesse erlahmt, eine Engine die alles kann ist immer, überall, umsonst verfügbar. Dadurch erlahmt die Inovation, Stillstand.
Sicher wird es auch in den nächsten Jahren eine "beste" Engine geben und sicher wird es ein paar Freaks geben die dem hinterherhecheln, die breite Basis fehlt aber und wird nicht wieder nachwachsen, leider.

Gruß
Ingo
Parent - By Peter Martan Date 2012-08-30 12:44 Edited 2012-08-30 12:46
[quote="Ingo Bauer"]
Engine-Computerschach stirbt! [/quote]

Darf ich auch mal ähnlich einfach formulieren wie du: Quatsch.
Was stirbt, ist der Glaube an die Celo, weil sie nicht mehr geeignet sind, in menschlichen Elodimensionen mit den 0815 Messmethoden, von denen du immer wieder dich selbst und andere zwingen willst, zu glauben, es seien die einzigen, die es überhaupt gibt, signifikante Unterschiede mit halbwegs vernünftigem Zeit- und hardware- Aufwand für den Wust an ähnlich starken engines zu erbringen.
Wenn sich also wieder einmal jemand Gedanken macht, wie man anders messen könnte als du, sollte das nicht unbedingt ein Grund sein, sofort an der Zukunft des Computerschachs schlechthin zu zweifeln, nur weil deine Liste schön langsam auch etwas an Bedeutung verliert, so gut sie sein mag (man muss das ja dann immer wieder extra erwähnen, damit du wieder gut bist) am Ende gar auch relativ zu anderen, meist schon immer noch bedeutungsloseren.
Merke: es ist nicht alles Celo, was zählt, und es zählt nicht alles, was Elosion und Celolitis heißt.

Michael Scheidls Überlegungen scheinen mir durchaus vernünftig und erinnern mich stark an dieses und jenes, was ich da auch schon immer mal über Evalverlaufskurven über Zeit und Zugzahlen hinweg propagiert habe.
Und um dir jetzt vollends mit diesem deinem Spruch auch endlich mal zuvorzukommen, ich bin dann wieder raus.
Parent - - By Benno Hartwig Date 2012-08-30 16:15
[quote="Ingo Bauer"]Engine-Computerschach stirbt! [/quote]Ach!
Hast du den Eindruck, dass heute von weniger Engine-Partien berichtet wird als früher?
Wird heute den Ranglisten weniger Interesse geschenkt?
Nutzen Schachspieler die Engine zur Fehlerkontrolle weniger als früher?

Benno
Parent - - By Ingo Bauer Date 2012-08-30 19:42
[quote="Benno Hartwig"]
[quote="Ingo Bauer"]Engine-Computerschach stirbt! [/quote]Ach!
Hast du den Eindruck, dass heute von weniger Engine-Partien berichtet wird als früher?
[/quote]

Das ist nicht der Punkt, wenngleich JA meine Antwort wäre.

[quote="Benno Hartwig"]
Wird heute den Ranglisten weniger Interesse geschenkt?
[/quote]

Vielleicht sogar mehr, aber das ist Symptom des Sterbens.

[quote="Benno Hartwig"]
Nutzen Schachspieler die Engine zur Fehlerkontrolle weniger als früher?
[/quote]

Da kommen wir zum Punkt, Schachspieler benutzen mehr. Es spielt nur keine Rolle mehr was sie benutzen und das was sie benutzen gibt es an jeder Ecke in ausreichender Stärke zum Nulltarif. Die Breite Masse interessiert sich nicht mehr dafür was da analysierrt weil praktisch alles was da oben mitspielt weit jenseits des menschlichen Horizonts ist. De Fakto ist es doch Wurst ob ich meine Wochenend-Turnierpartie mit Stockfish, Houdini, dem Fritz den ich sowieso habe wg. Playchess oder irgendeinem Litto analysieren lasse. Die entlarven mich alle als Stümper. Diese Erkenntniss wird sich durchsetzen und dieses Durchsetzen geht von unten nach oben. Während sozusagen die Erkenntniss nach oben steigt wir der breiteste Linie, also diejenigen die noch interessiert wer da analysiert, immer schmaler ... Ich bin da pessimistisch, sorry - würde mich aber freuen mich zu irren!

Gruß
Ingo
Parent - By Stefan Pohl Date 2012-08-31 08:20
[quote="Ingo Bauer"]
würde mich aber freuen mich zu irren!

[/quote]

Der war gut! 

Stefan
Parent - - By Michael Scheidl Date 2012-08-30 17:22
Zitat:
"... Rückwärtsanalyse ist ein wichtiges Feature ...". Da sind wir uns einig. Nur wiederhole ich: Testen, im Sinne von einer klar definierten Testumgebung und mit statistisch ausreichender Relevanz läßt sich das nicht

Realistisch und praxisbezogen, hast Du natürlich Recht. Der nötige Aufwand ist niemandem zumutbar. - Aber rein theoretisch-methodisch sozusagen, ist das Schema ziemlich klar! Das heißt, es gibt keinen prinzipiellen Grund das nicht zu testen. Es ist lediglich eine Frage der Kapazitäten. Sobald diese ausreichend zur Verfügung stehen, kann man das testen.

Zitat:
Spätestens die Enginegenaration die in meiner Liste mit 2900 geführt wird erfüllt alle Wünsche die jeder menschliche Computerschacher haben kann.

Zum Pessimismus ist kein Anlaß, Stichworte Erkennung von Festungen, Spielstil(*), usw. Die Entwicklungsmöglichkeiten sind endlos.
Parent - By Ingo Bauer Date 2012-08-30 19:49
[quote="Michael Scheidl"]
Zitat:
"... Rückwärtsanalyse ist ein wichtiges Feature ...". Da sind wir uns einig. Nur wiederhole ich: Testen, im Sinne von einer klar definierten Testumgebung und mit statistisch ausreichender Relevanz läßt sich das nicht

Realistisch und praxisbezogen, hast Du natürlich Recht. Der nötige Aufwand ist niemandem zumutbar. - Aber rein theoretisch-methodisch sozusagen, ist das Schema ziemlich klar! Das heißt, es gibt keinen prinzipiellen Grund das nicht zu testen. Es ist lediglich eine Frage der Kapazitäten. Sobald diese ausreichend zur Verfügung stehen, kann man das testen.


Gesetzt den Fall du hättest Recht, fällt es dir ja schon schwer Kriterien zu setzen die überprüfbar und wiederholbar für verschiedene Engines sind. Ich glaube das ist nicht qualitativ testbar!

[quote="Michael Scheidl"]
Zitat:
Spätestens die Enginegenaration die in meiner Liste mit 2900 geführt wird erfüllt alle Wünsche die jeder menschliche Computerschacher haben kann.

Zum Pessimismus ist kein Anlaß, Stichworte Erkennung von Festungen, Spielstil(*), usw. Die Entwicklungsmöglichkeiten sind endlos.


Festungen könnte ein Mensch gegen Engines im echten on Board Spiel kaum aufbauen und "Spielstil" ist so was von subjektiv ... ich glaube kaum das jemand eine Einzelpartie einer dieser 2900 Elo Engines am "Spielstil" erkennen könnte. Das Entwicklungsmöglichkeiten bestehen glaube ich auch, allein niemand kann die Enignes da noch verstehen. Es spielt, wie schon erwähnt, schlicht keine Rolle mehr!

Vielleicht verliere ich auch nur gerade die Lust ... was auch ein Zeichen von Niedergang wäre (des Computerschachs oder meiner ...)

Gruß
Ingo
Parent - - By Kurt Utzinger Date 2012-08-31 15:25
Hallo Ingo
Der meines Erachtens mit Abstand grösste negative Einfluss des
Computerschachs liegt darin, dass 95-99 % der menschlichen
Schachspieler sich abgewöhnen, selbständig zu denken.
Mfg
Kurt
Parent - - By Harald Faber Date 2012-08-31 15:53
Hallo Kurt,
[quote="Kurt Utzinger"]
Hallo Ingo
Der meines Erachtens mit Abstand grösste negative Einfluss des
Computerschachs liegt darin, dass 95-99 % der menschlichen
Schachspieler sich abgewöhnen, selbständig zu denken.
Mfg
Kurt[/quote]
Nach meiner Erfahrung irrst Du gewaltig! Computerschach erweitert den Horizont der Schachspieler. Unerwartete Zugvorschläge werden ja nicht blind übernommen, sondern intensiv hinterfragt um sie zu verstehen. Angriffsideen werden geprüft, ob sie funktionieren oder Verteidigungsideen vorhanden sind. Usw.
Dass sich das Computerschach kannibalisiert liegt m.E. zum einen daran, dass die Programme dank/nach Rybka in einem kaum überblickbaren Gleichheitspool aufgegangen sind (was die Kommerziellen sehr schwer zu schaffen macht) und zum anderen daran, dass die Computerschachexperten sowohl immer schneller Ergebnisse/Ranglisten produzieren wollen als auch kaum mehr in der Lage sind, die Programme und Partien inhaltlich abzuklopfen. Während vor wenigen Jahren noch recht einfach erkannt werden konnte, wenn ein Programm einen positionellen Fehler beging, ist das heute nur noch selten möglich und sonst sehr zeitaufwendig. Deshalb gibt es inzwischen etliche Listenersteller die ihre Zahlen vergleichen. Toll.    Und auf dem Server? Kann man nur mithalten, wenn man Houdini auf nem 8-core laufen lässt, was eher einer Minderheit vergönnt ist. Alles zusammen vergrätzt natürlich etliche Leute, mich eingeschlossen. 

Gruß,
Harald
Parent - By Kurt Utzinger Date 2012-08-31 17:01
Hallo Harald

Interessante Antwort, v.a. Nach meiner Erfahrung irrst Du gewaltig! Computerschach erweitert den Horizont der Schachspieler.
Fallen diese menschlichen Spezies - die so arbeiten - nicht unter die letzten 2% der von mir genannten Schachspieler?

Mfg
Kurt
Parent - By Ingo Bauer Date 2012-08-31 17:48 Edited 2012-08-31 17:51
KDas ich dir mal teilweise zustimmen muß ...

[quote="Harald Faber"]
Dass sich das Computerschach kannibalisiert liegt m.E. zum einen daran, dass die Programme dank/nach Rybka in einem kaum überblickbaren Gleichheitspool aufgegangen sind ...
[/quote]

Stimmt!

[quote="Harald Faber"]
(was die Kommerziellen sehr schwer zu schaffen macht)
[/quote]

Das sehe ich anders. Die Quellen liegen ja offen und sind eigentlich auch schon durchdiskutiert. Es liegt wohl eher daran das "die Kommerziellen", zumindest die alten Hasen, sich nicht in das gleiche Boot setzen wollen wie die Kopisten Mein Eindruck ist eher das sie selber etwas schaffen wollen und nicht etwas abschreiben, alte Schule eben ... (Ein paar zogen halt das "Pecunia non olet" vor)

[quote="Harald Faber"]
und zum anderen daran, dass die Computerschachexperten sowohl immer schneller Ergebnisse/Ranglisten produzieren wollen, als auch kaum mehr in der Lage sind, die Programme und Partien inhaltlich abzuklopfen.
[/quote]

Am ersten HAlbsatz sehe ich nichts schlimmes und den zweiten ... ja so ist das wohl, die Zeiten ändern sich.

[quote="Harald Faber"]
Während vor wenigen Jahren noch recht einfach erkannt werden konnte, wenn ein Programm einen positionellen Fehler beging, ist das heute nur noch selten möglich und sonst sehr zeitaufwendig.
[/quote]

Das ist des Pudels Kern. Es macht keiner weil es nicht mehr sinnvoll geht, bei dem Niveau das die Engines erreicht haben!

[quote="Harald Faber"]
Deshalb gibt es inzwischen etliche Listenersteller die ihre Zahlen vergleichen. Toll. 
[/quote]

Mich kannst du nicht meinen, oder!? Tatsächlich habe ich sogar eine Zeitlang eine ordentliche Calc-Tabelle geführt die die wichtigsten Listen parallel zeigte (schön ordentlich mit gleicher Statistikprogramm, Fehler korrigiert ...). Die habe ich aber mangels Interesse seit mindestens einem Jahr nicht mehr aktualisiert.

[quote="Harald Faber"]
Und auf dem Server? Kann man nur mithalten, wenn man Houdini auf nem 8-core laufen lässt, was eher einer Minderheit vergönnt ist. Alles zusammen vergrätzt natürlich etliche Leute, mich eingeschlossen. 
[/quote]

Was die einzelnen Leute vergrätzt weiß ich nicht. Mich vergrätzt nicht die Hardwareschlacht, sondern die Monokultur und das rumgeblitze. Wenn ich dort eine Partie spiele muß die etwas dauern, damit ich meinen kann ein kleines Fitzelchen des Spiels verstanden zu haben. Auch will ich nicht nur gegen die Nummer 1 spielen (heute Houdini, früher Rybkas). Aber das mit der Nr. 1 ist wohl menschlich normal und nicht abstellbar. Das dann ausgerechnet die mit den größten Dickschiffen übrigbleiben ist auch normal, irgendwo muß sich die Investition ja Niederschlagen - und sei es nur in virtuellen Punkten auf einem Server irgendwo in der Welt ...

Gruß
Ingo
Parent - - By Frank Brenner Date 2012-08-30 00:33
Michael,

wenn eine Engine "lernen" kann, so soll doch der PRogrammierer seine Engine ein Jahr lang "lernen" lassen und uns dann eine meinetwegen 30 ELO stärkere Engine enbieten.

Jedes andere "lernen" mit Hashtabellen oder Eröffnungsauswahlen ist für die Spielstärkeermittlung einer Engine eher verwandt mit "cheating".

Mit mindestens einer Sache stimme ich aber mit Dir überein:
Die Beschränkung auf nur 50 Startpositionen ist zu wenig. Hier sollten viele hundert ausgewählt werden.
Wenn nun eine Partie X gegen Y stattfindet , so wird die Farbe sowie die Position gewürfelt.

Dieses Vorgehen ist statistisch gesünder:  D.h. es konvergiert schneller gegen den "richtigen" Elo Wert.

Frag mal Ingo wie er mit dem Pc eine Funktion integrieren würde ...
Er würde bestimmt (ohne vorher sich in Insiderkreisen zu Informieren) den Integrationsbereich gleichmässig mit winzigen und gleichgroßen  schritten zerlegen und die Funktionswerte addieren und dann teilen.

Besser und deutlich scheller ist es zufällige, gleichverteilte x-Werte zu ermitteln und dort die Funktionswerte zu addieren und zu teilen.

Wer das nicht glaubt, kann  es programmieren und vergleichen. 15 Minuten dauert das.
Parent - - By Stefan Pohl Date 2012-08-30 15:54
[quote="Frank Brenner"]

Die Beschränkung auf nur 50 Startpositionen ist zu wenig. Hier sollten viele hundert ausgewählt werden.

[/quote]

Zunächst möchte ich anmerken, daß die IPON 75 Vorgabestellungen nutzt. Und wenn du viele hundert Stellungen für notwendig hältst, dann lege ich dir hier gerne meine LS-Rangliste ans Herz, die ich gerade mit doppelter Bedenkzeit neu einspiele, denn hier spielt jede Engine 1000 Partien gegen jeden Gegner (also 500 Vorgabestellungen werden abgespielt!).

Gruß - Stefan
Parent - - By Frank Brenner Date 2012-08-30 20:03
Ich hab mir deine Liste bereits angeguckt und ich finde sie gut.

Du benuzt ein gutes Programm um die vielen Spiele durchzuführen.

Was mir noch besser gefallen würde wäre wenn du der engine exakt 2000ms pro Zug zeit gibst, so würdest du den in einer Engine integrierten Zeiteinteilungsalogorithmus ausklammern,

was ja eigentlich erwünscht ist, denn wir wollen ja schließlich die Spielstärke der Engine bewerten und nicht die Zeiteinteilung.

Ausserdem würden so Zeitüberschreitungen nicht auftreten.
Ich kann mir auch vorstellen dass einige Programmierer die Granularität des Zeiteinteilungsalogirhtmus gar nicht im millisekunden Bereich genau programmiert haben, sondern vielleicht nur mit einer Auflösung von 1/4 Sekunde oder so. Solche Engines geraten dann tendenziell bei langen Partien in exteme Zeitnot, solche Effekte würden bei einer fixen Zeit ebenfalls ausgenommen werden.

Betrachte dies aber nicht als Kritik. Deine Liste ist schon bereits sehr gut. Es sind m.E. Verbersserungsvorschläge auf bereits hohem Nivo.

Es ergibt sich aber dann noch die Frage wieviele ms eine Engine zur Vorbereitung benötigt um mit der eigentlichen Suche überhaupt anzufangen, das könnte man vielleicht mal untersuchen ob es da spezies gibt die sehr viele ms dafür benötigen.
Parent - - By Stefan Pohl Date 2012-08-31 07:57
[quote="Frank Brenner"]
Was mir noch besser gefallen würde wäre wenn du der engine exakt 2000ms pro Zug zeit gibst, so würdest du den in einer Engine integrierten Zeiteinteilungsalogorithmus ausklammern,
was ja eigentlich erwünscht ist, denn wir wollen ja schließlich die Spielstärke der Engine bewerten und nicht die Zeiteinteilung.
[/quote]

Naja, also die Zeiteinteilung ist schon nicht unwichtig und diese will ich auch mitberücksichtigen. Außerdem wäre eine fixe Zeiteinteilung ein nicht unbeträchtliche zusätzliches statistisches Schwankungselement, denn dann würde ja die GUI die Engine zwingen, die Berechnung zu einer bestimmten Zeit abzubrechen, auch wenn das mitten in einem sog. fail-low passiert, wo die Engine merkt, daß der bisherige Zug schlecht ist und ein besserer gefunden werden muß. In so einem Fall würde die Engine dann ja länger als normal rechnen, um noch einen besseren Zug zu finden, aber die GUI würde das verhindern. Ergo: Davon halte ich nichts, denn ich versuche ja, wie schon erwähnt, Schwankungselemente weitestmöglich zu minimieren.

[quote="Frank Brenner"]
Ausserdem würden so Zeitüberschreitungen nicht auftreten.
[/quote]

Seit ich die LS-Rangliste mit doppelter Zeit ausspiele, hat es bisher in ca. 15000 Partien nur eine mit Zeitverlust gegeben und zwar vom Ur-Ippolit Robbolito 0.085g3. Und das war ein Engine-Hänger, der nix mit der Zeit zu tun hatte (diese Engine produziert davon so 3-5 in 10000 Partien, egal mit welcher Zeit man spielt). Houdini 2.0c war sonst die einzige Engine, die in der alten, schnellen LS-Rangliste in 10000 Partien 5 durch Zeit verlor, in der neuen Liste hat er alle 10000 Partien ohne Zeitverlust absolviert. Dieses Problem ist also durch die Verdoppelung der Bedenkzeit gelöst.

[quote="Frank Brenner"]
Ich kann mir auch vorstellen dass einige Programmierer die Granularität des Zeiteinteilungsalogirhtmus gar nicht im millisekunden Bereich genau programmiert haben, sondern vielleicht nur mit einer Auflösung von 1/4 Sekunde oder so. Solche Engines geraten dann tendenziell bei langen Partien in exteme Zeitnot, solche Effekte würden bei einer fixen Zeit ebenfalls ausgenommen werden.
[/quote]
Es gibt natürlich eine minimale "Zeitauflösung" in den Engines, diese ist aber sicherlich erheblich kleiner als 250ms. Und bei langen Partien brauchen alle Engines ihr Zeitguthaben auf, das ist ganz normal. Dafür gibt es ja den Fischerbonus. Dieser beträgt nun in meiner neuen LS-Rangliste 500ms. Das heißt jede Engine kann praktisch immer mindestens 500ms lang rechnen. Das reicht nun mit Sicherheit aus.

[quote="Frank Brenner"]
Betrachte dies aber nicht als Kritik. Deine Liste ist schon bereits sehr gut. Es sind m.E. Verbersserungsvorschläge auf bereits hohem Nivo.
[/quote]
Ich habe nichts gegen Kritik und erst Recht nicht gegen Verbesserungsvorschläge! Da verwechselst du mich wohl mit einem anderen Ranglistenbetreiber Ich greife diese auch durchaus gerne auf, wenn ich sie als berechtigt erachte. Nicht zuletzt deshalb habe ich ja die LS-Rangliste mit doppelter Bedenkzeit neu gestartet oder seinerzeit auch Houdini 1.5a mit reingenommen (obwohl es da schon Houdini 2.0 gab), weil man mir das vorschlug, um die beste Multicore-Freeware Engine mit zu berücksichtigen und auch in der Liste als solche zu kennzeichnen. Aber in diesem Fall muß ich deinen Vorschlag (wegen des oben genannten Fail-low-Problems) leider zurückweisen. Aber prinzipiell begrüße ich es, wenn Verbesserungsvorschläge gemacht werden und auch sachliche Kritik ist mir immer willkommen, das möchte ich noch mal ganz klar herausstellen.

[quote="Frank Brenner"]
Es ergibt sich aber dann noch die Frage wieviele ms eine Engine zur Vorbereitung benötigt um mit der eigentlichen Suche überhaupt anzufangen, das könnte man vielleicht mal untersuchen ob es da spezies gibt die sehr viele ms dafür benötigen.
[/quote] 
Tja, das ist eine sehr gute und berechtigte Frage. Da gibt es bestimmt Unterschiede und letztlich ist genau diese Problematik der Grund, warum ich mich entschieden habe, die LS-Rangliste mit doppelter Bedenkzeit komplett neu aufzubauen, obwohl das viel Rechenaufwand und Strom erfordert. Was ich sagen kann ist, daß unter 100ms Fischerbonus viele Engines (nicht nur Houdini 2, der fängt schon bei weniger als 150ms damit an) timelosses produzieren. Allerdings muß das nicht heißen, daß die Engines nicht schon bei weniger als 100ms rechnen, sondern nur, daß sie den Rechenprozeß nicht schneller stoppen können. Insofern ist das schwer zu ergründen. Bei meiner alten LS-Rangliste gab es mit 250ms Fischerbonus nur sehr, sehr wenige timelosses (und einige waren Engine-Hänger (wie bei Robbolito 0.085g3 (s.o.))), dennoch waren einige Resultate doch etwas merkwürdig - insbesondere der große Elo-Abstand zwischen Houdini 1.5a und 2.0c. Aber ich bin mir sicher, daß mit dem neuen LS-Tempo diese Probleme keine nennenswerte Rolle mehr spielen. 500ms Fischerbonus müssen auf jeden Fall für jede Engine ausreichend lang sein: Eine halbe Sekunde ist auf einer schnellen Hardware eine lange, lange Zeit, da darf man sich von seinem menschlichen Blickwinkel nicht täuschen lassen (uns kommt das schnell vor, ist es für eine Engine aber nicht!).

Gruß - Stefan
Parent - By Frank Brenner Date 2012-08-31 09:49
>Naja, also die Zeiteinteilung ist schon nicht unwichtig und diese will ich auch mitberücksichtigen. Außerdem wäre eine fixe Zeiteinteilung ein nicht unbeträchtliche zusätzliches statistisches Schwankungselement,

Genau das Gegenteil ist der Fall.
Statistisch wäre das stabiler, da ein variables Element, nämlich die engineeigene Zeiteinteilung ausgeklammert würde.

Das mit dem Fail Low lasse ich nicht gelten,  denn es betrifft jede Engine in gleicher Weise.

Innerhalb der ersten 2000ms treten hunderte Fail Lows im Suchbaum auf.
Die stärkere Engine ist halt besser und schneller und rechnet schneller tiefer und zeigt nach 2000ms im Mittel einen beseren Zug an, trotz der unzähligen Fail Lows.

Ich betrachte den Zeiteinteilungsalgorithmus nicht als Bestandteil der eigentlichen Engine. Er ist sowas von Separat dass  ihn sogar die GUI selber realisieren könnte.

Wenn du eine kritische Schachstellung hast und möchtest die Engine darauf ansetzen um die Stellung zu beurteilen spielt doch der Zeiteinteilungsalgorithmus keine rolle ...

Natürlich weiss ich dass es für die tägliche Turnierpraxis relevant ist, hier spielen bei Menschen auch psychologische Elemente eine Rolle, der trieste Blick, der Händedruck vor der Partie, das Interview vorher oder die vorbereitete Eröffnungsfalle. All diese Elemente spielen eine Rolle das Turnier zu gewinnen, aber nicht die Spielstärke zu verbessern.

Ein menschlicher WM kann gerne in beiden Disziplinen gut sein, für eine Engine reicht die Spieltstärke.
Parent - - By Benno Hartwig Date 2012-08-31 09:11
[quote="Frank Brenner"]Was mir noch besser gefallen würde wäre wenn du der engine exakt 2000ms pro Zug zeit gibst, so würdest du den in einer Engine integrierten Zeiteinteilungsalogorithmus ausklammern,
was ja eigentlich erwünscht ist, denn wir wollen ja schließlich die Spielstärke der Engine bewerten und nicht die Zeiteinteilung.[/quote]Bitte? Alles Programmierte, was gut oder schlecht für die Spielstärke sein muss, sollte doch Testbestandteil werden. Eine Engine, die es besonders gut macht, sollte doch profitieren können, eine Engine, die es regelmäßig schlecht macht und ggf. an unnützen Stellen irre viel Zeit verplempert, sollte doch mit den Folgen konfrontiert werden.
Zeitmanagement rausnehmen bedeutet, dass das, was du ermittelst, weiter vom eigentlich (zumindest mich) Interessierenden praktischen Spielbetrieb entfernt liegt.

"Die Zeit für den aktuellen Zug ist eigentlich um, aber der bislang favorisierte Zug hat sich nun doch als schlecht erwiesen, da schaue ich mir in dieser Tiefe doch lieber noch mal ein paar andere an!" ist eine Entscheidung, die die Engine doch unbedingt treffen dürfen müsste!

Benno
Parent - By Stefan Pohl Date 2012-08-31 13:36
[quote="Benno Hartwig"]
[quote="Frank Brenner"]Was mir noch besser gefallen würde wäre wenn du der engine exakt 2000ms pro Zug zeit gibst, so würdest du den in einer Engine integrierten Zeiteinteilungsalogorithmus ausklammern,
was ja eigentlich erwünscht ist, denn wir wollen ja schließlich die Spielstärke der Engine bewerten und nicht die Zeiteinteilung.[/quote]Bitte? Alles Programmierte, was gut oder schlecht für die Spielstärke sein muss, sollte doch Testbestandteil werden. Eine Engine, die es besonders gut macht, sollte doch profitieren können, eine Engine, die es regelmäßig schlecht macht und ggf. an unnützen Stellen irre viel Zeit verplempert, sollte doch mit den Folgen konfrontiert werden.
Zeitmanagement rausnehmen bedeutet, dass das, was du ermittelst, weiter vom eigentlich (zumindest mich) Interessierenden praktischen Spielbetrieb entfernt liegt.

"Die Zeit für den aktuellen Zug ist eigentlich um, aber der bislang favorisierte Zug hat sich nun doch als schlecht erwiesen, da schaue ich mir in dieser Tiefe doch lieber noch mal ein paar andere an!" ist eine Entscheidung, die die Engine doch unbedingt treffen dürfen müsste!

Benno
[/quote]

Das sehe ich auch so.

Gruß - Stefan
Parent - By Stefan Schiffermueller Date 2012-08-31 12:47
[quote="Frank Brenner"]
Was mir noch besser gefallen würde wäre wenn du der engine exakt 2000ms pro Zug zeit gibst, so würdest du den in einer Engine integrierten Zeiteinteilungsalogorithmus ausklammern,
[/quote]
Diese Idee hatte schon mal jemand:
http://www.open-chess.org/viewtopic.php?f=4&t=379

Aber:
1. Eine feste Zeit würde Engines bevorteilen, die den besten Zug häufig updaten bzw. schneller in die Tiefe gehen, z.B. Stockfish.
2. Der Algorithmus zur Erkennung von einfachen/kritischen Zügen und der damit zusammenhängenden Zeitzuteilung würde unter den Tisch fallen. Das ist nicht nur für die Spielstärke wichtig sondern auch für die Qualität der automatischen Partieanalyse, wenn die Engine gute Entscheidungen trifft, wo sie mehr oder weniger Zeit aufwendet.
3. Es ist eine Verschwendung von Rechenzeit, wenn der Rechenvorgang abgebrochen wird und die Engine schon lange an dem Zug gerechnet hat.  Man könnte stattdessen mehr Partien auf gleichem Niveau spielen.
Parent - By Michael Scheidl Date 2012-08-30 18:11
Zitat:
wenn eine Engine "lernen" kann, so soll doch der PRogrammierer seine Engine ein Jahr lang "lernen" lassen

Eine großartige, absolut wirksame Idee die unbedingt verwirklicht werden sollte!

Die Probleme liegen im Detail; mein Gedanke ist daß man es dem User "optional" überläßt ob er so ein Lernfile mit benutzt oder nicht. Diese Entscheidung wird wohl von der jeweils vorhanden Computerkapazität abhängen (im Vergleich zu der womit das Lernfile produziert wurde...).
Parent - By Benno Hartwig Date 2012-08-30 23:32
[quote="Frank Brenner"]wenn eine Engine "lernen" kann, so soll doch der PRogrammierer seine Engine ein Jahr lang "lernen" lassen[/quote]Stimmt. Und wenn wir größere Bücher wollen, dann soll man die Engine eben ein Jahr lang das Buch vergrößern lassen.
Und wenn uns eine Stellung besonders interessiert, ggf. sogar die Ausgangsstellung, dann setzen wir eine Engine ein Jahr lang drauf an.
Computerschachfortschritte können ja soo einfach sein! SCNR

Benno
(OK, du hattest es nicht ernst gemeint. Aber die Vorlage war einfach zu schön.)
Parent - - By Stefan Pohl Date 2012-08-30 07:55
[quote="Michael Scheidl"]
Es tut mir leid daß Du meinen Ansatz nicht verstehst. Ich halte Deine Rangliste für eine der besten, aber trotzdem: Du testest etwas ab das es in einer "Normalpraxis" (wie ich gerne sage) eines Schachspielers nicht gibt. Laborstandards sind einfach zu steril, sie sind zu praxisfern. Je näher Testbedingungen an einer typischen Anwenderpraxis sind, desto besser! Kein normaler Schachspieler beschränkt sich auf einen engen Satz an Eröffnungsvarianten.
[/quote]

Hallo Michael,

da muß ich doch widersprechen, und zwar in mehrfacher Hinsicht:
1.) Daß die IPON Laborstandards entspricht ist leider nicht der Fall, da die Partien (also die Datenbasis aller Ergebnisse) nicht öffentlich gemacht werden. Kein Prostatamedikament (um bei Ingos Beispiel zu bleiben) hätte eine Chance auf eine Zulassung, würden in den medizinischen Studien darüber die erzielten Forschungsdaten geheimgehalten werden.
2) Sterile Laborstandards sind der einzig gangbare Weg, um Engines zu testen. Wie willst du denn Hashlerneffekte wirklich aussagekräftig und statistisch relevant testen? Das ist unmöglich.
3) Ich habe das Glück privat einen sehr guten Schachspieler zu kennen (über 2200 Elo), der viele Siege damit einfährt, daß er immer wieder in ganz bestimmte Eröffnungssysteme reinkommt, in denen er sich dann besser auskennt als der Gegner.

Dennoch stimme ich prinzipiell zu, wenn du sagst, daß Testbedingungen möglichst nahe an der Anwenderpraxis sein sollten. Darum versuche ich ja in der LS-Rangliste die sterilen Laborbedingungen der Anwenderpraxis so weit als möglich anzunähern - aber das ist immer eine Kompromißlösung. Aber in der LS-Rangliste gibt es (auch jetzt nach der Verdoppelung der Bedenkzeit) kurze Bedenkzeiten, und nur die stärksten Engines. Das hat nun folgende Konsequenzen:

1) Große Ergebnissicherheit und kleine Errorbars (Labor)
2) Keine Partien zwischen starken und ganz schwachen Engines (Anwenderpraxis (wen interessiert Houdini gegen MinkoChess? Wer spielt so was zuhause oder auf playchess? - Eben))(+Labor, denn Engines wissen nicht, daß der Gegner sehr schwach/ sehr stark ist und können daher ggf. frühe Remisen durch Stellungswiederholung zulassen/ nicht verhindern - kann Ergebnisse verzerren)
3) rel. wenige Gegner +  viele Partien ermöglichen sehr breite Vorgabestellungsbasis (bei mir 500 Stellungen, IPON 75 - also mehr als 6 mal so viele Stellungen), die sehr viel mehr Anwenderpraxis abdecken.
4) kein Pondern (Labor). Denn Pondern ist im besten Fall Ressourcenverschwendung (wenn der Gegner was anderes zieht, als erwartet wurde, fängt die Engine bei Null an und die Ponderberechnung war vergebens), kann im schlimmsten Fall aber auch Ergebnisse verzerren: Gerade auf heutigem, hohen Niveau gibt es immer wieder rel. lange Zugfolgen, wo beide Engines sich einig sind, was das beste ist. Die Engine, die zuerst in so eine Zugfolge reinrutscht, wird dann in ihrer Bedenkzeit stark benachteiligt, denn sie rechnet und macht dann ersten Zug dieser Zugfolge, den die gegnerische Engine schon erwartet hat, worauf diese sofort zieht und keine Zeit verbraucht. Die erste Engine hatte nun aber keine Zeit fürs Pondern und muß wiederum ihre Bedenkzeit investieren, macht den nächsten Zug der Zugfolge und wieder hat die 2. Engine gepondert und zieht sofort usw. usw. Das kann erhebliche Zeitnachteile für eine Engine nach sich ziehen (jeder, der mal auf playchess im Maschinenraum war, kennt das Phänomen). Ergo: Pondern ist das Gegenteil von Laborbedingungen. Sicher ist es dafür näher an der Anwenderpraxis. Hier muß man sich daher als Tester eben zwangsläufig entscheiden, da hier kein Kompromiß möglich ist. Wer viele Ressourcen hat, wie Ingo, kann sich hier für die Praxisnähe entscheiden, was er ja auch gemacht hat, ich mit meinem einen kümmerlichen 4-Kern Laptop, habe mich aber eben für die Laborbedingungen und gegen das Pondern entschieden (außerdem kann die LittleBlitzerGUI nicht pondern und eine andere GUI kommt für mich z.Zt. nicht in Frage...)

Gruß - Stefan
Parent - - By Ernest Bonnem Date 2012-08-30 11:58
[quote="Stefan Pohl"]Die Engine, die zuerst in so eine Zugfolge reinrutscht, wird dann in ihrer Bedenkzeit stark benachteiligt, denn sie rechnet und macht dann ersten Zug dieser Zugfolge, den die gegnerische Engine schon erwartet hat, worauf diese sofort zieht und keine Zeit verbraucht. Die erste Engine hatte nun aber keine Zeit fürs Pondern und muß wiederum ihre Bedenkzeit investieren, macht den nächsten Zug der Zugfolge und wieder hat die 2. Engine gepondert und zieht sofort usw. usw. [/quote]
Hallo Stefan,

Sowas kennt man ja, wenn man Engine-Engine matches mit Pondern beobachtet.
Aber kann man nicht sagen, daß das sich mit Statistik ausgleicht, einmal ist Engine A benachteiligt, einmal Engine B?...
Parent - By Stefan Pohl Date 2012-08-30 15:41
[quote="Ernest Bonnem"]
[quote="Stefan Pohl"]Die Engine, die zuerst in so eine Zugfolge reinrutscht, wird dann in ihrer Bedenkzeit stark benachteiligt, denn sie rechnet und macht dann ersten Zug dieser Zugfolge, den die gegnerische Engine schon erwartet hat, worauf diese sofort zieht und keine Zeit verbraucht. Die erste Engine hatte nun aber keine Zeit fürs Pondern und muß wiederum ihre Bedenkzeit investieren, macht den nächsten Zug der Zugfolge und wieder hat die 2. Engine gepondert und zieht sofort usw. usw. [/quote]
Hallo Stefan,

Sowas kennt man ja, wenn man Engine-Engine matches mit Pondern beobachtet.
Aber kann man nicht sagen, daß das sich mit Statistik ausgleicht, einmal ist Engine A benachteiligt, einmal Engine B?...
[/quote]

Sicher wird das bei genügend Partien so sein. Allerdings ist es eben doch ein weiteres Schwankungs-Element beim Messen der Spielstärke und Ressourcenverschwendung ist es in jedem Fall. Also hat es m.E. keinen Nutzen, aber auf jeden Fall Nachteile.

Gruß - Stefan
Parent - - By Benno Hartwig Date 2012-08-30 14:12
[quote="Stefan Pohl"]...Pondern ist das Gegenteil von Laborbedingungen. Sicher ist es dafür näher an der Anwenderpraxis. [/quote]Und so muss man sich fragen, was einen interessiert: die Leistungsfähigkeit im Labor, oder die in der Anwendungspraxis.
Aber du hast schon recht: hier kommt ein sehr unangenehmes zufälliges Element hinein.

Andererseits: Wenn denn mal solch eine Zugfolge (5 Züge oder so?) auftritt, und die eine Engine dann z.B. bei den ersten 60 Zügen jeweils durchschnittlich um den Faktor 60/55 mehr Zeit zur verfügung hat, wieviel Spielstärkegewinn soll dass denn ausmachen?
Ich komme da auf knapp 9 ELO.
Dass jede Partie gespickt ist von 'zufälligen' Ereignissen (d.h. irgendwie effektvollen Zügen, deren Effekt die Engine aber gar nicht durchschaute), findet eh statt. Da führen diese gelegentlichen ponder-Zugfolgen auch keine wirklich relevante Störung ein, denke ich.

Benno
Parent - - By Stefan Pohl Date 2012-08-30 15:50
[quote="Benno Hartwig"]

Dass jede Partie gespickt ist von 'zufälligen' Ereignissen (d.h. irgendwie effektvollen Zügen, deren Effekt die Engine aber gar nicht durchschaute), findet eh statt. Da führen diese gelegentlichen ponder-Zugfolgen auch keine wirklich relevante Störung ein, denke ich.

Benno
[/quote]

Naja, aber es ist eben eine Störung zusätzlich, die man durch den Verzicht aufs Pondern beim Testen leicht eliminieren kann. Und für möglichst gute (d.h. statistisch sichere) Ergebnisse sollte man m.E. versuchen mögliche statistische Schwankungselemente weitestmöglich zu reduzieren oder eben ganz zu vermeiden. Daher eben bei mir kein Pondern und 1000 Partien pro Einzelvergleich und mindestens 10000 Partien für eine gelistete Engine. Damit minimiere ich eben statistische Schwankungen so weit es für meine Hardwaremöglichkeiten und meinen maximalen Zeitaufwand machbar ist. Perfekt ist das sicher auch nicht. Zudem, das räume ich hier gerne auch noch mal ein, kann die LittleBlitzerGUI sowieso nicht pondern, von daher hatte ich auch gar keine Wahl. Aber wäre es mit dieser GUI möglich, würde ich es aus dem genannten Grund dennoch sein lassen.

Gruß - Stefan
Parent - - By Benno Hartwig Date 2012-08-30 16:27
[quote="Stefan Pohl"]Naja, aber es ist eben eine Störung zusätzlich, die man durch den Verzicht aufs Pondern beim Testen leicht eliminieren kann...[/quote]Aber du nimmst dem Test dann ein Stück Realitätsbezug.
Sollte eine Engine in irgendeinem Sinne besser Pondern als die andere, dann sollte sie davon profitieren.
Und sollte sie sogar häufiger als andere in solche Zugfolgen, bei denen sie dann verstärkt profitiert, abwickeln können, dann ist dies doch ganz sicher auch ein Effekt, der ihr in den Tests zum Vorteil gereichen sollte, finde ich.

Auf Pondern verzichten, weil die heimischen Resssourcen nicht ausreichen ist ein richtiger Ansatz. (wer nur einen P4 hat...)
Auf Pondern verzichten, weil die Ressourcen dann eine doppelte Partienzahl gestatten, ist auch ein vernünftiger Ansatz.
Ganz praktische Gründe.

Auf Pondern verzichten, weil Pondern als in irgend einem logischen (d.h.: die Ergebnisse betreffend) Sinne als störend empfunden wird, sehe ich als widersinnig an.
Du veränderst die Rahmenbedingungen, du veränderst Chancen, du entwertest Features, du kaschierst Schwächen, nur weil du einen kleinen Zufall entfernen willst, der im Konzert der unzähligen weit größeren Zufälle doch kaum auffällt.

Benno
Parent - - By Stefan Pohl Date 2012-08-31 08:15 Edited 2012-08-31 08:17
[quote="Benno Hartwig"]
[quote="Stefan Pohl"]Naja, aber es ist eben eine Störung zusätzlich, die man durch den Verzicht aufs Pondern beim Testen leicht eliminieren kann...[/quote]Aber du nimmst dem Test dann ein Stück Realitätsbezug.
Sollte eine Engine in irgendeinem Sinne besser Pondern als die andere, dann sollte sie davon profitieren.
Und sollte sie sogar häufiger als andere in solche Zugfolgen, bei denen sie dann verstärkt profitiert, abwickeln können, dann ist dies doch ganz sicher auch ein Effekt, der ihr in den Tests zum Vorteil gereichen sollte, finde ich.

Auf Pondern verzichten, weil die heimischen Resssourcen nicht ausreichen ist ein richtiger Ansatz. (wer nur einen P4 hat...)
Auf Pondern verzichten, weil die Ressourcen dann eine doppelte Partienzahl gestatten, ist auch ein vernünftiger Ansatz.
Ganz praktische Gründe.

Auf Pondern verzichten, weil Pondern als in irgend einem logischen (d.h.: die Ergebnisse betreffend) Sinne als störend empfunden wird, sehe ich als widersinnig an.
Du veränderst die Rahmenbedingungen, du veränderst Chancen, du entwertest Features, du kaschierst Schwächen, nur weil du einen kleinen Zufall entfernen willst, der im Konzert der unzähligen weit größeren Zufälle doch kaum auffällt.

Benno
[/quote]

Hi Benno,

Ich stimme fast komplett zu, allerdings bezweifle ich es prinzipiell, daß einige Engines "besser" pondern, also besser gegnerische Züge vorhersagen können, als andere. Alle Engines sind Autisten und wissen nicht mal wer der Gegner ist, noch wie er spielt und "denkt" (das ist auch der Grund, warum ich Ranglisten-Spiele zwischen extrem starken und extrem schwachen Engines ablehne). Ich nehme allerdings an, daß generell die Prozentzahl der Ponderhits (bei allen Engines) steigt, je höher das Hardware-Niveau ist und je besser die Engines Schach spielen können. Das hat aber logischerweise auf die Ergebnisse in einer Rangliste keinen Einfluß, da es alle Engines gleichermassen betrifft.
Wenn sich mal jemand die Mühe machen würde, dies mit einem irgendwie gearteten Experiment zu prüfen, wäre das eine schöne Sache - wie immer so ein Experiment auch aussehen könnte.
Aber wie schon mal erwähnt, ist diese Debatte für meine Person und meine Rangliste rein akademisch, da die LittleBlitzerGUI sowieso nicht pondern kann und meine begrenzten Hardwareressourcen pondern auch nicht zulassen würden - wie du richtig feststellst, würde ich sonst nur halb so viele Partien pro Zeiteinheit schaffen. Das kommt bei mir nicht in Frage.
Und zum "kleinen Zufall": Soooo klein wird er nicht sein, fürchte ich. In einer Rangliste will ich ja ergründen wie Engines unter identischen Bedingungen (Vorgabestellungen, gleiche Hardware und eben auch gleiche Bedenkzeit(!)) gegeneinander abschneiden. Das Pondern zerstört nun aber eine dieser Bedingungen, weil die zur Verfügung stehende Zeit nicht mehr für beide Engines in einer Partie identisch ist. Das ist schon ein recht gravierendes Problem. Sicher wird sich das mehr oder weniger ausgleichen, wenn man genügend Partien absolviert, aber ein kleines Zufallselement ist es m.E. nicht!

Gruß - Stefan
Parent - - By Benno Hartwig Date 2012-08-31 13:08
[quote="Stefan Pohl"]Ich stimme fast komplett zu, allerdings bezweifle ich es prinzipiell, daß einige Engines "besser" pondern, also besser gegnerische Züge vorhersagen können, als andere.[/quote]Ich weiß nicht, ob sowas passiert.
Logische Ansätze dazu wären aber vorstellbar.
1) Wenn mein Gegner schon deutlich länger denkt, als ich für einen Zug einplane, für den erwarteten Gegnerzug auch schon eine passable Antwort habe, dann könnte ich versuchen auch auf einen anderen guten Gegnerzug eine Antwort zu finden
2) Wenn ich auf den erwarteten Gegnerzug schon einen sicheren Gewinnzug gefunden habe, kann ich mich auch um einen anderen Gegnerzug kümmern.
2a) ggf. auch: Wenn ich auf den erwarteten Gegnerzug einen mit hoher Wahrscheinlichkeit superguten Zug gefunden habe...
3) Wenn es auf den erwarteten Gegnerzug nur einen erzwungenen Zug gibt (nur ein Zug legal, oder alle anderen einfach superschlecht),...
4) Wenn man auf mehreren Kernen pro Engine spielt, könnte diese ihre Pondern auch z.B. 2 Gegnerzüge verteilen, sofern ihr diese beiden etwas gleichwahrscheinlich vorkommen. Damit ließe sich die Rechenleistung der Kerne hier ggf. effizienter ausnutzen.

Wird sowas heute nirgends gemacht?
Gab es nicht zumindest mal derartige Ansätze? Ich meine mich dumpf an 1) zu erinnern.

Benno
Parent - By Stefan Pohl Date 2012-08-31 13:40
[quote="Benno Hartwig"]
[quote="Stefan Pohl"]Ich stimme fast komplett zu, allerdings bezweifle ich es prinzipiell, daß einige Engines "besser" pondern, also besser gegnerische Züge vorhersagen können, als andere.[/quote]Ich weiß nicht, ob sowas passiert.
Logische Ansätze dazu wären aber vorstellbar.
1) Wenn mein Gegner schon deutlich länger denkt, als ich für einen Zug einplane, für den erwarteten Gegnerzug auch schon eine passable Antwort habe, dann könnte ich versuchen auch auf einen anderen guten Gegnerzug eine Antwort zu finden
2) Wenn ich auf den erwarteten Gegnerzug schon einen sicheren Gewinnzug gefunden habe, kann ich mich auch um einen anderen Gegnerzug kümmern.
2a) ggf. auch: Wenn ich auf den erwarteten Gegnerzug einen mit hoher Wahrscheinlichkeit superguten Zug gefunden habe...
3) Wenn es auf den erwarteten Gegnerzug nur einen erzwungenen Zug gibt (nur ein Zug legal, oder alle anderen einfach superschlecht),...
4) Wenn man auf mehreren Kernen pro Engine spielt, könnte diese ihre Pondern auch z.B. 2 Gegnerzüge verteilen, sofern ihr diese beiden etwas gleichwahrscheinlich vorkommen. Damit ließe sich die Rechenleistung der Kerne hier ggf. effizienter ausnutzen.

Wird sowas heute nirgends gemacht?
Gab es nicht zumindest mal derartige Ansätze? Ich meine mich dumpf an 1) zu erinnern.

Benno
[/quote]

Naja, wenn so was gemacht würde. Aber so weit ich weiß, ist das Pondern doch bisher nur das übliche 08/15-pondern: Man nimmt einfach den 2. Halbzug aus der Hauptvariante als Gegnerantwort an und rechnet damit weiter. Oder ist das was an mir vorbeigelaufen??? Sollte da jemand mehr wissen, dann bitte hier posten.

Stefan
Parent - By Timo Haupt Date 2012-08-31 17:42
Um mich mal kurz in die Diskussion mit einzuklinken: Ein weiterer Aspekt, der mit dem Pondern zusammen gedacht werden muss, ist wieder die Zeitverwaltung. Diese wird deutlich kompexer, wenn mit Ponder=On gespielt wird. Denn genau der von dir beschriebene Fall, wenn der Gegner schon deutlich länger denkt als ich für den Zug eingeplant hatte, stellt mich ja bei einem anschließenden Ponderhit vor die Wahl, ob ich die Suche sofort abbreche und den bislang besten gefundenen Zug ausspiele oder aber unter bestimmten Bedingungen (Fail High / Low, im Verlauf "wacklige Scores" in den einzelnen Iterationen, steigende oder fallende Scores) doch noch etwas mehr von meiner eigenen Zeit investiere.

Deshalb glaube ich, dass es schon Engines gibt, die von Ponder=On ein bisschen mehr profitieren als andere. Aber nicht unbedingt aus dem Grund, dass sie eine höhere Ponderhitrate haben, sondern eben weil die Zeitverwaltung für z.B. den oben geschilderten Fall besser ist als bei anderen. Ein schönes Negativ-Beispiel dafür waren die Robbolittos (ich glaube bis Version 0.9) - die hatten nämlich bei Ponder=On eine grauenhafte Zeitverwaltung (zogen bei einem Ponderhit entweder sofort oder aber brauchten dann noch genauso lange für den Zug als wenn sie gar nicht gepondert hätten).

Viele Grüße
Timo
Parent - - By Kurt Utzinger Date 2012-08-31 15:21
Hallo Michael
Hat denn das Eröffnungslernen und das Stellungslernen je schon
irgendwo/irgendwann einen wirklich positiven Effekt gebracht?
Mfg
Kurt
Parent - - By Stefan Pohl Date 2012-09-01 09:38
[quote="Kurt Utzinger"]
Hallo Michael
Hat denn das Eröffnungslernen und das Stellungslernen je schon
irgendwo/irgendwann einen wirklich positiven Effekt gebracht?
Mfg
Kurt
[/quote]

Also das Eröffnungslernen hat schon einen Effekt im praktischen Spiel, meine ich. Wenn eine Engine Verlustpartien im Eröffnungsbuch sperrt, kann das schon etwas bringen, ganz besonders bei Engines wie Stockfish, deren aggressive Spielweise sich einfach für bestimmte Eröffnungen/systeme so gar nicht eignet. Das Stellungslernen halte ich hingegen für total sinnfrei, wenn es ums praktische Spiel geht (für Analysen ist das was ganz anderes).

Gruß - Stefan
Parent - - By Kurt Utzinger Date 2012-09-01 15:20
[quote="Stefan Pohl"]
Also das Eröffnungslernen hat schon einen Effekt im praktischen Spiel, meine ich. Wenn eine Engine Verlustpartien im Eröffnungsbuch sperrt,
Gruß - Stefan
[/quote]

Hi Stefan
Passiert das wirklich in der Praxis, d.h. eine Eröffnungsvariante, die in der Partie z. B. im 60. Zug zum Verlust führt, wird nicht mehr gespielt??
Gruss
Kurt
Parent - By Ludwig Bürgin Date 2012-09-02 10:18
Hallo Kurt

Da Du bis jetzt noch keine Antwort auf Deine Frage bekommen hast  , was bewirken Bücher  im Computerschach ,versuche ich Dir nach meinen Möglichkeiten zu Antworten.Da offensichtlich Engine die fest vorgegebenen Anfangszüge im Buch anfänglich blind nachspielen,sind sie doch in der Lage je nach Spielausgang dieselben auf Grund eingestellter BUCHOPTIONEN (Schieber) stärker oder weniger stark ( mit+ oder -) zu Bewerten.Wenn aber nach ungutem Ausgang einer vorgegebenen Variante an diesen von der Engine bemängelten  Stellen  keine spielbaren alternativen Züge im Buch sind, kann das Ganze leicht zu Bumerang für die Engine geraten.
Wenn Du Dich intensiever mit  dem Zusammenspiel Buch-Engine beschäftigen willst,würde ich mich an Peter Schneider wenden,der meiner Meinung nach sehr viel davon versteht.

Gruß Ludwig.

PS:Liebe Leser.Kann mich meinerseits auch komplett irren.
Parent - By Stefan Pohl Date 2012-09-02 11:59
[quote="Kurt Utzinger"]
[quote="Stefan Pohl"]
Also das Eröffnungslernen hat schon einen Effekt im praktischen Spiel, meine ich. Wenn eine Engine Verlustpartien im Eröffnungsbuch sperrt,
Gruß - Stefan
[/quote]

Hi Stefan
Passiert das wirklich in der Praxis, d.h. eine Eröffnungsvariante, die in der Partie z. B. im 60. Zug zum Verlust führt, wird nicht mehr gespielt??
Gruss
Kurt
[/quote]

Hallo Kurt,

also ich bei kein Experte für Bücher oder so, aber wenn ich gelegentlich mal ein Spielchen auf playchess im Maschinenraum mache und das Buchlernen auf maximal stelle, dann wird die Variante gesperrt, die in einer Partie zum Verlust geführt hat, egal wann der Verlust in der Partie auftrat. Deshalb muß man als Buchtuner ja auch immer nacharbeiten, denn es kann ja sein, daß die Variante am Verlust gar nicht Schuld war.
Und wenn die Partie gewonnen wurde, wird die Eröffnungsvariante bevorzugt gespielt, versteht sich.
Das alles gilt natürlich nur für die FritzGUI. Wie es bei anderen GUI aussieht, kann ich dir nicht sagen, da können evt. andere Leute was zu posten.

Gruß - Stefan
Parent - - By Jörg Oster Date 2012-08-29 20:50
[quote="Ingo Bauer"]
[quote="Michael Scheidl"]

Ich finde, künftig sollten aussagekräftige Enginetests ein bißchen von "sterilen" Laborstandards weg kommen, eine gewisse Dosis Chaos injizieren (z.B. breit gefächerte Eröffnungsvarianten ohne anschließenden Seitenwechsel, um nur ein Beispiel zu nennen),...
[/quote]

Ich bin auch dafür das ein Prostatakrebsmittel mal nur an Frauen gesteset wird um von den Laborstandars wegzukommen und um zu sehen ob sich das in der Praxis nicht viel besser bewährt ...

So ein Schmarrn!

Gruß
Ingo
[/quote]

Das was du hier ablässt, ist nicht nur ein Schmarrn, sonder auch noch mehr als geschmacklos!
Parent - By Ingo Bauer Date 2012-08-29 20:54
Stimmt!

Gruß
INgo
Up Topic Hauptforen / CSS-Forum / Neue Erkenntnisse zum Ultra-Blitz/Bullet
1 2 Previous Next  

Powered by mwForum 2.29.3 © 1999-2014 Markus Wichitill