Delphi-PRAXiS
Seite 3 von 4     123 4      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   Schach (https://www.delphipraxis.net/173876-schach.html)

Furtbichler 22. Mär 2013 06:43

AW: Schach
 
Zitat:

Zitat von Mathematiker (Beitrag 1208345)
Nach http://oeis.org/A019319 gibt es schon für 10 Halbzüge am Spielanfang 81 Milliarden Möglichkeiten und mit jedem weiteren Halbzug mit einem Faktor steigend!

Ist das mit oder ohne Pruning?

Bjoerk 22. Mär 2013 07:23

AW: Schach
 
Würde mich interessieren wie du intern vorgehst? So?

Mathematiker 22. Mär 2013 10:15

AW: Schach
 
Hallo,
Zitat:

Zitat von Furtbichler (Beitrag 1208352)
Ist das mit oder ohne Pruning?

Mit! Bei den 81 Milliarden werden nur die theoretisch möglichen Züge gezählt, wobei natürlich die mit der schlechtesten Bewertung schnell verworfen werden.
Zitat:

Zitat von Bjoerk (Beitrag 1208357)
Würde mich interessieren wie du intern vorgehst? So?

Ganz so einfach ist es nicht.
Tatsächlich ermittelt das Programm zuerst alle möglichen Züge und Gegenzüge. Die Schwierigkeit ist aber, dass jede Stellung bewertet werden muss. In die Bewertung fließt die Figur, die Position auf dem Brett, ein möglicher Figurengewinnung, die Dynamik der Stellung und die Wechselwirkung mit anderen Figuren (Deckung, gemeinsamer Angriff, usw...) mit ein.
Gerade das macht die Berechnung aufwendig.
Das Programm versucht, so lange die Stellung als gut bewertet wird, zu gewinnen. Gibt es keine gute Bewertung mehr, wird ein Remis durch Figurenabtausch und Wiederholung der gleichen Stellung angestrebt.
Mein Programm arbeitet deterministisch, d.h. gleiche Stellungen liefern auch stets das gleiche Ergebnis. Das ist ein Nachteil gegenüber einem Schachspieler, der seine Züge auch psychologisch abwägt. Aus diesem Grund ist dieses Schachprogramm auch kein richtiger Gegner für gute Schachspieler.

Beste Grüße
Mathematiker

p80286 22. Mär 2013 12:00

AW: Schach
 
Zitat:

Zitat von Mathematiker (Beitrag 1208393)
Das Programm versucht, so lange die Stellung als gut bewertet wird, zu gewinnen. Gibt es keine gute Bewertung mehr, wird ein Remis durch Figurenabtausch und Wiederholung der gleichen Stellung angestrebt.

Ach darum. Nachdem ich die Qualität hatte, war das Program irgendwie "planlos".

Gruß
K-H

milchbrötchen 22. Mär 2013 12:44

AW: Schach
 
sehr gelungen das Spiel :)

was mir aufgefallen ist: die Zeiten "Computer rechnet" oben und "Zeit für.." rechts laufen bei mir unterschiedlich schnell..

sx2008 22. Mär 2013 16:01

AW: Schach
 
Zitat:

Zitat von Mathematiker (Beitrag 1208393)
Mein Programm arbeitet deterministisch, d.h. gleiche Stellungen liefern auch stets das gleiche Ergebnis.

Das ist mir auch schon aufgefallen, weil Computer gegen Computer häufig zu einer Zugwiederholung führt.
Frage: was passiert wenn mehrere Züge mit gleichgrossem Score gefunden werden, wählt das Programm dann immer den 1. Zug oder wird per Zufall einer der gleichwertigen Züge ausgewählt?

Mathematiker 22. Mär 2013 16:58

AW: Schach
 
Hallo,
Zitat:

Zitat von p80286 (Beitrag 1208411)
Nachdem ich die Qualität hatte, war das Program irgendwie "planlos".

Das ist kein Wunder. Ein menschlicher Schachspieler erkennt seine Niederlage und gibt sich geschlagen. Ein "sturer" Computer versucht noch das Beste, d.h. den Gegner in ein Remis zu drängen. Der Gegner könnte ja noch einen Fehler machen. :lol:
Zitat:

Zitat von milchbrötchen (Beitrag 1208420)
was mir aufgefallen ist: die Zeiten "Computer rechnet" oben und "Zeit für.." rechts laufen bei mir unterschiedlich schnell..

Danke für den Hinweis. Werde ich überprüfen.
Zitat:

Zitat von sx2008 (Beitrag 1208434)
was passiert wenn mehrere Züge mit gleichgrossem Score gefunden werden, wählt das Programm dann immer den 1. Zug oder wird per Zufall einer der gleichwertigen Züge ausgewählt?

Die Züge werden nach Güte sortiert. Sind zwei gleichwertig, was sehr selten vorkommt, wird ein Halbzug weiter gerechnet. Sollte dann noch Gleichheit vorliegen, wird der 1.Zug genommen.

Beste Grüße
Mathematiker

Wolfgang Mix 22. Mär 2013 19:44

AW: Schach
 
Das Programm gefällt mir,
nur ich weiß nicht, ob jemand hier das Programm wirklich nach den gültigen Regeln gespielt hat. Wenn ich als weiss gegen Computer antrete, verbietet mir die Computerseite schon nach wenigen Zügen gültige Schachzüge, und zwar immer dann, wenn gegnerische Figuren bedroht sind.

Dazu wäre eine abspeichbare Aufzeichnung zum Spielverlauf hifreich

Mathematiker 22. Mär 2013 20:25

AW: Schach
 
Hallo,
Zitat:

Zitat von Wolfgang Mix (Beitrag 1208453)
Wenn ich als weiss gegen Computer antrete, verbietet mir die Computerseite schon nach wenigen Zügen gültige Schachzüge, und zwar immer dann, wenn gegnerische Figuren bedroht sind.

Bitte ein Beispiel!
Das Programm, zumindest der Zugmechanismus, wird seit Jahren von verschiedenen Leuten genutzt. Bisher gab es damit noch nie Probleme.
Kleinere Programmierfehler passieren mir immer mal wieder, aber so ein grober Schnitzer nicht!
Zitat:

Zitat von Wolfgang Mix (Beitrag 1208453)
Dazu wäre eine abspeichbare Aufzeichnung zum Spielverlauf hifreich

Ist ja vorhanden. Einfach über das Menü "Spielsteuerung/Spielstand speichern" die Zugliste abspeichern.

Beste Grüße
Mathematiker

Aviator 22. Mär 2013 21:17

AW: Schach
 
Zitat:

Zitat von milchbrötchen (Beitrag 1208420)
was mir aufgefallen ist: die Zeiten "Computer rechnet" oben und "Zeit für.." rechts laufen bei mir unterschiedlich schnell..


Das ist mir ebenfalls aufgefallen. Nur so als Info, dass es kein "Einzelfall" ist ;)


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:28 Uhr.
Seite 3 von 4     123 4      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz