Biology Inspired Computing Work

By selecting attractive parents, more attractive children are born.

So, if you cross bread better solutions to a given problem, you can find a better solution.

Using this, i decided to demonstrate this principal visually using c#.net.

If you was a spider, and you was looking for a nice place to live, where would you live? In this example, you have to assume the bird represents a birds nest. You would want to live as far away from this as possible. You also have to assume that your source of food is in the grass. You would want to be as close to this as possible.

The aim of this program is to calculate the best solution to the given problem.

1st Generation

The answer to this problem is still unknown. We generate 100 random solutions and then assess how fit are the solutions. Fitness is measured by calculating the distance from the grass (On the grass is ideal) then subtracting the distance from the bird.

1st Generation

The answer to this problem is still unknown. We generate 100 random solutions and then assess how fit are the solutions. Fitness is measured by calculating the distance from the grass (On the grass is ideal) then subtracting the distance from the bird.

Generation 2, Getting closer

The fitness results have been sorted into order. The 50 most unfit solutions have been deleted. From the 50 remaining solutions, 100 new potential solutions were generated. The new solutions take some of the information from the parents (ie - their coordinates are related by an equasion).

Generation 2, Getting closer

The fitness results have been sorted into order. The 50 most unfit solutions have been deleted. From the 50 remaining solutions, 100 new potential solutions were generated. The new solutions take some of the information from the parents (ie - their coordinates are related by an equasion).

Generation 3

Calculating fitness, removing some unfit solutions and generating new solutions close to the existing ones is repeated (again and again).

Generation 3

Calculating fitness, removing some unfit solutions and generating new solutions close to the existing ones is repeated (again and again).

Generation 3

And again and again and again.

Generation 3

And again and again and again.

5 Cycles

1 in 1000 solutions is generated completely at random. This is mutation. The rate of mutation can be changed [too much and you never settle at a solution, too little and you risk missing the solution all together]. If This prevents the search from getting stuck in a local best situation. [Example, imagine you are in the centre of a range of mountains, every direction you look is up hill so you believe you are at the lowest ground level when this isnt the case - if you had a friend who parachuted out a helicopter at a random coordinates, he may be able to see that behind the mountain there is a big hole in the floor]

5 Cycles

1 in 1000 solutions is generated completely at random. This is mutation. The rate of mutation can be changed [too much and you never settle at a solution, too little and you risk missing the solution all together]. If This prevents the search from getting stuck in a local best situation. [Example, imagine you are in the centre of a range of mountains, every direction you look is up hill so you believe you are at the lowest ground level when this isnt the case - if you had a friend who parachuted out a helicopter at a random coordinates, he may be able to see that behind the mountain there is a big hole in the floor]

10 Cycles

10 Cycles

After 20 cycles, they have almost settled at the best location

After 20 cycles, they have almost settled at the best location

After 20 cycles, they have almost settled at the best location

As you can see, the spiders have moved to the optimum coordinates.

After 20 cycles, they have almost settled at the best location

As you can see, the spiders have moved to the optimum coordinates.

To use this download, you need the .net platform installed.

Download Intelligent spider program

###
View the source Code

## Download

To use this download, you need the .net platform installed.

Download Intelligent spider program

### Developers

###
View the source Code

Developers Download