On Thu, 2006-12-07 at 09:17 -0800, Peter Drake wrote:
> I do have the undo ability, but I think it's done in (I think) a
> very  
> efficient way. For example, when I want to undo a bunch of move at  
> once (e.g., after a MC run) I just reduce a stack pointer. 

BINGO!   I'm pretty sure that is your problem.

My program does this too, but not during the random games.   I make
single copy of the current state then play a random game from that copy.

Obviously, it's faster to place a single stone on an existing board -
than to make a copy and then place a stone on the copy.    

In the search tree part of the game,  (not the random simulation part) I
make state copies, do Zobrist hashing and full repetition checks and
other stuff - the tree part is cheap.  

No matter how you implement undo - it will cost you dearly whether by
state copy or keeping stacks of information updated.

- Don


_______________________________________________
computer-go mailing list
computer-go@computer-go.org
http://www.computer-go.org/mailman/listinfo/computer-go/

Reply via email to