Not logged inCSS-Forum
Forum CSS-Online Help Search Login
CSS-Shop Impressum Datenschutz
Up Topic Hauptforen / CSS-Forum / Ein Schachprogramm das wie ein Mensch Schach spielt
1 2 3 Previous Next  
- - By Thorsten Czub Date 2019-05-01 13:06
Wir sollten es vielleicht selber machen. Natürlich als UCI engine damit wir es auch automatisch testen können.
Also es sollte nicht alle Äste verfolgen und auch nicht Millionen NPS machen.
Hauptsächlich die Stellung und die Möglichkeiten analysieren.
Und eventuell einen Plan entwickeln.

Es sollte ein PC Schachprogramm sein in einer verständlichen Hochsprache.
Und es sollte offen in einem Forum entwickelt werden.
Es geht nicht um ELO. Wir haben schon Stockfish dafür.
Es geht darum die Dinge anders zu machen als sie gewöhnlich umgesetzt werden.
Parent - - By Horst Sikorsky Date 2019-05-01 13:55
Gute Idee!
mit verschiedene Spielstielen
Hauptsache es spielt nicht so wie ich ... das währe das Grauen 
Parent - By Peter Martan Date 2019-05-02 07:58
Geh, Horst!
Parent - - By dkappe Date 2019-05-02 00:52
Thorsten Czub schrieb:

Wir sollten es vielleicht selber machen. Natürlich als UCI engine damit wir es auch automatisch testen können.
Also es sollte nicht alle Äste verfolgen und auch nicht Millionen NPS machen.
Hauptsächlich die Stellung und die Möglichkeiten analysieren.
Und eventuell einen Plan entwickeln.

Es sollte ein PC Schachprogramm sein in einer verständlichen Hochsprache.
Und es sollte offen in einem Forum entwickelt werden.
Es geht nicht um ELO. Wir haben schon Stockfish dafür.
Es geht darum die Dinge anders zu machen als sie gewöhnlich umgesetzt werden.


Hmmm, ich tippe auf ein Neural Netzwerk das per MCTS nicht alle Äste verfolgt und relativ wenige NPS macht. Da war so ein Ding...
Parent - - By Peter Martan Date 2019-05-02 09:25 Edited 2019-05-02 09:39
dkappe schrieb:

Da war so ein Ding...

Aber wenn du dasselbe oder ein sehr ähnliches Ding meinst wie ich, Dietrich, das spielt nicht wie ein Mensch, wenn du mich fragst, jedenfalls wie keiner, den ich kenne.

Höchstens insofern, als es auch nicht weiß, was es tut, klar Maschinen haben kein Bewusstsein, es weiß vor allem auch überhaupt nicht, warum es was tut ("verstehen" AI- Engines ihre eigenen neuronalen Netze? Und wenn ja, wozu brauchen sie sie dann überhaupt? "Wüssten" sie einfach, warum da aus denen heraus der oder jener Zug per Engine selektiert wird, könnten sie doch gleich aus diesem Wissen heraus spielen und müssten nicht mehr rechnen. "Wissen" ist anders.)

Eine Gemeinsamkeit mit Menschen ist noch, dass Menschen auch nicht wissen, warum sie einen bestimmten Zug wählen, der nicht taktisch klar nachweisbar besser ist als ein anderen (und gerade bei denen wissen sie's ja in der Regel erst recht nicht, sondern vermuten's höchstens) aber das Ausmaß von "etwas nicht wissen", ist bei einer Black Box doch noch einmal eine Nummer mehr "nicht", sozusagen "aber schon sowas von überhaupt und ganz und gar nicht", dass ich auch da nicht wirklich Parallelen ziehen würde.

Thorsten hätte immer gerne Engines, die so wie Menschen planen.

Ich glaube, er sollte sich das nicht wünschen.
Menschliche Pläne scheitern an ihrer Durchführung, wenn sie scheitern, scheitern sie nicht, sind es einerseits gute Pläne (oder niemand hat mit besseren Plänen versucht, sie zu durchkreuzen), andererseits deshalb, weil sie gut durchführbar sind und dann auch gut durchgeführt werden.

Dazu müssen sie kurzfristig genug sein und sie dürfen nicht durch andere Pläne (z.B. eines Gegenspielers) durchkreuzt werden. Beim Schach passiert das immer dann, wenn der eine Plan zu wenig durchführbar war, zu wenig Gegenpläne einberechnet hat, oder einfach eine Voraussetzung für den Plan "übersehen" hat, also schon vor der Planung in der Perception der Brettstellung beim Schach, in ihrer statischen Evaluation, wenn man so will, und im Erkennen der Möglichkeiten, die sie beiden Seiten bietet, gescheitert ist, das war dann möglicher Weise gar nicht der Plan, der schlecht war, er hat nur auf falschen Voraussetzungen aufgebaut.

Vergleichbar mit Plänen im wirklichen Leben, die auch meistens schon an irgendeinem Mangel an Information, an Input oder Wahrnehmung scheitern, wie auch immer man die biologisch-methodischen Voraussetzungen, überhaupt zu einem vernünftigen Plan zu kommen, nennen will.

Aus der Medizin ein Lehrsatz dazu: Vor die Therapie haben die Götter die Diagnose gestellt.

Wären Menschen imstande, Schachstellungen so zu verstehen und zu durchschauen, dass sie "wüssten", was an durchführbaren Plänen für beide Seiten überhaupt sinnvoll zu schmieden wäre, schauten ihre schachlichen Pläne und deren Durchführung anders aus, Thorsten müsste einer Maschine, wenn die das besser oder wenigstens gleich gut wie Menschen machen sollte, beibringen, Schachstellungen zu "verstehen", wenigstens statisch richtig zu evaluieren und spätestens an dieser Stelle hätte er noch vor irgendeiner Zuggenerierung das alte Hauptproblem, der Maschine ein "Verständnis" für Stellungen beizubringen.

Ich bin wirklich neugierig, mal einen ersten Versuch von ihm zu sehen, damit ich endlich weiß, ob er wenigstens weiß, was er plant, und ob er irgendeine Ahnung hat, wie er das umsetzen würde.

Auf irgendeiner alten Brettcomputer- Engine aufzubauen halte ich für hoffnungslos überholt, einfach, weil ich mich aus obgenannten Gründen erst recht weigern würde, deren Spiel als irgendwie menschlich oder planend anzuerkennen.
Die wussten einfach noch viel weniger als die heutigen, was sie rechneten und rechnen sollten und haben erst recht einfach rumprobiert, nur weil sie weniger Stellungen berechnet haben und noch selektiver waren (waren sie relativ zur Zahl der Stellungen, die jetzt in der Zeit berechnet werden, übrigens eh auch überhaupt nicht, hätten die soviel Pruning und Reduction in ihrem Spielbaum gehabt wie SF, wäre noch viel mehr Blödsinn rausgekommen, ansonsten müsste man ja einfach nur die genialen alten Brettcomputer- Engines auf moderne Hardware portieren, und schwupps, hätte man den Schachdeus ex machina) ist zwar das "nur ein bisschen was herumprobieren" vielleicht menschlicher als "viel mehr herumprobieren", aber geplant haben die genau so wenig wie SF, und wie Menschen gespielt haben sie höchstens in ihren Schwächen und in ihrer Performance gegen Menschen und Maschinen.
Parent - - By Frank Quisinsky Date 2019-05-02 13:41 Edited 2019-05-02 13:44
Hi Peter,

weiß jetzt gar nicht was Du mit den alten Schachcomputer bzw. Kommentaren meinst.

Ich kann Dir erzählen, dass ich früher wie heute den gleichen Spaß daran habe.
Die Schachcomputer haben früher begeistert und die sind wirklich nicht dümmer geworden.
Spielen immer noch auf dem Level von einst und das reicht in der Regel gegen 95% aller Schachspieler aus.

