Search found 41 matches

by jdm64
Tue Jan 11, 2011 11:37 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: LMR, Razoring, Futility.... with chess varient with drops?
Replies: 22
Views: 3713

Re: LMR, Razoring, Futility.... with chess varient with drop

What depths do you reach in a typical midlle-game position, with null move on or off? What ply is typical middle-game? I ran some tests of a game I'm currently playing with a friend. It's only 13 moves into the game (7 full turns). Hopefully the results are accurate because it took a long time to r...
by jdm64
Sat Jan 08, 2011 12:47 am
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: LMR, Razoring, Futility.... with chess varient with drops?
Replies: 22
Views: 3713

Re: LMR, Razoring, Futility.... with chess varient with drop

I currently don't disable null-move in end-game. But I'm not sure if it's failing on end-game or opening. I will have to look at the actual games instead of just looking at the summary stats. Since the game starts out with an empty board, would end-game still be when one side has placed and lost all...
by jdm64
Fri Jan 07, 2011 8:58 am
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: LMR, Razoring, Futility.... with chess varient with drops?
Replies: 22
Views: 3713

Re: LMR, Razoring, Futility.... with chess varient with drop

How does the 'score' you return in the 3rd line of your probe code receive any value? It seems to me you would have had to pass a pointer to it to tt_item->getScore() to make that possible. I should've made that more clear. tt_item, move and score are passed by reference. bool TransTable::getItem&#...
by jdm64
Fri Jan 07, 2011 8:36 am
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: LMR, Razoring, Futility.... with chess varient with drops?
Replies: 22
Views: 3713

Re: LMR, Razoring, Futility.... with chess varient with drop

I added a new node-type to the hash table (NULL_NODE) which is like a cut-node, but without a best move. That improved the strength of my engine with null-move only ever so slightly (from -153 elo, to -136 elo). But still, the non-null-move version wins more (even if it's 3x slower). What could I st...
by jdm64
Thu Jan 06, 2011 9:42 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: LMR, Razoring, Futility.... with chess varient with drops?
Replies: 22
Views: 3713

Re: LMR, Razoring, Futility.... with chess varient with drop

One of the fields in the table is the depth the node was searched. Now regularly, I store (DepthLimit - CurrentDepth), but since the null-move was searched with R less depth, do I still store what I have been storing, or R less?
by jdm64
Thu Jan 06, 2011 8:54 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: LMR, Razoring, Futility.... with chess varient with drops?
Replies: 22
Views: 3713

Re: LMR, Razoring, Futility.... with chess varient with drop

I think I implemented null-move right, but I did a quick test with 128 games and the engine with null-move scored 42.5 points, but the one without scored 85.5 points (wins + draws/2). Is that somewhere around a 153 elo difference? Am I suppose to store the score in the hash table? I'm currently stor...
by jdm64
Sun Jan 02, 2011 5:45 am
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: LMR, Razoring, Futility.... with chess varient with drops?
Replies: 22
Views: 3713

Re: LMR, Razoring, Futility.... with chess varient with drop

Is it correct to save the value retuned by the null-move to the hash table if it's a beta cut-off? What would be the saved depth? Would I save the depth I would've searched that node, or (depth - R)?
by jdm64
Fri Dec 31, 2010 9:09 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: LMR, Razoring, Futility.... with chess varient with drops?
Replies: 22
Views: 3713

Re: LMR, Razoring, Futility.... with chess varient with drop

So, my null-move would work, but the node saving would be mostly worthless. What about the R value? Is that always 2 or 3 or what's the best way to set it? Also, I'm fairly sure I'm doing the hash key right. My incremental update in make/unmake results in the same key as my rebuildHash function. I h...
by jdm64
Fri Dec 31, 2010 9:52 am
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: LMR, Razoring, Futility.... with chess varient with drops?
Replies: 22
Views: 3713

Re: LMR, Razoring, Futility.... with chess varient with drop

No, that is not the way null move works. More like this: makeNull() { ply++ wtm ^= true // change color to move } unmakeNull() { ply-- wtm ^= true // change color to move } negascout(alpha, beta, depth) { // try hash move first // try null move if (notIn...
by jdm64
Thu Dec 30, 2010 10:47 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: LMR, Razoring, Futility.... with chess varient with drops?
Replies: 22
Views: 3713

Re: LMR, Razoring, Futility.... with chess varient with drop

Would the following code be a correct implementation of nullmove? makeNull() { ply++ wtm ^= true // change color to move key += hashbox[wtm] // update hash key for change of color } unmakeNull() { ply-- wtm ^= true // change color to move key -= hashbox[wtm] // update hash key...