New Post

Poplar Optimization Algorithm || Step-By-Step || ~xRay Pixy

Image
The Poplar Optimization Algorithm (POA) is a nature-inspired optimization method based on how poplar trees reproduce. It uses sexual propagation (seed dispersal by wind) for exploration and asexual reproduction (cutting and regrowth) for exploitation. Mutation and chaos factors help maintain diversity and prevent premature convergence, making POA efficient for solving complex optimization problems. Learn the Poplar Optimization Algorithm Step-By-Step using Examples. Video Chapters: Poplar Optimization Algorithm (POA) 00:00 Introduction 02:12 POA Applications 03:32 POA Steps 05:50 Execute Algorithm 1 13:45 Execute Algorithm 2 16:38 Execute Algorithm 3 18:15 Conclusion Main Points of the Poplar Optimization Algorithm (POA) Nature-Inspired Algorithm ā€“ Based on the reproductive mechanisms of poplar trees. Two Key Processes : Sexual Propagation (Seed Dispersal) ā€“ Uses wind to spread seeds, allowing broad exploration. Asexual Reproduction (Cuttings) ā€“ Strong branches grow ...

PSO Python Code || Particle Swarm Optimization in Python || ~xRay Pixy


Particle Swarm Optimization Implementation in Python Video Chapters: 00:00 Introduction 02:01 Code 05:55 Position Initialization 08:06 PSO Main Loop 08:42 Velocity Calculation 10:02 Position Update 10:36 Fitness Evaluation 13:21 Objective Function 17:44 Result 19:00 Conclusion

.....................................................SOURCE CODE.........................................................................
import random import numpy as np from tkinter import messagebox #Define Class Particles class Particle: def __init__ (self,position): self.position=position self.velocity=np.zeros_like(position) self.best_position=position self.best_fitness=float('inf') def PSO(ObjF,Pop_Size,D,MaxT): swarm_best_position=None swarm_best_fitness=float('inf') particles=[] #Posotion Initialization position=np.random.uniform(-0.5,0.5,D) particle=Particle(position) particles.append(particle) #Fitness Update fitness=ObjF(position) if fitness<swarm_best_fitness: swarm_best_fitness=fitness swarm_best_position=position particle.best_position=position particle.best_fitness=fitness #PSO Main Loop for itr in range(MaxT): for particle in particles: #Update Velocity w = 0.8 c1 = 1.2 c2 = 1.2 r1=random.random() r2=random.random() #Velocity Calculation particle.velocity =(w*particle.velocity+c1*r1*(particle.best_position-particle.position)+c2*r2+(swarm_best_position-particle.position)) #New Position particle.position += particle.velocity #Evaluate Fitness fitness = ObjF(particle.position) #Update PBest if fitness<particle.best_fitness: particle.best_fitness=fitness particle.best_position=particle.position #Update GBest if fitness<swarm_best_fitness: swarm_best_fitness=fitness swarm_best_position=particle.position return swarm_best_position,swarm_best_fitness #Define ObjFunction def F1(x): return np.sum(x**2) def F2(x): return np.max(np.abs(x)) Objective_Function ={'F1':F1,'F2':F2} #Parameters Pop_Size=100 MaxT=100 D=2 # Iterate over each objective function and run PSO for funName, ObjF in Objective_Function.items(): Output = "Running Function = " + funName + "\n" best_position,best_fitness = PSO(ObjF,Pop_Size,D,MaxT) Output += "BEST POSITION : " + str(best_position)+"\n" Output += "BEST COST : " + str(best_fitness) Output += "\n" messagebox.showinfo("PSO RUN",Output)



Comments

Popular Post

PARTICLE SWARM OPTIMIZATION ALGORITHM NUMERICAL EXAMPLE

Cuckoo Search Algorithm for Optimization Problems

Particle Swarm Optimization (PSO)

PSO (Particle Swarm Optimization) Example Step-by-Step

how is the LBP |Local Binary Pattern| values calculated? Step-by-Step with Example

Whale Optimization Algorithm Code Implementation || WOA CODE || ~xRay Pixy

Grey Wolf Optimization Algorithm

Grey Wolf Optimization Algorithm Numerical Example

Bat algorithm Explanation Step by Step with example