Playing computers finally good for your game?

General conversations about Go belong here.
xed_over
Oza
Posts: 2264
Joined: Mon Apr 19, 2010 11:51 am
Has thanked: 1179 times
Been thanked: 553 times

Re: Playing computers finally good for your game?

Post by xed_over »

flOvermind wrote:I think the problem with the bots is not their strength, but the consistency in their mistakes. The current bots may play around 1d level, but they will always make the same type of mistakes.

Let's say you're 5k, and the bot is 1d. You play the bot, and soon you are able to beat it. Does that mean you're 1d now? No, you just learned how to play against that particular bot, punishing its mistakes.

see now, I would argue that if all the 5k players learned to punish those mistakes, then that would make the bot 5k, not 1d
User avatar
zinger
Lives in gote
Posts: 305
Joined: Wed Apr 21, 2010 5:49 am
Rank: hopeless
GD Posts: 0
Has thanked: 1 time
Been thanked: 16 times

Re: Playing computers finally good for your game?

Post by zinger »

dfan wrote:(The one part I do agree with is that the ability to do deep analysis of endgames has decreased. This is due to shorter time controls and the death of overnight adjournments, though, not to computers.)

But the death of overnight adjournments is in large part due to computers ... ?
Main Entry: zing·er Pronunciation: \ˈziŋ-ər\
1 : something causing or meant to cause interest, surprise, or shock
2 : a pointed witty remark or retort
dfan
Gosei
Posts: 1598
Joined: Wed Apr 21, 2010 8:49 am
Rank: AGA 2k Fox 3d
GD Posts: 61
KGS: dfan
Has thanked: 891 times
Been thanked: 534 times
Contact:

Re: Playing computers finally good for your game?

Post by dfan »

zinger wrote:
dfan wrote:(The one part I do agree with is that the ability to do deep analysis of endgames has decreased. This is due to shorter time controls and the death of overnight adjournments, though, not to computers.)

But the death of overnight adjournments is in large part due to computers ... ?

Yes, that is true.
Suji
Lives in gote
Posts: 302
Joined: Wed May 19, 2010 2:25 pm
Rank: DDK
GD Posts: 0
KGS: Sujisan 12 kyu
OGS: Sujisan 13 kyu
Has thanked: 70 times
Been thanked: 8 times

Re: Playing computers finally good for your game?

Post by Suji »

zinger wrote:
dfan wrote:(The one part I do agree with is that the ability to do deep analysis of endgames has decreased. This is due to shorter time controls and the death of overnight adjournments, though, not to computers.)

But the death of overnight adjournments is in large part due to computers ... ?


Yes, this is essentially true. Why? Because in chess they have something called endgame tablebases that help the computers play perfectly in the endgame. Right now, all the 6 men tablebases have been generated, and people are working on the 7 men ones. The closer and closer the game gets to having 6 pieces the computers play better and better. They didn't want any player to get an unfair advantage (by having access to more tablebases) over another, and that's pretty much the reason that overnight adjournments have died. Not to mention the best programs *easily* beat the top players now.

Basically he says that—while people like Kramnik and Anand, Ivanchuk and Leko, etc. understand chess at the highest level, like their predecessors—a lot of today's leading players actually aren't all that good. (Yes, better than we are, but that's not the relevant standard.) Outside of tactics and computer-friendly opening variations of course. They outsource strategic judgment and creativity to their engines; and they don't really know what deep analysis of an endgame even means. Take away their silicon toys, and they'd be eaten for breakfast in the classic Soviet championships.


I respectfully disagree. Chess is a game where any player who came from the past to play now would lose, and lose really badly at that. Similar to Go, in Chess the top players nowadays learn from the past players and improve the game. Example: Botvinnik was part of the new generation of players in the mid 1930s and he has winning records against the "Big Three" in that era: Lasker, Capablanca, and Alekhine.
My plan to become an SDK is here.
User avatar
CarlJung
Lives in gote
Posts: 429
Joined: Wed Apr 21, 2010 1:10 pm
Rank: SDK
GD Posts: 0
KGS: CarlJung
Location: Sweden
Has thanked: 101 times
Been thanked: 73 times

Re: Playing computers finally good for your game?

Post by CarlJung »

quantumf wrote:I think the point was that by playing silly moves they've effectively given up. Instead, zinger argues, they should regard their perfect endgame play as being their weapon to recover from situations where they are behind.


Ah, I see. Do they really play such strong endgame? It they are ahead they play to minimize risk, not maximize win. But that is not what we mean with strong end game is it? I'm asking because I'm not really sure what strong end game means.

With the little I know about MC bots I believe they are fundamentally unsuitable for endgame analysis. The algorithm chooses moves from winning probability from it's simulations. If they are behind too much they can't rely on a strong endgame to catch up so they will have to play crazy and hope the opponent screws up. Moves that lead to a loss is discarded, even if the loss is lesser than for another move. If they are ahead they play safe. E.g. the algorithm is incapable of answering questions like "could a 10.5 pt loss be reduced to a 0.5 pt loss" or "could the 10.5 point win be stretched to a 15.5 point win". Strongest play in a given situation is something fundamentally different than winning probability.
User avatar
quantumf
Lives in sente
Posts: 844
Joined: Tue Apr 20, 2010 11:36 pm
Rank: 3d
GD Posts: 422
KGS: komi
Has thanked: 180 times
Been thanked: 151 times

Re: Playing computers finally good for your game?

Post by quantumf »

CarlJung wrote:With the little I know about MC bots I believe they are fundamentally unsuitable for endgame analysis. The algorithm chooses moves from winning probability from it's simulations. If they are behind too much they can't rely on a strong endgame to catch up so they will have to play crazy and hope the opponent screws up. Moves that lead to a loss is discarded, even if the loss is lesser than for another move. If they are ahead they play safe. E.g. the algorithm is incapable of answering questions like "could a 10.5 pt loss be reduced to a 0.5 pt loss" or "could the 10.5 point win be stretched to a 15.5 point win". Strongest play in a given situation is something fundamentally different than winning probability.


Your characterization is pretty spot on, I think. However, given that at the end game, its relatively easy for a computer to play perfectly, this seems like a desirable enhancement to supplement the bots with. Admittedly, as you say, this is somewhat at odds with the statistical approach of MC bots, and it would probably be a hard integration exercise, in the sense that once you start distorting the MC approach with other techniques, the whole thing tends to fall apart. But the pure MC approach is pretty much maxed out already, so supplementing it with extra abilities, e.g. strategic play, or perfect endgame, is necessary to move it up a level.
amnal
Lives in gote
Posts: 589
Joined: Fri Apr 23, 2010 10:42 am
Rank: 2 dan
GD Posts: 0
Been thanked: 114 times

Re: Playing computers finally good for your game?

Post by amnal »

CarlJung wrote:
quantumf wrote:I think the point was that by playing silly moves they've effectively given up. Instead, zinger argues, they should regard their perfect endgame play as being their weapon to recover from situations where they are behind.


Ah, I see. Do they really play such strong endgame? It they are ahead they play to minimize risk, not maximize win. But that is not what we mean with strong end game is it? I'm asking because I'm not really sure what strong end game means.

With the little I know about MC bots I believe they are fundamentally unsuitable for endgame analysis. The algorithm chooses moves from winning probability from it's simulations. If they are behind too much they can't rely on a strong endgame to catch up so they will have to play crazy and hope the opponent screws up. Moves that lead to a loss is discarded, even if the loss is lesser than for another move. If they are ahead they play safe. E.g. the algorithm is incapable of answering questions like "could a 10.5 pt loss be reduced to a 0.5 pt loss" or "could the 10.5 point win be stretched to a 15.5 point win". Strongest play in a given situation is something fundamentally different than winning probability.


This doesn't seem correct to me, but I know very little about go bot programming so I could be wrong. Surely the MC approach is simply the method of ranking moves, accompanied by some evaluation function. The current bots perhaps do not play a good endgame for whatever reason, but this is a problem with the evaluation function (maybe because it's designed for all-round play, or whatever), not the MC technique itself.

