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."
I thought Greed was "The Multimillion Dollar Challenge" where teams of five tried to answer trivia questions but each round one player was randomly paid to try to take another player out of the game, or be thrown out trying....
and upload this to the drone control network.
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...
core wars
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.
Please, I ran a simulation just like this on a 1992 super computer, and I haven't paid a cent.
I guess the agreement did say payment was due when processing finishes next decade, though.
under 1 hour... so let's assume half an hour... that is still like $250 a day for a cluster like that could be built for under $10,000... break even is within 2 months of use including electricity, so really those prices are still pretty high, it's just that most people only need that kind of power for short bursts of time.
the great Google App Engine vs. Amazon Elastic Beanstalk wars are coming.
Build me a cluster of 673-cores (please let it be cores equivalent of the current XEON architecture) for $10000 and I will buy it. For this price you will get only a hand full of processors, not considering: mainboard, RAM, hdd / ssd, cases, racks, network equipment, cooling equipment, manual labor, electrical bill.
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 ;-)
673 cores is a supercomputer? You can get that much in a single blade enclosure these days depending on your vendor. Two blade enclosures from almost any vendor would handle that quite easily. 673 cores was only kind of super 10 years ago. Maybe they just meant "networked computers".
Ditto, writing bots made Puzzle Pirates fun for me again ('til I got banned), and I used to do the same for MUDs. Kind of a shame though, I don't actually have any interest in "beating" human players, I'd much rather have an even playing field against other bots. Looks like this competition is the best place to be for it.
under 1 hour... so let's assume half an hour... that is still like $250 a day for a cluster like that could be built for under $10,000... break even is within 2 months of use including electricity, so really those prices are still pretty high, it's just that most people only need that kind of power for short bursts of time.
the great Google App Engine vs. Amazon Elastic Beanstalk wars are coming.
$10,000 barely gets you ONE modern well-equipped 20 core server system (I am thinking in particular of the Dell R820/R920 platforms) so no, while you could probably heap together 100 or so ARM cores for $10/core and get something to run on it, a supercomputer it is not.
Spot especially, as it's relatively cheap - quite cheap as supercomputing cluster time goes!
Socialism: a lie told by totalitarians and believed by fools.
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
Cluster: $5.74 / 673 = $0.008528975/core/hr
Build-your-own:
Assume you bought a $300 I7-3770 (8-cores @ 77W) and spent an extra $700 on parts for a total of $1000.
Assume the machine's lifetime is 4 years, and assume your time is free (it's not), and assume no parts fail.
Assume 100W for the machine's operation + 300W for cooling = 400W.
Hardware: $1000 / 26297.4 hours / 8 cores = $0.004753322/core/hr
Electricity: 400W * $0.10/kWh / 8 cores = $0.005/core/hr
Total: $0.009753322/core/hr (14.4% more than the cluster)
Conclusion: It's definitely cheaper to buy time on the cluster than to build your own -- especially if you don't use the machine at 100% for its entire lifetime. The build-your-own version price skyrockets if you only use it for a few hours and then walk away. E.g. Using it only 1/2 the time costs $0.014506644/core/hr (70% more than the cluster), and using it only 10% of the time costs $0.05253322/core/hr (that's more than 6x the cost of the cluster).
The i7-3770 is only 4 cores.
Inquiring minds want to know. Although, one of the richest men in the US, who's name escapes me, was a contrarian investor, so I guess I kind of have my answer right there.
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.
Until the 'winner' was able to land on a winning algorythm... How to win a competition without actually competing. How do we actually know that this didn't happen, given that it would only cost $6 per round, and would give the 'winner' ample time to adjust his algorythm accordingly.
But 300W for cooling is weird, in fact outside the US most people don't have home A/C and the heat output of one PC (or console, or TV) is simply ignored.
I get 4x16 core AMD Opteron 6366HE on a Dell PowerEdge m915 for $5,578.70:
http://configure.us.dell.com/d...
So that's a bit less than $10,000 for 100 cores on a standard issue Dell machine. It's not completely crazy to expect you could increase that to 600 cores without too much extra cash laid down.
Ask me about repetitive DNA
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.
The less you spend per core (by having them less concentrated) the more you will spend on interconnecting them in a way befitting a supercomputer (i.e. massive parallelism). A pile of machines totaling 600 cores on a gigabit switch is of very little use compared to a few mega-core machines on a better, smaller network. And you don't want to know how much all the fabric would cost to properly integrate all of those 8 core systems.
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
Anyone else find it odd that he used a distance squared force for a 2D problem? The surface of a circle depends linearly on the radius.
Linearly being the key word... take it one step at a time (before looking at what geometry inverse square law could represent). The rule is derived entirely from distance... Distance reduces the number of spacial dimensions into one, it doesn't matter how many spacial dimensions you have so long as you can find a scalar distance between two points.
For a less abstract explanation think of a 2D simulation as a geometrical subset of a 3D simulation (that subset doesn't have to be axis aligned), a 2D simulation could exist within a plane at any orientation in a 3D simulation...
So a 2D simulation will behave in the same way for distance based rules as a 3D simulation restricted to a plane would. what you do with that scalar distance is up to you (inverse square law just happens to describe lots of nice things like gravity and magnetism etc), there are also other rules that describe other forces based upon distance such as inter molecular forces (known as potentials in molecular dynamics). However all of these rules are compatible with both 2D and 3D simulation.
https://gist.github.com/schmat...
Hi! everybody, give you recommend a good shopping place. http://www.jerseysoncn.com/ Cheap jerseys/NBA/NHL/NFL/MLB/Hats/Belts/Jewelry/ High quality and best service. Believe you will love it. You must not miss it.