Daran ändern auch keine stärkeren Engine wie Stockfish etwas.

Habe heute erst Recht einen Heiden Spaß daran gegen ältere Schachcomputer zu spielen und die Partien mit moderner Schachsoftware zu analysieren.
Hätten wir früher die Möglichkeiten gehabt hätten wir die Schachcomputer auch korrekter eingeschätzt.
Da wir früher die Möglichkeiten nicht hatten sind viele Legenden und Mythen entstanden weil der Mensch ohne starker Schachsoftware gar nicht in der Lage war das richtig einzuschätzen. Wie gesagt, die alten Schachcomputer spielten schon auf einem sehr hohen Level.

Grundsätzlich reichen bei Wasp z. B. 20 Stellungen pro Sekunde um auf 1.600 Elo zu kommen.
Damit sollte Wasp dann 96% der menschlichen Schachspieler schlagen.

20 Stellungen pro Sekunde ...
Mehr ist gar nicht notwendig!

Kannst ja mal gegen Wasp mit 20 Stellungen pro Sekunden ein paar Turnierpartien spielen.
Wenn Du selbst bei 2.000 Elo liegst ... sollten es ca. 300 Stellungen pro Sekunde sein.

Tja, wir sind leider alle Elo Nasen!
Also Schachcomputer rauskramen und die Dinger besiegen ... vor echten Aufgaben gestellt werden!!

Gruß
Frank
Parent - By Axel Caro Date 2019-08-23 10:42
Hallo Frank,

existiert eine entsprechend "menschlich" spielende Version von WASP auch für PC? Oder muss ich da eine Konfigurationsdatei erstellen um die absoluten Knotenlimits einzustellen?

Danke und Gruß
Axel
Parent - - By Peter Martan Date 2019-05-02 08:04 Edited 2019-05-02 08:07
Thorsten Czub schrieb:

Wir sollten es vielleicht selber machen.

Na, ich weiß nicht, wenn ich das selber mache, wird's am Ende wieder nix für dich und für mich wahrscheinlich auch nicht.
Fang lieber du mal an, und ich sag' dir dann, ob's wie ein Mensch spielt.
Ein weiteres Problem mag auch sein, dass Menschen recht verschieden spielen. Wenn's so spielt wie Horst, wäre ich schon zufrieden, er selbst offenbar nicht.

http://forum.computerschach.de/cgi-bin/mwf/topic_show.pl?pid=120969#pid120969

Wenn's so spielt wie ich, naja...

Noch eine Frage, wenn's eh nur so spielt wie ein Mensch, wozu brauchen wir's dann? Menschen sind wir selber, spielen wir doch gleich miteinander statt dauernd vor dem PC zu hocken, schau wie schön das Wetter heute ist, spielen wir doch draußen was an der frischen Luft, muss ja nicht Schach sein!
Parent - - By Thorsten Czub Date 2019-05-02 11:36
Also der Gedanke ist das ein menschlich spielendes Programm intelligenter ist als ein über die Suche ablaufender Mechanismus.
Es geht um KI. Das Maschinen mit entsprechendem power besser sind als Menschen ist klar. Wir Menschen haben aber eine überlegene mustererkennung. Und planen auch.
Bislang sind Maschinen ja relativ mechanische Dinge die nicht selber agieren können.
Und wenn es autonome Einheiten gibt dann hauptsächlich im Bereich des Militärs um autark Menschen zu töten.

Ich denke es ist Zeit das software im Bereich Schach auf ein neues Level gehoben wird.
Parent - - By Peter Martan Date 2019-05-02 13:05 Edited 2019-05-02 13:09 Upvotes 1
Thorsten Czub schrieb:

Wir Menschen haben aber eine überlegene mustererkennung. Und planen auch.

Wir Menschen haben etwas, was wir Mustererkennung nennen und das hat mit "Mustererkennung" von AI aber schon sowas von nichts zu tun, dass mir der Ausdruck in beiderlei grundverschiedener Bedeutung, in einen gemeinsamen Topf geworfen, immer wieder die wenigen Haare, die ich am Kopf noch habe, zu Berge stehen lässt, es fällt nicht auf, weil's so wenige sind, aber ich weiß, dass sie es tun.

Und wenn jetzt deine persönliche schachliche Musterkennung wirklich so gut ist, dass die Pläne, die du darauf aufbaust, besser funktionieren als das, was Maschinen so rechnen, warum verlierst du dann dauernd gegen die Blechtrotteln, ich meine jetzt die guten Alten, die weder mustererkennen noch planen, so wie du das meinst?

Da hapert's entweder an deinen Plänen und oder an deiner Mustererkennung, und jetzt willst du diesen deinen gegen den Computer völlig chancenlosen biologischen Schachapparat dem Computer aufoktroyieren, damit hebst du nix auf ein neues Level, du ziehst es höchstens auf deines runter.

Spätestens Bob Hyatt wusste schon und sagte es auch immer wieder, dass es sinnlos sei, einem Computer beibringen zu wollen, Schach zu spielen wie Menschen, spätestens ab dem Zeitpunkt, als die  Maschinen das viel besser konnten als die Menschen.
Hast du den Zeitpunkt verpasst, an dem das passierte?

Ich frage noch einmal in allem Ernst, wozu willst du eine Maschine bauen (abgesehen davon, dass es ohnehin nicht geht), die so spielt wie Menschen? Nur weil du ein Mensch bist? Hast du keine Schachfreunde, die menschlich gegen dich spielen? Oder verlierst du gegen die auch immer, und hättest deshalb gerne einen "menschlichen" Spielgefährten, gegen den du gewinnen kannst?
Oder sind dir deine menschlichen Schachfreunde im Gegenteil alle viel zu schwach? Dann wüsste ich auch Rat, spiel doch einfach gegen einen doofen Blechtrottel von damals oder heute, und der putzt dich dann auch immer noch locker weg, und dem gibst du einen netten menschlichen Namen und beschimpfst ihn unflätig, wenn er dich ärgert, und er redet trotzdem nicht zurück und ist auch nicht beleidigt, es sei denn, du hast ihm vorher die entsprechende Mustererkennung beigebracht.
Parent - - By Frank Quisinsky Date 2019-05-02 13:17 Edited 2019-05-02 13:21
Hi Peter,

habe z. B. einen Blitzkampf den den Superstar 36k KSO knapp nach 10 Partien verloren.
Das Ding hat gerade mal 1.600 Elo, eher leicht drunter.
Dann einen Kampf gegen Berlin 68000 mit ca. 400 Elo mehr gewonnen.

Das ist so pauschal mit Mustererkennung nicht zu sagen.
Auch nicht zu erklären mit Tagesform.

Menschen spielen deutlich mit mehr Fehlern als Schachcomputer.
Fehler kannst Du gegen Schachcomputer noch im Endspiel korrigieren, aber nicht mehr gegen PC-Programme.

Schaust Du auf GM Partien siehst Du schon das in der Eröffnung teils stark zweifelhaft gespielt wird (aus Sicht unserer Schachprogramme).
Denke da nur an den FEOBOS Daten der TOP GM und Fernschachpartien. Ca. 45% der Partien über 2.600 Niveau wurde einfach als schlecht bei den Engine Analysen herausgefiltert.

Gut, GMs spielen auch absichtlich nach Vorbereitung auf den Gegner strittige Fortsetzungen.
Menschen spielen spekulativer und lieben das Risiko.
Schachprogramme aber nicht.

Einen Feldzug gegen die starken Engines zu starten, nach dem Motto die spielen reines Computerschach, halte ich auch für falsch.
Engines spielen kein reines Computerschach, die spielen auf höchsten Niveau weitestgehend, genauer gesagt aus menschlicher Sicht, zu 99% fehlerfrei.