Were a bot designed solely to judge an endgame objectively, I don't see why the MC method shouldn't be extremely powerful. I assumed that bots didn't play such a good endgame or play strategically just because this wasn't in their design yet.
User avatar
topazg
Tengen
Posts: 4511
Joined: Wed Apr 21, 2010 3:08 am
Rank: Nebulous
GD Posts: 918
KGS: topazg
Location: Chatteris, UK
Has thanked: 1579 times
Been thanked: 650 times
Contact:

Re: Playing computers finally good for your game?

Post by topazg »

amnal wrote:This doesn't seem correct to me, but I know very little about go bot programming so I could be wrong. Surely the MC approach is simply the method of ranking moves, accompanied by some evaluation function. The current bots perhaps do not play a good endgame for whatever reason, but this is a problem with the evaluation function (maybe because it's designed for all-round play, or whatever), not the MC technique itself.

Were a bot designed solely to judge an endgame objectively, I don't see why the MC method shouldn't be extremely powerful. I assumed that bots didn't play such a good endgame or play strategically just because this wasn't in their design yet.


Monte Carlo code is an interesting idea, but IMHO very poor for the future of skilled playing Go engines. I await to see if I'm right or wrong I guess.

In simplest terms, MC bots take a given position, it plays out huge numbers of sequences to the end for a number of moves, and then picks the one that "wins the most times". Over enough iterations, without a great deal of skill or logic in the moves, this works very effectively, but you'll often find an MC bot play a poor endgame, turning a 7.5 point lead into a 1.5 point win - however, get it close to the wire, like 1.5 or 0.5 points, and they play very strongly indeed.
User avatar
Phelan
Gosei
Posts: 1449
Joined: Tue Apr 20, 2010 3:15 pm
Rank: KGS 6k
GD Posts: 892
Has thanked: 1550 times
Been thanked: 140 times

Re: Playing computers finally good for your game?

Post by Phelan »

Most monte carlo bots don't use very sofisticated evaluation functions. It's a tradeoff on speed vs accuracy, being able to analyse more positions instead. It seems to work pretty well.

Probably each bot has a tweaked evaluation function or MC algorithm, but I doubt every bot maker is keen to reveal its innards.

Edit:Also what topazg said.
a1h1 [1d]: You just need to curse the gods and defend.
Good Go = Shape.
Associação Portuguesa de Go
User avatar
CarlJung
Lives in gote
Posts: 429
Joined: Wed Apr 21, 2010 1:10 pm
Rank: SDK
GD Posts: 0
KGS: CarlJung
Location: Sweden
Has thanked: 101 times
Been thanked: 73 times

Re: Playing computers finally good for your game?

Post by CarlJung »

amnal wrote:This doesn't seem correct to me, but I know very little about go bot programming so I could be wrong. Surely the MC approach is simply the method of ranking moves, accompanied by some evaluation function. The current bots perhaps do not play a good endgame for whatever reason, but this is a problem with the evaluation function (maybe because it's designed for all-round play, or whatever), not the MC technique itself.

Were a bot designed solely to judge an endgame objectively, I don't see why the MC method shouldn't be extremely powerful. I assumed that bots didn't play such a good endgame or play strategically just because this wasn't in their design yet.


Perhaps it's the evaluation function that is the real limitation. If it was easy to evaluate a position it would also be easy to tell what the biggest move is. Position and next move go hand in hand. Then you wouldn't need to do any random playouts and don't need MC in the first place.
User avatar
flOvermind
Lives with ko
Posts: 295
Joined: Wed Apr 21, 2010 3:19 am
Rank: EGF 4 kyu
GD Posts: 627
Location: Linz, Austria
Has thanked: 21 times
Been thanked: 43 times

