Not logged inCSS-Forum
Forum CSS-Online Help Search Login
CSS-Shop Impressum Datenschutz
Up Topic Hauptforen / CSS-Forum / Schachprogrammierung unter ChatGPT
- - By Lothar Jung Date 2025-04-22 10:27
…habe ich mit Python und C versucht.
Die Ergebnisse sind stark verbessert, als die Versuche vor einem Jahr.
Der generierte PythonCode ist deutlich kompakter.
Leider besteht keine Möglichkeit für mich, die ausführbare Datei zu posten.
Verfügt jemand über einen ChatGPT Account?
Parent - - By Max Siegfried Date 2025-04-22 10:48
Lothar Jung schrieb:

…habe ich mit Python und C versucht.
Die Ergebnisse sind stark verbessert, als die Versuche vor einem Jahr.
Der generierte PythonCode ist deutlich kompakter.
Leider besteht keine Möglichkeit für mich, die ausführbare Datei zu posten.
Verfügt jemand über einen ChatGPT Account?

Die neue Spielstärke / erreichte Elo wäre interessant.
Parent - By Lothar Jung Date 2025-04-22 14:19
Ich kann nur etwas mit konkreter Mitarbeit anfangen.
Parent - - By Volker Pittlik Date 2025-04-22 15:02
Lothar Jung schrieb:

...Leider besteht keine Möglichkeit für mich, die ausführbare Datei zu posten.
Verfügt jemand über einen ChatGPT Account?


Eine ausführbare Datei ins Forum zu stellen, würfe auch gewisse Sicherheitsprobleme auf. Poste doch den Quelltext.

Ich habe viele AI Accounts auch für ChatGPT. Der generierte Code ist meistens lauffähig aber nicht unbedingt optimal.

Es hilft viel, wenn man schon vor Beginn eine Vorstellung hat, wie das Program laufen soll und das in kleinen Schritten codieren lässt.
ChatGPT anzuweisen "Schreib mal einen Stockfish-Killer als Bash-Skript" hätte wenig Aussicht auf Erfolg.

Volker
Parent - By Lothar Jung Date 2025-04-22 16:14
Mir würde es reichen, wenn das Programm stärker als die Forumsteilnehmer würde.
ChatGPT bietet nach jeder Version, ob er bestimmte Verbesserungen einbauen soll.
Auch Multithreading!
Parent - By Lothar Jung Date 2025-04-23 17:46
Hallo Volker,
ich habe im Unterforum „Schachprogrammierung“ ein von mir generiertes Schachprogramm in C im Thread ChatGPT reinkopiert.
Da ich in Frankreich derzeit keinen PC zur Verfügung habe, wäre es nett wenn du den Code kompilierst.
Gruß Lothar
Parent - - By Patrick Götz Date 2025-04-27 06:16
Habe ChatGPT und GROK3 zu Programmieren ausprobiert.
GROK3 ist unkomplizierter, schneller und leistungsfähiger, der Code besser, nach meinen bisherigen Erfahrungen.
Parent - - By Patrick Götz Date 2025-04-27 15:14
Claude 3.7 Sonnet  erreicht in der kostenlose ebenso wie ChatGPT schnell die maximale Zeichen- oder Nachrichtenlänge, wenn der Code etwas länger wird.
Das Problem hatte ich bei Grok3 bei den gleichen Aufgaben (Codelänge knapp 50.000 Zeichen) nicht.
Parent - By Lothar Jung Date 2025-04-27 16:05
1. Ich benutze die Pro Version von ChatGPT 4.0/4.5
2. Ich fahre keinen Teslar
- - By Lothar Jung Date 2025-04-24 10:36 Edited 2025-04-24 10:38
Ich habe im letzten Thread den vollständigen Programmcode eingestellt.
Für die Bedienung von ChatGPT beim Coding muß man schrittweise vorgehen.
Am besten richtet man sich nach den Empfehlungen der KI.
Die Algorithmen sind gut kommentiert und übersichtlich.

Hier ist der Makefile:

# Makefile für Bitboard-Schachengine

CC = gcc
CFLAGS = -O3 -Wall -Wextra -std=c99
TARGET = engine
SRC = bitboard_chess_engine_full.c

$(TARGET): $(SRC)
  $(CC) $(CFLAGS) -o $(TARGET) $(SRC)

clean:
  rm -f $(TARGET)

