Javascript BOT

Hey All,

With all the excitement around computer go and bots have I have been researching and was curious if it had been considered to run javascript bots as opponents. Ideally it could run entirely clienside and eliminate the need for server resources.

Something like this

Since it is entirely clientside maybe disallow it from playing ranked matches so you don’t get people screwing around with it to inflate their rank.

Anyway just curious if anyone had investigated it/if anyone more familiar with how the website is setup saw major obstacles.

To clarify I am a web developer and am working on a machine learning masters so if you guys are amenable I can likely throw some development nights/weekends this way to actually get this done.

I may need to wait for a class to finish around the end of april before I dig in deeply though.

As an aside we offer a library that user’s can use to develop bots to play on the site:

1 Like

Just had a game with that bot. Its opening seems strong to me (and I’m about 3k here), but just like alphago, it doesn’t understand tsumegos, so when things come to a close fight, the bot makes brutal mistakes.

Interesting. This bot is sooo much stronger than me in the opening and middle game, but then it lets completely abusive invasions live and dies on a quarter of the board. I totally want to know what this bot knows :slight_smile:

Ok, it isn’t that strong because it repeats exactly the same moves…

ya the other big blind spot of the bot that I saw in playing it is ladders.

It will play out huge ladders all the way accross the board and figure it out 4-5 moves from the edge. That said it plays decent especially for running entirely in the browser. And some of those failures are due to just being a neural net with no forward calculation so some small improvements might help with it’s more egregious errors.

Btw, AlphaGo doesn’t use neural nets to solve ladders, but instead the neural net uses a ladder solver as input. AG doesn’t go beyond that, but eventually it might to: the process of capturing stones in a ladder or in a more complicated way is called “lambda search” and is well described by Thomas Thompsen. In those terms a ladder is a lambda-1 sequence because after each attacker’s move the group being chased has just one liberty. Then a simple net would be a lambda-2 sequence - after each attacker’s move the target has just 2 libs and has no way to break thru and get the 3rd lib. If you solve tsumegos often, you will realise that what you are doing is exactly the lamda search described by Thomas. It’s hard to do it efficiently, though.

1 Like

This topic was automatically closed 91 days after the last reply. New replies are no longer allowed.