[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [gnugo-devel] Offer to help
From: |
Evan Berggren Daniel |
Subject: |
Re: [gnugo-devel] Offer to help |
Date: |
Sun, 4 May 2003 19:10:12 -0400 (EDT) |
On Sun, 4 May 2003, Louis DeFiore wrote:
> I am a C/C++ programmer with a lot of free time on my hands (unemployed
> right now - so what else is new ;) ) and volunteering to help with
> GnuGo. First time I've worked on a open source project; not sure where
> to go from here. Am willing to debug as a starter; at any rate, let me
> know how I can fit in.
One of the first things to do is to just start to get to know the engine.
Frequently, a good way to do this is to pick a testcase and try to solve
it. If you haven't noticed yet, we have a test suite of problems,
viewable online at
http://evand.rh.ncsu.edu/~evand/gnugo/regress.plx
A good place to start is with some tuning, as this will give you an idea
of how things work and it is usually fairly straightforward. For example,
the testcase auto_handtalk:6 is a fairly straightforward problem. The
test asks gnugo to find a defense for the w group at P19. Currently, it
finds no defense. So, you need to investigate why. My prefered method is
through the GTP interface. From the regression directory, run
../interface/gnugo --mode gtp --quiet
Then, run the gtp command
loadsgf games/handtalk/handtalk2.sgf 78
to load the problem.
Running owl_defend P19, gnugo should return
= 0
which means it can find no defense. If you then run
owl_does_defend N18 P19, gnugo will return
= 1
which means it believes the move at N18 defends the P19 dragon. The
problem is that no pattern suggests the move there. So, you would then
open up patterns/owl_defendpats.db, and create a patter that matches
there, without being too general, and hopefully solve the testcase. You
can then run the entire suite with make all_batches from within the
regression directory, to see what else your patch changed. Then, send in
the patch and results, and someone will take a look at it. There is more
documentation both in the info pages and also in the source files
(owl_defendpats.db in this case). If you need more help, feel free to
ask.
If you're looking for something involving more C code, there are some
entries on the todo list, or I'm sure someone can come up with other
suggestions. However, pattern tuning is a fairly straightforward way to
learn your way around the engine.
Hope this helps,
Evan Dainel