Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
Schachmotor in C# Konsolenanwendung UCI/WinBoard
SetiHelper
myCSharp.de - Member



Dabei seit:
Beiträge: 2

Themenstarter:

Schachmotor in C# Konsolenanwendung UCI/WinBoard

beantworten | zitieren | melden

Hallo schachinteressierte Programmierer,

ich habe vor, ein Projekt zu starten, in dem ein Schachmotor auf UCI/Winboard API Basis in C# programmiert werden soll.

Ich habe schon einige Infos, Dokus zusammengetragen, die das Thema ausgiebig behandeln.

Als Vorlage soll das Programm minimax, in der Sprache C geschrieben, dienen.
Quellcode gibt es hier: http://www.bauer-schweitzer.de/zip/mm_org.zip

Da ich die Sprache C# erlernen möchte und nicht stur langweilige Tutorrials durchlesen möchte
(tue ich bereits seit Monaten ;-)),
die die Zusammenhänge schlecht darlegen, schreibe ich diese Anfrage an Euch.

Jeder kann hier mitmachen. Vor allem die Änfänger unter Euch. Ich bin ja selbst einer.
Es wäre recht gut, wenn jemand mitmachen würde, der die Programmiersprache C# beherrscht und sich mit der OOP gut auskennt.

Das programmieren eines Schachmotors ist eine komplexe Sache.

Ich möchte dieses Projekt Step by Step aufbauen. Also erst mal mit einfachen Dingen anfangen und diese zum Laufen bringen.
D.h. ein Konsolenprogramm entwerfen, das bei Eingabe eines Zuges dieser auf Legalität überprüft wird
und der Rechner einen legalen Zug zurück gibt. Auch wenn der Zug vom Programm ein taktisch Schlechter Zug
wäre. Das ist erst mal nicht so wichtig. Hauptsache er zieht regelgerecht.
Die Stellungsbewertungen, Alpha-Beta Algorithmen u.s.w kommen dann nach und nach dazu.

Das macht die Sache für einen Anfänger einfacher und übersichtlicher.

Hier noch ein paar links zum Blut lecken:
Die Bibel der Computerschach-Programmierung:
http://www.amazon.de/Schach-Bits-Bytes-k%C3%B6niglichen-Spiel/dp/3877915221/ref=sr_1_2/303-1950173-6540259?ie=UTF8&s=books&qid=1176971669&sr=8-2
Ist leider vergriffen. Bekommt man aber noch mit etwas Geduld bei ebay. Habe ich vor einer Woche dort selber ersteigert.

GUI für den Motor: http://www.playwitharena.com/

Ein Motor der Uni Berlin: http://www.fuschmotor.de.vu/

WinBoard: http://www.tim-mann.org/

Wikipedia: Schachprogramm: http://de.wikipedia.org/wiki/Schachengine

UCI-Protokoll: http://download.shredderchess.com/div/uci.zip

So, das solls erst mal sein. Ich hoffe auf Euer Interesse.

Grüße SetiHelper
Dieser Beitrag wurde 5 mal editiert, zum letzten Mal von SetiHelper am .
private Nachricht | Beiträge des Benutzers
janismac
myCSharp.de - Member



Dabei seit:
Beiträge: 183

beantworten | zitieren | melden

hallo

ich würde gerne mit machen
ich denke alles so drumherum wird kein problem
aber die logik von schach, also einen schach-bot zu programmieren stell ich mir sehr schwierig vor


zu mir:

ich programmiere seit nem halben jahr und habe auch mit c# angefangen
ähh ja das wars auch schon


MfG janismac
private Nachricht | Beiträge des Benutzers
SetiHelper
myCSharp.de - Member



Dabei seit:
Beiträge: 2

Themenstarter:

beantworten | zitieren | melden

Hallo janismac,

toll dass Du mitmachen möchtest.
Es gibt bereits eine website zu dem Projekt.
Unter http://www.charpi.de kannst Du Dich auf der Seite und im Forum anmelden.

Alles weitere werden wir dann dort klären.
private Nachricht | Beiträge des Benutzers
GeorgSchelkle
myCSharp.de - Member



Dabei seit:
Beiträge: 18

Schachmotor in C#

beantworten | zitieren | melden

Ich schreibe zur Zeit ebenfalls ein Schachprogramm, allerdings
in Visual C++ 6.0. Mein Ansatz ist ein simpler MiniMax-Algorithmus, der
durch ein Beschleunigungsprogramm effizient gemacht werden soll.
Verfahren wie Alpha-Beta, sollen so ermöglicht werden. Die Optimierung
erfolgt in GLisp ( ein Lisp Dialekt ( Georgs-Lisp ) ) und liefert schließlich
ein C++(oder auch C#)-Programm.
private Nachricht | Beiträge des Benutzers