Wir denken die spielen Computerschach, tatsächlich berechnen die Geräte bei immer weniger Figuren auf dem Feld die perfekten Züge. Das hat nichts mit Computerschach zu tun. Maximal bei vielen Figuren auf dem Brett können wir noch vom Computerschach reden. Bei vielen Figuren auf dem Feld würden wir als Mensch Kommentare setzen ... Zug a oder b gefällt mir besser weil aggressiver oder sonstiger Gedankenreichtum der einfließt.

Und je stärker die Schachprogramme werden, desto unmöglicher wird es die Stärken und Schwächen überhaupt zu orten.
Das geht nur noch mit Statistik.

Als ich kürzlich einen GM nach seiner bevorzugten Analyseengine fragte (war Komodo) bzw. bat diese zu charakterisieren kam als Antwort:
Frank, ich habe mit 2.620 Elo nicht das Level um genau das zu tun. Im Endspiel einfach keine Chance aber im Mittelspiel würde ich sagen, das Programm spielt wie ein starker GM Gegner, nur ohne Fehler. Finde ich die langfristige Kombination und spiele fehlerfrei, halte dagegeben, kann ich Remis spielen. Das ist reizvoll. Also für mich spielt Komodo zwar wie eine Maschine aber nur deswegen weil es fehlerfrei spielt. Mit Computerschach wie wir es von früher kannten hat das alles nichts mehr zu tun.

Gruß
Frank
Parent - By Frank Quisinsky Date 2019-05-02 13:35
Hi Peter,

wobei ich weiß was Du mit Mustererkennung meinst.

Je mehr Fehler, desto niedriger die Spielstärke.
Je mehr Muster selbst gesavt sind, je höher die eigene Spielstärke.

Nur bringt die vorhandene Musterkennung wenig wenn zu fehlerhaft gespielt wird.

Was ich mir bei Schachprogramme wünschen würde, wären spekulative Mittelspielparameter für:

1. Linienöffnung gegen den König
2. Aggressives Bauernspiel gegen den König

Solche Parameter müssten als UCI Engine zu setzen sein und zwar bei x Figuren auf dem Feld.
Je weniger Figuren desto geringer sollte das spekulative Level sein.
Genau das muss einstellbar sein!!

Aber wie gesagt, Fizbo hat so etwas drin bzw. muss so etwas drin haben, denn darauf deuten die Statistiken dieser Engine ganz eindeutig hin.

Gruß
Frank
Parent - - By Peter Martan Date 2019-05-02 13:46 Edited 2019-05-02 13:51
Frank Quisinsky schrieb:

Das ist so pauschal mit Mustererkennung nicht zu sagen.

Naja, sagen kann man viel, z.B. auch ruhig, dass deine Mustererkennung halt manchmal auch schachlich im A...uge zu sein scheint oder ins Auge geht, und manchmal funktioniert sie gut genug, um zu erkennen, wie du dir am besten für die richtige Eröffnung den richtigen Gegner aussuchst.

Menschliche Mustererkennung ist beim Schachspielen ungefähr so nützlich wie beim Schwammerlsuchen (tatsächlich sollen die Begabungen ähnlich sein), jetzt bring mal einem Schachcomputer bei, dir beim Schwammerlsuchen zu helfen, braucht ja nur deine Mustererkennung zu haben.

Was Schachspieler meinen, wenn sie beim Menschen von Mustererkennung reden, ist einerseits natürlich auch Begabung, andererseits aber das Ergebnis jahrelangen Trainings, bestimmten Stellungen mit bestimmte Folgestellungen zu assoziieren, man könnte das Planen nennen, das hat aber mit Plänen, die man sonst so schmiedet, ebensowenig zu tun, wie wenn du planst, auf einem gewissen Weg an das Schwammerl, dass du in der Ferne siehst, heranzukommen. Schritt für Schritt (dabei kannst du immer noch ganz schön auf die Nase fallen, wenn ein Schritt in ein Loch führt, das du "übersehen" oder "überplant" hast) oder durch schieres stures Anvisieren des Schwammerls, um es nicht aus den Augen zu verlieren, die Unfallhäufigkeit wird auf diese Art noch größer sein als bei der Schritt für Schritt Planung.

Worauf ich hinaus will, weder haben Begriffe wie Mustererkennung und Planung irgendeine schachliche Definition beim Menschen, noch sind sie auch nur irgendwie mit dem vergleichbar, was Engines rechnen oder an "Mustern" aus einem neuronalen Computernetz auslesen.

Und die Mustererkennung der AI ist selbst dem AI- Experten eine Black Box, die hirnphysiologischen Prozesse menschlicher Mustererkennung hingegen, seien sie visuell, akustisch, olfaktorisch, taktil, gustatorisch oder thermisch ausgelöst (uups, ich habe den 6. Sinn, und vom Gleichgewichtssinn und der Propriozeption habe ich noch gar nicht angefangen) hat man zwar Erkenntnisse, wie sie funktionieren, gemeint sind aber auch eigentlich die daraus dann erst erfolgenden höheren Hirnleistungen, diese Wahrnehmungen jetzt dann zu verknüpfen, zu bewerten und emotional einzufärben.

Hormonell läuft da mindestens soviel ab dabei wie an reiner neurologischer Reizleitung, eigentlich sind es also Musterempfindungen, und womit da dann welche absichtlich (kaum) und unwillkürlich was bewirken, worauf man mit dem Großhirn reagieren kann, das ist, wie man so schön sagt, ganz etwas anderes, das ist ganz etwas anderes...
Parent - - By Frank Quisinsky Date 2019-05-02 14:02 Edited 2019-05-02 14:07
Hi Peter,

jo, so wird es sein.
Mir bringen Muster persönlich sehr viel. Je mehr Partien ich spiele desto mehr speichere ich automatisiert an Mustern ab und rufe diese unbewusst wieder auf. Der Mensch weiß natürlich worauf er zu achten hat aber macht es meist dennoch nicht bzw. falsch, weil bei den eigenen Übgerlegungen zu viel übersehen wird.

Schönes Beispiel war eine Partie gegen dem Superstar 36k KSO.
Das Ding mit 1.600 Elo kommt meist verdammt gut aus der Eröffnung raus.

Lies mich auf eine slavische Eröffnung als weißer ein. Versuchte dann nach kurzer Rochade und Umgruppierung den Angriff langsam vorzubereiten. Das gelang mir auch. Opferte dann einen Läufer für den Angriff und alles sah super aus. Ich stand aktiv, alles war gut entwickelt und die schwarze Stellung sah sehr zusammengedrückt aus. Dachte mir, ich bereite langsam weiter den Angriff in aller Seelenruhe vor und schlage dann zu. Dann spielte das dumme Ding b5 aus dem nichts heraus und hatte plötzlich viele Möglichkeiten direkt drei Leichtfiguren geschickt ins Spiel zu bringen. Ich musste mich um diesen dummen Zug auf dem Damenflügel kümmern, weil ich brauchte zu viel Zeit für den Angriff auf den Königsflügel. Konnte b5 nicht ignorieren. Verhedderte mich auf dem Damenflügel um mein Angriff war weg. Ging mit einen Bauern und Läufer weniger ins Endspiel und verlor das, weil der Superstar zwei zusammenhängende Freibauern hatte und das verliert meist auch keiner der älteren Schachcomputer mehr.

So ein Mist ... spielte eigentlich gar nicht so schlecht.

Also Komodo Analyse mit 6 Cores und einer Minute pro Zug.
Der Superstar spielte zu sage und schreibe 69% die optimalen Züge (sehr hoch für einen Schachcomputer mit 1.600 Elo) und ich spielte immerhin zu 46% OK nach der taktischen CB Analyse.
War der Zug b5 nun ein Zufallstreffer oder nicht?
Egal, Superstar hat den gespielt und der Zug war meines Erachtens wie von einem anderen Stern.

Stockfish spielte den gar nicht.
Wasp und Komodo spielten den Zug b5 auch.
Stockfish spielte den erwarteten f6 Bauernzug auf dem ich mit h4 in den geplanten Angriff gekommen wäre.

Habe dann gegen Stockfish gespielt ab der Postion und bekam zwar den Läufer zurück aber verlor im Endspiel.
Gegen Komodo verlor ich schneller als gegen den Superstar nach b5. Komodo spielte das richtig frecht weiter ... ich war hoffnungslos überfordert mit Läufer weniger und meine gute Stellung sah nur noch äußerlich gut aus.

Bei der nächsten Partie werde ich auf diese Zwischenzüge achten.
Total versteckter sehr guter Zug und mit meiner Musterkennung war dann nichts mehr.
Ich habe den Faden verloren nach b5 und bin sang und klanglos unter gegangen.

Wäre nicht untergegangen nach f6, hätte nur im Endspiel gar gegen 3.300 verloren.

Gruß
Frank
Parent - By Peter Martan Date 2019-05-02 14:22
Frank Quisinsky schrieb:

jo, so wird es sein.
Mir bringen Muster persönlich sehr viel.

Mir auch, Frank, hauptsächlich das Muster auf meinem Kopfpolster.
Immer, wenn ich das erkenne, weiß ich, es ist Schlafenszeit.
Parent - - By Thorsten Czub Date 2019-05-02 17:59
Die Schachprogramme von heute machen
Keine Pläne. Sie rechnen stupide
Aus.
Du fragst warum ich AI möchte
Statt AS ?
Weil ich keine Dummheit mag.
Ich möchte auchbrin auto das gut
Federt. Du vielleicht eines wo du die Strasse
Spürst. Jeder hat eben andere Präferenzen
Parent - - By Peter Martan Date 2019-05-02 18:14 Upvotes 2
Ist das ein Gedicht?
Parent - - By Thorsten Czub Date 2019-05-02 19:02
Wo ist dein Problem ?
ich möchte ein Schachprogramm das
Einen plan hat und nicht Millionen
Knoten pro Sekunde ausrechnet
Ohne plan.
Parent - - By Peter Martan Date 2019-05-02 19:44 Upvotes 1
Ich hab kein Problem, ich will ja nicht einmal so ein Programm.
Du willst unbedingt eines und weißt nicht, wie du's machen sollst.
Und mich fragst du, was ich für ein Problem habe?
Sie mir nicht böse, Thorsten, aber du projizierst dein Problem so in mich hinein, wie deine Vorstellungen vom Schachspielen in ein Programm, dass es halt so (noch?) nicht gibt, oder in eines von vielen, dass es eh schon lange gibt.
Wieso kommst du nicht endlich mit ein bisschen Code ums Eck, damit wir endlich alle (oder wenigstens diejenigen von uns, die überhaupt eine Ahnung vom Programmieren haben) eine konkrete Vorstellung von deinen Träumen haben können.
Du rufst zum gemeinsamen Bauen eines Programmes auf, wie du es dir vorstellst.
Meinst du nicht, es wäre gut, du würdest mal einen konkreten Anfang machen und zur Diskussion stellen?

Wirklich wahr, was ich für ein Problem habe, fragt er.
Parent - - By Olaf Jenkner Date 2019-05-02 22:40 Upvotes 1
Thorsten hat keine Ahnung von Softwareentwicklung, weiß nicht, wie man einem Computer das Schachspielen beibringen kann. Er meint, man könne dem Computer einfach menschliches Handeln beibringen, und schon macht er Pläne. Tausende Programmierer sind den anderen Weg gegangen, weil es anders nicht möglich ist. Es gibt nur eine einzige Ausnahme: Michail Botwinnik mit seinem Programm Пионер. Es konnte menschliche Pläne machen, aber leider nicht Schach spielen.
Parent - - By Peter Martan Date 2019-05-02 23:13
Olaf Jenkner schrieb:

Michail Botwinnik mit seinem Programm Пионер. Es konnte menschliche Pläne machen, aber leider nicht Schach spielen.


Und schon den (Botwinnik) hatte ja der immer wieder zitierte Interviewer gefragt, auf das Statement von Botwinnik, man müsse dem Computer nur beibringen, wie ein Mensch zu denken, ob Botwinnik selbst wirklich wisse, wie Botwinnik denkt.
Parent - By Thorsten Czub Date 2019-05-02 23:48 Edited 2019-05-02 23:50
Ach komm. Natürlich weiß ein Mensch wie er denkt.

Jeder hat diese Fähigkeit. Selbst NICHT Schach Spieler. Oder wie meinst du fährt ein fahranfänger Auto. Und wenn er es dann später wirklich kann. Dieser Unterschied des Lernens . Das kennt jeder Mensch. Du bist erst gut in einer Sache wenn du nicht mehr drüber nachdenken musst was du tust.
Lernen funktioniert immer gleich. Erst Auswendiglernen und wiederholen und dann vergessen.
Dann sortiert das Gehirn den Input nach Wichtigkeit. Das unwichtige wird vergessen und das wichtige wird automatisiert.

Schon kannst du Auto fahren, schwimmen, Fahrrad fahren oder Schach spielen.

Solange die Geräte nicht vergessen können sie auch nicht Schach spielen.

Und dann gibt es einen wesentlichen Unterschied wie eine Maschine und ein Mensch Schach spielt. Wir sehen auf das Brett. Die Maschine berechnet.

Der Mensch braucht nicht wirklich berechnen weil er Züge sieht.
Die Maschine hat kein Auge.

Sie muss alles herleiten.

Womit wir wieder bei der mustererkennung und botwinniks trajektorien sind, das habe ich mit Marty Hirsch schon vor vielen vielen Jahren angesprochen.
Parent - - By Thorsten Czub Date 2019-05-02 23:44
Marty Hirsch hat die bücher von botwinnik auch gelesen.
Parent - - By Olaf Jenkner Date 2019-05-02 23:56
Na und?
Botwinnik hat gewöhnliche Schachbücher geschrieben, nichts über Schachprogrammierung.
Parent - - By Thorsten Czub Date 2019-05-03 07:48 Edited 2019-05-03 08:30
Er hat beschrieben wie er das bei pioneer gemacht hat, die suchbäume waren auch abgebildet. Das muss irgendwann in den 70er, 80er oder 90er gewesen sein. Die Bücher gibt es noch im Antiquariat.

Mikhail Botvinnik (1970). Computers, Chess and Long-Range Planning. Springer, from goodreads
Mikhail Botvinnik (1982). Meine neuen Ideen zur Schachprogrammierung. Springer-Verlag, Berlin (German)

Wir haben sie damals alle gelesen.

Siehe dazu auch:
Marty Hirsch (1995). Botwinnik und die Schachprogrammierung. Computerschach und Spiele, June-July 1995 (German)

Zur damaligen Zeit war Mchess so ziemlich die Spitze.
Ich erinnere an die Ergebnisse der Matches damals:

Mchess5 - Genius3   (currently no. 1 on SSDF ELO 2420)   7.5 - 2.5
Mchess5 - Rebel6    (currently no. 3 on SSDF ELO 2415)  13.0 - 1.0
Mchess5 - Hiarcs3   (currently no. 9 on SSDF ELO 2380)  19.0 - 0.0

Trajektorien:
https://www.chessprogramming.org/Pioneer

Damals benutzte das Team um botwinnik einen 386er. Wir wissen alle das man von einem 386er nicht gerade überwältigende Rechenleistung erwarten darf, zudem damals der ram und Festplatten Speicher , verglichen mit heute, noch rudimentär war.
Parent - - By Peter Martan Date 2019-05-03 08:29
Und wenn du jetzt mit dem Forum gemeinsam ein Programm bauen willst, dass Schach so spielt, wie du dir das vorstellst, dann rede doch mal Marty Hirsch an, deinen alten Haberer, er soll von einer MChess- Version, an der er kommerziell eh nicht mehr soo interessiert ist, den Quellcode unter GPL veröffentlichen.

