Commonsense Go

For discussing go computing, software announcements, etc.
User avatar
djhbrown
Lives in gote
Posts: 392
Joined: Tue Sep 15, 2015 5:00 pm
Rank: NR
GD Posts: 0
Has thanked: 23 times
Been thanked: 43 times

Re: Commonsense Go

Post by djhbrown »

sorin wrote:I am not sure how you deal with #1 and #3 above.
in order to figure out how to answer your questions in a way that will make sense, please first tell me a bit about what you already know:
1. have you studied AI at university?
2. have you written a computer program?
3. have you read my paper?
you can download my paper for free from: http://papers.ssrn.com/sol3/papers.cfm? ... id=2818149
it is 120 pages long, but the pages are small and the writing is big, so it only takes about half an hour to read it or to watch my movie of it:
https://www.youtube.com/watch?v=Nns7004 ... a3Hl1X_v-S

Your answers will help me figure out what i can say that will be meaningful. For example, if you answer yes to all of them, i can start off with:
re your #3, see pp 34-41 of my paper
re your #1, see for example pp 26-27, 102-103 and 112-113
sorin
Lives in gote
Posts: 389
Joined: Wed Apr 21, 2010 9:14 pm
Has thanked: 418 times
Been thanked: 198 times

Re: Commonsense Go

Post by sorin »

djhbrown wrote:
sorin wrote:I am not sure how you deal with #1 and #3 above.
in order to figure out how to answer your questions in a way that will make sense, please first tell me a bit about what you already know:
1. have you studied AI at university?
2. have you written a computer program?
3. have you read my paper?
Yes to all.
About evaluating who is ahead in a given position: you add up territory and influence for each. The way you calculate influence is via a static analysis of stone positions ("shadow"). I doubt that this can be enough to decide who is ahead - since that decision may take a lot of reading to decide the fate of the groups.

A specific question from page 22-23: you define "strong" and you write "White C is strong" (about the position on page 22). What part of the definition makes it so? It does not have 2 "eyespaces", and the single "eyespace" is not large enough for 2 eyes, or maybe I misunderstand something about the paper's definition of strong.
User avatar
djhbrown
Lives in gote
Posts: 392
Joined: Tue Sep 15, 2015 5:00 pm
Rank: NR
GD Posts: 0
Has thanked: 23 times
Been thanked: 43 times

Re: Commonsense Go

Post by djhbrown »

sorin wrote:static analysis ... I doubt that this can be enough to decide who is ahead
i agree; the key word here is "decide". CG's static evaluation function produces a preliminary perception, not a final decision. Its perceptions just provide a kicking-off point for dynamic analysis.

Unlike minimax and Alphago, CG's evaluation function is not used to decide between candidates, but rather to choose an overall direction for dynamic analysis. That ultimately produces a set of sets of candidates that are each believed to achieve the highest-level goal; CG chooses the most popular move among them.
sorin wrote: you write "White C is strong" (about the position on page 22). What part of the definition makes it so?
the answer to your question is the previous sentence on the facing page (p23): "A group whose combined colour map and shadow map embraces two eyespaces, or a single eyespace large enough to be able to form two eyes, is strong."

White C's combined map covers 18 points (including the two stones). My paper does not define a number for "large enough", but i would like it to be small enough to include white C, because in her commentary on the position, Jenny Shin says the two white stones are not easily attacked. I think most people would agree with her. Of course, if CG labels a group as "strong", that does not mean it thinks it is unconditionally alive; merely that it's not a prime target for attack.
User avatar
pnprog
Lives with ko
Posts: 286
Joined: Thu Oct 20, 2016 7:21 am
Rank: OGS 7 kyu
GD Posts: 0
Has thanked: 94 times
Been thanked: 153 times

Re: Commonsense Go

Post by pnprog »

Hi!

I am having a look at your paper. One question, on page 25 (6. Paths):
The paths between white D and white A, and between white D and white E, are both blocked by the colour map of the live group black C.
I guess you mean?
The paths between white D and white A, and between white D and white E, are both blocked by the colour map of the live group black D.
I am the author of GoReviewPartner, a small software aimed at assisting reviewing a game of Go. Give it a try!
User avatar
djhbrown
Lives in gote
Posts: 392
Joined: Tue Sep 15, 2015 5:00 pm
Rank: NR
GD Posts: 0
Has thanked: 23 times
Been thanked: 43 times

Re: Commonsense Go

Post by djhbrown »

pnprog wrote:on page 25 ..I guess you mean The paths between white D and white A, and between white D and white E, are both blocked by the colour map of the live group black D.
yes! thank you for spotting the typo. :salute:

also, p27 should read: "The path between white D and white B is partially blocked by black D". and the picture on page 24 should be the same as the one on page 26, to show the path boundaries.

i think i must have redrawn the pictures after drafting the text and changed the order of labelling the groups, thinking that clockwise labelling looked better than top-down left-right, but forgot to change the text correspondingly.

i have a vague feeling that there's another typo somewhere else in the paper but can't remember what it is now!