Re: Playing computers finally good for your game?

Post by flOvermind »

xed_over wrote:
flOvermind wrote:I think the problem with the bots is not their strength, but the consistency in their mistakes. The current bots may play around 1d level, but they will always make the same type of mistakes.

Let's say you're 5k, and the bot is 1d. You play the bot, and soon you are able to beat it. Does that mean you're 1d now? No, you just learned how to play against that particular bot, punishing its mistakes.

see now, I would argue that if all the 5k players learned to punish those mistakes, then that would make the bot 5k, not 1d


Yes, that's true, if all players would bother to learn a few overplays that would only ever work against a specific bot, then it would have a rating of 5k.

But in practice, it will still get a rating of 1d on KGS. Why? It's simple: The bot always makes the same mistakes, so you can rely on them happening. You can play a special strategy that exploits the mistakes. That wouldn't work against human players, because they would adjust their style after a few games, or even learn from their mistakes. So most people don't bother with finding out these special weaknesses of the bots, because it doesn't help their game against humans or even different bots.

That's the reason why the rating of a bot doesn't really tell you anything. It's KGS rating represents its strength when you play it like a human, using normal strategy. Once you adjust your game to its weaknesses, you'll see its "true" rating. And that will happen at least subconciously when you play bots too frequently. What have you gained then? Basically nothing, except picking up bad habits along the way...

This is also the reason why I don't believe in the recent "successes" of bots against pros in handicap games, because they were mostly one-off matches, with the pro having no opportunity to analyze the specific weaknesses of the bot.
Last edited by flOvermind on Fri May 21, 2010 4:58 am, edited 1 time in total.
User avatar
gaius
Lives in gote
Posts: 476
Joined: Tue Apr 27, 2010 2:55 am
Rank: Dutch 2 dan
GD Posts: 56
KGS: hopjesvla
Has thanked: 193 times
Been thanked: 83 times

Re: Playing computers finally good for your game?

Post by gaius »

CarlJung wrote:With the little I know about MC bots I believe they are fundamentally unsuitable for endgame analysis. The algorithm chooses moves from winning probability from it's simulations. If they are behind too much they can't rely on a strong endgame to catch up so they will have to play crazy and hope the opponent screws up. Moves that lead to a loss is discarded, even if the loss is lesser than for another move. If they are ahead they play safe. E.g. the algorithm is incapable of answering questions like "could a 10.5 pt loss be reduced to a 0.5 pt loss" or "could the 10.5 point win be stretched to a 15.5 point win". Strongest play in a given situation is something fundamentally different than winning probability.


Ummm. You are disproving your own point here. An MC program plays immensely strong endgame, because it's always looking for the best way to win, even if that's with a small margin. And in my experience, once it is a tiny bit ahead in the endgame, an MC bot is not going to let you catch up. Just try playing a few 9*9 games against any strong program and you know what I mean - the sheer number of 0.5 and 1.5 point losses becomes almost frustrating :).

Also, whether it's by 50.5 points or 0.5 points, a win is a win. Therefore, questions like "could a 10.5 pt loss be reduced to a 0.5 pt loss" or "could the 10.5 point win be stretched to a 15.5 point win" are irrelevant to strong endgame play. What matters is taking home the win; counting the value of moves is merely an imperfect tool to help the imperfect human brain work towards that goal.
My name is Gijs, from Utrecht, NL.

When in doubt, play the most aggressive move
User avatar
Solomon
Gosei
Posts: 1848
Joined: Tue Apr 20, 2010 9:21 pm
Rank: AGA 5d
GD Posts: 0
KGS: Capsule 4d
Tygem: 치킨까스 5d
Location: Bellevue, WA
Has thanked: 90 times
Been thanked: 835 times

Re: Playing computers finally good for your game?

Post by Solomon »

