True wisdom comes to each of us when we realize how little we understand about life, ourselves, and the world around us - Socrates

Tuesday, August 2, 2011

Nature Inspired Computing

This article explains Nature Inspired Computing (NIC) in detail. It is an emerging technology and many techniques have been developed in this area.

Nature Inspired Computing (NIC) is one that aims to develop new computing techniques after getting ideas by observing how nature behaves in various situations to solve complex problems. Research on  NIC has opened new branches such as evolutionary computation, neural networks, artificial immune systems, swarm intelligence, and so on. Robotics researchers, inspired by nature, have developed robotic salamander, water strider robot, mechanical cockroaches, self-configuring robots, and so on.

Biological inspired computing is a subset of nature inspired computing. There are three key differences between traditional computing systems and biological information processing systems: components of biological systems respond slowly but implement much higher-level operations. The ability of biological systems to assemble and grow on their own enables much higher interconnection densities. The implementation of biological systems is not a planned one.

Algorithms, inspired by ant colonies that exhibit swarm intelligence and find optimal paths to food sources, have already been developed. Molecular electronics attempts to develop solid-state components   similar to molecular structures. DNA, the most popular biological molecule, has inspired researchers to work on DNA-based computing.

The advancement of computer science and the remarkable growth of computing power have made the emergence of nature inspired computing possible. NIC techniques are applied in biology, physics, engineering, economy, management, and so on. Whether the models are swarms, colonies, or other natural metaphors, software agents are suitable for modelling extremely complex and dynamic systems.

A typical NIC system is based on self-organization and complex systems. It is a computing system operated by population of autonomous entities surrounded by environment.

Autonomous entity of the NIC system consists of two devices: detectors and effectors. There may be one or more detector that receives information related to its neighbors and to the environment. Obviously the information depends on the system to be modeled or problem to be solved. There may be more than one effectors that makes changes to the internal state, exhibits certain behaviors, and makes changes to the environment. Basically the effector facilitates sharing of information among autonomous entities. NIC system has a repository of local behavior rules. The rules of behavior are crucial to autonomous entity. They are used to decide how autonomous entity must act or react to the information collected by the detector from the environment and neighbors. Autonomous entity should be capable of learning. It must respond to local changing conditions by modifying its rules of behavior over time.

Autonomous entities have what is called ADEAS (Autonomous, Distributed, Emergent, Adaptive, Self-organized) characteristics. Autonomous entities are independent and rational. They use formal computing methods to describe how entities acquire and improve reactive behavior. They have decision making capabilities and are distributed in the environment. They follow predefined protocols and interact with each other to exchange their state information. New complex behaviors emerge when the entities act collectively. The entities respond to changes in the environment by changing their behavior. By interacting with each other the entities self-organize to fine tune their behavior.

Environment may be static or dynamic. In static environment, autonomous entities are free to roam. Dynamic environment acts as notice board allowing autonomous entities post and read local information. The central clock helps synchronize the actions of the autonomous entities.

One who expects solutions from nature for complex problems has to first observe the nature’s behavior carefully. The next step is to use models and list all the behaviors observed so far. The above steps should be repeated till a near perfect working model is obtained. As a by-product some unknown mechanisms may be found. Based on the observation from nature a problem-solving strategy is formulated. Principles such as survival of the fittest and law of the jungle are used to develop the approaches.

Nature Inspired Computing techniques are so flexible that they can be applied to wide range of problems, so adaptable that they can deal with unseen data and capable of learning, so robust that they can handle incomplete data. They have decentralized control of computational activities.