Diese Seite mit anderen teilen ...

Informationen zum Thema:
Forum:
ChessBits-Computerschachforum
Beiträge im Thema:
18
Erster Beitrag:
vor 15 Jahren, 9 Monaten
Letzter Beitrag:
vor 15 Jahren, 9 Monaten
Beteiligte Autoren:
Martin Schubert, Ingo Bauer, Gerhard Sonnabend, Harald Faber, marcus kästner

Spielen ohne Buchlernen

Startbeitrag von Martin Schubert am 19.06.2001 08:18

Bei ChessBase scheint es ja nicht möglich zu sein, Autoplayer-Matche ohne Buchlernen zu spielen. Falls man das aber machen will, muss man sich wie Gerhard die Mühe machen, alle paar Partien die Lernfiles zu löschen. Wäre es nicht auch möglich, die Einträge im Buch zu ändern, die Partienanzahl so hochzusetzen, dass neu gespielte Partien fast keinen Einfluss mehr haben? Das heißt ich schreibe rein, dass bereits 1000 Partien in der Variante gespielt wurden mit dem und dem Erfolg. Wenn das Programm dann eine Partie gewinnt oder verliert, macht das dann nichts aus.
Gibt es dafür Tools, mit denen man so etwas automatisch machen könnte? Oder müßte man da manuell in jeden einzelnen Zug rein?

Gruß, Martin

Antworten:

Hallo Martin

Wozu soll das gut sein?

Wenn ein Match gespielt wird und es gibt ein Loch im Buch ist es doch nur Sinnvoll wenn es gestopft wird und nicht 100 gleiche Partien gespielt werden. Kein Schachspieler spielt einen Zug der offensichtlich zu Verlust geführt hat nochmal.

Viel mehr Sinn würde machen Engines ohne Buch gegeneinander spielen zu lassen.

Keinen Sinn macht es hingegen eine Engine mit riesigem Buchlearnfile gegen eine frische Installation eines anderen Programms antreten zu lasssen.

Die Lösung für mich lautet: Vor jedem Match zwischen zwei Engines werden die Learnfiles gelöscht. Was dann während dem MAtch passiert ist halbwegs fair. Wenn ein Programm einen besseren Learnalgo besitzt gehört das zum Programm und somit zur Spielstärke.

Bye Ingo

von Ingo Bauer - am 19.06.2001 08:31
Hi, Ingo!

Ich will eben nicht ein Programm, das gelernt hat, gegen ein Programm antreten lassen, dass nicht gelernt hat. Ich will die ganze Breite des Buches ausnutzen, am besten mit Einheitsbuch. Ich möchte statistisch aussagekräftigere Resultate haben, daher muss das Buchlernen weg.
Was meine Idee war: ein Buch so zu bearbeiten, so dass die Wahrscheinlichkeiten, dass ein Zug gespielt werden soll, mit den Grundwahrscheinlichkeiten, die bei einem nagelneuen Buch angegeben sind. Also dem Programm vorgaukeln, es hätte schon eine Millionen Partien gespielt, und das Buch hätte sich so bestätigt.

> Die Lösung für mich lautet: Vor jedem Match zwischen zwei
> Engines werden die Learnfiles gelöscht. Was dann während dem
> MAtch passiert ist halbwegs fair. Wenn ein Programm einen
> besseren Learnalgo besitzt gehört das zum Programm und somit
> zur Spielstärke.

Mir geht es nicht um die Fairness, sondern um eine gute (bzw. eine bessere) Möglichkeit, die Spielstärke zu "messen". Es nutzt mir reichlich wenig, wenn ein Programm dank gutem Lernen die Stellungen vermeidet, von denen es nichts versteht, wenn ich leider das Programm in diesen Stellungen zur Analyse einsetzen will.

Gruß, Martin


Ingo Bauer schrieb:
>
> Hallo Martin
>
> Wozu soll das gut sein?
>
> Wenn ein Match gespielt wird und es gibt ein Loch im Buch ist
> es doch nur Sinnvoll wenn es gestopft wird und nicht 100
> gleiche Partien gespielt werden. Kein Schachspieler spielt
> einen Zug der offensichtlich zu Verlust geführt hat nochmal.
>
> Viel mehr Sinn würde machen Engines ohne Buch gegeneinander
> spielen zu lassen.
>
> Keinen Sinn macht es hingegen eine Engine mit riesigem
> Buchlearnfile gegen eine frische Installation eines anderen
> Programms antreten zu lasssen.
>
>
> Bye Ingo

