05-01-2006 11:03 PM
05-02-2006 12:56 AM
05-02-2006 01:17 AM
05-02-2006 01:30 AM - edited 05-02-2006 01:30 AM
altenbach a écrit: ...Is you entry trying to loose or trying to win here?
Message Edité par chilly charly le 05-02-2006 08:35 AM
05-02-2006 01:02 PM
Neat challenge! However, looking at some people's results vs. the random player makes me wonder if having each opponent pair play only 2 matches is really enough. If either player uses a non-deterministic algorithm, I'd think you'd need to run many matches to more accurately determine whether one's a better loser than the other.
I've got an algorithm in mind that's conceptually pretty simple, but which is liable to give an equal rating to several possible "next plays". In such cases, I'd just pick randomly from the otherwise-equal possibilities. If there's a subtle flaw or subtle advantage in this approach when playing against a deterministic algorithm, it's highly unlikely to show up in just 2 matches...
I also wonder about the scoring. It sure seems that most decent competitors will almost always play to a draw. Let's just suppose there ends up being 20 entries that always draw against each other, and never "lose" to anyone by making their own 4-in-a-row. Their "win" total will then come from the weaker competition, and the contest is mostly determined by matches with the weaker players rather than matches with stronger players. Sorta like having the NBA championship determined by who had the best record against the Knicks.
I'd kinda like to see more than one champion category. Easy for me to say since I don't have to perform the matchups or evaluations...
1. Simple scoring system (similar or same as original), tiebreaker based on some kind of efficiency metric that considers code size, memory used, execution speed, whatever else.
2. Raw strength - each player matches up >100x with each other player. Result should be more statistically significant. Tiebreaker -- ?
3. Generalized algorithm -- based on results facing off against other generalized players for a variety of NxN board sizes. (Still based on ending game at first 4-in-a-row).
Finally, since the coding challenge is categorized under "Code Sharing", shouldn't we also have an open-source stage of competition? Or maybe we can just do it voluntarily in the forum? I'd like to think of the official contest as the closed-source stage. Immediately after that, it'd be cool for participants with good / unique approaches to describe their algorithms and post code. Then the goal is to produce an open source player that beats the original contest winner.
-Kevin P.
05-02-2006 01:33 PM
05-02-2006 02:09 PM
05-02-2006 02:22 PM
05-02-2006 03:09 PM
05-02-2006 05:30 PM