![]() |
||
| Description | Screen
Shots | Questions
and Answers | What
Is Cyberlife? | Upcoming Genetics Kit![]() ![]() |
is our proprietary A-Life
technology based on the application of biological metaphors to
software-complexity problems. As software becomes increasingly
complex we start to face problems of how to manage and understand
the systems we build. However, the levels of complexity of these
systems are trivial in comparison to those of even the most
modest biological systems. Why then with all our genius, logic,
and organizational abilities do we find it so difficult to build
complex systems? After years of research it seems the reason and
the problem all lie within the way we think of and approach
complex systems.
Traditionally, science was all about breaking down systems into
their constituent parts. These parts would then be analyzed to
reveal their structure and the functions they perform. This was
the prominent endeavor of the 19th century, and was very useful
as a method of gaining understanding about many things including
simple biology, medicine and physics. During the 20th century,
our endeavors focused on building systems, from the industrial
revolution through to the digital revolution. However, somewhere
along the way we had a paradigm shift and decided that the way to
build or model complex systems was to consider the behavior
required and try to capture this in high level constructs.
Massive rule bases were developed in order to capture the
intelligence and subtlety of human and animal behavior. Needless
to say, these systems failed.
The route of the problem seems to be that the abstracted
knowledge has no grounding - there is no actual physical meaning
to any of the concepts. Therefore, if the programmer of the
system had not considered a possible situation, then the response
of the system may turn out to be erratic, wrong or non-existent.
Natural systems are rarely this brittle. All animals learn from
experience and generalize. An animal will never be in the exact
same situation twice, however it has the innate ability to reason
about the similarities between its current situation and those it
has experienced in the past. The animal will then usually perform
some action that was profitable to it in the similar situations
of its past. If this is a bad thing for the animal to do, it will
learn from its mistakes and try out some other behavior if faced
with a similar scenario in the future.
Why then don't we base our artificial methodolgy on biological
systems? Well, that is exactly what we are doing with.
If we want a system that behaves like a small creature, then we
build a small creature. We model large numbers of cells in the
brain (neurons), and connect them up and send signals between
them, in a way similar to natural cells. We model blood-streams
and chemical reactions. We model a world for the creature to
inhabit, and objects for the creature to interact with. Finally
we model diseases, hunger, emotions, needs and the ability for
the creature to grow, breed and evolve. Only then do you get a
system that behaves like a creature.
The first results from this philosophy can be seen in Creatures.
Take a look, interact with them. Decide for yourself.