Re: [computer-go] 9x9
games. I'm sorry that you weren't able to use the full cluster on the 19x19 game, it would have been interesting to see how much of an improvement would result with such a network of computers. I guess the games can be seen on KGS, user mogobot1, against teytaud (don't look at games against other players than teytaud, these are just tests); the last game before 15h30 is a game against a french 5D, the three next games are against Catalin (one won by Catalin, with a standard machine instead of the cluster, one won by mogo, one won by Catalin - white wins all games). The 5th game is a win of mogo against 2 players, playing together (not a rengo), one of them is professional, the other is very strong also. MoGo was running (except for the first 9x9 game and the 19x19 game against Catalin) on a cluster of 32 nodes with 8 cores per node, 3GHz - there are people who have acces to much better clusters (I've recieved an email from another reader of this mailing list, which makes me very jealous :-) ), and also probably much more stable clusters without troubles for the internet connections or the NFS system. Also, really, self-play openings are great, so there is room for improvement. But 19x19 is something else, perhaps we can have the Dan, but I'm not sure of that in spite of the gentle words of Catalin, and I'm sure the current mogo can't win against a professionnal player in 19x19 whenever we have the best cluster in the world, and whenever the professionnal player is both ill and a bit drunk :-) Best regards, Olivier ___ computer-go mailing list computer-go@computer-go.org http://www.computer-go.org/mailman/listinfo/computer-go/
Re: [computer-go] 9x9 challenge
terry mcintyre: <[EMAIL PROTECTED]>: >I attempted to access the games of IaGoChall, and >could not; the KGS client beeped at me. > >Is there a method to review the game records? We can download but cannot review the records directly. Watch them at offline. -Hideki >Thanks! > > >Terry McIntyre <[EMAIL PROTECTED]> > >Wherever is found what is called a paternal government, there is found state >education. It >has been discovered that the best way to insure implicit obedience is to >commence tyranny in >the nursery. > >Benjamin Disraeli, Speech in the House of Commons [June 15, 1874] > > > > >Never miss a thing. Make Yahoo your home page. >http://www.yahoo.com/r/hs >___ >computer-go mailing list >computer-go@computer-go.org >http://www.computer-go.org/mailman/listinfo/computer-go/ -- [EMAIL PROTECTED] (Kato) ___ computer-go mailing list computer-go@computer-go.org http://www.computer-go.org/mailman/listinfo/computer-go/
Re: [computer-go] 9x9
On Mar 26, 2008, at 12:32 AM, Olivier Teytaud wrote: ... is room for improvement. But 19x19 is something else, perhaps we can have the Dan, but I'm not sure of that in spite of the gentle words of Catalin, and I'm sure the current mogo can't win against a professionnal player in 19x19 whenever we have the best cluster in the world, and whenever the professionnal player is both ill and a bit drunk :-) By reaching 1-dan (amateur) you would have received 1 M$ a few year ago from Mr. Ing. Christoph ___ computer-go mailing list computer-go@computer-go.org http://www.computer-go.org/mailman/listinfo/computer-go/
Re: [computer-go] 9x9
On 26-mrt-08, at 13:31, Christoph Birk wrote: On Mar 26, 2008, at 12:32 AM, Olivier Teytaud wrote: ... is room for improvement. But 19x19 is something else, perhaps we can have the Dan, but I'm not sure of that in spite of the gentle words of Catalin, and I'm sure the current mogo can't win against a professionnal player in 19x19 whenever we have the best cluster in the world, and whenever the professionnal player is both ill and a bit drunk :-) By reaching 1-dan (amateur) you would have received 1 M$ a few year ago from Mr. Ing. No way. The $1M prize was for beating a pro on even in a multi-game match. ___ computer-go mailing list computer-go@computer-go.org http://www.computer-go.org/mailman/listinfo/computer-go/
Re: [computer-go] 9x9
In message <[EMAIL PROTECTED]>, Christoph Birk <[EMAIL PROTECTED]> writes On Mar 26, 2008, at 12:32 AM, Olivier Teytaud wrote: ... is room for improvement. But 19x19 is something else, perhaps we can have the Dan, but I'm not sure of that in spite of the gentle words of Catalin, and I'm sure the current mogo can't win against a professionnal player in 19x19 whenever we have the best cluster in the world, and whenever the professionnal player is both ill and a bit drunk :-) By reaching 1-dan (amateur) you would have received 1 M$ a few year ago from Mr. Ing. No, the million-dollar prize was for winning a match against inseis - young trainee professionals, about amateur 6-dan. Nick -- Nick Wedd[EMAIL PROTECTED] ___ computer-go mailing list computer-go@computer-go.org http://www.computer-go.org/mailman/listinfo/computer-go/
RE: [computer-go] 9x9
This is not true. The Ing prize was for winning a best of 7 match against a top professional without handicap. David > -Original Message- > From: [EMAIL PROTECTED] [mailto:computer-go- > [EMAIL PROTECTED] On Behalf Of Christoph Birk > Sent: Wednesday, March 26, 2008 9:32 AM > To: computer-go > Subject: Re: [computer-go] 9x9 > > > On Mar 26, 2008, at 12:32 AM, Olivier Teytaud wrote: > ... is room for improvement. But 19x19 is something else, perhaps we > > > > can have the Dan, but I'm not sure of that in spite of the gentle > > words of > > Catalin, and I'm sure the current > > mogo can't win against a professionnal player in 19x19 whenever we > > have the best cluster in the world, and whenever the professionnal > > player > > is both ill and a bit drunk :-) > > By reaching 1-dan (amateur) you would have received > 1 M$ a few year ago from Mr. Ing. > > Christoph > > > > ___ > computer-go mailing list > computer-go@computer-go.org > http://www.computer-go.org/mailman/listinfo/computer-go/ ___ computer-go mailing list computer-go@computer-go.org http://www.computer-go.org/mailman/listinfo/computer-go/
RE: [computer-go] 9x9
The lower level prizes were given for games against Insei, but the top prize was for play against t top professional. http://www.smart-games.com/worldcompgo.html I can't find any official data on-line, but the information in the page above was copied from the paper rules at the competition. David > -Original Message- > From: [EMAIL PROTECTED] [mailto:computer-go- > [EMAIL PROTECTED] On Behalf Of Nick Wedd > Sent: Wednesday, March 26, 2008 9:41 AM > To: computer-go > Subject: Re: [computer-go] 9x9 > > In message <[EMAIL PROTECTED]>, Christoph > Birk <[EMAIL PROTECTED]> writes > > > >On Mar 26, 2008, at 12:32 AM, Olivier Teytaud wrote: > > ... is room for improvement. But 19x19 is something else, perhaps we > >> > >> can have the Dan, but I'm not sure of that in spite of the gentle > >>words of > >> Catalin, and I'm sure the current > >> mogo can't win against a professionnal player in 19x19 whenever we > >> have the best cluster in the world, and whenever the professionnal > >>player > >> is both ill and a bit drunk :-) > > > >By reaching 1-dan (amateur) you would have received > >1 M$ a few year ago from Mr. Ing. > > No, the million-dollar prize was for winning a match against inseis - > young trainee professionals, about amateur 6-dan. > > Nick > -- > Nick Wedd[EMAIL PROTECTED] > ___ > computer-go mailing list > computer-go@computer-go.org > http://www.computer-go.org/mailman/listinfo/computer-go/ ___ computer-go mailing list computer-go@computer-go.org http://www.computer-go.org/mailman/listinfo/computer-go/
[computer-go] Ing Challenge
On Mar 26, 2008, at 9:47 AM, David Fotland wrote: The lower level prizes were given for games against Insei, but the top prize was for play against t top professional. http://www.smart-games.com/worldcompgo.html I can't find any official data on-line, but the information in the page above was copied from the paper rules at the competition. You are right. The AGA website writes "strong amateur". http://www.usgo.org/ingfoundation/ Christoph ___ computer-go mailing list computer-go@computer-go.org http://www.computer-go.org/mailman/listinfo/computer-go/
Re: [computer-go] 9x9
Christoph Birk wrote: > > On Mar 26, 2008, at 12:32 AM, Olivier Teytaud wrote: > ... is room for improvement. But 19x19 is something else, perhaps we >> >> can have the Dan, but I'm not sure of that in spite of the gentle >> words of >> Catalin, and I'm sure the current >> mogo can't win against a professionnal player in 19x19 whenever we >> have the best cluster in the world, and whenever the professionnal >> player >> is both ill and a bit drunk :-) > > By reaching 1-dan (amateur) you would have received > 1 M$ a few year ago from Mr. Ing. I would love to see a well organized, attempt to prove or disprove that programs have reached just 1 Dan level in 19x19.To be convincing I think you would need to have a few players with solid 1 Dan ratings each play a series of games against the target program on the target platform.Of course one would have to define which rating system is used in addition.Furthermore, the players would have to be significantly motivated to win. such as serious bucks for each game they win and nothing for a loss. By the way, I absolutely cringe when the reason why a player lost a game is "because they were experimenting", or "they made a mistake" as was reported with the Mogo match. Isn't that normally a given? I cannot tell from the wording if Mogo is apologizing for winning and feel that the game should not be counted, or whether they are just making a rather mundane statement of fact. - Don > > Christoph > > > > ___ > computer-go mailing list > computer-go@computer-go.org > http://www.computer-go.org/mailman/listinfo/computer-go/ > ___ computer-go mailing list computer-go@computer-go.org http://www.computer-go.org/mailman/listinfo/computer-go/
[computer-go] State of the art of pattern matching
Lately I have been putting some effort into pattern-matching. Although I have made progress, the result was not as good as what I had hoped for by about an order of magnitude. This makes me wonder what is currently actually the state of the art of pattern matching in Go. Of course it's a bit of a vague question, as there are many possible forms of pattern-matching. Fixed-size patterns are the easiest since a hash-code can be used. Nothing is going to beat that in terms of speed, but its use is limited to some special occasions. Joseki is one and apparently 3x3 patterns are used in Monte-Carlo programs. But I think the most generally useful form is one that can do pattern- matching for variable shapes. (Or which can have don't-care points if you like.) I thought I had a solution that would be pretty close to the theoretical best performance. Formally proving that would probably be a dissertation in itself, most important for me is in itself it works and with modest memory requirements. That is the good part. The bad part is, if I'm right this is the best it can get I'm a bit disappointed it isn't faster. I'd rather be proven wrong here. It's written in Java so making it in C would possibly give a two-fold speedup, but that's all I can think of. What I have now takes 10-15 microseconds on a 2Ghz Intel computer to find all the patterns on a board (on average for 9x9, for 19x19 it's more like 15-20 usec) and it also gives me the 'new' patterns i.e. patterns that match now but didn't match the previous move (I believe that's a useful feature, but it's a detail). The set of patterns is under a thousand patterns. Somehow smaller sets don't go much faster, but larger sets do slow down, every ten-fold increase in number of patterns seems to double the time. So I was wondering if others cared to share the performance of their pattern-matcher. I just want to find out if I'm chasing a unicorn or not by trying to make something faster. Mark ___ computer-go mailing list computer-go@computer-go.org http://www.computer-go.org/mailman/listinfo/computer-go/
[computer-go] MoGo/Taranu challenge in Paris
I have put a report of the weekend's challenge games between MoGo and Catalin Taranu 5p at http://www.computer-go.info/tc/ mainly to make it easier for people to find the game records. Nick -- Nick Wedd[EMAIL PROTECTED] ___ computer-go mailing list computer-go@computer-go.org http://www.computer-go.org/mailman/listinfo/computer-go/
Re: [computer-go] State of the art of pattern matching
Our pattern matching work is just now starting to run. We will post details when we have done more testing. Cheers, David On 26, Mar 2008, at 11:08 AM, Mark Boon wrote: Lately I have been putting some effort into pattern-matching. Although I have made progress, the result was not as good as what I had hoped for by about an order of magnitude. This makes me wonder what is currently actually the state of the art of pattern matching in Go. Of course it's a bit of a vague question, as there are many possible forms of pattern-matching. Fixed-size patterns are the easiest since a hash-code can be used. Nothing is going to beat that in terms of speed, but its use is limited to some special occasions. Joseki is one and apparently 3x3 patterns are used in Monte-Carlo programs. But I think the most generally useful form is one that can do pattern-matching for variable shapes. (Or which can have don't-care points if you like.) I thought I had a solution that would be pretty close to the theoretical best performance. Formally proving that would probably be a dissertation in itself, most important for me is in itself it works and with modest memory requirements. That is the good part. The bad part is, if I'm right this is the best it can get I'm a bit disappointed it isn't faster. I'd rather be proven wrong here. It's written in Java so making it in C would possibly give a two-fold speedup, but that's all I can think of. What I have now takes 10-15 microseconds on a 2Ghz Intel computer to find all the patterns on a board (on average for 9x9, for 19x19 it's more like 15-20 usec) and it also gives me the 'new' patterns i.e. patterns that match now but didn't match the previous move (I believe that's a useful feature, but it's a detail). The set of patterns is under a thousand patterns. Somehow smaller sets don't go much faster, but larger sets do slow down, every ten-fold increase in number of patterns seems to double the time. So I was wondering if others cared to share the performance of their pattern-matcher. I just want to find out if I'm chasing a unicorn or not by trying to make something faster. Mark ___ computer-go mailing list computer-go@computer-go.org http://www.computer-go.org/mailman/listinfo/computer-go/ ___ computer-go mailing list computer-go@computer-go.org http://www.computer-go.org/mailman/listinfo/computer-go/
Re: [computer-go] MoGo/Taranu challenge in Paris
I have put a report of the weekend's challenge games between MoGo and Catalin Taranu 5p at http://www.computer-go.info/tc/ mainly to make it easier for people to find the game records. Thanks a lot for that. Some points are wrong however, below some informations about the errors. The hardware was provided by Bull and operated by Bull; we have never had an access to the hardware ourselves, in the mogo-team. Only the solution used when the initial hardware was down was operated by me. The hardware used for calibrating comes from Grid5000, but as Grid5000 does not agree for the use of its hardware for Go competitions, it was only for calibrating and experimenting. The hardware in case of trouble, which has been used for two games, is provided by Université Paris-Sud. The code was originally written by Sylvain Gelly and Yizao Wang, with ideas from Remi Munos and minor contributions from me. Rémi Coulom has also helped the initial developments and we had some discussions with him at various steps of the development. Then, the code has been improved by Arpad Rimmel, Jean-Baptiste Hoock, Julien Perez and me. Thomas Herault and Vincent Danjean also helped for profiling various aspects of the parallelization. This is a small list of contributors, as we have opened the cvs access to many people and many people have suggested or coded some points: a complete list of contributors is in http://www.lri.fr/~teytaud/crmogo.html (in french, an english version should come soon). This web page is itself a draft, in progress; I'll include more informations later. For the first game, the game was played by the cluster from Bull during 13 moves, then the cluster was down (hard drive full). I then launched the second machine, a 4-core system. For the second and third game, the game was played by the cluster with no bug; one win for Catalin, one win for Mogo. For side games, played around the challenge against Catalin, there was no bug; mogo won both times. In 19x19, the cluster lost its connection to internet and therefore I launched once again the second solution. The cluster came back later in the game. I am not able to remember at which times (perhaps in the KGS record). In my humble opinion, there was no problem for the clock in 9x9 games; only in 19x19, we were afraid that the KGS time might be different from the physical clock, but the trouble was minor as mogo resigned before any trouble. Thanks, Olivier___ computer-go mailing list computer-go@computer-go.org http://www.computer-go.org/mailman/listinfo/computer-go/
[computer-go] CGOS?
By the way, is CGOS working? I get connection refused when starting the viewer. Mark ___ computer-go mailing list computer-go@computer-go.org http://www.computer-go.org/mailman/listinfo/computer-go/
Re: [computer-go] MoGo/Taranu challenge in Paris
The hardware in case of trouble, which has been used for two games, is provided by Université Paris-Sud. Precisely: LRI, Université Paris-Sud.___ computer-go mailing list computer-go@computer-go.org http://www.computer-go.org/mailman/listinfo/computer-go/
Re: [computer-go] State of the art of pattern matching
Mark, I am doing some experimentation with something similar to patterns, but based on Naive Bayes classifiers. The idea is to use Naive Bayes classifiers to generalize patterns. The classifiers would still be focused on some constrained area of the board, such as the 5x5 matrix or something, but they would be extremely compact compared to patterns and very good at generalizing. I'm convinced they would have to be enhanced with additional attributes concerning the points being considered, but one of their strengths is that you can pile on huge numbers of attributes without killing the speed or memory consumption very significantly. Recently there has been a huge surge of interest in Naive Bayes Classifiers due to their simplicity and speed, and yet amazing accuracy despite this speed and simplicity.Nothing has been found that improves all that much on Naive Bayes for many applications, and some simple improvements to Naive Bayes has put it in the same league as other far more complex and computationally expensive methods such as neural networks and decision trees. I have no idea whether I'm barking up the wrong tree - but I think it's definitely worth taking a look at. I don't think GO programs can be improved much more by simply adding more hand crafted patterns - we need to find ways to generalize knowledge in powerful ways. Naive Bayes is trained by example and it's trivial, basically a single pass statistics gathering. So you must basically show it a gazillion sample patterns with "known" classifications.You could build these from games of strong players for instance. - Don Mark Boon wrote: > Lately I have been putting some effort into pattern-matching. Although > I have made progress, the result was not as good as what I had hoped > for by about an order of magnitude. This makes me wonder what is > currently actually the state of the art of pattern matching in Go. > > Of course it's a bit of a vague question, as there are many possible > forms of pattern-matching. Fixed-size patterns are the easiest since a > hash-code can be used. Nothing is going to beat that in terms of > speed, but its use is limited to some special occasions. Joseki is one > and apparently 3x3 patterns are used in Monte-Carlo programs. > > But I think the most generally useful form is one that can do > pattern-matching for variable shapes. (Or which can have don't-care > points if you like.) I thought I had a solution that would be pretty > close to the theoretical best performance. Formally proving that would > probably be a dissertation in itself, most important for me is in > itself it works and with modest memory requirements. That is the good > part. The bad part is, if I'm right this is the best it can get I'm a > bit disappointed it isn't faster. I'd rather be proven wrong here. > It's written in Java so making it in C would possibly give a two-fold > speedup, but that's all I can think of. > > What I have now takes 10-15 microseconds on a 2Ghz Intel computer to > find all the patterns on a board (on average for 9x9, for 19x19 it's > more like 15-20 usec) and it also gives me the 'new' patterns i.e. > patterns that match now but didn't match the previous move (I believe > that's a useful feature, but it's a detail). The set of patterns is > under a thousand patterns. Somehow smaller sets don't go much faster, > but larger sets do slow down, every ten-fold increase in number of > patterns seems to double the time. > > So I was wondering if others cared to share the performance of their > pattern-matcher. I just want to find out if I'm chasing a unicorn or > not by trying to make something faster. > > Mark > > > ___ > computer-go mailing list > computer-go@computer-go.org > http://www.computer-go.org/mailman/listinfo/computer-go/ > ___ computer-go mailing list computer-go@computer-go.org http://www.computer-go.org/mailman/listinfo/computer-go/
Re: [computer-go] CGOS?
It's working on my end. From time to time I have to restart the server, due to the bug I haven't yet fixed where the server believes a player is still logged in when he isn't. So I just kicked the server.When the current round of game is complete, the server will shutdown and restart. Don't know if this is an issue, but I did it anyway - it does hurt in view of the bug. - Don Mark Boon wrote: > By the way, is CGOS working? I get connection refused when starting > the viewer. > > Mark > > ___ > computer-go mailing list > computer-go@computer-go.org > http://www.computer-go.org/mailman/listinfo/computer-go/ > ___ computer-go mailing list computer-go@computer-go.org http://www.computer-go.org/mailman/listinfo/computer-go/
Re: [computer-go] CGOS?
Strange. I even tried downloading a new file from the web-page. I get the following: "could not execute couldn't open socket: connection refused logout [Process completed]" I used to be able to run it, I'm not aware of changing anything on my side. Did the port change? Or the address? Mark On 26-mrt-08, at 16:20, Don Dailey wrote: It's working on my end. From time to time I have to restart the server, due to the bug I haven't yet fixed where the server believes a player is still logged in when he isn't. So I just kicked the server.When the current round of game is complete, the server will shutdown and restart. Don't know if this is an issue, but I did it anyway - it does hurt in view of the bug. - Don Mark Boon wrote: By the way, is CGOS working? I get connection refused when starting the viewer. Mark ___ computer-go mailing list computer-go@computer-go.org http://www.computer-go.org/mailman/listinfo/computer-go/ ___ computer-go mailing list computer-go@computer-go.org http://www.computer-go.org/mailman/listinfo/computer-go/ ___ computer-go mailing list computer-go@computer-go.org http://www.computer-go.org/mailman/listinfo/computer-go/
Re: [computer-go] CGOS?
No, nothing changed. It just now restarted, so try it again. Please note that the viewer is pretty sluggish - it pops up quickly but then take a good little while to list the games. But it should not give you a connection error unless the server is off-line. - Don Mark Boon wrote: > Strange. I even tried downloading a new file from the web-page. I get > the following: > > "could not execute couldn't open socket: connection refused > logout > [Process completed]" > > I used to be able to run it, I'm not aware of changing anything on my > side. Did the port change? Or the address? > > Mark > > > On 26-mrt-08, at 16:20, Don Dailey wrote: > >> It's working on my end. From time to time I have to restart the >> server, due to the bug I haven't yet fixed where the server believes a >> player is still logged in when he isn't. So I just kicked the >> server.When the current round of game is complete, the server will >> shutdown and restart. Don't know if this is an issue, but I did it >> anyway - it does hurt in view of the bug. >> >> - Don >> >> >> Mark Boon wrote: >>> By the way, is CGOS working? I get connection refused when starting >>> the viewer. >>> >>> Mark >>> >>> ___ >>> computer-go mailing list >>> computer-go@computer-go.org >>> http://www.computer-go.org/mailman/listinfo/computer-go/ >>> >> ___ >> computer-go mailing list >> computer-go@computer-go.org >> http://www.computer-go.org/mailman/listinfo/computer-go/ > > ___ > computer-go mailing list > computer-go@computer-go.org > http://www.computer-go.org/mailman/listinfo/computer-go/ > ___ computer-go mailing list computer-go@computer-go.org http://www.computer-go.org/mailman/listinfo/computer-go/
Re: [computer-go] State of the art of pattern matching
Thanks for the pointer Don, that might be worth looking into at some point. When you say 'amazing accuracy despite this speed and simplicity' I still have to ask: "how fast?". I think 10usec is actually pretty fast. But when talking about using it during MC playouts for example, it's still rather slow. This is due to the pile-up of numbers. A (relatively) big area to look for, and a large number of occasions to do the lookup. The patterns don't necessarily need to be hand-crafted. But throwing a million generated patterns at it also has its price in terms of performance. Mark On 26-mrt-08, at 16:17, Don Dailey wrote: Mark, I am doing some experimentation with something similar to patterns, but based on Naive Bayes classifiers. The idea is to use Naive Bayes classifiers to generalize patterns. The classifiers would still be focused on some constrained area of the board, such as the 5x5 matrix or something, but they would be extremely compact compared to patterns and very good at generalizing. I'm convinced they would have to be enhanced with additional attributes concerning the points being considered, but one of their strengths is that you can pile on huge numbers of attributes without killing the speed or memory consumption very significantly. Recently there has been a huge surge of interest in Naive Bayes Classifiers due to their simplicity and speed, and yet amazing accuracy despite this speed and simplicity.Nothing has been found that improves all that much on Naive Bayes for many applications, and some simple improvements to Naive Bayes has put it in the same league as other far more complex and computationally expensive methods such as neural networks and decision trees. I have no idea whether I'm barking up the wrong tree - but I think it's definitely worth taking a look at. I don't think GO programs can be improved much more by simply adding more hand crafted patterns - we need to find ways to generalize knowledge in powerful ways. Naive Bayes is trained by example and it's trivial, basically a single pass statistics gathering. So you must basically show it a gazillion sample patterns with "known" classifications.You could build these from games of strong players for instance. - Don Mark Boon wrote: Lately I have been putting some effort into pattern-matching. Although I have made progress, the result was not as good as what I had hoped for by about an order of magnitude. This makes me wonder what is currently actually the state of the art of pattern matching in Go. Of course it's a bit of a vague question, as there are many possible forms of pattern-matching. Fixed-size patterns are the easiest since a hash-code can be used. Nothing is going to beat that in terms of speed, but its use is limited to some special occasions. Joseki is one and apparently 3x3 patterns are used in Monte-Carlo programs. But I think the most generally useful form is one that can do pattern-matching for variable shapes. (Or which can have don't-care points if you like.) I thought I had a solution that would be pretty close to the theoretical best performance. Formally proving that would probably be a dissertation in itself, most important for me is in itself it works and with modest memory requirements. That is the good part. The bad part is, if I'm right this is the best it can get I'm a bit disappointed it isn't faster. I'd rather be proven wrong here. It's written in Java so making it in C would possibly give a two-fold speedup, but that's all I can think of. What I have now takes 10-15 microseconds on a 2Ghz Intel computer to find all the patterns on a board (on average for 9x9, for 19x19 it's more like 15-20 usec) and it also gives me the 'new' patterns i.e. patterns that match now but didn't match the previous move (I believe that's a useful feature, but it's a detail). The set of patterns is under a thousand patterns. Somehow smaller sets don't go much faster, but larger sets do slow down, every ten-fold increase in number of patterns seems to double the time. So I was wondering if others cared to share the performance of their pattern-matcher. I just want to find out if I'm chasing a unicorn or not by trying to make something faster. Mark ___ computer-go mailing list computer-go@computer-go.org http://www.computer-go.org/mailman/listinfo/computer-go/ ___ computer-go mailing list computer-go@computer-go.org http://www.computer-go.org/mailman/listinfo/computer-go/ ___ computer-go mailing list computer-go@computer-go.org http://www.computer-go.org/mailman/listinfo/computer-go/
Re: [computer-go] CGOS?
OK, I look at the web-site and it says the server is "cgos.boardspace.net -port 6867". When I telnet to it it's available. The TCL script I have says "cgos.lri.fr port 6919". When I telnet to this one it's not available. The TCL script I can modify, but the viewer is a binary I believe. So what do I do? Mark On 26-mrt-08, at 16:52, Don Dailey wrote: No, nothing changed. It just now restarted, so try it again. Please note that the viewer is pretty sluggish - it pops up quickly but then take a good little while to list the games. But it should not give you a connection error unless the server is off-line. - Don Mark Boon wrote: Strange. I even tried downloading a new file from the web-page. I get the following: "could not execute couldn't open socket: connection refused logout [Process completed]" I used to be able to run it, I'm not aware of changing anything on my side. Did the port change? Or the address? Mark On 26-mrt-08, at 16:20, Don Dailey wrote: It's working on my end. From time to time I have to restart the server, due to the bug I haven't yet fixed where the server believes a player is still logged in when he isn't. So I just kicked the server.When the current round of game is complete, the server will shutdown and restart. Don't know if this is an issue, but I did it anyway - it does hurt in view of the bug. - Don Mark Boon wrote: By the way, is CGOS working? I get connection refused when starting the viewer. Mark ___ computer-go mailing list computer-go@computer-go.org http://www.computer-go.org/mailman/listinfo/computer-go/ ___ computer-go mailing list computer-go@computer-go.org http://www.computer-go.org/mailman/listinfo/computer-go/ ___ computer-go mailing list computer-go@computer-go.org http://www.computer-go.org/mailman/listinfo/computer-go/ ___ computer-go mailing list computer-go@computer-go.org http://www.computer-go.org/mailman/listinfo/computer-go/ ___ computer-go mailing list computer-go@computer-go.org http://www.computer-go.org/mailman/listinfo/computer-go/
Re: [computer-go] State of the art of pattern matching
On Wed, 2008-03-26 at 15:08 -0300, Mark Boon wrote: > Lately I have been putting some effort into pattern-matching. > Although I have made progress, the result was not as good as what I > had hoped for by about an order of magnitude. This makes me wonder > what is currently actually the state of the art of pattern matching > in Go. My go-programming efforts are very much concentrated on patterns. (maybe I have been influenced by the Kojima-papers) My patterns are centered around the point_to_played. Currently a 11*11 square (120 points) area is covered. I use a polar coordinate system. The patterns themselves are basically stored in a n-Kd tree using a bitmask of 4 bits (for EBW+offboard) per stored point. Not all the points are stored, only the ones that are needed to build the tree. Currently, the pattern's payload consists of the number of times it was seen, and the prpposed value for Black or White to move here. I have the pattern database running as a separate process, communicating via UDP packets. (I don't care about performance, the idea is that the main process can do other usefull things while the patternmatcher fetches the patterns, and that -once hardware is cheap- I could add more pattern-servers). I estimate the pattern's values by making them compete (just like Kojima) Currently, it is about 1 GB in size and contains about 8M 'positions'. Values have been obtained by extracting from professional games (twice). To avoid bad moves beeing absent, I am currently training with (N=xxx) games obtained from the NNGS archives (clipped at ~10Kyu). I intend do do another run of the professional games, to resettle good ordering. Currently the patterns last upto about movenumber 100 (harvesting is ceased once there are no more patterns left to compete with), and in most games, upto about move 20-60, circa 50% of the moves are within the four top-ranked patterns. I don't do speedtests. (I am only in it for the data) I guess it does about 2 moves/sec ... Yes, I only refetch the (120) patterns for the locations that have been affected by the previous move (less < 120 for the edges and corners, of course). Yes, this makes the boardcode very heavy (basically, each point's surroundings are stored with the point data, to be used as an argument for the pattern search), but that is neglectable in relation to the network roundtrip + DB lookup / update. Recently, I started experimenting with 12 point(24 bits) patterns in a "swiss flag" shape; which can be kept in memory, since there are only 16M possible cells. Once it works, I may use it in a "pattern enhanced" UCT-experiment. Adriaan van Kessel. ___ computer-go mailing list computer-go@computer-go.org http://www.computer-go.org/mailman/listinfo/computer-go/
Re: [computer-go] State of the art of pattern matching
The speed is based on how many attributes in the item you wish to classify as well as how many classes. The complexity of classifying something is O(kn) where k is number of classes and n the number of attributes. If your "patterns" are more than just the trivial [black, white, empty, edge] type of attributes where other features must be computed, which I think it should, then speed probably won't be an issue because your time will be dominated by feature extraction. I think you need to know, for each point, information about the liberties, if the last move was close, and other things to really get something powerful. It's also very small in memory and training is basically statistic gathering.In one test I "trained" Naive Bayes based on about 200,000 instances, and it took just seconds. Of course if this is done for every empty point on the board for play-outs, it will not be as fast as simple light play-outs, but just a few hundred heavy play-outs dominates many thousand light play-outs in quality, so we are willing to sacrifice a lot if we get quality in return. Also, you can probably find ways to avoid a lot of computation in a polished program, such as result caching, or simple pattern based pre-tests that eliminate some points from consideration. - Don Mark Boon wrote: > Thanks for the pointer Don, that might be worth looking into at some > point. > > When you say 'amazing accuracy despite this speed and simplicity' I > still have to ask: "how fast?". I think 10usec is actually pretty > fast. But when talking about using it during MC playouts for example, > it's still rather slow. This is due to the pile-up of numbers. A > (relatively) big area to look for, and a large number of occasions to > do the lookup. > > The patterns don't necessarily need to be hand-crafted. But throwing a > million generated patterns at it also has its price in terms of > performance. > > Mark > > > On 26-mrt-08, at 16:17, Don Dailey wrote: > >> Mark, >> >> I am doing some experimentation with something similar to patterns, but >> based on Naive Bayes classifiers. The idea is to use Naive Bayes >> classifiers to generalize patterns. The classifiers would still be >> focused on some constrained area of the board, such as the 5x5 matrix or >> something, but they would be extremely compact compared to patterns and >> very good at generalizing. I'm convinced they would have to be enhanced >> with additional attributes concerning the points being considered, but >> one of their strengths is that you can pile on huge numbers of >> attributes without killing the speed or memory consumption very >> significantly. >> >> Recently there has been a huge surge of interest in Naive Bayes >> Classifiers due to their simplicity and speed, and yet amazing accuracy >> despite this speed and simplicity.Nothing has been found that >> improves all that much on Naive Bayes for many applications, and some >> simple improvements to Naive Bayes has put it in the same league as >> other far more complex and computationally expensive methods such as >> neural networks and decision trees. >> >> I have no idea whether I'm barking up the wrong tree - but I think it's >> definitely worth taking a look at. I don't think GO programs can be >> improved much more by simply adding more hand crafted patterns - we need >> to find ways to generalize knowledge in powerful ways. >> >> Naive Bayes is trained by example and it's trivial, basically a single >> pass statistics gathering. So you must basically show it a gazillion >> sample patterns with "known" classifications.You could build these >> from games of strong players for instance. >> >> - Don >> >> >> >> >> Mark Boon wrote: >>> Lately I have been putting some effort into pattern-matching. Although >>> I have made progress, the result was not as good as what I had hoped >>> for by about an order of magnitude. This makes me wonder what is >>> currently actually the state of the art of pattern matching in Go. >>> >>> Of course it's a bit of a vague question, as there are many possible >>> forms of pattern-matching. Fixed-size patterns are the easiest since a >>> hash-code can be used. Nothing is going to beat that in terms of >>> speed, but its use is limited to some special occasions. Joseki is one >>> and apparently 3x3 patterns are used in Monte-Carlo programs. >>> >>> But I think the most generally useful form is one that can do >>> pattern-matching for variable shapes. (Or which can have don't-care >>> points if you like.) I thought I had a solution that would be pretty >>> close to the theoretical best performance. Formally proving that would >>> probably be a dissertation in itself, most important for me is in >>> itself it works and with modest memory requirements. That is the good >>> part. The bad part is, if I'm right this is the best it can get I'm a >>> bit disappointed it isn't faster. I'd rather be proven wrong here. >>> It's writt
Re: [computer-go] CGOS?
Mark Boon wrote: > OK, I look at the web-site and it says the server is > "cgos.boardspace.net -port 6867". When I telnet to it it's available. > > The TCL script I have says "cgos.lri.fr port 6919". When I telnet to > this one it's not available. > > The TCL script I can modify, but the viewer is a binary I believe. So > what do I do? You are looking at the 19x19 server.I don't know why it's down, but it should still work for the 19x19 server. The instructions are on the web page for how to invoke it. Here is what you need: Here is how to observe 9x9 games: / cgosview.exe -server cgos.boardspace.net -port 6867/ - Don > > Mark > > > > On 26-mrt-08, at 16:52, Don Dailey wrote: > >> No, nothing changed. It just now restarted, so try it again. >> >> Please note that the viewer is pretty sluggish - it pops up quickly but >> then take a good little while to list the games. But it should not >> give you a connection error unless the server is off-line. >> >> - Don >> >> >> Mark Boon wrote: >>> Strange. I even tried downloading a new file from the web-page. I get >>> the following: >>> >>> "could not execute couldn't open socket: connection refused >>> logout >>> [Process completed]" >>> >>> I used to be able to run it, I'm not aware of changing anything on my >>> side. Did the port change? Or the address? >>> >>> Mark >>> >>> >>> On 26-mrt-08, at 16:20, Don Dailey wrote: >>> It's working on my end. From time to time I have to restart the server, due to the bug I haven't yet fixed where the server believes a player is still logged in when he isn't. So I just kicked the server.When the current round of game is complete, the server will shutdown and restart. Don't know if this is an issue, but I did it anyway - it does hurt in view of the bug. - Don Mark Boon wrote: > By the way, is CGOS working? I get connection refused when starting > the viewer. > > Mark > > ___ > computer-go mailing list > computer-go@computer-go.org > http://www.computer-go.org/mailman/listinfo/computer-go/ > ___ computer-go mailing list computer-go@computer-go.org http://www.computer-go.org/mailman/listinfo/computer-go/ >>> >>> ___ >>> computer-go mailing list >>> computer-go@computer-go.org >>> http://www.computer-go.org/mailman/listinfo/computer-go/ >>> >> ___ >> computer-go mailing list >> computer-go@computer-go.org >> http://www.computer-go.org/mailman/listinfo/computer-go/ > > ___ > computer-go mailing list > computer-go@computer-go.org > http://www.computer-go.org/mailman/listinfo/computer-go/ > ___ computer-go mailing list computer-go@computer-go.org http://www.computer-go.org/mailman/listinfo/computer-go/
Re: [computer-go] State of the art of pattern matching
My computer-go player is a single pattern system. It linearises patterns and stores them in a very large suffix tree. At each node in the tree counts are kept of the number of times the node has been played or not played. http://code.google.com/p/jgogears/ It's currently at the stage where it plays a game that looks like go in self play after training on only 200 games. Training is currently very slow, play very fast. Java/javacc/eclipse/junit cheers stuart ___ computer-go mailing list computer-go@computer-go.org http://www.computer-go.org/mailman/listinfo/computer-go/
Re: [computer-go] State of the art of pattern matching
Mark Boon wrote: Lately I have been putting some effort into pattern-matching. Although I have made progress, the result was not as good as what I had hoped for by about an order of magnitude. This makes me wonder what is currently actually the state of the art of pattern matching in Go. Of course it's a bit of a vague question, as there are many possible forms of pattern-matching. Fixed-size patterns are the easiest since a hash-code can be used. Nothing is going to beat that in terms of speed, but its use is limited to some special occasions. Joseki is one and apparently 3x3 patterns are used in Monte-Carlo programs. But I think the most generally useful form is one that can do pattern-matching for variable shapes. (Or which can have don't-care points if you like.) I thought I had a solution that would be pretty close to the theoretical best performance. Formally proving that would probably be a dissertation in itself, most important for me is in itself it works and with modest memory requirements. That is the good part. The bad part is, if I'm right this is the best it can get I'm a bit disappointed it isn't faster. I'd rather be proven wrong here. It's written in Java so making it in C would possibly give a two-fold speedup, but that's all I can think of. What I have now takes 10-15 microseconds on a 2Ghz Intel computer to find all the patterns on a board (on average for 9x9, for 19x19 it's more like 15-20 usec) and it also gives me the 'new' patterns i.e. patterns that match now but didn't match the previous move (I believe that's a useful feature, but it's a detail). The set of patterns is under a thousand patterns. Somehow smaller sets don't go much faster, but larger sets do slow down, every ten-fold increase in number of patterns seems to double the time. So I was wondering if others cared to share the performance of their pattern-matcher. I just want to find out if I'm chasing a unicorn or not by trying to make something faster. I tried this with GNU Go and got about 40-80 usec on 9x9 for a database of 500 patterns with in some cases lots of wildcards (black or empty, white or empty, black or white or empty (but not off board)). This was on a 2.2 GHz AMD64. /Gunnar ___ computer-go mailing list computer-go@computer-go.org http://www.computer-go.org/mailman/listinfo/computer-go/
Re: [computer-go] Optimal explore rates for plain UCT
On Thu, Mar 13, 2008 at 06:31:19PM +0100, Petr Baudis wrote: > On Thu, Mar 13, 2008 at 09:19:58AM -0400, Don Dailey wrote: > > If you look at the table, drdGeneric 10k is rated 1228 and 25k is > > rating 1485 which is 257 ELO for doing 2.5 x more play-outs. If > > this holds, I would expect 100,000 play-outs to give well over 1700 > > ELO. Of course there could be a lot of error in each of these > > ratings so it's difficult to predict just from these 2 points. > > I got kind of lost in the thread and lost track about which bots should > I actually compare myself to. ;-) > > So I have created this page: > > http://senseis.xmp.net/?CGOSBasicUCTBots > > and summed up what I could find in the thread about the various bots. > Please clarify if anything there is wrong / unknown, and add your bots > if they aren't there. I wanted to add Fluke too, but I do not know which > of the many incarnations should I choose. :-) > > Curiously, while pachi1 with 10k playouts is 30 ELO weaker than > drdGeneric-10k and myCtest-10k-UCT (it seems like ~1230 is _the_ rating > for 10k UCT), with 50k playouts it is 60 ELO stronger than > myCtest-V-0003 - is that one really just UCT with 50k playouts? Please note that pachi1 had a rather embarassing bug of starting the random playouts with wrong color (so if the last tree node was black, the playout would start with black as well). pachi2 has this bug fixed; the ELO rating is still not settled, but so far it seems that the impact of this has been about 20-30 ELO in the 110k playouts area, which seems surprisingly little to me. (-moggy is playout policy that so far comprises merely of capturing or escaping of random stone in atari, with some ladder reading; I'm happy that I managed to get as high as 1750 with just this addition! I'm not sure how much strength the ladder reading actually adds, it did not seem that much of an improvement (relatively to the time spent debugging it) from playing it; I will test that later.) -- Petr "Pasky" Baudis Whatever you can do, or dream you can, begin it. Boldness has genius, power, and magic in it.-- J. W. von Goethe ___ computer-go mailing list computer-go@computer-go.org http://www.computer-go.org/mailman/listinfo/computer-go/
RE: [computer-go] Ing Challenge
> You are right. Well, I did compete for this prize about 15 times, so I hope so :) David > > Christoph > ___ computer-go mailing list computer-go@computer-go.org http://www.computer-go.org/mailman/listinfo/computer-go/