Und wir schrauben dann hier in diesem Thread so lange dran rum (ok, ich trage nur Output- Tests bei, fast hätte ich gesagt Stellungstests, uuups, zumindest so lange, bis ich mich auf den MChess- Code eingelesen habe, haha) bis Jörg Oster sagt, an dieser Stelle könnte man ein bisschen SF- Code einbauen, oder bis du sagst, ja jetzt funzt es endlich, das Dingens plant genau wie ich.
Parent - - By Thorsten Czub Date 2019-05-03 08:37
Zitat:
In diesem Buch darf ich erstmals in deutscher Sprache umfassend und aktuell meine Ar beit an Grundlagen und Realisierung eines Computer-Schachprogramms vorstellen. Seit nunmehr gut zehn Jahren bemühen sich meine Mitarbeiter und ich um die Verfolgung eines anderen Ansatzes bei der Schachprogrammi erung als fast alle übri gen "Konkurrenten" der Wel t. Der intellektuelle Streit entzündet sich an der Fragestellung, ob vorrangig Schnellig keit, Speichergröße und Zuverlässigkeit von Rechnern auszunutzen seien, oder die Mo dellierung menschlicher Denkweisen beim Schachspielen angestrebt werden soll. Während die meisten Kollegen in aller Welt die erste Meinung vertreten und mit den nach der sogenannten "brute-force"-Methode spielenden Programmen auch erstaunliche Erfolge er zielen konnten, bin ich mit wenigen anderen Kritikern der Meinung, daß nur der zweite Ansatz auf Dauer die Spielstärke der Programme entscheidend verbessern kann. Natürlich gehen wir den weitaus schwereren Weg bei der
Realisierung, denn die theore tischen Grundlagen und die notwendigen Programmsysteme sind um vieles komplexer. So mit müssen wir einen langen Atem beweisen und nicht um kurzfristiger Scheinerfolge willen das große Ziel gefährden. Ich bin aber sehr froh, daß inzwischen auch unsere Programmierung weitgehend abgeschlossen ist, und unser Programm "PIONI ER" erste prak tische Erfolge bei der Lösung von Studien nachweisen kann. Daher wird dieses Buch gerade zum richtigen Zeitpunkt erscheinen. Im Hauptteil dieses Werkes habe ich die allgemeinen Grundlagen ausführlich dargestellt, die für die Konzeption eines Schachprogramms, aber auch verwandter Problemstellungen notwendig sind.


https://books.google.de/books?id=WTjMBgAAQBAJ&pg=PA88&lpg=PA88&dq=botwinnik+trajektorien&source=bl&ots=RTmVQyjIHV&sig=ACfU3U1lx4Gl38w0ST40gvb2g7SK7nQW0Q&hl=de&sa=X&ved=2ahUKEwjRnsTY3v7hAhWS6aQKHUglDPsQ6AEwAnoECAkQAQ#v=onepage&q=botwinnik%20trajektorien&f=false
Parent - - By Peter Martan Date 2019-05-03 08:46 Edited 2019-05-03 08:55
Ok, wenn dir das reicht, das selbst in Programmcode umzusetzen, brauchen wir Herrn Hirsch selbst auch gar nicht mehr bei der Nasa zu stören, du hast das alles, was du da zitierst und verlinkst schon vor langer Zeit gelesen und internalisiert, ich frage mich schon länger, warum hast du das dann nicht selbst längst für dich allein wieder zu einer spielfähigen .exe zusammengeschustert?
Mach halt mal nur ein einzelnes x64- compile, braucht gar nicht popcnt sein, obwohl's mir am liebsten wäre, bmi kann ich eh auch immer noch nicht brauchen.

Und mir wär's vor allem lieber, als die ganzen Abhandlungen aus dem Jahre Schnee lesen und verstehen zu müssen, wenn ich persönlich daraus ja ohnehin keinen Programmcode zusammenbrächte.