von Martin Schubert - am 19.06.2001 08:48
Hallo

> Ich will eben nicht ein Programm, das gelernt hat, gegen ein
> Programm antreten lassen, dass nicht gelernt hat. Ich will die
> ganze Breite des Buches ausnutzen, am besten mit Einheitsbuch.

Wenn ein gleiches Buch für alle Engines benutzt wird ist das OK. Besser fände ich allerdings KEIN Buch. Eine Buchzusammenstellung ist irgendwie auch immer gefärbt.

> Ich möchte statistisch aussagekräftigere Resultate haben, daher
> muss das Buchlernen weg.
> Was meine Idee war: ein Buch so zu bearbeiten, so dass die
> Wahrscheinlichkeiten, dass ein Zug gespielt werden soll, mit
> den Grundwahrscheinlichkeiten, die bei einem nagelneuen Buch
> angegeben sind. Also dem Programm vorgaukeln, es hätte schon
> eine Millionen Partien gespielt, und das Buch hätte sich so
> bestätigt.

Was du wolltest habe ich schon verstanden nur warum war mir nicht klar!

> Mir geht es nicht um die Fairness, sondern um eine gute (bzw.
> eine bessere) Möglichkeit, die Spielstärke zu "messen". Es
> nutzt mir reichlich wenig, wenn ein Programm dank gutem Lernen
> die Stellungen vermeidet, von denen es nichts versteht, wenn
> ich leider das Programm in diesen Stellungen zur Analyse
> einsetzen will.

OK zur Analyse macht die Sache Sinn. Allerdings bin ich überzeugt das du so keine Spielstärke messen köntest. Weiterhin nutzt es dir wenig wenn du z.B. von 100 Partien 40 mal dieselbe bekommst. Spätestens nach der dritten weißt du das das Programm ein Problem hat. Interessanterweise weiß man ohne genaue Analyse nichtmal ob die Engine ein Problem mit der Stellung oder das Buch schlicht ein Loch hat die Engine also schon "verloren" hat bevor sie richtig loslegen kann.

BYe Ingo

von Ingo Bauer - am 19.06.2001 09:09

Re: Spielen ohne Buchlernen PS

Wenn ich drüber nachdenke scheint es mir sogar sinnvoller in deinem Fall ohne bzw mit einem Empty book zu spielen. Zu deinem Problem. Kannst du das Buch nicht einfach schreibschützen? Habe ich nicht ausprobiert. Nur so ne Idee.

Ingo

von Ingo Bauer - am 19.06.2001 09:14

Re: Spielen ohne Buchlernen PS

Noch was.
Wenn du ein leeres Buch verwendest brauchst du hinterher nur die Lernwerte ansehen um zu sehen wo die Engine versagt hat. Scheint imr für deinen Zweck ganz praktisch.

Ingo

von Ingo Bauer - am 19.06.2001 09:30

Re: Spielen ohne Buchlernen PS

Ingo Bauer schrieb:
>
> Noch was.
> Wenn du ein leeres Buch verwendest brauchst du hinterher nur
> die Lernwerte ansehen um zu sehen wo die Engine versagt hat.
> Scheint imr für deinen Zweck ganz praktisch.
>
> Ingo

Ich meine, es ist doch so, dass unheimlich viele Leute lange Autoplayer-Matche spielen. Und ich denke, es wäre viel geholfen, wenn man solche Ergebnisse ein wenig "aussagekräftiger" machen könnte.
Ich will nicht selber für mich anhand Engines, die ich habe, herausfinden, welche die beste ist. Das merke ich beim Benutzen selbst.
Ich will, dass Listen wie die SSDF-Liste, die als Information für den Anwender gedacht sind, auch die für den Anwender interessantesten Informationen bieten. Und das geht meiner Meinung nach am Besten ohne Buchlernen.
Das Buch einfach schreibzuschützen klappt bei ChessBase (also bei nahezu allen Programmen) nicht. Frag mal Gerhard, warum der ständig die Lernfiles löscht.

Gruß, Martin

