Friday, July 25, 2014

Fruits of procrastination

Winter tends to be a bit slow for me, in terms of work and productivity at least. It gets that little bit harder to concentrate, or stay motivated on tasks that are... the less fun parts of my job as a research scientist.

To that end, I thought I'd keep this blog alive by sharing some of my afternoon's procrastination, which I thought was kind of cool and a real reflection of how even now in 2014 we're still a fair way away from 'science fiction' in a lot of our endeavours. Artificial intelligence is a big one of these - we've achieved a lot since electronic computers hit the scene not-so-long ago - but our imaginations at least for now far outstrip what we've been able to do. Exactly because it excites people's imaginations, progress is heavily trumpeted - and make no mistake, some cool things have been done, especially in AI-friendly environments such as strategy games (chess is probably the most obvious example here).

Unfortunately, things get much more difficult for AIs when we go from simple games where the options are finite and often manageable to more realistic real-world tasks where there are numerous things that need to be coordinated at once - something that our human brains are evolved to deal with but computers have no such base to work from. The programmer can of course give the computer insights as to how humans would deal with things, and sheer processing speed can help make up some of the difference - any first-person computer gamer can attest to AIs being potentially very skilful (though often easily fooled by unusual strategies).

My afternoon's procrastination has involved looking at RoboCup - a series of competitions based around the game of soccer (or football, depending where you're from). The AIs actually look reasonably clever in the simulated 2D version. Keep in mind that to keep some degree of 'realism' each AI player has been given some simulated 'noise' to their sensors so they don't have perfect information, much like players in real life.


Once you get to 3D though, things start looking seriously clunky. Each virtual robot has 22 different joints to control - and it shows. They're very good at doing set combinations of movements (like a set shot at goal, given enough time) but it's not exactly what you'd call graceful...


When you convert this to real life robots, things get even worse. Really the only thing these robots can do consistently well is get up after they've fallen over - and after watching this video for any length of time you'll understand why this is a vital necessity:


The stated goal of RoboCup is that "by the middle of the 21st century, a team of fully autonomous humanoid robot soccer players shall win a soccer game, complying with the official rules of FIFA, against the winner of the most recent World Cup". At the moment that looks kind of optimistic, but when you consider how far computing came from the earliest personal computers in the 80s to the present, then extrapolate to 30 years in the future, their goal doesn't seem quite so unrealistic.