Marty hätte sich damals auch schon viel Arbeit sparen können, für diejenigen, die zu der Zeit schon was davon verstanden, (vor allem aber heutzutage, wo eh schon jedes  A-B-Programm, das irgendwas auf sich hält und nicht um den wenigen Kommerz, den's noch gibt, mitpspielt und sogar LC0 höchstselbst, als die Speerspitze des modernen Computerschachs, AI, bedenke, AIII!!!, im Code unter GPL veröffentlicht wird) einfach einen Quellcode zu veröffentlichen, anstatt soviel Sekundärliteratur, von der ja, wie man sieht, Leute, die sowas nicht selbst programmieren können, auch nicht wirklich praktisch was haben.

Her jetzt endlich mit einem Code- Beispiel für die planende Engine nach Czub et al mit Quellenangaben zu Botwinnik et Hirsch et al.
Parent - - By Thorsten Czub Date 2019-05-03 09:09
Höchstwahrscheinlich findest du deine postings auch noch lustig.
Parent - By Peter Martan Date 2019-05-03 09:11
Ehrlich gesagt eigentlich höchstens das, wenn überhaupt.
Parent - - By Frank Brenner Date 2019-05-03 10:56 Upvotes 1
Was soll an MChess so spannend sein ?

Der Algorithmus von Mches ist im wesentlichen ein extrem stark vereinfachter Stockfish angereichert mit sehr viel ineffizienten Code (Ballast)

Und was ist mit Botwinnik  Schachprogramm ?

Das hat es nie gegeben. Die veröffentlichten Beispiele beschreiben keinen allgemeines Verfahren um gute Züge zu berechnen, sondern es handelt sich jeweils  um ein rein von Menschen ausgedachtes Konstrukt an "wenn und abers", die speziell nur für diese eine Stellung die in dem jeweiligen Beispiel aufgeführt ist funktionieren.

Würde man das Programmieren - mit gutem Willen -  so hätte das Schachprogramm eine Spielstärke von Minus 1000 ELO.
Parent - - By Thorsten Czub Date 2019-05-03 11:05 Edited 2019-05-03 11:10
Vielleicht solltest du dich erst einmal EINLESEN wie mchess es macht.
Dazu bietet sich computerchess Reports 1992 Seite 13 an, wo Marty selber darüber schreibt.

http://www.chesscomputeruk.com/Computer_Chess_Reports_1992a.pdf

Aus deinen Aussagen hört man irgendwie heraus das du keinen mchess hast oder kennst, sonst würdest du sowas nicht posten.

Auch Mephisto III kann diese Vokabeln alle OHNE baumsuche erkennen. Gleiches gilt auch für ChessSystemTal.

D.h. bestimmte Schachvokabeln kennt das Programm ohne das es die baumsuche dafür benötigt.
Du kannst die Stellung aufbauen und wenn dann die Äste ohne baumsuche einmal durchsortiert sind nachdem die bewertungsfunktion drüber gelaufen ist, hat das Programm statisch erkannt was los ist.

Auch Gandalf 2 funktioniert ähnlich.
Parent - - By Frank Brenner Date 2019-05-03 11:15 Edited 2019-05-03 11:22 Upvotes 1
Ja, dort steht: M-Chess hat zwei wesentliche Fähigkeiten: "Search" und "Chess Knowledge".   

Mit anderen Worten: Es ist im wesentlichen  identisch zu Stockfish, Genius, Rebel, Crafty, Fritz Komodo und Mephisto 3.

Bei M-Chess wird alles nur viel viel weniger gut gemacht wie in Stockfish.

zu Mephisto 3.

+ Mephisto III findet nur wenige Manöver statisch, während Stockfish fast jedes Manöver VIEL SCHNELLER  dank seiner intelligenten Suche findet, sofern ein gutes Manöver vorhanden ist.
+ Mephisto III findet auch häufig fehlerhafte Manöver, die Stockfish dank der intelligenten Suche vermeidet.
Parent - - By Thorsten Czub Date 2019-05-03 11:29
Stockfish löst das über die Suche auf. Dafür braucht es aber auch Millionen an NPS.
Intelligente Programme gehen einen anderen Weg. Sie vermeiden unsinnige Millionen an
Probeversuche und konzentrieren sich auf einige wenige .

Mache ich auch so. Ich stecke nur die Schlüssel meines Schlüssel Bundes ins Schloss die ungefähr passen würden.
Stockfish probiert auch Schlüssel aus die gar nicht erst ins Schloss passen würden.

Du versuchst das jetzt schon wieder auf eine Stockfish Ebene herunterzubrechen die überhaupt keiner mehr haben will.

Stockfish hat seine eigene Nemesis in Form von LC0 zu meistern. Glaube mir da hat es genug zu tun in den nächsten Jahren.

Wir wollen die Tür aufbekommen indem wir wissen über Schlösser und Schlüssel haben. Wir betrachten das Schloss und die Schlüssel ohne den Schlüssel ins Schloss zu stecken. Und probieren dann nur die Schlüssel aus von denen unser Wissen sagt, sie könnten passen.

Ziel ist es mit so wenigen versuchen wie möglich das Schloss aufzubekommen.

Und das Bild jetzt bitte auf Schach übersetzen, dann hast du es.
Parent - By Michael Scheidl Date 2019-05-03 12:39
Zitat:
Und probieren dann nur die Schlüssel aus von denen unser Wissen sagt, sie könnten passen.

So eine Engine wird nie ein Damenopfer, oder vermutlich überhaupt irgendeine Kombination finden. Die Millionen NPS bzw. die enorme Suchtiefe bewahren die A-B-Engines davor, zu schablonenhaft zu spielen, während sie gleichzeitig massig Wissen anwenden (können). NN-basierte Engines wenden in Eröffnung und Mittelspiel eine Art übermächtiges Alienwissen an, suchen jedoch weniger weit, und agieren im späten Endspiel auf einem entsetzlichen, animalischen Niveau.

Mephisto III war ein Wunder was das Verhältnis Leistung zu Knotenzahl betrifft, aber kombinatorisch so kurzsichtig wie ein Maulwurf in der Nacht. Ich denke, selbst tausendmal so schnell würde es nicht für die CCRL Top-100 reichen. Das bringt uns nicht vorwärts.

Was genau ist im Schach ein Plan (Definition)? Wen diese Grundfrage interessiert, will vielleicht einen eigenen neuen Thread eröffnen.
Parent - - By Frank Brenner Date 2019-05-03 13:05 Upvotes 1
Was faselst du da von Türen und Schlössern ? Das hat mit Schach und der Schachprogrammierung nichts zu tun was du da schreibst.

Jede von menschenhand programmierte statische Bewertung a la Mephisto 3 enthält Lücken und übersieht das meiste.

Aus diesem Grunde erzielt mephisto 3 auch nur Anfänger Spielstärke und wurde nicht mehr weiterentwickelt, da jede noch so kleine Verbesserung in der statischen Bewertung immensen Aufwand bedeuten würde und die Programmierer nicht mehr in der Lage waren weitere Verbesserungen zu finden.

Selbst auf heutigen Top PC's würde ein mephisto 3 nur Anfänger Spielstärke erzielen.

Das neue LC0 Programm hat auch eine statische Bewertung, die Qualität der statischen Bewertung  ist hier aber sehr hervorragend. Die Statische Bewertung ist sogar so gut, daß man das Gefühl bekommt daß implizit eine sehr Tiefe und intelligent gesteuerte Baumsuche durchgeführt wird.

Dabei ist das "Wissen" in den Matrizen gespeichert.  Die Zahlenwerte die in den Matrizen gespeichert sind, werden allerdings nicht von einem Mensch nach der Trial&Error Methode ermittelt indem menschliches Schachwissen in den Elementen gespeichert wird, sondern es geschieht mit einem mathematischen  Optimierungsverfahren.

LC0 findet wie durch Magie einen sehr guten Zug für den Suchbasierte Schachprogramme dutzend Halbzüge tief rechnen müssen. Die Matrizen liefern keine für uns menschen formulierbare Inhaltliche erklärung wieso es ein sehr guter Zug ist.#

So ähnlich wie beim Menschen: Carlsen schaut auf eine Schachstellung und sieht gute Züge einfach ohne zu wissen wie er sie findet.
Wenn man ihn dann fragt wieso der Zug so gut ist, dann erst beginnt er zu  denken und konstruiert im Nachhinein eine verständliche Erklärung.
Wieso er aber den Zug ursprünglich so schnell gefunden hat, das kann Carlsen nicht beantworten: Er guckt auf die Stellung und seine Neuronen im Gehirn machen voll automatisch einige hundert Milliarden Bearbeitungsschritte und wie durch ein Wunder kristallisieren sich ihm dann nach wenigen Momenten ein paar (nur sehr wenige) Spielbare Züge für beide Seiten . Für diese wenigen spielbaren Züge, die er wie durch ein Wunder von seinem Neuronalen Netz im Kopf vorgezeigt bekommt, kann er dann problemlos mit seinem höheren und durch Bewusstsein gesteuerten Verstand den besten Zug durch Brute-Force Suche herausfinden .
Parent - - By Mythbuster Date 2019-05-03 13:21 Upvotes 1
Frank Brenner schrieb:

Was faselst du da von Türen und Schlössern ? Das hat mit Schach und der Schachprogrammierung nichts zu tun was du da schreibst.

Aus diesem Grunde erzielt mephisto 3 auch nur Anfänger Spielstärke und wurde nicht mehr weiterentwickelt,


1. Deine Ausdruckweise ist völlig daneben. Sprichst Du so auch mit Bekannten oder Nachbarn?

2. Schon auf der Emulation des Revelation II AE erreicht der Glasgow ca. 2100 Elo, mit lächerlichen 150 Knoten, die pro Sekunde berechnet werden. Als "Anfängerspielstärke" würde ich das nicht bezeichnen. Und diese Emulation ist 10.000x langsamer als moderne PCs das Programm nativ laufen lassen könnten.

Natürlich bietet der Glasgow kein Potential für unendliche Steigerung, schon, weil aufgrund der damaligen Programmierung die Rechentiefe auf maximal 21 Halbzüge selektiv beschränkt wurde und auch nur wenige Kilobyte Arbeitsspeicher genutzt werden und keine HT vorhanden sind. Für ein Programm aus dem Jahr 1983 / 1984 ist das mehr als beachtlich.

Auf jeden Fall zeigt es, dass man durchaus mit einem modernen Glasgow eine ansehnliche Spielstärke erreichen könnte. Mag sein, dass sie nicht an SF und Co reicht, aber ganz ehrlich: Elowerte jenseits von GM Stärke sind mir persönlich völlig egal, da mich Stil und Intelligenz mehr reizen als schnelle und primitive Effizienz.
Parent - - By Frank Brenner Date 2019-05-03 15:14 Upvotes 1
Der Mephisto 3 ist auf gleicher Hardware schwächer als der Mephisto Amsterdam und erst recht schwächer als  Chess-Genius 7 (mindestens 7 facher Nachfolger von Amsterdam)

Beide Programme benötigen in etwa 6 mal so viel Zeit um eine Stufe tiefer zu rechnen.

Der Elozuwachs bis hin zum modernen PC von heute wäre also bei beiden  Geräten in etwa gleich.

Bei der CEGT  erzielt der genius 7 2200 ELO während der Stockfish 10 (single Core) 3400 ELO erzielt.

Mephisto 3 würde in dieser Liste weniger als 2200 ELo erzielen, also vielleicht 2000-2200.

Der Unterschied von 1200-1400  ELO ist also der sehr intelligenten Suche von Stockfish und allgemein der optimierung der Software zu verdanken.
Die fehlerbehaftete statische Bewertung von Mephisto 3 und die extrem ineffiziente Suche von mephisto 3  sind die Ursache für den 1200-1400 ELO Rückstand zu Stockfish bei gleicher (moderner) Hardware.
Parent - - By Thorsten Czub Date 2019-05-03 15:31 Edited 2019-05-03 15:39
Also es ist wohl richtig das Mephisto III S schwächer ist als der Mephisto Amsterdam von Richard Lang.

Was deine Bezeichnungen „ineffizient“ etc. angeht muss ich dir sagen, das ich die nicht teile.

Ich schlage Dir folgendes Experiment vor:
Wir nehmen Chess System Tal DOS und setzen es in den 2 Spieler Modus. Dann rechnet es NICHT.

Nun nehmen wir aus der legalen Zugliste immer den besten Zug heraus.
Die Züge sind lediglich über die statische Bewertung des Programms sortiert.

Es spielt keine Rolle ob du einen alten Netbook oder einen i7 mit 6 Kernen nimmst weil CSTAL ja gar keine Baumsuche macht.
Nun spiele mal selber gegen diese statische Bewertung.
(Du musst nur beachten das der Zug mit der höchsten Bewertung in Fällen von Schach und schlagzügen nicht oben ist, er liegt dann hinter denen, hat aber dennoch die höchste Bewertung. Man kann sich übrigens auch anzeigen lassen wie diese aufsummierte Bewertung in Einzelwerten der jeweiligen Bewertungsterme aussieht, man kann die Bewertung auf ihre einzelnen Terme brechen)

Falls du nicht selber spielen möchtest können wir auch als Gegner einen Schachcomputer nehmen.

Dann reden wir nochmal über das Thema „Ineffizienz“
Parent - By Frank Brenner Date 2019-05-03 23:21 Edited 2019-05-03 23:33
Ich denke du wirst es nie verstehen, daß die Qualität von Stockfish in der Verflechtung von Suche und Bewertung liegt. In Kombination ist Stockfish die stärkste klassische AB Engine der Welt.

Wie gut die statische Bewertung allein von Stockfish ist, spielt doch keine Rolle. Selbst wenn die statische Bewertung alleine -9000 ELO erzielen würde, so what ?

Auf moderner Hardware ist Stockfish mindestens 1200 ELO stärker als ein Mephisto 3. Im Vergleich zu Stockfish ist der Algorithmus von Mephisto 3 ein Tic-Tac-Toe.
Parent - By Frank Quisinsky Date 2019-05-04 23:47
Hallo Thorsten,

grundsätzlich interessant.
Unabhängig von Hardware herauszufinden wie stark die Zuglisten sortiert sind.

Wäre auch eine nette Idee für eine völlig neue Eval.

Wenn z. B. eine Master Engine neben der Stellungbewertung folgendes hinzufügen könnte.

-0,23 Sg5 (6/24)

(6/24) = Die sechs in Klammern signalisiert, dass die Master Engine den tatsächlich gespielten Zug als sechs beste Antwort von 24 möglichen ausgibt.
Optimal wäre es dann wenn die besseren Züge direkt als Kommentar zu der Analyse eingefügt werden könnten.

Wäre eine nette GUI Option!!
Und natürlich würden Analysen von Schachcomputer Partien noch spannender sein und erst Recht die Analysen der eigenen Partien.
Das müsste ChessBase neben der taktischen Analyse tun.

Du spielst also Schachcomputer - Schachcomputer, machst die taktische ChessBase Analyse und zu jedem gespielten Zug wird zustächlich genau diese Information als Kommentar mit ins PGN gesetzt.

Viele Grüße
Frank

Grundsätzlich geht das ja alles aber der Mensch ist faul.
Möchte so viel es geht ohne Umwege direkt sehen.
Parent - - By Frank Brenner Date 2019-05-03 23:31 Upvotes 2
Zitat:
1. Deine Ausdruckweise ist völlig daneben. Sprichst Du so auch mit Bekannten oder Nachbarn?


Die Menschen um mich herum mit denen ich mich über fachliche Themen unterhalten erzählen nicht so ein gefasel wie z.B.  so etwas wenn es um Schachprogrammierung geht:

Zitate:

Zitat:
Oder wie meinst du fährt ein fahranfänger Auto.
Ich möchte auchbrin auto das gut Federt. Du vielleicht eines wo du die Strasse Spürst.
Und wenn es autonome Einheiten gibt dann hauptsächlich im Bereich des Militärs um autark Menschen zu töten.
Mir kommt das so vor wie die Typen auf der Autobahn die mich mit nem bmw auf der linken Spur in einer Baustelle wo 60 ist überholen, um dann als erste vom Blitzgerät mit über 80 Sachen ge
blitzt zu werden.
Parent - By Florian Wieting Date 2019-05-04 13:19 Upvotes 1
Ich schenke dir mal ein paar Kommas:

, , , , ,
Parent - - By Florian Wieting Date 2019-05-04 13:18 Upvotes 1
Frank Brenner schrieb:

Was faselst du da von Türen und Schlössern ? Das hat mit Schach und der Schachprogrammierung nichts zu tun was du da schreibst.
[...]


Ich verstehe das Bild, das Thorsten benutzt, sehr gut.
Könnte es an deinem mangelnden Abstraktionsvermögen liegen?
Parent - - By Frank Brenner Date 2019-05-04 20:03
Dann will ich es Dir einmal erklären, damit du es verstehst:

Hier nochmal die Aufgabe:

Zitat:
Ich stecke nur die Schlüssel meines Schlüssel Bundes ins Schloss die ungefähr passen würden.
Stockfish probiert auch Schlüssel aus die gar nicht erst ins Schloss passen würden.

Wir wollen die Tür aufbekommen indem wir wissen über Schlösser und Schlüssel haben. Wir betrachten das Schloss und die Schlüssel ohne den Schlüssel ins Schloss zu stecken. Und probieren dann nur die Schlüssel aus von denen unser Wissen sagt, sie könnten passen.


Gegeben sind 1000  Schlüssel und ein Schloß.

Mephisto 3 enthält sehr viel Wissen und kann 7 Schlüssel pro Sekunde daraufhin überprüfen ob Sie ungefähr passen könnten.
Zu Gunsten von M3 nehmen wir an, daß das Wissen von M3  perfekt sei und  diese Entscheidung stets fehlerlos durchgeführt wird.
Im Durchschnitt hätte M3 beim (1+1000)/2 = ca. 500 sten Schlüssel einen Treffer und benötigt also im Durchschnitt  500/7  = 71 Sekunden um den richtigen Schlüssel zu finden.

Stockfish dagegen besitzt gar kein Wissen,  kann aber  2000 Schlüssel pro Sekunde testen indem es die Schlüssel blitzschnell ins Schloß steckt ohne ihn vorher anzugucken.
Stockfish benötigt also im Schnitt 500/2000 =  0,25 Sekunden.

Beide benötigen im Durchschnitt übrigens die gleiche Anzahl an Vergleichen.

So, wo ist denn hier der Vorteil von M3 ?
Parent - - By Thorsten Czub Date 2019-05-04 20:10
War mir schon klar das du da keinen Vorteil (!) siehst.

Der Vorteil von intelligentem Verhalten ist, das es Intelligent ist.

Man könnte die Tür auch in einer sehr kurzen Zeit aufsprengen. Das wäre aber nicht intelligent. Weil die Tür dann kaputt wäre.

Es geht nicht um schneller oder mehr ps oder mehr hardwarepower oder sonstwas materiellem.
Es geht um die Qualität .

Und Qualität lässt sich mit höher schneller weiter begriffen nun mal schlecht beschreiben.
Parent - By Frank Brenner Date 2019-05-04 20:38 Edited 2019-05-04 20:41
Wer den schlüssel stets in ca. 0.25 Sekunden findet ist aber viel Intelligenter als einer der stets rund  72 Sekunden braucht.

Es ist sehr dumm sich jeden schlüssel sehr intensiv anzugucken um langwierig zu entscheiden ob er passen könnte, wenn ein einfaches reinstecken 100 mal so schnell gehen würde.

Die Projektion auf Schach ist aber für dein Schlüsselbeispiel gar nicht gut gelungen:

Du kannst beim Mephisto 3 sehen wie dumm es ist, denn es benötigt 6 mal so viel Zeit um nur einen Zug tiefer zu denken.
Stockfish schafft dies  in lediglich der doppelten Zeit.
Stockfish sieht seinen Bauern oft schon nach 200.000 überprüften Stellungen  in der 8-ten Reihe zur Dame tänzeln,  während Mephisto 3 -  selbst wenn es 1000000 Jahre rechnen könnte  und Milliarden mal so viele Knoten überprüft hat  - diese Umwandlung nicht sehen würde.
Parent - By Roland Riener Date 2019-05-05 09:41
Thorsten Czub schrieb:

Zitat:
ich möchte ein Schachprogramm das
Einen plan hat und nicht Millionen
Knoten pro Sekunde ausrechnet
Ohne plan.

Gerade stoße ich auf folgendes Zitat bezüglich Pläne:

https://quoteinvestigator.com/2017/11/18/planning/
Parent - By Lothar Jung Date 2019-05-05 09:48
Hier ein Beispiel für „menschliches“ Schach:

https://www.art.com/gallery/id--b5696/chess-posters.htm
Parent - - By Frank Quisinsky Date 2019-05-02 12:39 Edited 2019-05-02 12:48
Hi Thorsten,

kürzlich gewann ich nach 2 Niederlagen im Blitz gegen den neuen Exclusive TheKing nach 28 Zügen bis zum Matt.
Blitzte ein wenig mit einem Bekannten der übrigens immer gerne Deine Beiträge liest.

Tja und genau da fängt es an?
Auch Menschen spielen unterschiedlich, also mit unterschiedlichen Stärken und Schwächen.

Also, ein schwieriges Unterfangen!

Maximal möglich ist die Grundsatzfrage zu beleuchten:
Im Vergleich zu starken Schachprogrammen liegen die Schwächen beim Menschen in der Tiefe der Möglichkeiten.
Ist einfach anhand von Stats zu sehen, dass bei weniger Figuren auf dem Brett die menschliche Spielstärke im Vergleich zum Mittelspiel (auf Top Niveau) nachlässt.
Bei unseren TOP Engines heute ist es genau anders herum!!

Wann spielt ein Schachprogramm menschlich:
Wenn z. B. bei Engine-Engine Partien zu sehen ist, dass möglichst viele Partien schnell (bis zum Matt) gewonnen werden und möglich wenige Partien schnell (bis zum Matt) verloren werden. Es ist nur möglich, das im Mittelspiel festzustellen. Im Übergang zum Endspiel sind Menschen den heutigen Top-Programmen um Klassen unterlegen. Aber im Mittelspiel hat der Mensch eine Chance.

Also wie gut oder schlecht werden die ca. 290 ECO Codes verstanden die für offene Stellungen sorgen.
Wie gut oder schlecht spielt ein Schachprogramm genau diese ECO Codes.

In der Partie gegen TheKing opferte ich am Damenflügel zwei Figuren um Tempis für den Königsangriff zu bekommen. Der Königsangriff war nicht bis zum Matt vorbereitet aber war klar das es ein Matt werden wird. Und genau das ist und bleibt die menschliche Stärke. Etwas vorzubereiten und durchziehen im Mittelspiel und noch besser im sehr frühen Mittelspiel. Schachprogramme fressen sich durch und sofern das weitläufig im Mittelspiel nicht errechnet werden kann hat der Mensch den Vorteil. Nun gut, TheKing spielt auf dem Schachcomputer mit ca. 2.325 echten Elo und ist genau an dieser Stelle im positionellen Schach anfällig. Ich habe nicht geprüft bzw. analysiert mit stärken Schachprogrammen (nicht notiert). Der Bekannte meinte übrigens, so spielt kein Mensch wie ich es machte. Aber es war ein normale Eröffnung und ich war voll fokusiert auf den Figurenaufbau für den Angriff. Was am Damenflügel passierte interessierte mich nicht.

Wenn wir also Schachprogramme haben, die verhältnismäßig wenige Partien im Mittelspiel bis zum Matt verlieren und überproportinal viele gewinnen spielt das Programm mit menschlichen Stärken auf höchsten Niveau. Wenn das Schachprogramm dann auch noch im Endspiel anfällig ist ... perfekt, wie haben ein menschlich spielendes Schachprogramm.

Wasp ist das perfekte Beispiel.
Ansatzmäßig spielen auch SmarThink und Hiarcs menschlich.

Bei Smarthink sind es dann aber eher Fehler durch Umgruppierungen im frühen Mittelspiel und bei Hiarcs strategische Umgruppierungen und untypische Computerzüge. Habe mich wirklich Jahre mit Statistiken von den TOP-50 beschäftigt und genau versucht mir diese Fragen selbst zu beantworten. Unzähle Stats erstellt und viele Ideen sind dann in den Tools von Ferdinand eingeflossen (er programmierte Tools um Partien aus Datenbanken besser zu filtern). Thema macht grundsätzlich auch sehr viel Spaß!

Aussage:
Wenn Schachprogramme im Mittelspiel menschliche Stärken zeigen = menschlicher Spielstil.
Schon einfach an aktiven Bauernspiel und weniger Abtausch der Leichtfiguren zu Beginn vom Spiel zu erkennen.
An schnellen Gewinnpartien und auch an Opferkombinationen!
Wasp spielt leider nicht spekulativ, würde Wasp nun auch Opfer für Angriffe spielen wäre das perfekt (macht Wasp aber nicht).
Wasp öffenet eher die Linien geschickt und hat ein aggressives Figurenspiel neben einem aggressiven Bauernspiel gegen den gegnerischen König, aber es wird nicht wild geopfert.
Wie ich es z. B. machte in der TheKing Partie.
Nur das ist meines Erachtens kaum programmierbar.

Aussage:
Auch Menschen spielen unterschiedlich.
Bei Karpov Partien denken wir eher eine Maschine spielt die Eröffnung.
Karpov entwickelt kalt seine Leichtfiguren optimal. Stellt die Bauernketten optimal auf und riskiert nichts.
Schlägt dann zu wenn er selbst optimal steht, typisches Computerschach bei Karpov, eine menschlichen Weltmeister!

Wenn wir menschliches Schach in Engines bringen wollen dann durch spekulatives Angriffsverhalten bei vielen Figuren auf dem Brett (und nur dort).
Könnte opfern um einen Vorteil zu bekommen, also Eval - muss einkalkuliert werden.

Eine solche Schachwissen bringt im Grunde nur dann einem Schachprogramm etwas wenn das Programm selbst schon stark im Königsangriff ist.
Es gibt ein Schachprogramm bei dem genau das probiert wird.

FIZBO!!

Der Programmierer versucht das mit Eval dann zu korrigieren.
Es werden so viele Bonus Punkte für aggressive Stellungen gegeben das die Eval im Vergleich zu anderen Schachprogrammen um bis zu 2 Bauerneinheiten abweicht.

Analysiere mal Tal Partien mit Fizbo und lade Dir mal parallel andere Engines.
Macht Spaß!

Gruß
Frank
Up Topic Hauptforen / CSS-Forum / Ein Schachprogramm das wie ein Mensch Schach spielt
1 2 3 Previous Next  

Powered by mwForum 2.29.3 © 1999-2014 Markus Wichitill