An introductory explanation regarding the water cycle algorihtm.Complete tutorial can be found at www.baiatra.ws.The Water Cycle Algorithm is a nature-inspired optimization algorithm that mimics the movement and transformation of water in the Earth's hydrological cycle. It is based on the principles of evaporation, condensation, precipitation, and infiltration. This algorithm has gained popularity in solving complex optimization problems due to its ability to efficiently explore and exploit search spaces.
This algorithm is another famous metaheuristics or nature-based optimization technique proposed by Ali Sadollah in the year of 2015.
This video is a part of the BOT Membership available at :
https://innovates.gumroad.com/l/optimization_techniques
Also, you can subscribe to me at hydrogeek@substack,
Participate in completing the course on Optimization at baipatra.ws or an internship on energyinstyle.website
2. This Video is a part
of Bio Inspired
Optimization
Technique
Membership
HydroGeek@Substack 2
3. Problem
Min : 𝑦 = 𝑥2
…Eqn.A
Y objective or variable to be optimized
x design variable or the variable through which y need to be optimized
Eqn A is the objective equation of the problem where you have to minimize y
0 < 𝑥 <1
x ϵ R
Subject to :
HydroGeek@Substack 3
5. Procedure
• This is a Three Step Algorithm
• First Step : Initialize the first set of population with the help of randomization
between 0 to 1. In the current problem there is one design variable. So let us
generate 10 different values of x with the help of randomization.
• Now put each value into Eqn. A. The problem is a minimization problem. So, we
have to find out the minimum value of Y.
• So, Eqn. A can also be referred as Cost Function.
• 10 different values of x was put into Eqn.A to find 10 different values of Y
• Now all the ten Y are arranged in ascending order or from minimum to
maximum value. As the problem is minimization problem. When Y will be
minimum it is giving the most optimal value.
• The value of x at which Y is minimum is referred as the Sea. Three values of x
which make y to be second, third and fourth lowest was considered as Rivers
and remaining values are grouped under streams
HydroGeek@Substack 5
6. Procedure
• Second Step : How many number of values of x need to be
generated can be determined by using Equation 2. Here
number of rivers need to be assumed by the user.
• Here N or Npop is total number of x to be generated.
t is the iteration number
Cost means the value of the objective equation at nth
value
Nsr is the total number of rivers to be added to a single
sea Nsn is the total number of streams to be added to
rivers
C means the constant which varies between 1 and 2
Nstream means total number of streams
HydroGeek@Substack 6
7. Procedure
• Third Step : How to generate new position/population which can again
be used for generation of y?
• Refer to Eqn.3
• Xsea, Xriver and Xstream is the values of x which are classified as sea, rivers
and stream based on the values of the objective function they have
generated.
• C constant and varies between 1 and 2
• rand() is the randomization function which generates fractions between 0
to 1 but not equal to 0 and 1
• To determine the search space, we have to find the radial distance of the
domain of feasibility with the help of Eqn 4 . We have to check this
condition at the end of each iteration and if it satisfies then only, we can
take the values of x as feasible
• This distance is also adaptive and changes with each new iteration as per
the formula given in Eqn.5.
HydroGeek@Substack 7
8. Initialization
Maximum Number of Stream that will be
added to River : Calculation :
New Position/Population
1
2 3
Courtesy : Ali Sadollah et.al. : https://doi.org/10.1016/j.softx.2016.03.001 HydroGeek@Substack 8
9. Distance of Search Space
Adaptive Distance
4
5
Courtesy : Ali Sadollah et.al. : https://doi.org/10.1016/j.softx.2016.03.001 HydroGeek@Substack 9
12. What’s Next
• Read the entire paper on Water Cycle Algorithm :
• https://doi.org/10.1016/j.asoc.2015.01.050
• Try to apply this algorithms for the following problems :
• Optimal Water Allocation in Thermal Power Plant
• Optimal Energy Allocation in Water Treatment Plant
• Maximization of Agriculture Productivity
• Minimization of Time Delay in Delivery of Products by Couriers
• Travelling Salesman Problem
• Optimal Location Selection Problem
• Water Distribution Efficiency Optimization Problems
• Do the same problem with the help of Mine Bursting and Glow Worm or Particle
Swarm check with the help of Best,Average and Worst Value method which one is
the better optimization techniques for all these problems.
HydroGeek@Substack 12
13. You may also
like
• HydroGeek: The newsletter for researchers of water resources
• https://hydrogeek.substack.com/
• Baipatra VSC: Enroll for online courses for Free
• http://baipatra.ws
• Energy in Style: Participate in Online Internships for Free
• http://energyinstyle.website
• Innovate S: Online Shop for Water Researchers
• https://baipatra.stores.instamojo.com/
• Call for Paper: International Journal of HydroClimatic
Engineering
• http://energyinstyle.website/journals/
• Hydro Geek Newsletter Edition 2023.1
• https://notionpress.com/read/hydro-geek-newsletter-edition-
2023-1
• Introduction to Model Development for Prediction, Simulation,
and Optimization.
• https://imojo.in/1DJDUzm