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

Re: [computer-go] future KGS Computer Go Tournaments - two sections?



The question of how to deal with derivative work has always been
difficult. In the past there have been a few cases where there was
(potentially) unfair competition because different versions of the
same program entered a competition. So far it has never lead to real
disputes, but this is going to change when there's one or more open
source projects that can compete with the top-programs.

In an ideal world, everyone plays fair and uses common sense to decide
when a program is derivative work. No problems there. In a world where
some are tempted to foul play things get ugly very quickly. I think it
will turn out to be very hard to guarantee that nobody gets an unfair
advantage. The problem is how to determine if something is a
derivative work. And when it is, after what degree of modification
will it be allowed to enter as a separate program?

In the spirit of open-source it should actually be trivial to
determine if something is a derivative work. If you need to put in a
notice that it uses GNU Go, then it's a derivative work of GNU Go. If
SlugGo is the strongest GNU Go derivative, then it should be able to
compete in tournaments, but in that case it should be the only GNU Go
derivative to enter. In cases where tournament conditions are
unsuitable fro SlugGo, another GNU Go derivative can enter. It's up to
the GNU Go community to decide which version should enter which
competition.

David rightly questions how this should work for closed-source
projects. Are Ken Chen's and Martin Mueller's programs derivative of
an (old) program by Anders? So far they've always been allowed to
enter in tournaments separately. So why wouldn't SlugGo be allowed to
enter separately after considerable effort has been put into it? These
are grey areas where the answer is not so easy. In case of ill will,
it will always be difficult to prevent people to try to enter a
competition with the several instances of the same program, maybe with
minor differences.

Personally I think the branching issue should be solved by allowing
derivative programs to be considered as a separate effort if it has
been branched off of the original a minimum amount of time ago. The
discussion can then focus on how long this should be. A year? Several
years?

If it's the case where SlugGo will continue to use the latest GNU Go,
then I think it should continue to be thought of as a GNU Go
derivative. I believe at some point David indicated he was willing to
make his project available under GNU Go, in which case it's even more
clear.

>What I am trying to discern is what purpose the two divisions are
>serving. If it is the separation of strong from weak then I do not
>understand why SlugGo would be put with the weak programs. If it is the
>separation of mature from new programs then I agree that at this time
>SlugGo is quite immature, and it shows in the lack of features like
>"real" time controls. In that case it seems that the criterion should
>be a specific list that programs must implement.

I think the purpose of the division is to distinguish between a fair
competition which is designed to show what program is currently the
strongest program under certain preset tournament conditions and
between a competition where the purpose is academic to test your
program against a variety of other programs, possibly a variety of
derivations of other programs under a variety of tournament
conditions. If you wonder why such a division is necessary, consider
then that some are making a living out of Go programming and that
their reputation is of commercial interest to them. Obviously it's not
beneficial to a program's reputation if it loses in a competition. So
those programs will only enter if the conditions are fair and equal to
everyone and when they have something to gain by entering, either
money-wise or reputation-wise.
_______________________________________________
computer-go mailing list
computer-go@xxxxxxxxxxxxxxxxx
http://www.computer-go.org/mailman/listinfo/computer-go/