Friday, September 16, 2005

Robotics and gaming - a new kind of "convergence"

At first glance, it seems there couldn't be more difference between the robotics and gaming worlds. Most robotics groups work with custom hardware, heavily based on slow microprocessors, while game developers work with the fastest consumer PCs. Games create an artificial reality with no connection to the world except a mouse or joystick, while Robots that Jump have large amounts of sensors. Game developers experiment with "classic" artificial intelligence for their virtual characters, while robotics increasingly has abandoned AI for behavior-based computing. Games are huge consumer products while robots have yet to be fully accepted commercially. The game industry is showing signs of maturity (nostalgia for the 8-bit world) while the robotics industry has barely gotten off the ground.

In spite of this, the gaming world has something to offere robotics developers. I say the benefit comes from the gaming world because at present robotics has little to offer games beyond a "reality check" for the impossible capabilities of the killer robots which haunt their virtual landscapes. But robotics developers looking for a way to advance their art should consider the following things about games:

1. Games are fast - even running on a multitasking PC, games manage to display a real-time, 3D world in full color.

2. Games are fast because they can exploit the specialized parallel processing being built into the GPUs (Graphics Processing Units) of today's high-performance video cards. These cards don't only draw - they can do translations, rotations, resizing of extremely complex models hundreds or thousands of times faster than is possible in software.

3. Many of the hardware-based computations used in games are readily adapted for robots. If your robot attempts to build a map of its environment, you could use the rapid 3D "world building" capabilities of game-related SDKs like Microsoft's Direct3D to accomplish it in rapid time. One could build a model of their robot plus its environment, transform its location in a virtual world as the robot moves, and use standard game "collision detection" methods to predict when you get too close to an object. This would be ideal for a robot using a large number of sensors to define its environment.

4. The gaming industry has a tradition of releasing support for "video mods" - software hooks that allow the gaming community to start with the generic "gaming engine" (a treasure trove of software for moving in 3D space) and modify it using external code in C++ or other languages. In fact, many games are based off the same engine, e.g. Unreal or Source. Thriving communities exist of people who've completely transformed a game engine like Source into a different game from the "Half Life" series it was developed for.

5. Finally, the "first person shooter" aspect of many games is suited to a robotic design placing the robot as the central agent moving in its environment. Substitute your robot's wishes for a joystick, and off you go...

With this in mind, I've been exploring game development, particularly Direct3D, as a vehicle for robotics. The Direct3D SDK is extremely complex, but there are lots of worked examples out there - the advantage of "hijacking" the technology from a highly successful industry. If you've got a high-performance graphics card (e.g. geforce) the speed of vector calculations, point movement/translation, and terrain modeling (using the gaming mesh paradigm) is breathtaking.

Even using the object-oriented version of visual basic, I've found that I can feed in data from multiple microprocessors (each in turn with several sensors) and display the resulting sensory grid in real time on a standard PC. Distance calculations are also incredibly fast, applying collision detection and ray-tracing techniques used in games. It also seems likely that the Direct3D anti-aliasing methods (used to process edge information for smoothness) and "pixel shaders" could be used in reverse - to process computer vision.

In fact, it isn't that hard in DirectX to grab video at a high frame rate and do quick sensory fusion with data from 3D "point" sensors like infra-red and ultrasound. In effect, one uses the point sensor data to make a 3D mesh surrounding the vehicle. The video data is then rapidly "wrapped" over this 3D wireframe. This converts traditional edge detection from 2D to 3D space - one looks for "bulges" and then checks the "bulges" for colored "blobs" and shapes. Since most robots don't need to know about distant objects, it provides a spectacular way to do sensory fusion on the cheap.

Now, the question is whether one can use an actual gaming engine for the "mind" of the robot. Depending on the engine's design, it is easy or hard to drop in new "terrains". Ideally, one would like to load an existing 3D topographic map of the physical world and "drape" what the robot's sensors see over it. However, in the interests of speeds, large terrain models are typically loaded at game startup into the video card memory. Objects detected by sensors might have to be modeled using non-terrain methods - as weapons lying around, for instance.