i've always been a bit absent-minded when it comes to attention to fine detail...this mental handicap may be something that most people suffer from to some extent, which might be one reason why computers are better than most people at certain tasks which require precise memory - such as transcribing texts, mental arithmetic, chess and Go ?

it could partly explain why different people's memories of who said what and when are often controversial - as in the game of "Chinese Whispers" - and why narratives that have been hand-copied numerous times by numerous scribes (such as the Gospels) drift away from their originals, so cannot be taken as gospel. As Dara O'Briain says: "It's only the Bible.. it's not gospel!!" :study:
User avatar
djhbrown
Lives in gote
Posts: 392
Joined: Tue Sep 15, 2015 5:00 pm
Rank: NR
GD Posts: 0
Has thanked: 23 times
Been thanked: 43 times

Re: Commonsense Go

Post by djhbrown »

in a thread about Leela, http://lifein19x19.com/viewtopic.php?f=18&t=13251 zwim says:
I was wondering how such powerful engines not only cannot see [an obvious game-winning move] immediately but do not even consider a move as important as an atari onto a big group ?! ... to not even assess a potential atari seems quite a big flaw in the design.
the reason dcnn engines sometimes appear to not consider good moves that are obvious to people is that whereas dcnn's so-called intuition (sic) "sees" convolutions of pattern fragments, they don't "see" commonsense Go concepts such as groups, eyes, etc. it was this fundamental flaw that led Alphago to miss the "obvious" defence to Lee's magic wedge which didn't work.

that's why i advocate combining commonsense and dcnn in a jury (or committee discussion rounds as suggested by UpWarrior)
http://lifein19x19.com/viewtopic.php?f=18&t=14049
i shrink, therefore i swarm
Mike Novack
Lives in sente
Posts: 1045
Joined: Mon Aug 09, 2010 9:36 am
GD Posts: 0
Been thanked: 182 times

Re: Commonsense Go

Post by Mike Novack »

djhbrown wrote: the reason dcnn engines sometimes appear to not consider good moves that are obvious to people is that whereas dcnn's so-called intuition (sic) "sees" convolutions of pattern fragments, they don't "see" commonsense Go concepts such as groups, eyes, etc. it was this fundamental flaw that led Alphago to miss the "obvious" defence to Lee's magic wedge which didn't work.
But THAT works both ways, with the engines sometimes seeing good moves that the humans do not because based on scattered fragments rather than some central theme.

However this is not my main objection to your proposal. Saying that it would be better were there a rule based/pattern based AI capable of finding the best move is NOT the same thing as devising this AI. Please, I am NOT meaning to imply that it cannot be done, just pointing out that it has not been done. Prior to the introduction of MCTS based programs (and now neural nets) this WAS the approach being tried, with programs getting up to about 5 kyu. Perhaps a few stones stronger now.
User avatar
djhbrown
Lives in gote
Posts: 392
Joined: Tue Sep 15, 2015 5:00 pm
Rank: NR
GD Posts: 0
Has thanked: 23 times
Been thanked: 43 times

Re: Commonsense Go

Post by djhbrown »

Mike Novack wrote:this WAS the approach being tried
No, it wasn't. Early programs used bottom-up processing, whereas CG uses top-down. To understand the difference between top-down and bottom-up, you could start by watching this video:
https://www.youtube.com/watch?v=WLDp82vwVkk
sorin
Lives in gote
Posts: 389
Joined: Wed Apr 21, 2010 9:14 pm
Has thanked: 418 times
Been thanked: 198 times

Re: Commonsense Go

Post by sorin »

I noticed today this new paper from Deepmind that combines deep-learning with sub-goals oriented learning:
"
FeUdal Networks learn complex behaviour by breaking up tasks into sub-goals & learning to achieve them http://goo.gl/gVsWgn
"
Mike Novack
Lives in sente
Posts: 1045
Joined: Mon Aug 09, 2010 9:36 am
GD Posts: 0
Been thanked: 182 times

Re: Commonsense Go

Post by Mike Novack »

djhbrown wrote:
Mike Novack wrote:this WAS the approach being tried
No, it wasn't. Early programs used bottom-up processing, whereas CG uses top-down. To understand the difference between top-down and bottom-up, you could start by watching this video:
https://www.youtube.com/watch?v=WLDp82vwVkk
You are GROSSLY misunderstanding the LEVEL at which I am discussing when you dismiss what I said about AI attempts back then. Bottom up vs top down not to the point. Yes I clearly hear you that it MIGHT be possible to create an AI solution that would be stronger than the ones of a decade or so ago. Demonstrate the existence of the algorithm, be it top down, bottom up, or sideways.


Understand? I am NOT arguing that such an AI would not be a good thing, possibly a stronger go player than what we have now. I am saying AS YET DOES NOT EXIST.
User avatar
djhbrown
Lives in gote
Posts: 392
Joined: Tue Sep 15, 2015 5:00 pm
Rank: NR
GD Posts: 0
Has thanked: 23 times
Been thanked: 43 times

Re: Commonsense Go

Post by djhbrown »

"I algorithm, therefore I exist" - Rene Descartes al-Kwarizmi

