gnugo-devel
[Top][All Lists]
Advanced

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

Re: [gnugo-devel] Opponent follow-up value and group connection


From: Evan Berggren Daniel
Subject: Re: [gnugo-devel] Opponent follow-up value and group connection
Date: Mon, 12 May 2003 15:53:56 -0400 (EDT)

It seems to me that this patch is going in the wrong direction.  The
problem you're trying to solve is that GNU Go fails to attack or defend
large groups, even when it knows that the group is critical.  However, I
think that in many cases GNU Go's valuation of the attack or defense move
is perfectly correct.  It is that the tenuki plays are overvalued, often
by very large amounts.  Forcing GNU Go to defend a large dragon simply
because it is large might help in the short run, but in the long run we
want to fix the real problem, which is the tenuki valuation.

To give some more concrete reasons: would you want GNU Go to automatically
defend a 16 point group?  a 12 point group?  an 8 point group?  What if it
has time to defend either a 14 point group or a 16 point group, but the 14
point group can be defended in a way that weakens an opponent's group?
Maybe the fact that it weakens the opponents group is only worth a few
points, but then the 14 point group is more worth defending.  The decision
is not clear cut, and the only reasonable solution in the long run is to
have GNU Go evaluate each move, and pick the largest one.  Clearly, for
this to work, GNU Go must evaluate all the moves correctly.

Evan Daniel

On Mon, 12 May 2003, SP LEE wrote:

> The following patch is to make GNUGO to treat bigger dragons more seriously.
> I'm not experienced in making such patches, so please correct me if I'm
> wrong.
>
> --- gnugo/engine/value_moves.c 2003-05-12 12:08:30.000000000 -0700
> +++ value_moves.c 2003-05-12 12:09:34.000000000 -0700
> @@ -1767,7 +1767,16 @@
>        if (move_reasons[r].type == OWL_ATTACK_MOVE
>     || move_reasons[r].type == OWL_DEFEND_MOVE
>     || move_reasons[r].type == SEMEAI_MOVE)
> - this_value = 0.0;
> +   {
> +    /* For bigger dragon an extra weight is added */
> +   if (this_value>16)
> +   {
> +    tot_value+=this_value;
> +    TRACE("  %1m: -%f - owl attack/defense of big dragon %1m\n",
> +     pos, this_value, aa);
> +   }
> +   this_value = 0.0;
> +   }
>        else if (move_reasons[r].type == OWL_ATTACK_MOVE_GOOD_KO
>          || move_reasons[r].type == OWL_DEFEND_MOVE_GOOD_KO) {
>   this_value *= 0.3;
>
>
>
> ----- Original Message -----
> From: "SP LEE" <address@hidden>
> To: <address@hidden>
> Sent: Sunday, May 11, 2003 9:31 AM
> Subject: Re: [gnugo-devel] Opponent follow-up value and group connection
>
>
> > The solution to this problem might be simple, but it certainly has good or
> > bad effect in general. If I have a group worth more than 15 points, I
> would
> > not trade it for something else easily. So we could double the "change in
> > territory" value if it's greater than 15.
> >
> > I don't know if this is a good solution. Please comment.
> >
> >
> > >From: Arend Bayer <address@hidden>
> > >Reply-To: GNU Go development <address@hidden>
> > >To: GNU Go development <address@hidden>
> > >Subject: Re: [gnugo-devel] Opponent follow-up value and group connection
> > >Date: Sun, 11 May 2003 15:05:57 +0200 (CEST)
> > >
> > >On Sat, 10 May 2003, SP LEE wrote:
> > >
> > > > Then at move 166, GNUGO played M6, letting the lower right corner
> group
> > >T7
> > > > dead by white O6, losing about 30 points. It is interesting that the
> owl
> > > > analysis of T7 is completely correct. It said that T7 is dead if white
> > >plays
> > > > O6 and the defend of T7 is possible at O6.
> > > >
> > > > Below is the top moves GNUGO considered:
> > > >
> > > > Top moves:
> > > > 1. M6  36.76
> > > > 2. O6  36.11
> > >
> > > >
> > > >   M6: owl attack/defend for L6
> > > >   M6:   2.83 (followup) - threatens to capture M5
> > > >   M6: 11.17 - change in territory
> > > >   M6: 3.87 - strategic effect on L8
> > > >   M6: 8.17 - strategic effect on N7
> > > >   M6:   3.94 - L6 strategic value already counted - A.
> > > >   M6: 8.04 - strategic effect on K5
> > > >   M6:   2.83 - total followup value, added 0.00 as territorial
> followup
> > > >   M6: 1.42 - added due to followup (2.83) and reverse followup values
> > >(0.00)
> > > >   M6: 3.35 - shape (shape values +2.00(1) -0.00(0), shape factor
> 1.102)
> > > >   M6: 0.74 - connects strings (connect value 7, shape factor 0.149)
> > > > Move generation values M6 to 36.75
> > > >
> > > >   O6: owl attack/defend for T7
> > > >   O6: 29.81 - change in territory
> > > >   O6: 3.13 - strategic effect on N7
> > > >   O6: 2.48 - strategic bonus for T7
> > > >   O6:   4.33 - total followup value, added 4.33 as territorial
> followup
> > > >   O6: 2.16 - added due to followup (4.33) and reverse followup values
> > >(0.00)
> > > >   O6: -1.79 - shape (shape values +0.00(0) -1.00(1), shape factor
> 0.952)
> > > >   O6: 0.31 - connects strings (connect value 3, shape factor 0.061)
> > > > Move generation values O6 to 36.10
> > >
> > > > I would think if a group is dead and worth 30 points, GNUGO must
> > >consider it
> > > > seriously.
> > >
> > >Yes, the problem here is that the strategic valuations of M6 got a bit
> > >confused. One problem is the dragon at K5. It can either connect to
> > >H6 or to K9, and so M6 should get hardly any "strategic effect" bonus for
> > >that.
> > >
> > >Also the shape values don't exactly help here.
> > >
> > >Arend
> > >
> > >
> > >
> > >
> > >_______________________________________________
> > >gnugo-devel mailing list
> > >address@hidden
> > >http://mail.gnu.org/mailman/listinfo/gnugo-devel
> >
> > _________________________________________________________________
> > MSN 8 with e-mail virus protection service: 2 months FREE*
> > http://join.msn.com/?page=features/virus
> >
> >
> >
> > _______________________________________________
> > gnugo-devel mailing list
> > address@hidden
> > http://mail.gnu.org/mailman/listinfo/gnugo-devel
> >
>
>
> _______________________________________________
> gnugo-devel mailing list
> address@hidden
> http://mail.gnu.org/mailman/listinfo/gnugo-devel
>




reply via email to

[Prev in Thread] Current Thread [Next in Thread]