1. Marathwada Mitra Mandal's
COLLEGE OF ENGINEERING
Karve Nagar, Pune
Accredited with ‘A++’ Grade by NAAC
Presentation
On
Subject: Bio-Inspired Optimization Algorithms
510102
by
Dr.Neha Jain
Department of Computer Engineering
2. What is Natural Computing?
Inspiration from Nature
Types of Natural Computing
Applications of Natural Computing
Philosophy of natural computing
Conclusion
Contents
3. What is Natural Computing?
Definition: Natural Computing is a multidisciplinary field that investigates computational
systems and algorithms inspired by nature.
Key Concepts: Mimicking natural processes, harnessing biological principles, and integrating them
into computing.
● Natural computing can be defined as the field of research that, based on or inspired by nature,
allows the development of new computational tools (in software, hardware or ‘wetware’) for
problem solving, leads to the synthesis of natural patterns, behaviors, and organisms, and may
result in the design of novel computing systems that use natural media to compute
● Many products of natural computing are already available in various forms nowadays, in
washing machines, trains, toys, air conditioning devices, motion pictures, inside computers as
virtual life
4. Natural Computing
● It is the computational version of the process of extracting ideas from
nature to develop computational systems or using natural materials to
perform computation
● Natural computing usually integrates experimental and theoretical
biology, physics and chemistry, empirical observations from nature and
several other sciences, facts and processes from different levels of
investigation into nature
5. Inspiration from Nature
● Nature is now being used as a source of inspiration or metaphor for the
development of new techniques for solving complex problems in various
domains, from engineering to biology; computers can simulate and emulate
biological life and processes; and new material
● Evolutionary Algorithms: Inspired by the process of natural selection.
● Neural Networks: Modeled after the human brain.
● Swarm Intelligence: Imitating the behavior of social organisms.
● Genetic Programming: Evolving computer programs like DNA
10. Types of Natural Computing
● Evolutionary Computing
● Neural Computing
● Swarm Computing
● DNA Computing
● Immune System
● Artificial Life
11. Evolutionary Computing
Uses principles of natural selection and genetics.
Genetic Algorithms: Optimize solutions using evolution-inspired
techniques.
Genetic Programming: Evolves computer programs to solve
problems.
12. Genetic Algorithms (GAs)
Inspiration: Genetic algorithms are inspired by the process of natural
selection and genetics.
Working Principle: GAs maintain a population of potential solutions to a
problem. Through successive generations, individuals in the population
are selected, recombined (crossover), and mutated, mimicking the
evolutionary process. Over time, this process leads to improved solutions.
Applications: Optimization, machine learning, evolutionary robotics, and
parameter tuning.
13. Neural Computing
Artificial Neural Networks (ANNs): Simulate human brain
function.
Deep Learning: A subset of neural computing, responsible for
breakthroughs in AI.
14. Neural Networks
Inspiration: Neural networks are inspired by the structure and
functioning of the human brain.
Working Principle: Artificial neural networks (ANNs) consist of
interconnected artificial neurons that process and learn from data. They
can model complex relationships in data and adapt to new information.
Applications: Image and speech recognition, natural language
processing, autonomous vehicles, and various machine learning tasks
15. Swarm Computing
Swarm Intelligence: Based on the collective behavior of social organisms.
Particle Swarm Optimization (PSO): Optimize solutions by simulating
bird flocking or fish schooling.
16. Swarm Intelligence
Inspiration: Swarm intelligence is inspired by the collective behavior of
social organisms like ants, bees, and birds.
Working Principle: Algorithms based on swarm intelligence involve
populations of agents (e.g., particles or agents) that communicate and
coordinate their actions to achieve a common goal.
Applications: Particle Swarm Optimization (PSO) for optimization,
swarm robotics, and behavior modeling.
17. Ant Colony Optimization (ACO)
Inspiration: ACO is inspired by the foraging behavior of real ants.
Working Principle: ACO algorithms use artificial ants that explore
solution spaces. They leave virtual pheromone trails on promising
paths, and other ants are more likely to follow paths with stronger
pheromone concentrations.
Applications: Combinatorial optimization problems like the traveling
salesman problem, network routing, and vehicle routing.
18. Artificial Life
Inspiration: Artificial life (ALife) seeks to create lifelike behaviors
and processes in artificial systems.
Working Principle: ALife involves the simulation of biological and
natural processes to understand the emergence of life-like
properties, such as evolution, self-organization, and adaptation.
Applications: Studying the emergence of life-like phenomena,
robotics, and evolutionary art.
19. Hill Climbing
● A hill-climbing algorithm is an Artificial Intelligence (AI) algorithm that
increases in value continuously until it achieves a peak solution
● This algorithm is used to optimize mathematical problems and in other
real-life applications like marketing and job scheduling
● A hill-climbing algorithm is a local search algorithm that moves
continuously upward (increasing) until the best solution is attained. This
algorithm comes to an end when the peak is reached
20. Hill Climbing
This algorithm has a node that comprises
two parts: state and value. It begins with a
non-optimal state (the hill’s base) and
upgrades this state until a certain
precondition is met.
The heuristic function is used as the basis
for this precondition. The process of
continuous improvement of the current
state of iteration can be termed as
climbing. This explains why the algorithm
is termed as a hill-climbing algorithm.
Heuristic is a technique designed for solving a
problem more quickly when classic methods are too
slow or for finding an approximate solution when
classic methods fail to find any exact solution.
A heuristic function, also simply called a heuristic, is
a function that ranks alternatives in search algorithms at
each branching step based on available information to
decide which branch to follow. For example, it may
approximate the exact solution.
21. Features of a hill climbing algorithm
A hill-climbing algorithm has four main features:
1. It employs a greedy approach: This means that it moves in a direction in which the cost
function is optimized. The greedy approach enables the algorithm to establish local maxima
or minima.
2. No Backtracking: A hill-climbing algorithm only works on the current state and
succeeding states (future). It does not look at the previous states.
3. Feedback mechanism: The algorithm has a feedback mechanism that helps it decide on
the direction of movement (whether up or down the hill). The feedback mechanism is
enhanced through the generate-and-test technique.
4. Incremental change: The algorithm improves the current solution by incremental changes.
23. A state-space diagram consists of various regions that can be explained as follows;
Local maximum: A local maximum is a solution that surpasses other neighboring
solutions or states but is not the best possible solution.
Global maximum: This is the best possible solution achieved by the algorithm.
Current state: This is the existing or present state.
Flat local maximum: This is a flat region where the neighboring solutions attain the
same value.
Shoulder: This is a plateau whose edge is stretching upwards.
State-space diagram analysis CONTD…
24. Problems with hill climbing
There are three regions in which a hill-climbing algorithm cannot attain a global
maximum or the optimal solution: local maximum, ridge, and plateau.
Local maximum
At this point, the neighboring states have lower values than the current state. The
greedy approach feature will not move the algorithm to a worse off state. This will lead
to the hill-climbing process’s termination, even though this is not the best possible
solution.
This problem can be solved using momentum. This technique adds a certain proportion
(m) of the initial weight to the current one. m is a value between 0 and 1. Momentum
enables the hill-climbing algorithm to take huge steps that will make it move past the
local maximum.
25. Problems with hill climbing- Plateau
● In this region, the values attained by the neighboring states are the same. This makes
it difficult for the algorithm to choose the best direction
● This challenge can be overcome by taking a huge jump that will lead you to a
non-plateau space
26. Problems with hill climbing- Ridge
● The hill-climbing algorithm may terminate itself when it reaches a ridge.
● Because the peak of the ridge is followed by downward movement rather than upward
movement.
● This impediment can be solved by going in different directions at once.