Steps Towards an Artificial Intelligence Gobot:

step 1: stone pattern reactions (eg Zobrist, GnuGo)
step 2: stone pattern reactions + Monte-Carlo search (eg mogo, Crazy Stone, Zen)
step 3: DCNN pattern reactions + Monte-Carlo (eg Alphago, Leela, CrazyStoneX, ZenX, etc)
step 4: deductive reasoning (eg SwimCG) + Monte-Carlo Jury/Committee
topbottom.png
topbottom.png (106.67 KiB) Viewed 11769 times
Here's a narrative version of Swim's reasoning in the second example in my paper
https://papers.ssrn.com/sol3/papers.cfm ... id=2818149

"It looks like white will be about 10 points ahead if all his stones live, so I need to kill something. White group wA (of 4 stones) is his largest weak group, so let's attack it. To attack a group, i must first separate it from its friends, then surround it, and finally move in for the kill. wA's nearest friend is wE, so let's cut the path from wA to wE. My black groups bA and bE are both near the path; let's look at sliding into the path from bA. I can slide in at J13, which is not too far from bA. How would that look?

J13 is well-connected to bA, and now wE is surrounded and doesn't have room for eyes, so it's dead. So far, so good..

What can white do? He could try to save wA by connecting wA to wF; to do so, he could make a leaning attack on bA or bB from the wA-wF path. Let's consider bA first; he could attach to K11 at K12, or shoulder-hit on K11 at L12. Now let's look at bB: he could attach to M12 at L12, or peep at L13. L12 satisfies both goals, so that looks like his best choice.

Now it's my turn again... i've gained a couple of points by capturing wE, but that still leaves me 8 points back, so i would need to keep on attacking. wA is now connected to wF, but it's still weak. Its nearby friends are wB and wG; the path wAF-wB is {L10,M10} and the path wAF-wG is {L10, K10} + J10 or K9. L10 is in both paths, so let's choose that."
move79.png
move79.png (359.78 KiB) Viewed 11760 times
See What i Mean? Swim anticipates the sequence (J13, L12); (L10, ..) which it thinks achieves the goal of separating wAF from its friends.

It would next need to see how it can then reduce wAF's eyespace and stop it getting 2 eyes, but my paper doesn't go into that as Kim Myungwan has already shown us that L10 does so, defeating Lee's much talked-about wedge at L11.

Swim's context-sensitive reasoning methods may be a suitable platform for experimentation with what DARPA https://www.youtube.com/watch?v=-O01G3tSYpU calls "Third Wave AI" adaptation and synthesis processes that modify and create methods based on specific examples when a later play (or a Monte-Carlo prophecy) demonstrates its move didn't achieve its intended purpose.
Javaness2
Gosei
Posts: 1545
Joined: Tue Jul 19, 2011 10:48 am
GD Posts: 0
Has thanked: 111 times
Been thanked: 322 times
Contact:

Re: Commonsense Go

Post by Javaness2 »

Are you still banned from posting to the computer-go mailing list?
User avatar
djhbrown
Lives in gote
Posts: 392
Joined: Tue Sep 15, 2015 5:00 pm
Rank: NR
GD Posts: 0
Has thanked: 23 times
Been thanked: 43 times

Re: Commonsense Go

Post by djhbrown »

Javaness2 wrote:Are you still banned?
The school bully blue weasel troll tries to stir up trouble again. The first time it was happenstance, the second time coincidence. The third time it is enemy action.
User avatar
djhbrown
Lives in gote
Posts: 392
Joined: Tue Sep 15, 2015 5:00 pm
Rank: NR
GD Posts: 0
Has thanked: 23 times
Been thanked: 43 times

Re: Commonsense Go

Post by djhbrown »

pnprog wrote:Hi!.. on page 25.. I guess you mean "The paths between white D and white A, and between white D and white E, are both blocked by the colour map of the live group black D."
yes again :tmbup: Also, whilst making a new episode (wip) of MiG, featuring the UEC JueYi-Zen game, i just came across the other typo i had wondered about in my previous acknowledgement of your observation: this typo is more subtle, but more significant: on page 21, corrections are as shown in the picture. Actually, maybe it's not so subtle, since quite obviously one can't have eyes in a shadow! :oops: ... only possible future eyes, which is why i use the term eyespace (= space for future eyes) when talking about how Swim distinguishes weak groups from strong ones.
p21.png
p21.png (416.54 KiB) Viewed 11553 times
Attachments
p21.png
p21.png (427.61 KiB) Viewed 11482 times
User avatar
djhbrown
Lives in gote
Posts: 392
Joined: Tue Sep 15, 2015 5:00 pm
Rank: NR
GD Posts: 0
Has thanked: 23 times
Been thanked: 43 times

Re: Commonsense Go

Post by djhbrown »

Sneak Preview of upcoming Episode 32 of Mental Imagery in Go
https://www.youtube.com/playlist?list=P ... a3Hl1X_v-S
swagp23.png
swagp23.png (312.92 KiB) Viewed 11474 times
Post Reply