A related unanswered question is whether the game engine AIs are useful. In many engines, the game AIs hang around even when the user is not looking at them and continue to execute behavior. It is possible that using this method anticipated behaviors could be assigned to objected detected by sensors and brought into the "game world". The engine would then check for deviation of the real object data overlaid on the virtual object (e.g. rocks should not move).

It may even be that the game AIs are smart enough to drive the robot. Advanced game engines do have path-planning systems. Unfortunately, games also make extensive use of "teleporting" instead of actually moving characters through the 3D world, so this may not be as useful as it seems.

I encourage roboticists to explore the world of game development hardware, software, modding and algorithms. In the worst case, you've got yourself a new marketable skill!

Wednesday, August 17, 2005

Robots and Energy

One of the features of the first half of the 21st century will be rising energy costs. During the last part of the 20th century (post 1970), there were several "oil shocks" which caused energy prices to spike upward for short periods of time. These were mostly political. However, it now looks like we are in for a much longer "shock" due to demand for energy - which remains overwhelmingly oil-based - exceeding supply.

How do robots fit into this? On one hand, "deep Greens" expecting industrial civilization to collapse without cheap energy would lump robots into the general energy-intensive "tech" category - an idea fated to die with the cheap energy that spawned it.

On the other hand, people who believe that we'll shift to super-tech energy sources (e.g. fusion) might expect robots to be adopted simply because they will become cheaper to run than human labor.

I think there's a third take on this point. IMHO, those who believe that future energy will be cheap and unlimited are guilty of a quasi-religious belief that technology can solve anything. In fact, there is some evidence that our level of tech innovation is slowing down. The current "high tech" devices we used were all invented some time (> 50 years ago), and today we are simply refining them. In such a climate, automatically assuming that a new power source will come along is based on faith alone.

However, if we do have some energy shocks ahead, robots may come out of it better than other tech. Why?

Recall that the definition of a robot used here has been a machine that senses its environment, and tries to act in that environment. This is in contrast to the typical use of a PC today, which is solely to generate an imaginary "virtual" reality using symbols, animation, etc. that the user in the real world must enter.

Because of the focus on the virtual, computers are insensitive to the overall energy environment. Computers consume a great deal of power, more than most people realize. A high-end "gamer" computer might take 700 watts or more of power - more than a couple of square feet of solar cells can supply, or the output of a couple of people running fast on treadmills - take your pick. Overall, computers now form several percent of electrical use in the US, though they aren't as energy wasteful as, say, blow-dryers.

I might add that the more realistic a computer reality is, the more energy it uses. Double a computer's speed and you to the first approximation double the energy use. Halve the circuit size and you greatly increase the energy needed to manufacture the chip.

There is an additional energy problem with computers. Individual silicon microprocessors in computers aren't just complex to manufacture (you need a 2 billion dollar factory). They are energy-intensive. A single computer chip requires enormous amounts of power to form the chip, as well as energy used to maintain the ultra-clean environment in which the chip is manufactured.
Taken together, computers end up being energy-hogs, both in manufacture and in use. If energy prices really rise high, they will see reduced use. The tech-heaven of the Matrix will run out of power.

How will robots escape this fate? By their sensing nature. Unlike today's computers, robots are "aware" of their energy budget. Even now, robots take lots of effort to make their moves energy efficient.

In addition, the sensing nature of robots has led some researchers to develop robots which feed on their environment. For one robot developed in England, a tempting pile of feces attracts flies. The flies are processed, and their energy stored in their bio-molecules (protein, carbohydrates, fat) are converted to electricity to fuel cells. Like a living organism, the robot acquires food from the environment and must budget the resulting energy accordingly. It's only a short step from this to robots that can "justify" their existence, even in an energy-limited world.

