[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [gnugo-devel] patch preview
From: |
Gunnar Farneback |
Subject: |
Re: [gnugo-devel] patch preview |
Date: |
Tue, 06 Nov 2001 17:38:39 +0100 |
User-agent: |
EMH/1.14.1 SEMI/1.14.3 (Ushinoya) FLIM/1.14.2 (Yagi-Nishiguchi) APEL/10.3 Emacs/20.7 (sparc-sun-solaris2.7) (with unibyte mode) |
I wrote:
> I've put up a preliminary patch at
> http://www.lysator.liu.se/~gunnar/gnugo/patches/gunnar_1_13.2.gz
There's now a finished patch at
http://www.lysator.liu.se/~gunnar/gnugo/patches/gunnar_1_13.3.gz
- new function are_neighbor_dragons()
- verbose value reduced while running owl_reasons
- influence code revised
- function find_stones_saved_by_move() in move_reasons.c removed
- find_more_owl_attack_and_defense_moves() revised
- owl attacks induce strategical defenses of friendly neighbors
- connection values revised
- territorial value of attacks, defenses, owl attacks, and owl
defenses computed through influence function instead of using
effective_size heuristic
- bugfix in computing effects of min and max territory values
- played stone not automatically included in goal array in
owl_does_defend(), owl_confirm_safety(), and owl_connection_defends()
- gtp commands debug_influence, debug_move_influence, and move_influence
removed
- cleanup in mkpat.c
- tuning, influence tuning, owl tuning
- new and revised regression tests
The main change is that territorial value is computed in a new way for
attacks, defenses, owl attacks, and owl defenses. Previously the
effective_size heuristic was used for estimation of the territorial
value of capturing or saving stones and the influence function was
used to estimate the change in territory from blocking off empty
spaces. This had two main problems:
* The effective size heuristic is not very precise.
* It's sometimes not possible to distinguish between empty spaces
included in the effective size of some string or dragon and empty
spaces being blocked off to secure territory.
In the new code, the influence function computes changes in territory
both from blocking off empty spaces and saving/capturing stones.
Furthermore it does this for all sources together. This improves the
valuation of captured/saved stones and eliminates the problem of
mixing up blocked off territory from surrounding space counted to a
worm or dragon.
The territorial valuation certainly isn't perfect now either, with a
tendency to overestimate the value of capturing stones inside
territory, but on the whole matters have improved.
The function find_stones_saved_by_move() was removed because it became
obsolete. A number of gtp commands to print influence were also
removed because they weren't working robustly before and the changes
described above made it a lot harder to fix.
I've added this patch to CVS.
/Gunnar