- Notifications
You must be signed in to change notification settings - Fork2
Nature Inspired Optimization Algorithms
License
NotificationsYou must be signed in to change notification settings
salar-shdk/nia
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
NIA is a python package for Nature Inspired Optimization Algorithms which makes optimization process easy and fast.
CheckNIA's PyPI page or simply install it using pip:
pip install nia
Solve Ackley problem using Genetic Algorithm:
fromnia.algorithmsimportGeneticAlgorithmfromnia.problemsimportackleynia=GeneticAlgorithm(cost_function=ackley,lower_bond=[-5,-5],upper_bond=[5,5], )nia.run()print(nia.message);
output:
quit criteria reached best answer is: [-0.02618036 -0.03615453] and best fitness is: 0.0006327163637145361 iteration : 11
Plot:
fromnia.algorithmsimportGeneticAlgorithm# Specific selection, crossover and muttion algorithms are available under related sub-packages.fromnia.selectionsimportTournamentfromnia.crossoversimportRandomSBXfromnia.mutationsimportUniformimportnumpyasnpdefackley(X):x=X[0]y=X[1]return-20*np.exp(-0.2*np.sqrt(0.5* (x**2+y**2)))-np.exp(0.5* (np.cos(2*np.pi*x)+np.cos(2*np.pi*y)))+np.e+20deflog(ga):print(ga.best)lower=np.array([-5,-5])upper=np.array([5,5])nia=GeneticAlgorithm(cost_function=ackley,iteration_function=log,lower_bond=lower,upper_bond=upper,quit_criteria=0.0001,num_variable=2,num_population=20,max_iteration=100,crossover=RandomSBX(2),mutation=Uniform(0.05),selection=Tournament(20) )nia.run()print(nia.message);
output
max iteration reached best answer so far: [-0.02618036 -0.03615453] with best fitness: 0.1786046633597529 iteration : 99
- Genetic algorithm (GeneticAlgorithm)
- Differential Evolution
- Evolutionary Programming
- Artificial Immune System
- Clonal Selection Algorithm
- Biogeography-based
- Symbiotic Organisms Search
- Ant Colony Optimization
- Artificial Bee Colony (ArtificialBeeColony)
- Moth Flame Optimization Algorithm
- Cuckoo Search
- Green Herons Optimization Algorithm
- Bat Algorithm
- Whale Optimization Algorithm
- Krill Herd
- Fish-swarm Algorithm
- Grey Wolf Optimizer
- Shuffle frog-leaping Algorithm
- Cat Swarm Optimization
- Flower Pollination Algorithm
- Invasive Weed Optimization
- Water Cycle Algorithm
- Teaching–Learning-Based Optimization
- Particle Swarm Optimization (ParticleSwarmOptimization)
- Simulated Annealing Algorithm
- Gravitational Search Algorithm
- Big Bang - Big Crunch
- Rank (Rank)
- Tournament (Tournament)
- K-Point (KPoint)
- SBX (SBX)
- Random SBX (RandomSBX)
- Uniform (Uniform)
About
Nature Inspired Optimization Algorithms
Topics
python algorithm optimization genetic-algorithm evolutionary-algorithms ant-colony-optimization differential-evolution cuckoo-search optimization-algorithms particle-swarm-optimization nature-inspired-computation artificial-bee-colony simulated-annealing-algorithm nature-inspired-algorithms huristic nia bioinspired grey-wolf-optimizer evolutionary-programming
Resources
License
Stars
Watchers
Forks
Packages0
No packages published