[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: computer-go: Insight of a human



Vincent Diepeveen <diep@xxxxxxxxxxxxxxxxx> wrote:

> There is however one small problem: how do you program in 0s and 1s
> the oversight/strategich insight which even an average human has?

> You can put in facts like: "if this pattern then be happy", but the
> oversight is real hard. Usual the oversight for programs is the nowadays
> luck of the summation of patterns, where a human is doing all this way 
> smarter.

I think there are several things humans do. Maybe some day computers can do
them as well:
  - Describe the situation in simplified terms (live group here,
    strong-looking one there, this is dead, this looks weak)
  - Automatic responses. "Even a moron connects when peeped",
    with just a bit of logic behind. Once these have been sorted out,
    they cam be ignored or abstracted away.
  - Flexible way to move between different levels of abstraction.
    (this looks weak, if black plays here or there, then the cut here 
    starts to look bad. watch out, low on liberties). Beginners are
    notoriously weak on this, keep figthing about a few small stones
    while loosing huge territories.
  - Isolating subgames. Computers do a little of it in the endgame,
    but could do much more, also much earlier in the game.
  - Persistent state. Humans remember much of their reasoning from one
    move to the next. Mostly status info (I know this group was alive
    3 moves ago, and nothing has been played in that corner since).
    Also plans and intentions (if I play this joseki variation
    and get out in sente, I can then extend in front of this wall).
  - Focus. Humans know what the game is "all about" at each stage, and
    spend time thinking about relevant questions. Strong players are 
    notoriously shifting around more, but I believe they too have a clear
    idea of the focus, and just manage to inject little sidetracks
    in between, and to change the focus easier than beginners.

> So not the search part but the evaluation part?

I am not even sure if this is a necessary or good distinction. Many of
todays programs do not do global reading at all. Some play with just the
evaluation function, trying out a few moves (or all of them) and evaluating
the position. Others evaluate the position first, and when proposing moves,
give an estimate of what this move would do to the evaluation.


Comments? Discussion? Questions?

- Heikki Levanto
  5k go player and 
  professional dan-level programmer
  (with too little time to pursue all interesting avenues)

-- 
Heikki Levanto     LSD Levanto Software Development   heikki@xxxxxxxxxxxxxxxxx
               "In Murphy we Turst"