Synapses, memristors and robots printer friendly create pdf of this news item
Nature inventing the wheel
There are so many new things to watch on the internet. Such as this spider that transforms itself into a wheel when it wants to escape its predator! Right click on the move to watch it on Youtube itself. But this post will not describe all kind of animals that seem to come close to the ideal of "back-and-forth" metamorphosis, of temporarily body changes. No it is about building brains.

Our crappy computer designs...
The future will be defined by our abilities to make living things (gene technology), fast things (information technology), small things (nano-technology) and smart things (artificial intelligence). This story is about a marriage between the last two. It all started with the Van Neumann computer architecture. Our computers are organized according to this design principle. Namely with a separate CPU, central processor unit, and memory. A famous problem is the so-called Van Neumann bottleneck. If those two parts, the processor and the memory is housed on two different places, there will be going a lot of data between them. This "gate" forms a bottleneck, potentially constraining bandwidth. However, this is not the biggest problem.
You might think that processing data costs energy, and that is true. However, what also costs energy is powering wires. The longer the wires are, the more power they consume. And then our biggest problem is our own head... We just don't have the wiring (the proper mindset) to build computers the same we are wired ourselves. In our brains there is not a part where the processing takes place, and another part where we store everything. In contrary, it is distributed all over the place. And certainly, some places are more dedicated to memory, like the place cells in the hippocampus, but it is seldom so black and white. For that reason I would like to refer you to the following talk:

Recently at HP Labs Stan Williams and his team discovered a physical representation on nano-scale of the fourth circuit element described by Chua long ago. Besides the resistor, capacitor and inductor, there is the memristor. Apply current or voltage on a memristor and it will get a new resistance value, even if you detract the source! This is awesome to create instant-on computers, which is mentioned as on of the possible killer apps on the web. However, what also can be done is solving the above mentioned crappy computer design problem. To come up with a design that integrates remembering (memory) with thinking (processing). One of the ways our brain stores events is by increasing the strength of connections (synapses) between neurons. The neurons that fire together, wire together. You can see the brain as some kind of large statistical machine that extracts a lot of information just out of the fact that things happen at the same time, or consistently slightly after each other. That is, it can do it with "images", but not with lottery tickets.

In the movie Gregory Snider (I only watched the first part) explains how the brain can be emulated using memristors to model synapses. Like as cell processors, or even more with field programmable gate arrays [FPGAs], there will have to change a lot in conventional computer programming, will computer scientists make use of the inherent reconfigurability that is possible with this hardware. VHDL (a hardware description language) is not the best horse to bet on, to win the race of reconfigurable programming. Artificial neural networks, and we have indeed better and better ones (they are not the old fashioned feed forward net with back-propagation anymore) are inherently mixing memory with processing.

The Killer App
Our robots need large-scale pattern recognition. We cannot afford to do without artificial neural networks anymore. The networks might be used in an abstract form, say as a liquid state machines or adaptive resonance theory model, but we nevertheless have them on our robots! And, in the end we will need to have hardware that can run those networks that are so like our own minds. And this is the promise of memristor-computers. Robots need memristors. And it is also the other way around. Memristors need robots. It might turn out to be virtually impossible to program "memristor-computers" without a "biological" mindset!
Anne van Rossum on Saturday 05 December 2009 - 23:22:52 | Read/Post Comment: 3
The Robot Nurse printer friendly create pdf of this news item
Robots in health care

Do we want a robot nurse? And what are the typical tasks a robot nurse would have to perform? Or what does a current nurse nót want to do? Questions like this are asked at the Rathenau institute. If you ask a nurse herself, where she wants to have a robot, the answer is straightforward. She wants a crane. And preferably not a smart crane. No smart robots please! She wants to be able to say when and whom the robot is carrying from bed to wheelchair. However, it is very unlikely that this won't be automated in the end. If a patient is always going to the shower at a certain time, why would the nurse not plan it in a calendar for a week in advance? And there we touch upon the question if a robot needs to be a bit intelligent in the end? What if - a terrible example! - a person dies and the nurse forgets to update the calendar? It is a shocking sight to see a robot starting to wash a deceased person!! So, it is unconceivable to have robots that are nót aware of the state of a patient. It is very recommendable that robots have some autonomy and can make some decisions for themselves about what is appropriate and what not. If a patient cries, the robot shouldn't continue! It should have rudimentary empathic feelings. At first we might want to have a robot who is human-like on the outside. However, what we might end up needing even more is robot who is human-like on the inside! We don't want to have a robot for whom befehl ist befehl! It should not take everything at face value.

