What is the difference between all the bots?

There are many bots to choose from. For the same rank range there may be several - for 25k there are five bots. Some bot names include the engine name, but others are more puzzling. How are they different, and how to choose one?

I’d suggest showing fewer bots or adding a description to them.

1 Like

The short answer is:

technical differences between which engine each bot uses, how much training each bot has received, or how many moves ahead each given bot is allowed to calculate will affect their playstyle

Now, does this mean that each bot will then play with a consistent and predictable playstyle? No, not really because the actions of each bot network are still probabilistic, but they will have certain tendencies, or make certain types of “mistakes” in a dependable way

For example, a lot of the 25 kyu bots cannot tell if a given group is alive or dead at a very coarse level, and so they will continue playing moves adding to a group that is already dead in a way that may not make sense to a human player

Strangely enough, that one issue can affect higher level bots up into the SDK and even Dan range, in that they are usually able to read out very coarse-level life/death, but may get stuck on more complex capturing race problems, thinking that a particular dragon is potentially alive when a human player (or the OGS score estimator) can read out and see that the dragon can be prevented from making two eyes. But then again, with higher level bots, you may not ever run into this skill-gap unless you can force a Dan-level player into a situation where they’re losing a capturing race with a large dragon - because that takes quite a bit of skill just to create such a situation.

As to your other question - how to choose the right bot? IMHO - the only way is to play them all and decide for yourself, because the differences to a human player will be qualitative. Some bots may be easy to beat / good for leveling up, but will feel repetitive and boring after a few games. Other bots will have enough randomness / tenuki at odd times and that will make for more qualitatively interesting games to a human opponent.

At the end of the day, it’s one of those “infinite variety in infinite combination” kind of things, and one just needs to go out there, experience the playstyle of each bot for themselves, and make a subjective assessment that some bots are more fun to play against than others.

My 2 cents, your mileage may vary, void where prohibited

6 Likes

Maybe ask an AI?

1 Like

The 25k bots are weaker than 25k, between 25k-40k. The interface doesn’t show ranks below 25k.

However, the bots are still sorted by rank: the ones at the top in the list are weakest, they increase in strength as you scroll down.

The Oroton bots, which are offline since today until 3pm UTC tomorrow for maintenance, have a description of their playstyle on the profile page: Oroton

The other ones are, I believe, neural nets with no or low play-outs.

5 Likes

Thank you for the answers. Take a perspective of a complete beginner who wants to play the easiest bot - which one of the 25k is best?

I appreciate that you put a description on the bot profile page, @JohnnieDarko. However, it’s difficult even to discover that a bot has a player profile, and it’s not just an OGS feature. Under the “Pick your computer opponent” modal the bot names do not lead to the profile. You’d have to search them by name.

It’d be great to put a short description for bot. For now, I can’t even tell if bot registration API supports it - the OpenAPI docs do not list the schema for /api/v1/ui/bot/saveBotInfo

Weakest bots are just useless. They play as they don’t even understand the game purpose.

Playing against a stupid bot won’t help.
Even mid kyu range bot are full of flaws.

My advice for very beginners is to play against an AI with decent level on an app that allows infinite undo.
That’s how I learned the basics of strategy: seeing the outcome of my moves, going back and trying another move, many many times.

I used an app for Android called just “Go” by “Ai factory” on play store. I believe there must be others.

3 Likes

I can’t really speak for all bots, but I have play-tested my own bots a lot, mostly by subjecting friends to them and seeing whether they actually have fun.

For a complete beginner, I’d recommend Oroton Koala on 9x9.

Koala does what some beginners naturally do: peacefully build walls and defend when provoked. People seem to like it because it doesn’t immediately overwhelm them.

I noticed total beginners are often put off by two things: being attacked constantly, and being confused by tenuki.

Koala mostly avoids both. Among friends with only a passing interest in Go, this was the bot they enjoyed most and actually wanted to play again.

I think that is the main goal of an entry-level bot. First make someone interested in Go with as few barriers as possible. The rest can come once someone is hooked.

Indeed it doesn’t, but that would be useful. Along with an overview of the settings that each bot accepts.

4 Likes

Another interesting way to think about playing against various bots is

What are you actually learning from interacting with that bot? If you keep playing the same bot over and over, what sorts of things will you begin to expect – and will that help or hinder you when you encounter human opponents?

In this sense, for the beginner hoping to learn the 19x19 game, the 40 – 25 kyu bots are indeed of very low utility. Because they make so many terrible mistakes on so many levels, even beating such bots can teach all kinds of bad habits players will need to un-learn later.

The flips side of that coin is – for the 18-25 kyu beginner – playing 19x19 against SDK level bots is just confusing. Against a stronger opponent, it’s difficult for DDKs to figure out WHY they lost a given game, because there are so many aspects of gameplay they haven’t learned yet.

