### Natural Selection: Nature’s rule in Mathematics

In any discussion of natural selection, the person who inevitably comes into the scene is none but the most renowned, and simultaneously criticized British Naturalist of eighteenth century, Charles Darwin. Most of us know him for his connection with evolution. In reality, the birth of the concept of evolution took place far earlier. However, he added a very exquisite insight to explain evolution: the event of Natural Selection.

There may be long debates on evolution - what exact path a species took to evolve to its current standing, but there is no doubt about the strength and power of the theory of natural selection. This theory states that in a competing population, individuals with the maximum fitness survive and are able to reproduce.

Natural selection can be explained with a simpler example: suppose, once upon a time there were four princes in a kingdom who one day went hunting together. During their hunting adventure, suddenly they entered into a cursed dark forest and lost their way to the outside world. There lived a beautiful lady in the forest who was the only human there. Because of the need for physical desire and pro-creating, all of the princes wanted to get the lady. However, only one of them can get a baby with the lady at any given time. This lead to a situation of conflicting interests among the princes - the only solution being to fight each other. Having been never used to giving up what they desired, the princes did not waste any time to attach one another which continued until only one of them was alive. With exuberance and excitement, the prince forgot the demise of his brothers or cousins and approached the lady to be intimate with her. Eventually, they gave birth and passed their genes to their children. Thus, only the one lucky prince was selected by nature - natural selection. In nature, this perpetual competition happens between individuals all the time - among the same species or between different species.

A competition usually is the result of the imbalance between demand and supply of resources. This is a limiting factor for any population. Based on this principle many of the most efficient algorithms are formulated. They are called Genetic Algorithms.

An algorithm is a collection of mathematical steps for solving a problem. Algorithms are used widely for formulating computer programs. Every command you make in your computer is a set of instructions which are implemented by the computer using algorithms. However, the use of algorithm is not only confined in computer programs. A very simple algorithm can be given for adding two numbers (3 and 5).

Step 1. Take the first number, 3

Step 2. Add 1 to 3.

Step 3. Repeat the step for more four times.

Step 4. Get the answer.

You must be thinking what the need for algorithm is if you can do the addition directly saying 3 + 5 = 8. If you ask yourself how do you know 3 and 5 make 8, you will realize that you actually take 3 and then add five 1's to it. Algorithms are usually used to solve the difficult mathematical problems. Traveling salesman problem is one of the many. In this problem, a salesman has to travel to a definite number of cities (it may be 10, 50 and so on). Suppose he has to travel through 30 cities. He has to cover all the cities, every city once, so that the total path he travels is minimum. How will he decide which one is the shortest path? Think about it. Is it possible to answer this in seconds?!

Testing every possibility for an N city tour would be N! math additions. A 30 city tour would have to measure the total distance of 2.65 * 10^32 different tours. Assuming a trillion additions per second, this would take 252,333,390,232,297 years. Adding one more city would cause the time to increase by a factor of 31. Obviously, this is an impossible solution.

The solution can be found using an algorithm. If a genetic algorithm is used the result of a complex problem would be obtained in few minutes which would otherwise require a huge time. Genetic Algorithm is a kind of algorithm that uses the theory of Natural Selection as its core logic. Here some random results are produced first which are called parents. Then the parents are crossed to find their child which would be a better result. Iteration of the process yields the final result in the end. Thus the fittest population is identified.

Genetic algorithm can give some approximate results which not necessarily the most accurate result. This can be an advantage of genetic algorithm over other algorithms - returning the user not only the exact result but also a set of similar results during a computation.

This kind of algorithms can be useed widely for the development of software to analyze biological information. The software generates solutions for problems related to the analysis of mutation, inheritance, mutation, selection, and crossover. Thus natural selection is applicable not only to understand evolution but also in other areas like mathematics and computer science.

There may be long debates on evolution - what exact path a species took to evolve to its current standing, but there is no doubt about the strength and power of the theory of natural selection. This theory states that in a competing population, individuals with the maximum fitness survive and are able to reproduce.

Natural selection can be explained with a simpler example: suppose, once upon a time there were four princes in a kingdom who one day went hunting together. During their hunting adventure, suddenly they entered into a cursed dark forest and lost their way to the outside world. There lived a beautiful lady in the forest who was the only human there. Because of the need for physical desire and pro-creating, all of the princes wanted to get the lady. However, only one of them can get a baby with the lady at any given time. This lead to a situation of conflicting interests among the princes - the only solution being to fight each other. Having been never used to giving up what they desired, the princes did not waste any time to attach one another which continued until only one of them was alive. With exuberance and excitement, the prince forgot the demise of his brothers or cousins and approached the lady to be intimate with her. Eventually, they gave birth and passed their genes to their children. Thus, only the one lucky prince was selected by nature - natural selection. In nature, this perpetual competition happens between individuals all the time - among the same species or between different species.

A competition usually is the result of the imbalance between demand and supply of resources. This is a limiting factor for any population. Based on this principle many of the most efficient algorithms are formulated. They are called Genetic Algorithms.

An algorithm is a collection of mathematical steps for solving a problem. Algorithms are used widely for formulating computer programs. Every command you make in your computer is a set of instructions which are implemented by the computer using algorithms. However, the use of algorithm is not only confined in computer programs. A very simple algorithm can be given for adding two numbers (3 and 5).

Step 1. Take the first number, 3

Step 2. Add 1 to 3.

Step 3. Repeat the step for more four times.

Step 4. Get the answer.

You must be thinking what the need for algorithm is if you can do the addition directly saying 3 + 5 = 8. If you ask yourself how do you know 3 and 5 make 8, you will realize that you actually take 3 and then add five 1's to it. Algorithms are usually used to solve the difficult mathematical problems. Traveling salesman problem is one of the many. In this problem, a salesman has to travel to a definite number of cities (it may be 10, 50 and so on). Suppose he has to travel through 30 cities. He has to cover all the cities, every city once, so that the total path he travels is minimum. How will he decide which one is the shortest path? Think about it. Is it possible to answer this in seconds?!

Testing every possibility for an N city tour would be N! math additions. A 30 city tour would have to measure the total distance of 2.65 * 10^32 different tours. Assuming a trillion additions per second, this would take 252,333,390,232,297 years. Adding one more city would cause the time to increase by a factor of 31. Obviously, this is an impossible solution.

The solution can be found using an algorithm. If a genetic algorithm is used the result of a complex problem would be obtained in few minutes which would otherwise require a huge time. Genetic Algorithm is a kind of algorithm that uses the theory of Natural Selection as its core logic. Here some random results are produced first which are called parents. Then the parents are crossed to find their child which would be a better result. Iteration of the process yields the final result in the end. Thus the fittest population is identified.

Genetic algorithm can give some approximate results which not necessarily the most accurate result. This can be an advantage of genetic algorithm over other algorithms - returning the user not only the exact result but also a set of similar results during a computation.

This kind of algorithms can be useed widely for the development of software to analyze biological information. The software generates solutions for problems related to the analysis of mutation, inheritance, mutation, selection, and crossover. Thus natural selection is applicable not only to understand evolution but also in other areas like mathematics and computer science.