Author: Jose Santos
Date: 09:44:13 09/09/03
Hi,
I'm a new member of this forum. I start doing my chess program a month ago using
mini-max with alpha-beta cuts.
I'm programming it in Delphi with classes (lots of them), so it's not very fast.
Since I'm not using other prunes I can't go further than ply 6.
What I don't understand is why the score become so identically as I increase
depth:
First move, AI plays black, 6 ply depth, here is the score:
G1-F3 -1308 G1-H3 -1308 B1-A3 -1308 B1-C3 -1257 H2-H3 -1229 H2-H4 -727
G2-G3 -317 G2-G4 -317 F2-F3 -317 F2-F4 -317 E2-E3 -317 E2-E4 -157
D2-D3 -157 D2-D4 -155 C2-C3 -155 C2-C4 -155 B2-B3 -155 B2-B4 -155
A2-A3 -155 A2-A4 -155
At ply 4 the scores are:
G1-F3 -220 G1-H3 -220 B1-A3 -220 B1-C3 -184 H2-H3 -184 H2-H4 -184
G2-G3 -184 G2-G4 -184 F2-F3 -184 F2-F4 -184 E2-E3 -184 E2-E4 0
D2-D3 0 D2-D4 0 C2-C3 0 C2-C4 0 B2-B3 0 B2-B4 0
A2-A3 0 A2-A4 0
At ply 2 the scores are:
G1-F3 -189 G1-H3 -242 B1-A3 -243 B1-C3 -190 H2-H3 -627 H2-H4 -499
G2-G3 -223 G2-G4 -240 F2-F3 -197 F2-F4 -236 E2-E3 -120 E2-E4 0
D2-D3 -67 D2-D4 -36 C2-C3 -111 C2-C4 -22 B2-B3 -101 B2-B4 -50
A2-A3 -627 A2-A4 -499
At ply 2 things are diversified. I would expect such a pattern for higher plys.
My evaluation function simple and somewhat naive, it's:
function TAI.Evaluate: Integer;
//returns the value of the board in white's perspective
begin
PossibleMoves[White]:=Board.GetPossibleMoves(White);
PossibleMoves[Black]:=Board.GetPossibleMoves(Black);
Result:=(MaterialValue(White)-MaterialValue(Black))
+
(PossibleMoves[White].CountMoves-PossibleMoves[Black].CountMoves)
+
(PawnStructure(White)-PawnStructure(Black))
+
(ThreatsValue(White)-ThreatsValue(Black))
+
(DefenseValue(White)-DefenseValue(Black))
+
(Development(White)-Development(Black))
+
(ControlOfCenterRatio(White)-ControlOfCenterRatio(Black));
if Board.MovesPlayed.CountMoves<=20 then//if we are on first 10 moves
Result:=Result+
(Development(White)-Development(Black));
PossibleMoves[White].Free;
PossibleMoves[Black].Free;
end;
I would appreciate comments and hints from this community on how to improve my
program. For now I just want to understand this weird behavior.
Regards,
Jose Santos
This page took 0.01 seconds to execute
Last modified: Thu, 15 Apr 21 08:11:13 -0700
Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.