The key is ROE, or Return On Energy. This is a measure of the energy that goes into a process, versus the energy that comes out. For example, it might take 1 barrel of oil to pump put 200 barrels of oil - a ROE of 200:1.

Or imagine a farm with all-human workers (no machines). If the humans are kept alive by the food the farm grows, the farm ROE must be greater than 1 - more energy must come out of the farm, stored in food, than goes into farm, measured as energy used by the farmers. On farms, this works because food plants capture energy from the sun. So, the energy expended by the farmers results in a greater amount of energy being absorbed from the sun. If more energy is used to grow the food than is put into calories in the food, the farm ROE is negative. This in fact is the current case with industrial farming - up to 10 calories of oil-derived energy is used to put 1 calorie of energy into food.

Because robots sense the environment and their own operation, it will be possible to design robots (actually groups of robots) with a positive ROE. These future robots would build themselves, and carry out activities which collect enough energy to do so. For example, we might imagine an automated, solar-powered factory. The factory uses solar energy to manufacture products - but also manufactures all the tools inside the factory. Given time, the factory can make all the parts for a second factory. The energy put into manufacturing a second factory in the long term is recovered - the second factory collects this energy and more. These self-reproducing factories would have positive ROEs just like a living cell.

They would be, in effect, very large robots.

Of course, the pace of robots might slow in an energy-limited world. Today, robots are not required to do work to allow their manufacture or repair - that energy comes from non-renewable energy sources. In the future, each robot would have to contribute to building energy-producing infrastructure. Because of this, they won't be the on-demand workers we imagine - they will be more like animals which must devote a part of their energy to maintenance and reproduction.

One can imagine a future where our current technology has vanished. In its place, technology much more like a giant plant cell, with robots taking the place of the enzymes in the cell. Like the plant, the technology would self-regulate itself by sensing its environment so it always kept its ROE constant. Humans would exploit the "excess" energy of the self-reproducing system just like they exploit the "extra" calories plants put into fruit and vegetables today.

Robots might help an energy-limited world in other ways. Today, human drivers waste fuel by their inefficient driving - too much passing, accelerating too fast, taking the wrong road. Future robotic cars, in contrast would be more efficient in energy use. One might imagine a future where you are not allowed by law to drive your car, in the interests of energy conservation.

Hardly, the robotic world we've expected, but a plausible one - even if we run out of oil.

Wednesday, July 20, 2005

More on Ai and brains
It is interesting, given the topic of my last column, that the AAAI (American Association for Artificial Intelligence ) is "celebrating" the advances in artificial intelligence (AI) during the last 25 years. According to a recent PittsburghLive.com article, progress has been made. Strangely lacking in this celebration of machine intelligence is any prediction of when "real" Ai will finally appear.

This in itself is interesting. During the last 50 or so years in which people believed that computers were the "final" model for intelligence, the AI community has been fond of saying that artificial intelligence was "10 years off" 0r "just around the corner". Apparently, the community has finally learned its lesson - no prediction of when "real" artificial intelligence will exist is made by AAAI.

One can only see this as a cryptic admission that the future of computer-based intelligence is far more murky than it once was. Gone are the confident predictions of near-term success, as well as the arrogant commentary that minds are "computers made of meat". True, what some call "artificial intelligence" allows machines to do things that were thought to be the property of brains - chess-playing for example. But it is also significant that machines began playing chess 45 years ago. What have you done for us lately?

Another area that has shown some progress is "machine vision". For a long time, people who worked on machine vision were a separate breed from those working on robots. This fit with the idea that AI could work through a "narrow" sensor channel to the world. In the case of machine vision, much effort was expended on machines processing a single still image, and re-constructing the outside world from it. Outside of industrial and "toy" lab environments this approach is largely a failure. More recent work for robots centers on detecting simple primary qualities of a visual scene - movement, optic flow, 3D position. Intelligent interpretation has mostly been put on hold, with the exception of a few areas like human faces.