von Martin Schubert - am 19.06.2001 09:57
> Wenn ein gleiches Buch für alle Engines benutzt wird ist das
> OK. Besser fände ich allerdings KEIN Buch. Eine
> Buchzusammenstellung ist irgendwie auch immer gefärbt.
>
Du brauchst aber ein Buch, weil Du sonst immer die gleiche Stellung aufs Brett kriegst.
Gefärbt: kommt auf die richtige Färbung an. Man kann ja zum Beispiel ein Buch einfach aus GM-Partien erstellen. Oder auch Turniere schwächerer Spieler mit reinnehmen. Oder...

> OK zur Analyse macht die Sache Sinn. Allerdings bin ich
> überzeugt das du so keine Spielstärke messen köntest. Weiterhin
> nutzt es dir wenig wenn du z.B. von 100 Partien 40 mal dieselbe
> bekommst. Spätestens nach der dritten weißt du das das Programm
> ein Problem hat. Interessanterweise weiß man ohne genaue
> Analyse nichtmal ob die Engine ein Problem mit der Stellung
> oder das Buch schlicht ein Loch hat die Engine also schon
> "verloren" hat bevor sie richtig loslegen kann.
>
Das ist schon klar, dass man mit Engine-Engine spielen nicht brauchbar Spielstärke für die Analyse messen. Aber es ist halt immer eine Frage Aufwand/Ertrag. Und so ein Engine-Engine-Match ist eine einfache Sache. Ich finde die Dinger zur Spielstärkemessung zwar auch nicht gut, aber wenn es jeder macht, dann könnte man es doch zumindest so machen, dass das, was einen interessiert, besser dargestellt wird. Auch wenn man es natürlich nicht perfekt hinbekommt.
Nimm doch einfach mal das Chess Assistant-Buch. Da bekommst Du bei 100 Partien sicherlich keine 40 mal dieselbe Partie. Nicht einmal zweimal. Und wenn Du viele Partien spielst, ist das mit den Löchern im Buch auch egal. DAS gleicht sich mit vielen Partien aus. Buchlernen gleicht sich nicht aus.

Gruß, Martin

> BYe Ingo

von Martin Schubert - am 19.06.2001 10:04
Hi

> Du brauchst aber ein Buch, weil Du sonst immer die gleiche
> Stellung aufs Brett kriegst.

Stimmt leider. Was ist mit Nuun Matches? Allerdings fehlt dann womöglich ein schachliches Thema.

> Gefärbt: kommt auf die richtige Färbung an. Man kann ja zum
> Beispiel ein Buch einfach aus GM-Partien erstellen. Oder auch
> Turniere schwächerer Spieler mit reinnehmen. Oder...

Ja eben. Wer entscheidet das und warum? Gut gegen Engines, Menschen, viele verschiedene Eröffnungen, besser für Weiß oder Schwartz, klassisch oder modern....?

> Das ist schon klar, dass man mit Engine-Engine spielen nicht
> brauchbar Spielstärke für die Analyse messen. Aber es ist halt
> immer eine Frage Aufwand/Ertrag. Und so ein Engine-Engine-Match
> ist eine einfache Sache. Ich finde die Dinger zur
> Spielstärkemessung zwar auch nicht gut, aber wenn es jeder
> macht, dann könnte man es doch zumindest so machen, dass das,
> was einen interessiert, besser dargestellt wird. Auch wenn man
> es natürlich nicht perfekt hinbekommt.
> Nimm doch einfach mal das Chess Assistant-Buch. Da bekommst Du
> bei 100 Partien sicherlich keine 40 mal dieselbe Partie.

Ich erinnere mich schwach an eine schwäche im Tiger - Buch die in schöner Regelmäßigkeit im ICC ausgenutzt wurde um dem Tiger ein Bein zu stellen. Habe das nicht weiter verfolgt glaube das sich das Problem mit der 14 Version (da Buchlernen) erledigt hat. Das Bsp zeigt aber das so etwas durchaus möglich ist. Auch bei dem ein oder anderen "Wohnzimmerturnier" sollen schon riesige Learnfiles gegen neue Inst. angetreten sein. Dabei kommt natürlich auch mist bei raus.

> Nicht
> einmal zweimal. Und wenn Du viele Partien spielst, ist das mit
> den Löchern im Buch auch egal. DAS gleicht sich mit vielen
> Partien aus. Buchlernen gleicht sich nicht aus.