There’s one bot I’ve played enough over the years that I’ve begun to personify it – to treat it as a particular “type” of player that has certain dependable habits – and that is GnuGo

GnuGo is old skool – from way back in 1989 – long before AI. And yet, with very minimal programming (the total file size of the .exe is 660 Kilobytes!) it can play anywhere from 17 kyu to 7 kyu.

That is a BROAD skill range, and yet it retains a bit of the same “personality” as you slide the difficulty slider from 10 to 1 inside the app (assuming you’ve downloaded it onto your home PC, etc).

If you’d like to play ranked games against GnuGo there are a couple of bot accts at various strengths:

~16 kyu

https://online-go.com/player/58441/

~7kyu

https://online-go.com/player/942460/

I started bashing my head against this bot on my laptop way back around 2003 or so. Once I found OGS and started the climb from 23 kyu to the ~8kyu I am now, I kept playing GnuGo and trying different strategies as I leveled up.

In my 19x19 FOR BEGINNERS series articles, I analyze a LOT of games I’ve played against GnuGo, because I can sort of predict its responses and play a certain “type” of game – and the resulting games make for a clear and easy-to-understand “story” because there is a nice order to the Stages of the Game, etc.

Anyway, based on those experiences – I would say that GnuGo actually makes a pretty good learning tool for beginner who wants to get from DDK to SDK.

STRENGTHS

Regardless of the setting on the in-app difficulty slider, GnuGo is consistently good at the following elements

- Correctly reading whole-board position values for any Stage of the Game

- Playing an Opening which maximizes moyo potential

- In Midgame, correctly driving direction of play to maximize that moyo

- Keeping local stones connected

- Making good shape

- Reading out capturing races / life or death

- Cutting and killing your weak groups

- Ko fights

Unlike 40-25kyu bots, GnuGo never makes obvious mistakes, and it ends up teaching good habits in things that are difficult to describe to beginners – like the proper time to play a gote move and settle one’s stones, etc.

Beginner players who start each game recklessly attacking their opponent are surprised when GnuGo sacrifices stone after stone, and still ends up winning by over 50 points because White got the huge center moyo, and Black fought tooth and nail for tiny captured areas. GnuGo is great at exploiting shape mistakes (cutting and capturing) and direction of play mistakes (making big moyos) so effectively, that it forces the beginner player to become a GENERALIST rather than a specialist.

Beginners realize that their skills in solving Tsumego will do them no good if they can’t play a Balanced Opening and end up consistently being 30 points down by move 80 because their opponent built another moyo, and now they have no choice but to do a risky invasion.

The games are also easy to review afterwards – because GnuGo plays in a consistent way – if you are LOSING consistently, then a good review will help you identify your weaknesses, and help you think of ways of playing differently and adapting your game – i.e. if you know your opponent tends to do X, how can you disrupt that, or do it yourself and cancel out that advantage?

WEAKNESSES

Eventually, as the beginner slowly levels up into a more disciplined player, one begins to find the weaknesses in GnuGo’s play-style. GnuGo is consistently

- Sacrificing weak groups early in the Opening in trade for bigger moyo potential elsewhere

- Playing tenuki moves at the wrong time and leaving lethal cutting points

- Ignoring Urgent gote moves when Big sente moves are available

- Making errors when juggling multiple weak groups, specifically about which of them to keep alive

So yeah, assuming the beginning player is also regularly playing games against human opponents – so that they can keep a big grain of salt between their teeth and remember that learning from ANY bot will only help on see a tiny narrow slice of the possible state-space of the Go game – I do find that it has been a very helpful tool to myself, to have a consistent opponent who plays in a certain way, and forces me to have really good habits in terms of Go fundamentals – at least until I can level up to 3-5 kyu and just consistently kill all GnuGo’s groups, but I’m not there yet

Anyway – my 2 cents.

4 Likes

It makes more sense to measure in lines of source code, not result of compilation.


I would estimate it as 10 kyu on 19x19
It does mistakes like monkey jump in the beginning of middle game
it doesn’t understand tsumego, I easily capture one group after another

generally neural net bots have much less weaknesses

GnuGo plays reasonably “clean”, but is a bit hard for a beginner.

I don’t have the skills to qualify me to say whether that app is good, but I do :green_heart: it. It was the first Go app I ever used, and I still use it currently. Here’s my “2024” game under a different name…

My only real complaint about it is when backtracking moves I have to tap-tap-tap-tap-tappity-tap

(I was playing on the beginner level due to a self-pity bout at the time)

1 Like

Nice!
You made the animations, don’t you?
In the app I’ve never seen anything like that. :grinning_face_with_smiling_eyes:

Yeah, not trying to false advertise!

1 Like