Chess Engines -Monte Carlo

I was thinking about next gen chess engines, and I was reading some information on different GO engines. And that got me to thinking about integrated Monte Carlo.

One of the reason some of the Go programs have gotten better is that at least one of the better programs uses Monte Carlo.

Ok, for those that don’t know what Monte Carlo is (at least as far as programing games): The computer, when in Monte Carlo mode, in addition to its normal evaluations, also has at least one CPU core devoted to playing thousands of mini games.

Ok, Aquarium (aka Rybka), has the ability for monte carlo analysis. But Monte Carlo isn’t in the chess engine itself. (So its available regardless of which engine is loaded into Aquarium.) I think its availiable only in analysis mode within Aquarium.

But I wonder if the next generation chess engines will incorporate that as an actualy part of the engine.

I suspect if they did try to do that, the chess engines wouldn’t be compatible with current chess shells like Aquarium, Fritz, Chessmaster, Babeschess, etc.

Still, it might be the next logical step in chess engines. Hard to say. It may not amount to any noticable performance gain. Even if its measurable, I wouldn’t expect it to be a huge gain.

You have to be right. The backgammon program JellyFish relied heavily on Monte Carlo simulation in development (as opposed to use in actual play, which I believe is your point).

I’d assumed that Monte Carlo simulation would have limited applicability to chess and virtually none to Go, but this article proves otherwise. Programs developed using Monte Carlo simulations can play with the best humans at 9x9 Go, and have reached 4 dan at 19x19 Go.

A move that loses by force may score exceptionally well in Monte Carlo simulations (as those of us who have suffered at the hands of gambiteers know well). More to the point, two moves that have similar evaluations based on alpha-beta pruning are not necessarily equally challenging to the opponent.

Maybe the main (alpha-beta) routine reports out to the Monte Carlo subroutine: “I can’t make any meaningful distinction between the strength of these moves.” The subroutine plays a few thousand blitz games and reports back.

From what I understand, Monte Carlo games can play out some of the more unusual lines that the engine wouldn’t pick at the best continuation. So its more of a statistical oddety that occasionally, one of the mini games the engine is playing might actually prove to be better than any of its normal evaluations.

Good for muddy waters, where positions, even with best evaluations, would be difficult for an engine to pick out a best line (drawish?) in a time control scenerio. In that case, a random test game in monte carlo might actually spit out a winning line.

I would also think that given more time… say overnight analysis, the monte carlo portion of the engine would have less and less probability for improvment over the engine’s best line pick.