Where's pasky when you need him? :(
User avatar
topazg
Tengen
Posts: 4511
Joined: Wed Apr 21, 2010 3:08 am
Rank: Nebulous
GD Posts: 918
KGS: topazg
Location: Chatteris, UK
Has thanked: 1579 times
Been thanked: 650 times
Contact:

Re: Playing computers finally good for your game?

Post by topazg »

gaius wrote:Ummm. You are disproving your own point here. An MC program plays immensely strong endgame, because it's always looking for the best way to win, even if that's with a small margin. And in my experience, once it is a tiny bit ahead in the endgame, an MC bot is not going to let you catch up. Just try playing a few 9*9 games against any strong program and you know what I mean - the sheer number of 0.5 and 1.5 point losses becomes almost frustrating :).

Also, whether it's by 50.5 points or 0.5 points, a win is a win. Therefore, questions like "could a 10.5 pt loss be reduced to a 0.5 pt loss" or "could the 10.5 point win be stretched to a 15.5 point win" are irrelevant to strong endgame play. What matters is taking home the win; counting the value of moves is merely an imperfect tool to help the imperfect human brain work towards that goal.


Interesting, I know it's subjective, but I wouldn't consider a strong endgame "minimise margin for going wrong" which is what MC bots do, I'd consider it "making perfect moves", which would maximise the margin of victory at the risk of complications and dangerous lines. In that sense, MC don't play a strong endgame unless the game is very close. If simply "winning" is the criteria, then that's different.
User avatar
flOvermind
Lives with ko
Posts: 295
Joined: Wed Apr 21, 2010 3:19 am
Rank: EGF 4 kyu
GD Posts: 627
Location: Linz, Austria
Has thanked: 21 times
Been thanked: 43 times

Re: Playing computers finally good for your game?

Post by flOvermind »

gaius wrote:Also, whether it's by 50.5 points or 0.5 points, a win is a win. Therefore, questions like "could a 10.5 pt loss be reduced to a 0.5 pt loss" or "could the 10.5 point win be stretched to a 15.5 point win" are irrelevant to strong endgame play. What matters is taking home the win; counting the value of moves is merely an imperfect tool to help the imperfect human brain work towards that goal.


I disagree.

If you assume perfect play by your opponent, then yes, it's irrelevant. But in practice, if I'm 10.5 pt behind and I see a chance to reduce it to a 0.5 pt loss, it may still be a better strategy to try that. Let me elaborate:

Let's say on the board I'm behind, with a few good endgame points left. Now I have two strategies:
a) Play a solid endgame and reduce it to 0.5 pts behind with a high probability. I'm good at endgame, so let's say 90%. I'm not playing risky, in the worst case I'll lose by 5 pts.
b) Play a risky endgame (overplay) and make it a 5 pt win. It's risky, let's say the probability to pull it off is 30%, but if it fails it will be a 30 pt loss.

Current MC bots use strategy b). It would just see that a) has a very low probability to win, and b) has a 30% probability to win.
But I argue that there is another factor, namely the probability of a mistake by the opponent:
Let's say the probability that the opponent makes another 1 pt mistake is 40%, for a 5 pt mistake it's 5% and a 30 pt mistake just won't happen.
Suddenly strategy a) looks a lot more appealing: In 90% of the cases, I just need a 1 pt mistake from the opponent (40% chance), at worst case (10%) I need a 5 pt mistake (still 5%). This still gives a total win probability of 36.5%, assuming a just small mistake by the opponent.
Strategy b) has just 30% chance, and it's also assuming a mistake by the opponent (namely falling for the overplay).

Of course all these numbers are just made up on the spot to demonstrate a point.

Sure, you could argue that my strategy is not theoretically best play but exploiting mistakes by the other player. Against a hypothetical "perfect opponent", my strategy would be worse. That's true, but that argument is flawed: The assumption of mistakes by the opponent is already there in the MC method itself by assuming a win probability instead of a fixed final score.
Post Reply