While there has been some success in these areas, others are more or less complete failures. After 15 years of work, the CYC project has developed an interesting "common sense" database - but hardly anything remotely intelligent. CYC programming remains custom "brain surgery" - the system can't learn on its own. Chat-bots build using the technology are supposed to pass the "Turing test" - but a few minutes with these programs in an unstructured environment shows that is false.

CYC is a big example of the field of "expert systems" - long thought to be the "golden road" to true AI. However, expert systems today are no smarter than they were in the 1980s, despite huge increases in computer power since then. Similar problems plague the field of web-based searching - despite lots of work by well-funded companies like Google, our web searches are hardly "intelligent".

Where does this leave robots? I have maintained that creating a sensor-rich body is the key to robotics - far more than building machine intelligence. It implies that we may never build robots with intelligence using computers. However, we will be able to create useful machines using current computer and AI work - provided the tasks are simple and the system has plenty of environmental feedback. In this light, a GPS-controlled robotic car seems quite possible. But a robot car that you can talk to seems a far away as ever.

It's actually liberating to think that computers can't be brains. It implies that there is another kind of machine, not a computer (but possibly comparable in the way a telephone switchboard is comparable to a Von Neuman computer) but still physical which could harbor real intelligence. Despite speed increases computers are basically the same as 50 years ago - our innovation has been around the edges, with few new "big ideas". Figuring out how the brain works may snap us out of our "computers ever faster" funk and focus on discovering some really new stuff.

Thursday, July 14, 2005

Computer power and Asimov's robots