Deswegen immer Buchlernen nach einen Engine Engine Match löschen ehe es an eine andere Engine geht. So hat man ein neues Buchlearnfile.
Ich bin der Meinung das dieses Learning der Engines einen erheblichen Entwicklungsaufwand der Programmierer gekostet hat. Unterdrückt man diese Funktion "kastriert" man eine Engine. Bsp.: Wenn der Programierer Buchlernen weggelassen hätte wäre die Engine vielleicht schneller und würde weniger Fehler machen. Weiterhin hätte er die Zeit für die Entwicklung der Lernfunktion auch in andere Dinge stecken können.

Wie gesagt geht es um Analyse finde ich den Ansatz OK. Allerdings wäre es dann einfacher die Engines über irgendwelche EPD's zu jagen und nach richtigen Lösungen zu suchen!

Ingo

von Ingo Bauer - am 19.06.2001 11:30
> Stimmt leider. Was ist mit Nuun Matches? Allerdings fehlt dann
> womöglich ein schachliches Thema.
>

Siehe unten?

> > Gefärbt: kommt auf die richtige Färbung an. Man kann ja zum
> > Beispiel ein Buch einfach aus GM-Partien erstellen. Oder auch
> > Turniere schwächerer Spieler mit reinnehmen. Oder...
>
> Ja eben. Wer entscheidet das und warum? Gut gegen Engines,
> Menschen, viele verschiedene Eröffnungen, besser für Weiß oder
> Schwartz, klassisch oder modern....?
>

Was gibt es da zu entscheiden? Ich würde das Chess Assistant-Buch nehmen. Oder wir generieren einfach ein neues. Egal, wie das Buch aussieht, für mich wäre das tausendmal interessanter als so wie bisher.

> Ich erinnere mich schwach an eine schwäche im Tiger - Buch die
> in schöner Regelmäßigkeit im ICC ausgenutzt wurde um dem Tiger
> ein Bein zu stellen. Habe das nicht weiter verfolgt glaube das
> sich das Problem mit der 14 Version (da Buchlernen) erledigt
> hat. Das Bsp zeigt aber das so etwas durchaus möglich ist. Auch
> bei dem ein oder anderen "Wohnzimmerturnier" sollen schon
> riesige Learnfiles gegen neue Inst. angetreten sein. Dabei
> kommt natürlich auch mist bei raus.
>

Nein! Ohne Lernen kann man so etwas bei einem breiten Buch gar nicht ausnutzen. Wenn ALLE ohne Lernen spielen. Und ich will ja gerade nicht riesige Lernfiles gegen neue Inst. haben.

> Deswegen immer Buchlernen nach einen Engine Engine Match
> löschen ehe es an eine andere Engine geht. So hat man ein neues
> Buchlearnfile.
> Ich bin der Meinung das dieses Learning der Engines einen
> erheblichen Entwicklungsaufwand der Programmierer gekostet hat.
> Unterdrückt man diese Funktion "kastriert" man eine Engine.
> Bsp.: Wenn der Programierer Buchlernen weggelassen hätte wäre
> die Engine vielleicht schneller und würde weniger Fehler
> machen. Weiterhin hätte er die Zeit für die Entwicklung der
> Lernfunktion auch in andere Dinge stecken können.
>

Aber warum wird dieser Aufwand getrieben? Nicht, um das Programm zu verbessern, sondern in der Liste besser abzuschneiden. Warum soll ich etwas nicht "kastrieren", was mich gar nicht interessiert, nur weil sich der Programmierer dafür Mühe gegeben hat?

> Wie gesagt geht es um Analyse finde ich den Ansatz OK.
> Allerdings wäre es dann einfacher die Engines über irgendwelche
> EPD's zu jagen und nach richtigen Lösungen zu suchen!
>

Die "Wahrheit" liegt darin, verschiedene Sachen zu machen. Partien. Und Stellungstests. Aber sowohl auf Stellungstests als auch auf Nunn-Stellungen, die bekannt sind, kann man sein Programm optimieren. Ich bin sicher, das wird gemacht.

> Ingo

Gruß, Martin

von Martin Schubert - am 19.06.2001 11:43
bei eng-eng ist das ganz einfach. dann verwendest du das buch von der cd, da können dann keine lerneinträge mehr hineingeschrieben werden.

marcus

von marcus kästner - am 19.06.2001 11:57
Wenn das geht müßte auch ein einfacher Schreibschutz des Buches auf der HD gehen!

Ingo

von Ingo Bauer - am 19.06.2001 12:02
marcus kästner schrieb:
>
> bei eng-eng ist das ganz einfach. dann verwendest du das
> buch von der cd, da können dann keine lerneinträge mehr
> hineingeschrieben werden.
>
> marcus

