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

RE: computer-go: prevent cheating



I've been following this thread about having a competition.  There's a couple
points noone's bringing up yet.

1) If someone's go program is capable of standing it's own against a
professional dan player, I think that's a suitably big step where we all
would like to know how that person did it.  To this end, the requirements
shouldn't be framed around using standard platforms or what not.  Before you
can receive any substantial award, you should have to make public your source
code (under suitable copyrighting of course) and produce a white paper
describing how it works.  Afterall aren't we all here to share knowledge and
make go fun for everyone and all that?  I can guarantee you that if you write a
program that beats a professional dan player and release the source code for
it, if it's a hoax, some one will figure it out real quick.  If you don't want
to have to eventually share your source code, don't enter the competition.

2) If the big award is $1 million, and you're capable of raising a trust fund
on the order of $2 million, why is it so important to save on airplane tickets
for the chief competitors once a year?  You can play placement competitions
throughout the year on IGS or whatever which don't receive awards, the best
"x" players plus a few admin people then get free transport to an annual
convention which showcases the programs.  If you have, say, 4 players plus, say,
4 volunteer/low-pay admin., that'd run you probably less than $20,000 a year
(incl. convention room) if the competition is only 1 day and you look for deals
on rooms and all.  That's only 1% of your $2 million trust fund.  You could
probably even splurge to pay for a pro dan to show up and play the champion
computer player without problems.  Just a plain money market account earning 3%
a year will give you enough to do that.

At this point, the individuals get to use platforms of their choice
which are linked on an internal network to a go-server with no external
access.  Obviously we would want the machines suitably checked so we're certain
there isn't any radio communication or some other such stuff.  (And we'd also
want to make sure we didn't have a 286 playing against a power pc, for
example.)  If it's confirmed that only the box is making the moves, it doesn't
matter how it decides to make them.  Why would we care that both programs use
the same random seed or whatever?  As long as the box is completely isolated
from everything except the go server, you can be fairly certain that there's
some kind of program running on it that knows how to play go.  It's at that
point that you weed out the fraud.  And again, the winner has to supply source
code.  There are plenty of people out here who would put it to the test. You
could even offer a small reward for proving someone's program is fraudulent. 
Kind of like spawning off bounty hunters.

The only question then is how to raise the $2 million and who to entrust it to?

Anyways, any thoughts on those points?

-Tom

---
Thomas P. Johnson
Strategic Forecasting                       ph:  (607) 266-7636
Box 1034 Langmuir Lab                       fax: (607) 257-4279
95 Brown Rd.                  tjohnson@xxxxxxxxxxxxxxxxx
Ithaca, NY 14850            http://www.strategicforecasting.com