|
|
||||||||||||
AW: Re: Der "richtige" Weg in der Schachprogrammierung ?
Hallo,
genau so einfach ist das! Fragt sich eigentlich nur noch, wann das sein wird...ich tippe mal einfach auf in maximal 20 Jahren - 20 Jahre deswegen, weil ich das dann vielleicht gerade noch erlebe (n möchte)! Für 99,- Euro auf einer Wahnsinnshardware bin ich dabei. ![]() Gruß, Michael es gibt Leute, die behaupten, daß dieser Zeitpunkt niemals kommt, weil man schlicht nicht den nötigen Speicher zusammenbekäme, weil die Anzahl der möglichen Stellungen die Anzahl der Atome im Universum übersteige. Allerdings entdecken wir ja immer kleinere Elementarteilchen (OK, das Hicks-Teilchen fehlt wohl noch) - da könnte vielleicht noch was gehen... ![]() Wenn man diese Zielsetzung betrachtet, dann wird es jedenfalls verständlich, daß viele Programmierer ihr Heil allein in größeren Suchtiefen suchen (nach dem Motto: Wissen ist besser als ahnen), auch wenn der Verzicht auf "Schachwissen" gelegentlich auch negativ auffällt. Und: Aufgrund mathematischer Kriterien einen Suchbaum zu beschneiden (wie z.B. beim Null-Move) statt mit nebulösem "Wissen", das gern auch mal danebenliegen kann, hat doch seinen Reiz... Auch nachdem die Engines dem Menschenschach längst entwachsen sind, gibt es noch Computerschach-Turniere, und die Leute interessieren sich für die absolute Spielstärke (in Elo) mindestens so wie für den Stil. Aber Hartmuts Beitrag zeigt es sehr schön: Vielleicht ist es an der Zeit, umzudenken, und maximale Spielstärke und Turniererfolge nicht mehr als höchstes Ziel anzunehmen, sondern wie originell ein Programm spielt (sollte ich sagen menschlich?) Ein Freund von mir hat vor Jahren mal ein intelligentes Programm mit neuen Ansätzen geschrieben. In Summe war es damals nicht besonders stark. Den Erfolg seines Konzepts hat er an Matt-Aufgaben gemessen: Sein Programm hat zwar meist längere Zeit für die Lösung gebraucht, aber deutlich weniger Stellungen berechnen müssen als andere Schachcomputer! So etwas wäre doch eine gemessene menschliche Qualität?! Viele Grüße, Dirk |
|
|||||||||||
AW: Re: Der "richtige" Weg in der Schachprogrammierung ?
Hallo Paul,
ich gehe davon aus, wie in einer Endspieldatenbank alls Varianten bis zum Ende zu rechnen. Der Ausgang einer Partie ist immer Sieg für Weiß, Sieg für Schwarz oder Remis. Dazwischen gibt es nichts. Insofern orientiert sich auch der absolute wert einer beliebigen Position an diesen drei Werten. Das Problem ist nur, daß wir in den meisten Positionen (noch?) nicht so weit rechnen können, dann müssen wir irgendwas bewerten, was nicht Matt oder remis ist. Aber das liegt eher an unseren begrenzten Möglichkeiten als am Charakter des Spiels. Viele Grüße, Dirk wenn von einer Endspieldatenbank, also in der nur Endspiele, so z. B. Matt in 3 Zügen die Rede ist, hast Du natürlich recht. Davor ist vieles offen. Bei einem Spiel Computer gegen Computer mit gleich hoher Elo-Zahl ist das Ergebnis ausgeglichen. Trotzdem gibt es nicht nur Remis, sondern Sieger und Verlierer. Am Ende sind die Ergebnisse wieder gleich. Aber die Frage ist, wie können wir die Ergebnisse beeinflussen? Leider sehe ich keine Möglichkeit. Tunen wäre eine Möglichkeit, die ist aber begrenzt. Der Ausbau von RAM-Speicher sollte auch was bringen. Ist aber zu schwierig und zu aufwendig und bringt zu wenig. Paul |
|
||||||||||||
AW: Re: Der "richtige" Weg in der Schachprogrammierung ?
Hallo Dirk,
wenn von einer Endspieldatenbank, also in der nur Endspiele, so z. B. Matt in 3 Zügen die Rede ist, hast Du natürlich recht. Davor ist vieles offen. Bei einem Spiel Computer gegen Computer mit gleich hoher Elo-Zahl ist das Ergebnis ausgeglichen. Trotzdem gibt es nicht nur Remis, sondern Sieger und Verlierer. Am Ende sind die Ergebnisse wieder gleich. Aber die Frage ist, wie können wir die Ergebnisse beeinflussen? Leider sehe ich keine Möglichkeit. Tunen wäre eine Möglichkeit, die ist aber begrenzt. Der Ausbau von RAM-Speicher sollte auch was bringen. Ist aber zu schwierig und zu aufwendig und bringt zu wenig. Paul ich meinte etwas anderes: Es gibt im PC-Bereich Datenbanken ("Tablebases"), in denen komplette Endspiele abgespeichert sind, z.B. KD-KT. Dafür wurden tatsächlich alle in der Figurenkonstellation möglichen Stellungen bis zum Ende durchgespielt, in allen Varianten. Das dauert natürlich seine Zeit, dafür wurde das Ergebnis aber abgespeichert, in eben jenen Tablebases - ach ja, leider nehmen diese Datenbanken auch viel Platz ein. Hast Du die in Deinem PC und baust eine darin enthaltene Stellung auf, sagt Dir die Datenbank locker so etwas wie "Weiß gewinnt in 130 Zügen". Und weil sie ja vorher tatsächlich alle Möglichkeiten ausprobiert hat, hat sie immer recht, sie spielt perfekt, im wörtlichsten Sinn. Zumindest die berechneten Endspiele. Aktuell schaffen wir, glaube ich, 6 Steine, mehr nicht. Aber theoretisch kann man nach dem gleichen Muster auch die Ausgangsstellung analysieren. Dann kommt vielleicht heraus, daß Weiß nach 1.d4 zwingend in 3000 Zügen gewinnt. Mal abwarten. Aber wir werden es wohl nicht mehr erleben... ![]() Insofern stehen die Schachprogramme vor dem gleichen Problem wie wir: Sie stehen da am Ende ihres erreichbaren Suchbaums und müssen auf einmal eine Stellung bewerten, die nicht matt oder remis ist. Und an der Stelle geht dann die Philosophie los... ![]() Viele Grüße, Dirk Geändert von Supergrobi (20.05.2010 um 20:20 Uhr) |
|
|||||||||||
AW: Der "richtige" Weg in der Schachprogrammierung ?
Hier kann jeder mit der Datenbank spielen und staunen:
http://www.shredderchess.de/online-s...datenbank.html |
![]() |
|
|
![]() |
||||
Thema | Erstellt von | Forum | Antworten | Letzter Beitrag |
Off Topic: Wiki-Beitrag "Die Geschichte der Firma Fidelity" von Alwin Gruber | blaubaer | News & Infos - Forum + Wiki | 2 | 30.04.2010 12:09 |
Partie: "Mini-Fernschach" Partie Magellan - Genius 68030 | Paisano | lichess | 5 | 23.11.2009 22:16 |