Recent Entries

You have 1706758 hits.

Latest Comments

Posted By Peter Bentley
Reading this back I'm not sure I really answered this excellent question as thoroughly or clearly as I could have, but there you go. It's a reader's query and response from 2004:

I read Digital Biology a few years ago and there's one topic I keep revisiting as I can't seem to reconcile all of it's elements--swarm intelligence.

Your criteria for effective swarm intelligence were something along the lines of

1. Randomness of events

2. Positive feedback

3. Negative feedback

4. Disproportionate fluctuation

The first three items make perfect sense to me, but the fourth doesn't seem to be absolutely necessary--can't a bee hive or ant colony survive without it? I understood your lottery example but wasn't able to translate it into something absolutely necessary for a colony of ants. If you could explain the need for disproportionate fluctuation in the context of an ant hill perhaps it would drive the point home.

I really enjoyed your book. I picked it up because I hoped to learn about naturally occurring types of organization in the hopes that I could apply them to business. It was one of those rare instances when the book covered exactly what I'd hoped it would cover. An unintended benefit was that your book has helped me to think through business problems on a more elemental level in order to better isolate the problem from the symptoms.

Thanks and regards,

I believe the fourth one was "amplification of fluctuations" - and it was thought of by an Entomologist. You need to amplify the fluctuation in order for the "choice" to be made by the system. I agree that these can be stated more concisely, however - which is what I tried to do elsewhere in the book. Glad you enjoyed it :)

Posted By Peter Bentley
Here's the second half of the same interview.

- Regarding robots; are genetic algorithms the best approach to make it move? That is, do they yield the best performance, and aren't they limited by lack of processing power or a long time needed to evolve a movement behaviour?

GAs are a great idea if you want to incorporate ideas of embodiment. In other words, if you want your robot to be able to affect its environment in as many ways as possible, and if you want the environment to affect the robot (resulting in improved body and brain) as much as possible. This is how natural organisms are - they shape their world, and their world shapes them. Evolution enables us to test robots in the real world and has a wonderful ability to exploit everything possible to improve those robots. The downside is of course that we can't really evolve robots. We don't have robots that can have children (or that can build themselves), so if we want to use GAs right now, we have to use a combination of computer simulation and physical testing, which can be slow.

- As a sort of subquestion to the one above, do you think evolutionary algorithms are the way to go to make robots robust for hardware failure?

I think evolution is half of the solution. The other half is development (or embroygenesis). If we evolve a growth process, which generates our desired hardware, then that hardware "knows" what it wants to be. So if it gets damaged, the growth process automatically replaces the damaged elements. This is an important trick that we've only just begun to explore, but we're all very excited about the possibilities.

Posted By Peter Bentley
Here's an interview by email with a journalist, in 2005.

- On a very general level speaking, why biomimetics? Can nature do a better job than humans engineers, or can nature do something that human engineers can't? Or is there some other reason?

The answer to both questions is yes and no. Engineers are much better than nature for certain applications, and they can do things nature can't do (like design rockets to take us into space). But nature is packed full of trillions of intricate designs, from the molecular structure of a virus, to the eye of an eagle, to the elegant symbiosis of a rain-forest. There's a lot of designs to learn from, and also the processes that produce those designs can teach us a great deal. Nature already has nanotechnology in the form of DNA, proteins and cells. Nature has technology that adapts to new situations and environments, self-replicates, builds itself, repairs itself and designs itself. Nature also has some of the most complex designs in the universe - like the human brain or immune system. These are all features that we would love our technology to have, but we can't do any of them. Yet.

- Do you think biomimetics if often the best approach? Or is it only applicable to certain specific areas?

I think you must require some of those capabilities I list above. If you don't want adaptability, self-repair, or a massively complex design that works, then you may find that an engineer is better able to create a cheap and quick solution.

- What do you think the prevalence of biomimetics in the future will be, especially regarding biomimetic machines?

