545-Person Programming War Declares a Winner
An anonymous reader writes: A while back we discussed Code Combat, a multiplayer game that lets players program their way to victory. They recently launched a tournament called Greed, where coders had to write algorithms for competitively collecting coins. 545 programmers participated, submitting over 126,000 lines of code, which resulted in 390 billion statements being executed on a 673-core supercomputer. The winner, going by the name of "Wizard Dude," won 363 matches, tied 14, and lost none! He explains his strategy: "My coin-collecting algorithm uses a novel forces-based mechanism to control movement. Each coin on the map applies an attractive force on collectors (peasants/peons) proportional to its value over distance squared. Allied collectors and the arena edges apply a repulsive force, pushing other collectors away. The sum of these forces produces a vector indicating the direction in which the collector should move this turn. The result is that: 1) collectors naturally move towards clusters of coins that give the greatest overall payoff,
2) collectors spread out evenly to cover territory. Additionally, the value of each coin is scaled depending on its distance from the nearest enemy collector, weighting in favor of coins with an almost even distance. This encourages collectors not to chase lost coins, but to deprive the enemy of contested coins first and leave safer coins for later."
and upload this to the drone control network.
I thought Greed was getting kickbacks from the lobbying groups to buy your support for questionable bills.
The final ranking was performed with a 673-core computer cluster, which simulated 153,439 games in under one hour for just $5.74
This is really interesting and exciting work. In 2010, we showed that nearly this exact algorithm is used by neonates (newborns) to govern their visual attention and eye movements, and it explains much of what we know about newborn visual attention. It's exciting to see that when you essentially parallelize the algorithm with multiple agents that are aware of each other, it becomes an extremely efficient algorithm for resource collection in a completely different field/task. http://www.ncbi.nlm.nih.gov/pu...
How about Core War?
http://en.wikipedia.org/wiki/C...
http://www.koth.org/info/akdew...
http://blog.codinghorror.com/c...
They sure have! We just spun up 20 c3.8xlarge spot instances on Amazon, AWS is pretty magical.
I thought Greed was getting kickbacks from the lobbying groups to buy your support for questionable bills.
No, that's called Politics.
This is a very fun game! I've been looking for stuff like this. Normally I have fun writing stuff like this in games until they ban me for "Hacking" when really the hacking was the only fun part of me. Now the hacking bit IS the game.
Maybe I can ditch my EVE mining bots now ;-)
I can get 8 core systems sub $1k. It depends on the type of hardware really which it doesn't specify; 20+ cores in a single machine has been available since at least the turn of the century they always cost an arm and a leg though because of the complexities of integrating that many CPUs in a single machine. A combination of boxes amounting to the same amount of CPU, RAM etc has always been cheaper but also larger and harder to use.
Custom electronics and digital signage for your business: www.evcircuits.com
You can tell these guys are all lamer coders, they can't document worth squat. In the forum some guy asks for clear docs and they repond in essense with "just run our simulator, it's too complicated to explain." What a bunch of hosers. A competition like this ought to have clearly deliniated parameters. From reading their page I can't tell a darn thing about what the "Greed" environment is, what the problem to be solved is, and the summary of the winning solution on the Slashdot article here presumes you already know exactly what the conditions and goal with which the warring program must run. I see references on the linked contest site to coins that "randomly appear" and not much more. There's no way he could submit his solution to a journal except the "Journal for Irreproducible Results." Lazy bastards. There may be an interesting solution to something here, but there's seems no way to tell exactly what without reverse engineering their simulator.
It really depends on your calculations (yes, I work in academic research). You can get very large, very parallel problems and have enough with 56k modems in between nodes and there are those where 12x Infiniband is not enough. It also depends on the person implementing the system, how well versed they are in the subject matter and cluster programming, the languages they use and whether or not what they write is aware of what is happening where.
The fabric can be relatively cheap actually, 24 port 10Gbps and QDR Infiniband switches can be had sub-5k these days (unless you go Cisco off course) especially in blade systems. All-in-all the hardware for clusters has gotten very, very cheap. Amazon wouldn't be selling it at $5/h if it weren't profitable.
Large research clusters BTW (such as the ones at Fermilab, CERN or your average University) are usually large sets of 2/4/8 core systems, sometimes with a few very large nodes thrown in or these days a set of GPU nodes. 20-core nodes are rare in actual clusters a la Blue Gene/Q
Custom electronics and digital signage for your business: www.evcircuits.com