Evolutionary Computing: Standard
Evolutionary Algorithm
Introduction
Evolutionary Computing (EC) is a branch of Nature-Inspired Computing that solves
complex problems by mimicking the process of natural evolution. It is based on the
ideas proposed by Charles Darwin, where the fittest individuals survive and reproduce.
Just as animals and plants evolve over generations, Evolutionary Algorithms (EAs)
improve solutions generation after generation until a good or optimal solution is found.
Real-Life Example: Selecting the Best
Cricket Team
Imagine you are a cricket coach and need to select the best playing XI from 30 players.
Generation 1
You randomly select several teams.
Team Performance Score
Team A 65
Team B 72
Team C 58
Team D 80
Team D performs best.
Evolution Process
1. Select the best teams.
2. Combine strengths of good teams.
3. Make small changes.
4. Create new teams.
5. Test performance again.
After several generations, you obtain a stronger team.
This is exactly how an Evolutionary Algorithm works.
Standard Evolutionary Algorithm
(SEA)
The Standard Evolutionary Algorithm follows these steps:
Step 1: Initialize Population
Create a set of random candidate solutions.
Example:
Suppose we want to maximize:
f(x) = x²
Possible population:
x=2
x=5
x=7
x=9
These are called individuals or chromosomes.
Step 2: Evaluate Fitness
Calculate how good each solution is.
Individual Fitness
2 4
5 25
7 49
9 81
Higher fitness means better solution.
Step 3: Selection
Choose the best individuals as parents.
Example:
Selected:
7
9
Reason:
They have higher fitness values.
This follows the principle:
Survival of the Fittest
Step 4: Crossover (Reproduction)
Parents exchange information to create offspring.
Example:
Parent 1 = 1100
Parent 2 = 1011
Cut at middle:
110|0
101|1
Swap:
1101
1010
New offspring are created.
Real-Life Example
Father is good at mathematics.
Mother is good at music.
Child may inherit both talents.
Similarly, offspring inherit characteristics from both parents.
Step 5: Mutation
Randomly change some bits.
Example:
1101
Mutate one bit:
1111
Mutation introduces diversity.
Real-Life Example
A child may have a new feature not seen in either parent.
Examples:
Different height
Different eye color
New talent
Mutation helps discover new solutions.
Step 6: Replacement
Replace weaker individuals with newly generated offspring.
Old Population:
2, 5, 7, 9
New Population:
7, 9, 10, 11
Population quality improves.
Step 7: Termination
Stop when:
Maximum generations reached
Desired solution found
Fitness no longer improves
Complete Flow Diagram
Initialize Population
↓
Evaluate Fitness
↓
Select Parents
↓
Crossover
↓
Mutation
↓
Create New Population
↓
Termination Check
↓
Stop or Repeat
Real-Time Example 1: Google Maps
Route Optimization
When finding the shortest route:
Each route = individual
Route quality = fitness
Better routes selected
New routes generated
Best route obtained
Evolutionary Algorithms can help solve such optimization problems.
Example 2: Job Recruitment
Suppose a company receives 100 resumes.
Selection
Shortlist top candidates.
Crossover
Combine desirable skills and requirements.
Mutation
Consider candidates with unique skills.
Evolution
Final best employee selected.
Example 3: Agriculture
Farmers develop improved crop varieties.
Select best plants
Crossbreed them
Produce offspring
Select best offspring
After many generations, higher-yield crops are obtained.
This process resembles Evolutionary Algorithms.
Example 4: Machine Learning
Evolutionary Algorithms are used to:
Optimize neural networks
Feature selection
Hyperparameter tuning
Robot control
The algorithm evolves better models over time.
Advantages of Standard Evolutionary
Algorithm
1. Works on complex problems.
2. Does not require mathematical derivatives.
3. Searches globally.
4. Avoids local optima better than simple hill climbing.
5. Can handle large search spaces.
Disadvantages
1. Computationally expensive.
2. May require many generations.
3. No guarantee of finding the absolute optimum.
4. Parameter tuning can be difficult.
Key Terms for Students
Term Meaning
Population Group of solutions
Individual One solution
Chromosome Encoded solution
Fitness Quality of solution
Selection Choosing best parents
Crossover Combining parents
Mutation Random modification
Generation One iteration of evolution