I think the two areas that are most important are: (1) applications where complexity needs to be managed better, and (2) applications where coping with the unexpected is important. An example of the first area is ubiquitous computing - in a few years we will have computers in *everything* and they'll all be talking to each other. If we don't learn how to do this, then when you walk into a new building you may find your glasses crash, your phone malfunctions and the elevators stop working for you - all the computers shouting at each other will cause chaos around you. Adding security to such systems will also be very important. An example of the second area is any safety-critical system, from air-traffic control to car engine management. Obviously we'd prefer these systems to adapt and cope with unexpected situations such as damage or unforeseen environmental conditions. A classic example of both areas combined is autonomous robotics - if you send a robot to Mars, you ideally want a complex system capable of coping in new environments. Once these kinds of systems are perfected, we might one day see consumer electronics with similar capabilities - televisions that repair themselves. But that won't be for a while (especially since people make money from repairing or replacing TVs).

Posted By Peter Bentley
I was contacted recently by a journalist, presumably interested because of my research and books such as Digital Biology. I'm not sure I how helpful I was, but here are her questions and my answers:

1. How do you see biology playing a role in computation? What are the advantages of biology ( a slow conductor)?

I think you need to view computation differently when considering natural and biological systems. A brain or ant colony does not process symbols, they do not follow a von Neumann architecture and they may or may not be Turing Complete. So conventional computer science is not very good at expressing the computation that biology does. This is, I think, the key to how biology is useful - by analysing how organisms store and process information we can understand a much broader and more fundamental notion of what computation really is.

2. What are some applications that you've found already? Do the applications exist in things that we use today?

Our technology is increasingly resembling biological systems - as we develop more and more interconnected complex systems, we run into countless problems that have already been solved by nature. For example, a flock of birds has no centralised air traffic controller - they all do the task themselves and they never collide even in flocks of millions of birds in a relatively small space. Cells developing in an embryo are able to pass messages to each other and cope even if some are destroyed - a handy ability for new technology such as sensor networks (which may form the basis of the Internet of the future).

3. When (if ever) should we expect to have computers made out of biology?

That depends what you mean by "made out of biology". We already use bio-inspired algorithms such as neural networks, swarm intelligence and genetic algorithms for many practical problems with great success. Some researchers like myself would like to change the architecture of computers and make them resemble biological systems more closely so that we can benefit from biological capabilities more (adaptability, fault tolerance, self-design, self-assembly, self- repair). Other researchers are trying to exploit the building blocks of life (e.g. DNA computing) or actual life (using bacteria), or even to reinvent life (in the field of synthetic biology).

4. Who else should I talk to?

That depends on what you want to know.

5. What initially inspired you to use biology to improve computation? How do you think biology will change computing in the next 10 years to the next 50 years?

Since childhood I have been inspired by evolution. It's my creator, and although it's blind, cruel, indifferent and unthinking, it is the most creative process we've ever encountered. It created living organisms - macro-scale nanotechnology which builds itself, repairs itself, maintains itself, and makes new copies of itself in addition to a million other extraordinary behaviours and functions. Biology has always inspired computation - Turing, von Neumann and Shannon were all fascinated by life, intelligence and biological systems, and scientists have attempted to harness some of the capabilities in computers ever since. As our technology becomes ever more complex and our abilities to create more plastic, embodied technology improve, then computers will look increasingly more similar to biological systems. We will probably always need serial devices to perform conventional mathematics for us, but in the future I fully expect hugely parallel, asynchronous, distributed and biological computers to become commonplace. I think the only difference between a biological organism and a conventional computer is that a conventional computer is a very clumsy and poor example of a computer.

Posted By Peter Bentley
Here's another recent communication from a reader of the Book of Numbers. More unusual one this...

I have read your book, Digital Biology and found it very good. It is possible that we have devised a new theory that is capable of solving the NP Complete class of problems. We have been testing the resulting algorithm with the Knapsack Problem generating large combinatorial explosions, like n150. Precise results show up in less than 2 hours on a not very fast laptop. Would you propose us a definitive test? Best regards

I'm glad you enjoyed the book. There have been many algorithms recently that demonstrate impressive results for limited classes of problems, but normally exceptions are found that prevent the algorithms from truly solving all NP Complete problems. If you are interested you may like to contact one of our researchers at UCL who obtained his doctorate in this area... [details omitted]