Should we start to create a "nursebot"? Or should we start with the actual problems a nurse faces? Besides heavy physical work, two things nurses hate is administration and stress. Although a few administrative tasks are recommendable (because it are the moments on a day that a nurse can sit down and relax for a while), there is a lot of overhead. This all leads to what they call in Dutch: “fewer hands at the beds”. A hospital is a complex logistic institution. A nurse, or most often an internee, is running for supplies from one place to another all day long. A robot being able to take over this job, does not have to be humanoid at all. It can be a mobile variant of pneumatic tubes. Delivery robots can play a big role.

And so many things can be done to reduce stress! The patient might communicate with family at home via a robot. Although the robot is then perhaps not much more than a movable webcam... Or a patient might say something to the robot when she or he awakes. A nurse can be warned or the message played back when a nurse arrives. A smart observer would only alert a nurse when needed. A nurse is in this sense helped with prioritization of her activities. This communication aspect should not be downplayed. Imagine that a physician is always able to look through the eyes of such a robot. Would a nurse than try to make everything "neat" before a doctor does his or her round? There won't be such emphasize anymore on such traditional inspection rounds at all. I bet when you start to think about automation in a hospital in relation to stress, you might come up with a lot of inventive solutions. I challenge you this very moment!
Anne van Rossum on Thursday 26 November 2009 - 00:52:02 | Read/Post Comment: 0
Morphing robots printer friendly create pdf of this news item
Soft morphing robots
There are many morphing robots around. Okay, perhaps not that many. However, the ones in Replicator (and Symbrion) distinguish themselves from the crowd by the enormous amount of sensors that are on them. That is why sensor fusion is such a very important topic in the first place! A robot of 10 modules, with on each module 4 cameras makes a stunning amount of 40 cameras! That's why such a developmental engine is being built.

But this post is not about the Replicator software. It is about a soft morphing iRobot. This iRobot has been presented at the IROS 2009 conference. It is a ball with a shell that exists out of compartments. By vacuum some of those compartments expand which makes it possible to create a blob on one side of the ball and starts it rolling.

And, what if they can sense light or warmth! Imagine enormous large morphing balls rolling through the desert getting energy from the sun. Freaky!
Anne van Rossum on Monday 02 November 2009 - 22:30:01 | Read/Post Comment: 0
Replicator Sensor Fusion Software printer friendly create pdf of this news item
From sensor fusion to self-organized control
The software developed in the Replicator project, has to be seen in a large framework in which the ultimate goal is to reach levels of self-organized control, or what we also call meso-morphosis. This is the process of internal reconfiguration that has to occur alongside metamorphosis. A caterpillar does not just change from the outside into a butterfly, it is also changing from the inside. Certain central pattern generators can be reused in later stages, perhaps even olfactory or visual information is retained so that it's possible through this way to find the same kind of plant on which a butterfly was raised, to deposit her eggs.

The scientific challenge for sensor fusion and self-organized control: A reconfigurable robot should be able to follow a human as a snake and overcome door sills by transforming into a spider. The sensor data processing architecture should be such that this actually can be done in an agile way. This means, amongst others, turning off sensors that are unreliable or redundant. Neatly summarized: it means mesomorphic sensor fusion capable to run on reconfigurable robots.