Wenn ich Gerhard richtig verstanden habe, geht das unter ChessBase nicht. Die GUI soll keine schreibgeschützten Bücher akzeptieren. Geht das doch?

Gruß, Martin

von Martin Schubert - am 19.06.2001 12:02
Hallo !

Bei Eng-Eng kann man selbstverständlich "Schreibschützen" - mache ich auch so.
Nur mit dem CB-Autoplayer gehts nicht :-(

Gruß G.S.
Computerschach Corner


von Gerhard Sonnabend - am 19.06.2001 12:41

Zusatz !

Wozu braucht man jetzt eigentlich noch den Autoplayer ?
Rebel hat angeblich Probleme damit - Shredder ist jetzt auch unter den CB-GUIs zu haben ...
Nur so ein Gedanke ;-)

Gruß G.S.
Computerschach Corner


von Gerhard Sonnabend - am 19.06.2001 12:49

Re: Spielen ohne Buchlernen PS

Man kann auch bei Chessbase die Lernwerte zurücksetzen, das ist das, was ich bei meinem Turnier machen werde. Wenn ich mit dem Tiger 14 durch bin, werden die Gegner-Bücher (bei Tiger geht das nicht, ich weiss auch nicht, ob und wo ein Buchlernen stattfindet) in der Wichtung zurückgesetzt für die Serie gegen GambitTiger. Wenn diese Serie durch ist, werden die Wichtungen wieder zurückgesetzt usw. Damit ist eine bessere Vergleichbarkeit gegeben.
Haralds Homepage


von Harald Faber - am 19.06.2001 15:57

Re: Spielen ohne Buchlernen PS

Harald Faber schrieb:
>
> Man kann auch bei Chessbase die Lernwerte zurücksetzen,
> das ist das, was ich bei meinem Turnier machen werde. Wenn ich
> mit dem Tiger 14 durch bin, werden die Gegner-Bücher (bei Tiger
> geht das nicht, ich weiss auch nicht, ob und wo ein Buchlernen
> stattfindet) in der Wichtung zurückgesetzt für die Serie gegen
> GambitTiger. Wenn diese Serie durch ist, werden die Wichtungen
> wieder zurückgesetzt usw. Damit ist eine bessere
> Vergleichbarkeit
> gegeben.

Was heißt das? Kann ich ein beliebiges Match zwischen beliebigen Programmen komplett ohne Lernen spielen?

Gruß, Martin

von Martin Schubert - am 19.06.2001 16:15

Re: Spielen ohne Buchlernen PS

Martin Schubert schrieb:
>
> Harald Faber schrieb:
> >
> > Man kann auch bei Chessbase die Lernwerte zurücksetzen,
> > das ist das, was ich bei meinem Turnier machen werde. Wenn ich
> > mit dem Tiger 14 durch bin, werden die Gegner-Bücher (bei Tiger
> > geht das nicht, ich weiss auch nicht, ob und wo ein Buchlernen
> > stattfindet) in der Wichtung zurückgesetzt für die Serie gegen
> > GambitTiger. Wenn diese Serie durch ist, werden die Wichtungen
> > wieder zurückgesetzt usw. Damit ist eine bessere
> > Vergleichbarkeit
> > gegeben.
>
> Was heißt das? Kann ich ein beliebiges Match zwischen
> beliebigen Programmen komplett ohne Lernen spielen?

Sicherlich nicht, bei den CB-Programmen bin ich sicher, dass gerade diese Einschränkung nicht benutzt werden kann. Bei Shredder und Tiger ist das schon eher möglich. Bei den CB-Produkten kann man ja wie gesagt nach einer beliebigen Anzahl Partien die Lernwerte zurücksetzen. Bei Shredder braucht man nur einen Haken zu entfernen und bei Tiger AFAIK auch, oder die HT.INI löschen.br>
>
> Gruß, Martin
Haralds Homepage


von Harald Faber - am 19.06.2001 22:23
Zur Information:
MySnip.de hat keinen Einfluss auf die Inhalte der Beiträge. Bitte kontaktieren Sie den Administrator des Forums bei Problemen oder Löschforderungen über die Kontaktseite.
Falls die Kontaktaufnahme mit dem Administrator des Forums fehlschlägt, kontaktieren Sie uns bitte über die in unserem Impressum angegebenen Daten.