Search found 1631 matches

by Gerd Isenberg
Sat Jan 18, 2020 10:35 am
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Exploring an unusual evaluation function
Replies: 19
Views: 672

Re: Exploring an unusual evaluation function

Due to your initial thanks in Advance (Adv<thanks>ance), I wrongly assumed you are this David Wilson , author of Advance and Delta - starting a comeback after a long break from chess programming ;-) Yes, the idea using mobility in evaluation is old, also note Slater's Statistics for the Chess Comput...
by Gerd Isenberg
Fri Jan 17, 2020 3:10 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Exploring an unusual evaluation function
Replies: 19
Views: 672

Re: Exploring an unusual evaluation function

Hi Dave, may be you are aware that early programs like Barricelli's Freedom and Marsland's Wita used mobility aka ratio of computer's moves / opponent moves as evaluation term, and Papa the logarithm of that product to form an entropy. If you look to current strong alpha-beta based engines, evaluati...
by Gerd Isenberg
Fri Nov 29, 2019 10:42 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Pawn move generation in bitboards
Replies: 3
Views: 462

Re: Pawn move generation in bitboards

With bitboards you should do it set-wise, specially with pawns. All single push targets are the intersection of pawns shifted one square (i.e. << 8 for white >> 8 for black, dependent on your square mapping) with all empty squares. To generate moves, you traverse these target sets and with the uniqu...
by Gerd Isenberg
Thu Oct 10, 2019 9:38 am
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Understanding first rank attack state generation
Replies: 15
Views: 3174

Re: Understanding first rank attack state generation

Because of the inner six bit mask with 01111110b, which would usually require an additional shift right 1 for a 0..63 range, is already implicitly multiplied by two (0,2,4,....126). With a two-dimensional array it takes one additional instruction ;-) BYTE arrFirstRankAttacks64x8[64][8]; // 512 Bytes...
by Gerd Isenberg
Thu Oct 10, 2019 5:52 am
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Understanding first rank attack state generation
Replies: 15
Views: 3174

Re: Understanding first rank attack state generation

BYTE arrFirstRankAttacks64x8[64*8]; // 512 Bytes = 1/2KByte U64 rankAttacks(U64 occ, enumSquare sq) { unsigned int file = sq & 7; unsigned int rkx8 = sq & 56; // rank * 8 occ = (occ >> rkx8) & 2*63; U64 attacks = arrFirstRankAttacks64x8[4*occ + file]; return attacks << rkx8; } What I am still not c...
by Gerd Isenberg
Tue Jul 09, 2019 7:34 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: LMP
Replies: 8
Views: 1828

Re: LMP

Hi, What is LMP and how does it work/is it implemented? LMP, late move pruning not reduction. I see mentions of it here and there but it is not described on the wiki. Mentioned on the Futility Pruning page as Move Count Based Pruning aka Late Move Pruning (LMP) with reference post by Tom King.
by Gerd Isenberg
Sun Jul 07, 2019 7:16 am
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: backward pawn
Replies: 5
Views: 1472

Re: backward pawn

You are right. The routine should exclude rams: U64 wBackward(U64 wpawns, U64 bpawns) { U64 stops = (wpawns << 8) & ~bpawns; U64 wAttackSpans = wEastAttackFrontSpans(wpawns) | wWestAttackFrontSpans(wpawns); U64 bAttacks = bPawnEastAttacks(bpawns) | bPawnWestAttacks(bpawns); return (stops & bAttacks...
by Gerd Isenberg
Sat Jul 06, 2019 8:26 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: backward pawn
Replies: 5
Views: 1472

Re: backward pawn

You strictly are right. The routine may exclude rams (or even stops not occupied by any pawn): U64 wBackward(U64 wpawns, U64 bpawns) { U64 stops = (wpawns << 8) & ~bpawns; U64 wAttackSpans = wEastAttackFrontSpans(wpawns) | wWestAttackFrontSpans(wpawns); U64 bAttacks = bPawnEastAttacks(bpawns) | bPaw...
by Gerd Isenberg
Sun Jun 30, 2019 8:20 pm
Forum: Computer Chess Club: General Topics
Topic: Cock de Gorter passed away
Replies: 23
Views: 5626

Re: Cock de Gorter passed away

My condolences to his wife and family as well. RIP Cock de Gorter and thank you for organizing the Aegon tournaments.

Gerd Isenberg
by Gerd Isenberg
Thu Jun 13, 2019 3:27 pm
Forum: Computer Chess Club: General Topics
Topic: Widely unknown pioneering chess "paper machine" by Gunter Sсhliebs
Replies: 9
Views: 1853

Re: Widely unknown pioneering chess "paper machine" by Gunter Sсhliebs

I never seen [4] (but started some attempts to obtain the scan of this article) <...> 4. Sсhliebs G. (1953). Über die Gründzuge eines Programms für eine Schachspielende Rechenmaschine / Funk und Ton, 1953, vol. 7, pp. 257—265. Hooray!! Here is the paper: https://yadi.sk/d/my7VqYaYaaLc1w And it look...