Gridwars Parallel Programming Challenge
Peter_Pork writes "New Scientist has an article about GridWars, a challenging new game that runs on large clusters of computers. Programs fight each other for supremacy in terms of the number of processors they control, and the main point of the contest is to develop better parallel algorithms. It seems a nice idea: have fun while you improve the state-of-the-art in cluster computing. The result of the last contest was somewhat of an upset, since a craftsmanly Russian program defeated a sophisticated genetic algorithm from NASA."
The only winning move is not to play. How about a nice game of chess?
I couldn't resist!
An article where SOVIET RUSSIA *and* beowulf jokes are on topic. What's next? A Natalie Portman interview?
I've often been told my programs require more cpu, allocate more memory, and take more time than any other coder on the team. If I can scale up my special skillz to more than one processor at a time, I might have a chance here.
Scientific American has an article about Hellmouth, a challenging new game created by Junis that runs on large clusters of computers. Sponsorship from SCO looks to be confirmed and celebrities such as Natalie Portman promoting grits are in tow.
Sadly, the death of Stephen King during the game's promotion at E3 and LinuxWorld (where no one showed up) put a damper on things, while in Soviet Russia the people controlled YOU.
Anyone remember Core Wars?
It should not read like that it should be.
since a craftsmanly Russian program defeated a sophisticated program created by a genetic algorithm from NASA.See (from NS):
"The final battle saw Wenig's program - created using genetic algorithms - take on a program designed by a computing student from Moscow State University."
A subtle, but important difference. Now if the prgrams were actually evolving in the Gridwars game that would be interesting, as it would be similar(ish) to my project.
*Dreams of a day they put an edit queue on slashdot*
Rogue: oh no! a 'C' is chasing my @! majick missle! majick missle! arghhll...
This is not the first time something craftmanslike can beat something sofisticated. Even thought the following examples are strictly hardware, the general idea is the same.
Take, for instace the T34 vs the Tiger. The Tiger was one of the most sofisticated - if not the most sofisticated - tanks in production at the time, but were drowned by hordes of the more craftmanlike and easily manufactured T34.The battle between a simple, craftmanlike approach and sofistication was once again seen in the early sixties, in the race to get a man into space. The russians fielded the Vostok, a design born more out of solid craftmanship than anything else. It's very simplicity was a strenght, allowing it to undertake missions up to five days long, while the american attemt at a longdurationflight in the highly sofisicated Mercury lasted just under a day and a half, leaving Gordon Cooper in a virtualy dead capsule (having to eyeball his attitude thru the windown and manualy fire the retros). Granted, one reason the US had to go for sofisication is that their rockets simply couldn't lift as much as russian rockets... but whereas derivatives of the Vostok still flies (as unmanned recoverable satelites), the line that breed the Mercury is dead.
Sofistication is well and good, but many times a less sofisticated but better crafted designs / programs can outperform it. Sofistication for it's own sake is usually not worth the tradeoffs.
Everything in the world is controlled by a small, evil group to which, unfortunately, no one you know belongs.
You could program them to fight each other for possession of individuals neurons in your brain, then post the joke that's able to hold onto the most territory in your head.
Sound good?
--
RumorsDaily
NASA decided that the astronauts needed a writing utensil to take notes during space missions. NASA spend a large amount of money to develop the zero G ballpoint pen.
This is an urban legend.
i don't necessarily view it as craft vs sophistication. the sophisticated thing was the genetic algorithm, not the resulting program. that GA was competing in the contest with another GA -- the one that produced the Russian programmer. that second GA could be considered vastly more sophisticated than the first. it produced a general purpose intelligence that could defeat the first GA at what it was specifically designed to do. :D
go nature!
The enemies of Democracy are
Quicky check at the NASA program and I find a switch statement of 2049 (2^11) parts. It is broken up in switch blocks of 64.This is sad coding on so many different levels. I am not sure how to express my feelings about it.
First let's look at a straight forward way of how to do this....the lookup-table.It is fast (speed is an issue).
Takes up less space (programming space can be an issue).
Easier to read (debugging tricky programs is hard enough without the obfuscation).
And should have been part of your basic programming education.
And this is state of the art coming out of NASA?
I'm impressed our shuttles go UP in the first place (ja, ja...low blow...just kidding ofcourse).
Really, if I see this kind of coding I cringe. Then talk to the person. Then make sure they learn from their mistakes and don't do it again, or they can find themselves a job outside of my team.
Multi-threaded applications are less common that one might think. Even those GUI applications that would benefit alot from improved responsivness due to multi-treading avoids it, due to greatly increased complexity.
When the Gang of Four came out with their Design Pattern book, it was a great hit, and very usefull indeed. But design pattern for multi-threaded programming is not that well-know. But some are published, as the link below shows :
http://www.cs.wustl.edu/~schmidt/patterns-ace.ht ml