The figure above shows how we might come to meso-morphosis (emergent self-organized control takes so long to write all the time) on the robots and how cognitive sensor fusion plays a role in this game:

  • At the total left you see maps that describe the sensory input in a 2D grid representation. Such representation can be formed for different modalities. A retinal map for vision, a cochleogram for sound. And, if, necessary, it might also be extended to even different modalities. Currently the focus is on those two modalities, because other partners within the Replicator project will profit most of preprocessing on this type of very complex sensory input. A distance sensor for example, can be used without a lot of preprocessing. The saliency model of Itti and Koch is implemented to fuse those modalities in a computational cheap and especially in a scalable way. (The resolution of the maps is easy to adjust.) The bottom-up saliency approach is especially feasible to implement later on top-down saliency mechanisms.

  • Below the time line it is shown that a developmental engine is built that creates via a gene regulatory network a topology of modules. In the context of sensor fusion those modules are filters that process sensor data. It hence enables the evolution of different topologies for a sensor fusion processing architecture. The developmental engine, called Linda, is very small and written in C and will be able to run on a Cortex M3 microcontroller. It might be possible to swap it later on in the project with one of the developmental engines delivered by other partners in the Replicator project. So, it is a developmental approach to a sensor fusion filter architecture. So, what's possible with such a developmental approach? It means that if a snake form is created, a set of sensory filters will be selected that best corresponds to this body form. For example, cameras might be placed on the head and the tail of the snake and the filter architecture might be streamlined throughout the snake body.

  • Back to above the time line. Liquid state machines [LSMs] can be used for sparse coding. It maps the sensory input data into a higher dimensional space, so that it subsequently can be linearly separated. LSMs or the simpler echo state networks, will be used to process sensory data coming from the line-edge detection, color detection, intensity detection filters to fed it into an associative memory structure. This type of memory stores associations, even across modalities. This type of machine learning techniques might make the difference between a slow robot and an agile, fast one.

  • For current implementations of this type of associative memory that also implement cognitive functionalities are adaptive resonance theory [ART] and global workspace theory [GWT]. Cognitive shouldn't be seen as a magic term over here. It refers to having attention mechanisms, and competition between processes as a form of "controller selection" or "action selection". Without a cognitive context, a robot will start looking for a bird in a tree, rather than focus on things that are actually important.

  • This type of cognitive architectures like ART or GWT have never been evolved before. If the developmental engine develops ART or GWT components, for different robot morphologies different layouts can be tried out. Concrete, this means that a spider form might rely more on its short-range sensors because it needs to overcome obstacles. A snake form might use longer-range sensors so it needs longer term memory and a longer attention span.

  • Related to the severe demands of a reconfigurable robots a static layout will most probably restricting the robot unnecessarily. A basic channel implementation has already been implemented in the form of SymbricatorRTOS hooks. This enables tasks to be connected to other tasks. A dynamic version of this channel architecture across the entire organisms. Reo is a formal description of such reconfigurable channels and an implementation of this type of formalism will be demanded from the middleware partners or has to be implemented by us. The reconfigurable middleware will enable the robot to actually morph internally as well as externally. Without it, we will only have spider robots with snake brains.

  • The marriage of a reconfigurable architecture and an evolvable cognitive architecture is subsequently visualized as emergent self-organized control [SOC] at the total right. At the bottom it is shown that this type of robots is able to reorganize their internal structure as soon as they dock. This can be seen very mundane as one robot turning off its laser scanner after docking and the other one turning off its camera. Although stated this simple, the cognitive architecture below it actually decides when this type of reconfigurations happen. Without this type of architecture a system will quickly loose track of what to turn off and what to turn on on which moments. Even less if a robot organism has to be able to perform different tasks, like searching for an energy socket versus crossing a door sill. Above the time line it shows that input from the environment and not just the robot morphology might guide this reconfiguration process. If it happens to be dark all the time, it might be convenient to just turn all cameras off... If the cameras on the spider legs move all the time, it will probably use the ones on the spider body.


Sensor fusion
The following movie shows how a robot in the Symbricator3D simulator learns to drive its right and left wheels in the appropriate proportions, so that it correctly points at the salient object: a robot. Each time the robot is set in a neutral position. It then tries to center the most salient entity in the middle of its visual perceptive field. The weights that drive the right and left wheels are subsequently updated by reinforcement learning. So, this is sensor fusion in which multiple visual sub-modalities (orientation, intensity) are fused.

The robot that has learned to find salient objects by the method above can be used to find another robot in the simulator. For specific tasks, like this, it is important that not all (sub)modalities do get the same priority. The horizon for example is very visible for the filters that respond to horizontal lines. Hence, in this scenario this specific filter is turned off. This shows the need to be able to select an adaptive set of visual filters in different circumstances. This is one of the intended goals of self-organized control: a dynamic set of filters depending on the environment in which the robot acts.

For this self-organized approach towards sensory integration or in more general to a dynamic set of modules on a robot, there is an evolutionary and even developmental engine built, which is called the Linda engine. It communicates with the Symbricator3D simulator over TCP/IP. And in the meanwhile convenient helper tools are developed like: an m-bus that is able to multiplex TCP/IP connections to multiple processes across several machines; an abbey, which implements a thread pool with some additional agent-like properties e.g. defining dependencies in execution of tasks; and a GUI that is able to visualize which modules are turned on and off on the robot.

The software and movies are created by Ted Schmidt, Govert Buis and Anne van Rossum at Almende B.V. in the European FP7 project Replicator. Software is open-source and freely available at https://svn.almende.com/svn/replicator. The Symbricator3D software is built on Delta3D, and hence will be open-source too, somewhere in the future.
Anne van Rossum on Tuesday 09 June 2009 - 14:37:40 | Read/Post Comment: 2
Developmental engine printer friendly create pdf of this news item
A run of the developmental engine. As can be seen some of the genomes are "neutral", they don't lead to cellular instructions and leave the initial topology just as it was with one I and one O module. Other ones are very active and create a diverse set of modules all over the grid.

The software and movie is created by Anne van Rossum at Almende B.V. in the European FP7 project Replicator. Software is open-source and freely available at https://svn.almende.com/svn/replicator.
Anne van Rossum on Wednesday 03 June 2009 - 14:15:14 | Read/Post Comment: 0
Go to page   <<        >>  

Software

Goal Replicator/Symbrion

Slideshow

News for 2010

RSS Feeds

Welcome

Google Friend Connect

Opinions on the site do not have to be shared necessarily by all Replicator partners.