A recent study out of Cornell University has cast serious doubt on the idea that the brain works like a computer, and in fact questions whether computers will every be capable of true artificial intelligence at all. Computers are basically symbol processors, which carry out a sequence of logical operations on the symbols in lockstep. In common personal PCs everything is timed through a single CPU clock. There have been experiments with asynchronous CPUs (in which parts of the CPU run at different speeds by Sun, but these are still "state machines" processing discrete symbols in sequence.

In contrast, the Cornell study by Michael Spivey supports the notion that language comprehension (interesting because words are clearly symbols) does not happen in lockstep, but instead is a continuous process. To quote Spivey:

"For decades, the cognitive and neural sciences have treated mental processes as though they involved passing discrete packets of information in a strictly feed-forward fashion from one cognitive module to the next or in a string of individuated binary symbols -- like a digital computer," said Spivey. "More recently, however, a growing number of studies, such as ours, support dynamical-systems approaches to the mind. In this model, perception and cognition are mathematically described as a continuous trajectory through a high-dimensional mental space; the neural activation patterns flow back and forth to produce nonlinear, self-organized, emergent properties -- like a biological organism."

In the actual studies, students solving a variety of problems were shown to not be in a single computerlike "state" at any time - completely unlike a computer. Instead, students were in "multiple states" at all times. The relatively activity of each multiple state changed smoothly as a result of competition with other states.

Another quote:

"...Whereas the older models of language processing theorized that neural systems process words in a series of discrete stages, the alternative model suggests that sensory input is processed continuously so that even partial linguistic input can start "the dynamic competition between simultaneously active representations."

In other words, animals and humans simply don't process data the way a computer does. A computer processing words jumps to a particular state, tests the state, and jumps to a different state if it is incorrect. In contrast, brains apparently have all states present at once, and smoothly transition between on "state collection" and another.

If Spivey is correct, the implications are mind-blowing. No computer, no matter how fast it runs, could possibly simulate multiple states plus transitions. One might argue that if the computer is fast enough, it can 'time slice' so it appears that multiple states are present. But this is asking a car to be an airplane or a dog to walk on its hind legs - it ain't natural to the machine.

In short, the Cornell results tell us that the brain is NOT a computer!

This concept is hard to shake. For the last 50 years we have assumed that our minds are "computers made of meat" as MIT AI grandfather Marvin Minsky puts it. It is tempting to assume that somehow, we'll find a way to simulate brains on computers. The idea of computers as potentially intelligent is so engrained in our minds that we simply can't believe it - no HAL will ever exist, because a computer can NEVER be intelligent like a brain. Say it ain't so!

Before you sign off assuming that "they" will somehow figure out a workaround for this, consider the following:

1. Since 1950 computers have increased in speed 1 million times, but intelligent behavior has not ever been satisfactorily observed. Despite the hype, many, if not most robots don't do much more than the clockwork devices of a few hundred years ago. Sure, they can walk, but this is only a result of sensors. The lights are now on (due to sensors) but nobody is home.

If you don't believe this, ask yourself why your computer doesn't know a thing about you (including that you are sitting in front of it) and why "voice recognition systems" are no smarter than mouse/keyboard data entry.

2. Big Ai projects have largely come to naught. The most ambitious of these, Cyc (http://www.cyc.com) recently has been hooked up to "chat-bots" that operate on the Internet (see the Alice project). I'm sorry, but these programs are stupid beyond belief. In fact, I don't detect any more smarts in the chat-bots than I saw in ELIZA decades ago. Cyc itself is finding application in sorting through databases for phone companies and credit cards - labor-saving, but hardly what we think of as smart.

3. We often forget (in our fantasy that our "tech age" is different than any that came before) that the computer is just the latest in a long line of machines that were supposed to show how the brains work. If you're old enough, you may remember when textbooks compared the brain to the telephone network. SF writer Arthur C. Clarke even wrote a story where the phone system woke up and became intelligent. Before the phone system there was the steam engine, the loom, and even the vacuum pump. All are failed metaphors for the brain.

It is entirely possible that the brain is not a computer, any more than it is a phone network or vacuum pump. It is entirely possible that the brain is not a computer, and conversely, computers will never act like brains. In other words, "state machines" can never create a mind - or even come close.

Which brings me to Asimov. The Cornell study describes the mind as having multiple states which compete to become dominant in a constant fashion. This in fact is how Isaac Asimov original described the "positronic" brains of his robots. If you read the early robot stories from the 1940s and 1950s, Asimov said that computers were used to control the process of creating a robot brain - but that the robot brain was not a computer. Instead, the positronic brain juggled "potentials" which settled out into complex states. A complex math theory was used to calculate the change in potentials over time, strongly implying the positronic brain "computing" was actually similar to the "dynamic continuum" described by the Cornell study.

By the way, this is why the famous "Three Laws" of Asimov's stories could not be erased from a robot's mind simply by editing a line of software. The "three laws" were set up as a series of "dynamic potentials" according to Asimov that reinforced each other - sort of like a series of magnets holding each other in a complex spatial pattern, or an old-style analog (Moog) synthesizer) creating a particular musical tone through the adjustments of numerous electrical circuits. Remove one magnet at the bottom (mapped to law 2) and the whole potential structure would collapse.

This also explains why Asimov never describes software being loaded into his robots - instead their "programming" is mechanical channeling of an exotic "sponge metal" by positrons enabling the potentials. True, Asimov is imaging a microfabrication process akin to integrated circuits - but the result is not a state machine juggling symbols.

In our computer-saturated world, we no longer understand this - Asimov did not imagine that his robots were computers!

I suspect two things. Asimov was able to develop this biologically-inspired model for robot brains because computers hadn't advanced in the 1940s as much as they have today. Second, Spivey probably knows about the "positronic" stories, and might even be using their insight in his own research!

In his later robot stories written in the 1980s (e.g. "Robots and Empire") Asimov still differentiates between positronic brains and computers. Earth colonists (who hate robots) use computer-driven cars (like the DARPA Grand Challenge) and spaceships - but do not use robots. You can detect contamination of the original "positronic" idea in these late works - Asimov has characters say robot brains are "similar" to computers. But I suspect that the rising importance of computers in society during th 1980s made Asimov feel he was wrong, and feel computers might be the "way to go". He was covering for an apparent mistake, when he may have been right in his original idea.

What does this mean for robotics? It may be that even a "sensor dense" robot will not approach human or animal cognition - it will never understand enough to be the household maid people still dream of. Certainly, the iRobot people feel that special-purpose robots for vacuuming and scrubbing floors are practical. The Japanese are pushing humanoid robots, but to date they aren't doing anything of significance beyond not running into stuff (due to their sensors).

It may be that our civilization does not understand how to create intelligence. Future historians will look at our "computers as Ai" as a quaint idea as Descartes describing the mind as a series of water pumps similar to the clockwork humanoids that existed in his day.

But this is cool - it means there is something "beyond" computers that we haven't discovered yet!

Saturday, July 09, 2005

The HOAP gets big, Forbes article on luxury robots
Fujitsu has moved up in size with their HOAP series. According to an article on the Tech Japan website, the latest incarnation is now 3 feet tall, weighs about 18 pounds, and is more sophisticated internally. Unlike earlier models, there is an integrated, on-board computer controlling its motion (HOAP 1 and 2 were connected to a PC). However, the robot may still be controlled from a PC via wireless connection. The system has several new sensors, making it more truly a mobile robot than an industrial system.

Fujitsu provides software to develop programs for the system (under Linux) and appears to be targeting the research and educational community with this model.

In other news, consumer robotics has finally caught the notice of Forbes Magazine, which recently ran an article on luxury robots. Once again, the article cites the gap between what robot developers do ("make a cool robot") versus what consumers actually want (something that cleans the floor without my thinking about it. With this in mind, the article reviews the current crop of robotic pets, vacuum cleaners, lawn mowers and floor cleaners. The article concludes by quoting Dan Kara of Robotic Trends, who says that the luxury items of today will be mass-market in 5 years or so.

While this does seem bound to happen to some extent, I suspect the market for special-purpose robots may remain small. Compared to a PC (which can run a variety of software allowing it to do many things) these robots are single-purpose systems. The lure of a robot butler is not its humanlike appearance, but an expectation that it will be able to do a wide variety of tasks just as a human can. Even with recent advances in walking and running robots, this may be a ways off.

Tuesday, March 08, 2005

Coming up for air...
I apologize for not updating recently. For the last 4 weeks I have been working like a madman on our DARPA Grand Challenge vehicle, Robo Monster (http://www.robomonster.com). We were working against a March 11th date - by which DARPA wanted a video showing the vehicle at least at the "drive-by-wire" stage, and a technical report detailing our plans for Robo Monster. As of today, both are complete, and on their way to DARPA. We've got a temporary rest, but if we get a site visit, things will be really hairy!

As I said in an earlier posting, doing a DARPA Grand Challenge entry has really forced me to put my money where my mouth is. Compared to my earlier ideas about "robots that jump" I have come to the following conclusions after having to do it for real:

1. We don't have good sensors. An animal, even a simple one like a slug, has millions of tactile, chemical, and other sensors on its skin. The typical animal is "sensor heavy" and brains-limited. We can't begin to achieve this using our current large, clumsy sensors. It's no wonder that "biological" robotic approaches have been limited - we barely have the tools. Our goal for Robo Monster is 200 sensors. This will give it the "sensation" comparable to a dust mite.

2. Computer tech is old. As I dove into microprocessor programming, I was struck by how much of this technology was around 25 years ago. Many of the chips used by hobby robots are decades old. The rise in PC CPU speeds has given an illusion of a whole industry advancing. But the typical BASIC stamp microcomputer still has only a few hundred - or a few dozen variable bytes, and a few thousand bytes for programs. They still run at the same speed and have the same tiny memories as years ago. Compared to my experience as a PC programmer, this appears constraining. In fact, I am working with a BasicX 01 processor specifically because they had a simple way of expanding program and variable memory to 64 or 128k.

3. A microprocessor-heavy strategy is the way to go - It is easy to get a high-performance PC, put in Labview and a couple of data acquisition card, and try to make a car-bot. But these top-heavy systems concentrate processing in a way that seems very un-biological to my background in biology. So many people are using this method that I am opting for the alternative in our DARPA entry.

4. Good programmers are hard to find - I have contacted lots of programmers about the GC, to no avail. Looking for a good embedded systems programmer. I suspect as more sponsorship money comes in and we can offer contract programming for a fee, we'll suddenly get lots of "volunteers."

Saturday, February 12, 2005

What a Robot Wants

Looking through the DARPA Grand Challenge entries, I've noticed that there are several broad approaches to the concept of autonomous robotics with respect to sensors. Since I'm now part of team Robo Monster, it seems important to figure out just which approach will lead to a (car)Robot That Jumps.

1. "Optimized Engineer" - In this approach, sensors are kept to a minimum to minimize the chances for failure and to simplify decision-making by the robot. However the few sensors are very capable. An example would be a robot with a super 3D stereo camera with ultra-high resolution and little else. Clever programming would wring out every bit of useful information from the high-quality sensor.

2. "Barebones" - In this approach, sensors are kept to a minimum because the designer really thinks robots don't need good senses. Some teams are developing systems with a single camera running at 640 x 480. The reasoning here flows not from engineering, but from what people can do. After all, a person could probably drive a car looking at a 320 x 240 pixel display, so why not a robot? Again, clever programming makes up for lack of sensors.

3. "Sensor Heavy" - In this approach, the robot is given a large number of simple (and usually cheap) sensors. Instead of ultrasound on the front and back of a robot car, the "sensor heavy" designer puts a whole ring around the base of the vehicle. Multiple cameras may be used, usually at lower resolution than the "optimized engineer" approach. The "sensor heavy" approach lends itself to less centralized computation as well - if you have lots of identical sensors, it is practical to arrange your computing in a network of small computers rather than a few big ones.

My own background as a biologist at UCLA makes me prefer the "sensor heavy" approach. Some groups look at biological structures like the human eye and conclude that a few good sensors are best. However, this is somewhat misleading. The human eye is backed by a brain with millions the times of computing power as the best GC vehicle. It will be many years before we can match brains in silicon.

In fact, most robots today are actually less complex than a single free-swimming bacteria. In terms of effectors, a bacterial cell is roughly similar to a Roomba - it has forward, reverse, and random tumble. But its sensors blow even our most sophisticated robots away. A typical bacterial cell has several hundred different kinds sensor proteins on its surface. Most of these sensors are for particular chemicals the bacteria may encounter in its environment, though there are also temperature and pressure sensors. Being a single cell, the bacteria doesn't have anything remotely like a brain. Instead, these hundreds of unique sensors are coupled via molecular interactions to only a few output states.

If we move a little up the evolutionary ladder we see a similar story. Work on simple roundworms with less than 1000 cells in their body indicates that fully 1/3 form part of the nervous system. But again, there's not brain - the vast majority of these cells are sensory. And each sensor cell in turn has a unique mix of dozens of molecular sensors.

Don't let me even get going about bugs, which current robots are often compared to...

So, if we believe that our robots currently emulate simple organisms, the "sensor heavy" approach may be the way to go. My own feeling is that the equivalent of "Moore's Law" for robots lies not in processing power per se, but in distributed sensory processing, which is directly related to sensor density. I would be interested in determining this, possibly by counting sensor number in robots over the years. Currently, many robots seem to be at the 50-sensor mark (e.g. Sony Aibo). What will happen with 1,000 sensors?

To this end, Team Robo Monster will explore using lots of sensors - in fact, we intend to make ourselves unique in this way among the GC. If plans work out (and sponsors) we will have several hundred sensors on the system (1000 is the dream goal). Most will be simple, comparable to those used in hobby robotics.

Will it work, or will the "optimized" or "barebones" approach be better? Time will tell - that's why they call it the Grand Challenge.

This page is powered by Blogger. Isn't yours?