make
Parent - - By Peter Martan Date 2025-04-24 11:20
Und hast du's jetzt schon selbst kompiliert?
Parent - - By Lothar Jung Date 2025-04-24 12:18
Mit dieser Frage habe ich natürlich gerechnet.
Nein!
Ich überlasse die Kompilierung gerne der Schwarm-Intelligenz des Forums.
Ich habe meine Arbeit mit ChatGPT dazu geleistet.
Wenn einem Forist die Erstellung des ausführbaren Code gelingt, hat er zum Erfolg beigetragen.
Dann werde ich weitere Verbesserungen einführen, z.B. Multithreading.
Parent - By Jörg Oster Date 2025-04-24 12:52 Upvotes 3
ROFL 
Parent - - By Thomas Plaschke Date 2025-04-24 11:44 Upvotes 2
Ich denke, ich habe _eine_ Fehlerquelle für die Syntaxfehler gefunden.
Immer, wenn im Quelltext mit einer Variable namens "i" indexiert wird (eckige Klammer auf,  i, eckige Klamer zu) interpretiert unsere Forumssoftware das als Steuerbefehl für Kursivschrift. Ähnliche Interpretationen sollten bei allen Steuerbefehlen der Forumssoftware zu beobachten sein ([ b ], [ tt ] [ code ] etc - wenn die Leerzeichen zwischen den eckigen hier nicht wären!). ChatGPT ist also - hier - unschuldig.

Vor dem Einsetzen in den Forumsthread könntest Du die öffnenden eckigen Klammern durch öffnende eckige Klammer plus Leerzeichen ersetzen. Das müsste bereits vor Fehlinterpretationen schützen. Im Nachhinein ist es sehr mühsam, die Fehler zu korrigieren.

Viele Grüße
Th. Plaschke
Parent - - By Lothar Jung Date 2025-04-24 12:37
Ist es - auch - diese Routine:

Move search_final(int max_depth) {
    init_zobrist();
    Move best = {0};
    for (int d = 1; d <= max_depth; d++) {
        Move moves[256]; int n = generate_all_moves(moves, side_to_move);
        int best_score = INT_MIN;
        sort_moves_heuristic(moves, n, 0);
        for (int i = 0; i < n; i++) {
            if (!is_legal(moves, side_to_move)) continue;
            make_move(moves, side_to_move);
            int s = -alphabeta_tt(d - 1, INT_MIN + 1, INT_MAX - 1, 1, 1 - side_to_move);
            undo_move(moves, side_to_move);
            if (s > best_score) {
                best_score = s;
                best = moves;
            }
        }
    }
    return best;
Parent - - By Thomas Plaschke Date 2025-04-24 12:49
Das
Lothar Jung schrieb:

Move search_final(int max_depth) {
    init_zobrist();
    Move best = {0};
    for (int d = 1; d <= max_depth; d++) {
        Move moves[256];
        int n = generate_all_moves(moves, side_to_move);
        int best_score = INT_MIN;
        sort_moves_heuristic(moves, n, 0);
        for (int i = 0; i < n; i++) {
            if (!is_legal(moves, side_to_move)) continue;
            make_move(moves, side_to_move);
            int s = -alphabeta_tt(d - 1, INT_MIN + 1, INT_MAX - 1, 1, 1 - side_to_move);
            undo_move(moves, side_to_move);
            if (s > best_score) {
                best_score = s;
                best = moves;
            }
        }
    }
    return best;
Sollte so
Code:
Move search_final(int max_depth) {
    init_zobrist();
    Move best = {0};
    for (int d = 1; d <= max_depth; d++) {
        Move moves[256]; int n = generate_all_moves(moves, side_to_move);
        int best_score = INT_MIN;
        sort_moves_heuristic(moves, n, 0);
        for (int i = 0; i < n; i++) {
            if (!is_legal(moves[ i ], side_to_move)) continue;
            make_move(moves[ i ], side_to_move);
            int s = -alphabeta_tt(d - 1, INT_MIN + 1, INT_MAX - 1, 1, 1 - side_to_move);
            undo_move(moves[ i ], side_to_move);
            if (s > best_score) {
                best_score = s;
                best = moves[ i ];
            }
        }
    }
    return best;
aussehen, nicht wahr? (Ich habe [ i ] eingefügt, wo es vermutlich weginterpretiert wurde.)

Viele Grüße
Th. Plaschke
Parent - By Lothar Jung Date 2025-04-24 14:15
Sehr wahr!
Der generierte Quellcode hat genau Deine Änderungen.
Ich könnte Dir den Gesamt-Code mit E-Mail übersenden.
Gruß
Lothar

PS: So stelle ich mir Gemeinsamkeit im Forum vor.
Up Topic Hauptforen / CSS-Forum / Schachprogrammierung unter ChatGPT

Powered by mwForum 2.29.3 © 1999-2014 Markus Wichitill