Rules-Unknown Artificial Intelligence Competition
OOglyDOOde writes: "This link points to a competition being hosted by a company that makes research on artificial intelligence. The task? Build a program that can play a number of games whose rules are totally unknown -- and earn the best score while competing against various opponents. Your program is told the possible choices available, when it should make a move, what did the opponent do; and what was your score for the last turn. There are no entry fees yet there is a cash prize. Submissions can be done in various languages, or in Linux or Windows binaries." This is certainly one of the odder ones I've ever seen, but has interesting prizes (trip to Israel) and rules (fairly broad entry categories).
I took a statistics course at BYU. My professor, Dr. Tolley, with the help of his "31337" kids, built an AI system that played Quake. Each possible move was designated as a random variable, and each random variable was weighted according to its success in keeping the player alive and killing the other player. The code would randomly try different actions with the game interface (walk forward, fire weapon, duck, etc.), and then register what worked and what didn't. At first, the computer-controlled player would just stand there. After getting blown apart a few times, it would start jumping to the left, and then ducking, etc. Eventually, it "learned" that it had its greatest chance for survival if it immediately ducked and went behind a box. It then learned to wait until someone walked around a corner, and then it would fire its weapon in the direction of the corner. Finally, it learned that coordinates of the game contained the "respawning" positions, and upon fragging the opponent, it would run to the next respawning point and wait until the player showed up there, blowing him away upon entry into the game.
This code could be similarly adapted to any game, inasmuch as the code can register a table with all the possible moves provided by the interface. It doesn't even have to know what those moves do; it only needs to know if, by doing certain moves according the "state" (or the attributes) of the game, it gains points (or stays alive or whatever) or loses points. The moves are then given a distribution weighting factor. Then, the algorithm just needs to approximate the game state with the registered table entries, determine which moves have the highest "survival rate" based on the current game attributes, and then perform those moves.
Depending on the game, it may take a long time before the random variable distribution table gets populated to the point where the algorithm can make "intelligent" decisions, but it works nonetheless.
An unjust law is no law at all. - St. Augustine
After reading the guidelines to the contest, I figured I'd offer the following models/design specs for those interested in participating:
healyourchurchwebsite.com - WWJB?
The first question that popped into my head was "How do we know what the opponents move means?"
I was under the misconception that at each turn in the game, the judge will inform the player of all possible moves (as in chess, checkers, or the like) but looking at the specification, it seems that the moves are detailed at the outset of the game, and then are available to each player at each stage in the game.
now the odd thing to me is the measure of 'state' in the game. Is the score that's returned after each move the current cumulative score, the score for that move alone, or what? Also, what is the goal of the game? It would be short-sighted to assume it's to amass the highest score. In effect, the score is just another input variable, along with the opponents move, which may or may not be useful for judging what is a good move or a bad move.
For example, if you were trying to make an algorithm to solve the A8 puzzle (the 'sliding tile puzzle' with 15 tiles and 16 spots), and the computer judged your score by totalling up manhattan distances to the goal state, that may or may not be a fair scale of how many moves away you are from winning in an ideal case.
The system is still underspecified. Without knowing what 'score' means, and whether it is an estimate or a deterministic function, then the project is pretty much a game of luck, and coding is not an effort of skill.
Kevin Fox
It's called Calvinball, and it's the sport of kings.
---- El diablo esta en mis pantalones! Mire, mire!
Of course, there may be some connection between the prize and the game ("win a conflict where you've got no clue of the rules", that pretty much sums up the problems of both parties in the Middle East).
There is absolutely no reason to panic.
Google, raging, or lycos?
What, me worry?
The entries had to be given in the form of a subroutine that played the next move (given the current score and the history). The judges were linking two of them together and run the resulting binary.
Of course, there have been an entry that looked in the stack and modified the scores.
But the greatest was one (IMHO) that fork()ed and returned one possible response in each of its child. At next turn, the one that did not make the point (ie: had top score), exit()ed.
Mind-blowing. Found the link
That program was the "Fork Bot"
Cheers,
--fred
I second that. This is a reference to a Koan found in 'Escher, Goedel, Bach, an Eternal Golden Braid' by innimitable Douglas Hoffsteder/
Otherwise known as the seminal work of AI philosophy.
This is truly on topic, moreso that the un-enlightened could ever know. ask yourelf: Are my mod points the mod points of the un-enlightened? if no, please mod up the parent's parent as +1, Insightful.
thankyou.
All depends on the much debated definition of what is 'Intelligence'.
Certainly, pattern recognition is a sign (symptom?) of intelligence.
So, what are you actually saying? What do you mean when you say 'intelligence' ?
I mean how many real world CS people studying AI reads Slashdot?
Doing that and dumb enough to waste his time with this. Count me one.
--exa--
If this is a 2+ player competition and they're the right sorts of games (like the rock-paper-scissors game that it mentioned), whoever wins it might have to figure out a way to consistently beat the tit-for-tat algorithm.
Tit-for-tat is one of the dead simplest game playing algorithms, and collectively it's one of the most successful.
It's based on the rule of "always do what the other player did last move". Under most circumstances it's impossible for it to actually win a game because the other player is always one step ahead. But its strength is in winning tournaments.
While it always loses, it never loses by much. This is different from other algorithms which usually have about as many weaknesses as they have strengths and will usually flunk out in at least some trials.
If someone can beat it consistently in a tournament situation, they really will have accomplished something in AI. Of course, this whole thing depends on exactly how the rules are structured, the scoring system and the information available to the program.
1. If I win, do I get a trip to the US? (see email address)
2. I wonder whether the winner could visit me.
:-)
Seems to me that since it is a round-robin for all contestants (the site was /.ed, but I saw another post claiming that this was the case), all you have to do is team up with a lot of friends and have them enter fake programs into the contest (i.e cheating).
These programs will start by identifying themselves with an "ID-string", consisting of, say, the first 10 replies (this can obviously be done generically even with unkown rules, just pick the moves randomly with the same seed). When my program sees this ID it replies a similar code. When the fake programs sees this, they start cooperating with my program (by playing as badly as they can muster). If the fake programs does not get this reply, they start playing as well as they can and will (since there will probably be large element of luck in each game) steal a considerable amount of points from the pool. The "real" program never risks anything since it never sends its own ID before being statistically sure that the opponent indeed is a fake.
This method was inspired by a similar trick in the famous Prisoner's dilemma game.
Opinions stated are mine and do not reflect those of the Illuminati
They are playing the STOCK MARKET. They buy stocks according to the various submissions, gradually weed out the bad performers, and end up making a pile, with which they can pay the prize and still have a tidy profit.
Wish I'd thought of it!
Infuriate left and right