|
1 | 1 | """Useful optimizers, a set of optimization algorithms. |
2 | 2 |
|
3 | | -This package provides 54 optimization algorithms organized into categories: |
| 3 | +This package provides 64+ optimization algorithms organized into categories: |
4 | 4 | - gradient_based: Gradient-based optimizers (AdaDelta, AdaGrad, Adam, etc.) |
5 | | -- swarm_intelligence: Nature-inspired swarm algorithms (PSO, ACO, etc.) |
| 5 | +- swarm_intelligence: Nature-inspired swarm algorithms (PSO, ACO, HHO, MPA, etc.) |
6 | 6 | - evolutionary: Evolutionary algorithms (GA, DE, CMA-ES, etc.) |
7 | 7 | - classical: Classical optimization methods (BFGS, Nelder-Mead, etc.) |
8 | 8 | - metaheuristic: Metaheuristic algorithms (Harmony Search, etc.) |
9 | 9 | - constrained: Constrained optimization methods |
10 | 10 | - probabilistic: Probabilistic optimization methods |
| 11 | +- multi_objective: Multi-objective optimization (NSGA-II, etc.) |
| 12 | +- physics_inspired: Physics-inspired algorithms (GSA, EO, etc.) |
11 | 13 |
|
12 | 14 | All optimizers are re-exported at the package level for backward compatibility. |
13 | 15 | """ |
|
30 | 32 |
|
31 | 33 | # Constrained optimization |
32 | 34 | from opt.constrained import AugmentedLagrangian |
| 35 | +from opt.constrained import BarrierMethodOptimizer |
| 36 | +from opt.constrained import PenaltyMethodOptimizer |
| 37 | +from opt.constrained import SequentialQuadraticProgramming |
33 | 38 | from opt.constrained import SuccessiveLinearProgramming |
34 | 39 |
|
35 | 40 | # Evolutionary algorithms |
|
54 | 59 | from opt.gradient_based import SGDMomentum |
55 | 60 |
|
56 | 61 | # Metaheuristic algorithms |
| 62 | +from opt.metaheuristic import ArithmeticOptimizationAlgorithm |
57 | 63 | from opt.metaheuristic import CollidingBodiesOptimization |
58 | 64 | from opt.metaheuristic import CrossEntropyMethod |
59 | 65 | from opt.metaheuristic import EagleStrategy |
| 66 | +from opt.metaheuristic import ForensicBasedInvestigationOptimizer |
60 | 67 | from opt.metaheuristic import HarmonySearch |
61 | 68 | from opt.metaheuristic import ParticleFilter |
62 | 69 | from opt.metaheuristic import ShuffledFrogLeapingAlgorithm |
|
67 | 74 | from opt.metaheuristic import VariableNeighborhoodSearch |
68 | 75 | from opt.metaheuristic import VeryLargeScaleNeighborhood |
69 | 76 |
|
| 77 | +# Multi-objective algorithms (additional) |
| 78 | +from opt.multi_objective import MOEAD |
| 79 | +from opt.multi_objective import NSGAII |
| 80 | +from opt.multi_objective import SPEA2 |
| 81 | + |
| 82 | +# Multi-objective algorithms |
| 83 | +from opt.multi_objective import AbstractMultiObjectiveOptimizer |
| 84 | + |
| 85 | +# Physics-inspired algorithms (additional) |
| 86 | +from opt.physics_inspired import AtomSearchOptimizer |
| 87 | + |
| 88 | +# Physics-inspired algorithms |
| 89 | +from opt.physics_inspired import EquilibriumOptimizer |
| 90 | +from opt.physics_inspired import GravitationalSearchOptimizer |
| 91 | +from opt.physics_inspired import RIMEOptimizer |
| 92 | + |
70 | 93 | # Probabilistic algorithms |
| 94 | +from opt.probabilistic import AdaptiveMetropolisOptimizer |
| 95 | +from opt.probabilistic import BayesianOptimizer |
71 | 96 | from opt.probabilistic import LDAnalysis |
72 | 97 | from opt.probabilistic import ParzenTreeEstimator |
| 98 | +from opt.probabilistic import SequentialMonteCarloOptimizer |
| 99 | + |
| 100 | +# Social-inspired algorithms |
| 101 | +from opt.social_inspired import PoliticalOptimizer |
| 102 | +from opt.social_inspired import SoccerLeagueOptimizer |
| 103 | +from opt.social_inspired import SocialGroupOptimizer |
| 104 | +from opt.social_inspired import TeachingLearningOptimizer |
| 105 | +from opt.swarm_intelligence import AfricanBuffaloOptimizer |
| 106 | +from opt.swarm_intelligence import AfricanVulturesOptimizer |
73 | 107 |
|
74 | 108 | # Swarm intelligence algorithms |
75 | 109 | from opt.swarm_intelligence import AntColony |
| 110 | +from opt.swarm_intelligence import AntLionOptimizer |
| 111 | +from opt.swarm_intelligence import AquilaOptimizer |
76 | 112 | from opt.swarm_intelligence import ArtificialFishSwarm |
| 113 | +from opt.swarm_intelligence import ArtificialGorillaTroopsOptimizer |
| 114 | +from opt.swarm_intelligence import ArtificialHummingbirdAlgorithm |
| 115 | +from opt.swarm_intelligence import ArtificialRabbitsOptimizer |
| 116 | +from opt.swarm_intelligence import BarnaclesMatingOptimizer |
77 | 117 | from opt.swarm_intelligence import BatAlgorithm |
78 | 118 | from opt.swarm_intelligence import BeeAlgorithm |
| 119 | +from opt.swarm_intelligence import BlackWidowOptimizer |
| 120 | +from opt.swarm_intelligence import BrownBearOptimizer |
79 | 121 | from opt.swarm_intelligence import CatSwarmOptimization |
| 122 | +from opt.swarm_intelligence import ChimpOptimizationAlgorithm |
| 123 | +from opt.swarm_intelligence import CoatiOptimizer |
80 | 124 | from opt.swarm_intelligence import CuckooSearch |
| 125 | +from opt.swarm_intelligence import DandelionOptimizer |
| 126 | +from opt.swarm_intelligence import DingoOptimizer |
| 127 | +from opt.swarm_intelligence import DragonflyOptimizer |
| 128 | +from opt.swarm_intelligence import EmperorPenguinOptimizer |
| 129 | +from opt.swarm_intelligence import FennecFoxOptimizer |
81 | 130 | from opt.swarm_intelligence import FireflyAlgorithm |
| 131 | +from opt.swarm_intelligence import FlowerPollinationAlgorithm |
| 132 | +from opt.swarm_intelligence import GiantTrevallyOptimizer |
82 | 133 | from opt.swarm_intelligence import GlowwormSwarmOptimization |
| 134 | +from opt.swarm_intelligence import GoldenEagleOptimizer |
| 135 | +from opt.swarm_intelligence import GrasshopperOptimizer |
83 | 136 | from opt.swarm_intelligence import GreyWolfOptimizer |
| 137 | +from opt.swarm_intelligence import HarrisHawksOptimizer |
| 138 | +from opt.swarm_intelligence import HoneyBadgerAlgorithm |
| 139 | +from opt.swarm_intelligence import MantaRayForagingOptimization |
| 140 | +from opt.swarm_intelligence import MarinePredatorsOptimizer |
| 141 | +from opt.swarm_intelligence import MayflyOptimizer |
| 142 | +from opt.swarm_intelligence import MothFlameOptimizer |
| 143 | +from opt.swarm_intelligence import MothSearchAlgorithm |
| 144 | +from opt.swarm_intelligence import MountainGazelleOptimizer |
| 145 | +from opt.swarm_intelligence import OrcaPredatorAlgorithm |
| 146 | +from opt.swarm_intelligence import OspreyOptimizer |
84 | 147 | from opt.swarm_intelligence import ParticleSwarm |
| 148 | +from opt.swarm_intelligence import PathfinderAlgorithm |
| 149 | +from opt.swarm_intelligence import PelicanOptimizer |
| 150 | +from opt.swarm_intelligence import ReptileSearchAlgorithm |
| 151 | +from opt.swarm_intelligence import SalpSwarmOptimizer |
| 152 | +from opt.swarm_intelligence import SandCatSwarmOptimizer |
| 153 | +from opt.swarm_intelligence import SeagullOptimizationAlgorithm |
| 154 | +from opt.swarm_intelligence import SlimeMouldAlgorithm |
| 155 | +from opt.swarm_intelligence import SnowGeeseOptimizer |
| 156 | +from opt.swarm_intelligence import SpottedHyenaOptimizer |
85 | 157 | from opt.swarm_intelligence import SquirrelSearchAlgorithm |
| 158 | +from opt.swarm_intelligence import StarlingMurmurationOptimizer |
| 159 | +from opt.swarm_intelligence import TunicateSwarmAlgorithm |
86 | 160 | from opt.swarm_intelligence import WhaleOptimizationAlgorithm |
| 161 | +from opt.swarm_intelligence import WildHorseOptimizer |
| 162 | +from opt.swarm_intelligence import ZebraOptimizer |
87 | 163 |
|
88 | 164 |
|
89 | 165 | __version__ = "0.1.2" |
90 | 166 |
|
91 | 167 | __all__: list[str] = [ |
92 | | - # Classical |
93 | 168 | "BFGS", |
94 | 169 | "LBFGS", |
| 170 | + "MOEAD", |
| 171 | + "NSGAII", |
95 | 172 | "SGD", |
| 173 | + "SPEA2", |
96 | 174 | "ADAGrad", |
97 | 175 | "ADAMOptimization", |
98 | 176 | "AMSGrad", |
99 | | - # Base class |
| 177 | + "AbstractMultiObjectiveOptimizer", |
100 | 178 | "AbstractOptimizer", |
101 | | - # Gradient-based |
102 | 179 | "AdaDelta", |
103 | 180 | "AdaMax", |
104 | 181 | "AdamW", |
105 | | - # Swarm intelligence |
| 182 | + "AdaptiveMetropolisOptimizer", |
| 183 | + "AfricanBuffaloOptimizer", |
| 184 | + "AfricanVulturesOptimizer", |
106 | 185 | "AntColony", |
| 186 | + "AntLionOptimizer", |
| 187 | + "AquilaOptimizer", |
| 188 | + "ArithmeticOptimizationAlgorithm", |
107 | 189 | "ArtificialFishSwarm", |
108 | | - # Constrained |
| 190 | + "ArtificialGorillaTroopsOptimizer", |
| 191 | + "ArtificialHummingbirdAlgorithm", |
| 192 | + "ArtificialRabbitsOptimizer", |
| 193 | + "AtomSearchOptimizer", |
109 | 194 | "AugmentedLagrangian", |
| 195 | + "BarnaclesMatingOptimizer", |
| 196 | + "BarrierMethodOptimizer", |
110 | 197 | "BatAlgorithm", |
| 198 | + "BayesianOptimizer", |
111 | 199 | "BeeAlgorithm", |
112 | | - # Evolutionary |
| 200 | + "BlackWidowOptimizer", |
| 201 | + "BrownBearOptimizer", |
113 | 202 | "CMAESAlgorithm", |
114 | 203 | "CatSwarmOptimization", |
115 | | - # Metaheuristic |
| 204 | + "ChimpOptimizationAlgorithm", |
| 205 | + "CoatiOptimizer", |
116 | 206 | "CollidingBodiesOptimization", |
117 | 207 | "ConjugateGradient", |
118 | 208 | "CrossEntropyMethod", |
119 | 209 | "CuckooSearch", |
120 | 210 | "CulturalAlgorithm", |
| 211 | + "DandelionOptimizer", |
121 | 212 | "DifferentialEvolution", |
| 213 | + "DingoOptimizer", |
| 214 | + "DragonflyOptimizer", |
122 | 215 | "EagleStrategy", |
| 216 | + "EmperorPenguinOptimizer", |
| 217 | + "EquilibriumOptimizer", |
123 | 218 | "EstimationOfDistributionAlgorithm", |
| 219 | + "FennecFoxOptimizer", |
124 | 220 | "FireflyAlgorithm", |
| 221 | + "FlowerPollinationAlgorithm", |
| 222 | + "ForensicBasedInvestigationOptimizer", |
125 | 223 | "GeneticAlgorithm", |
| 224 | + "GiantTrevallyOptimizer", |
126 | 225 | "GlowwormSwarmOptimization", |
| 226 | + "GoldenEagleOptimizer", |
| 227 | + "GrasshopperOptimizer", |
| 228 | + "GravitationalSearchOptimizer", |
127 | 229 | "GreyWolfOptimizer", |
128 | 230 | "HarmonySearch", |
| 231 | + "HarrisHawksOptimizer", |
129 | 232 | "HillClimbing", |
| 233 | + "HoneyBadgerAlgorithm", |
130 | 234 | "ImperialistCompetitiveAlgorithm", |
131 | | - # Probabilistic |
132 | 235 | "LDAnalysis", |
| 236 | + "MantaRayForagingOptimization", |
| 237 | + "MarinePredatorsOptimizer", |
| 238 | + "MayflyOptimizer", |
| 239 | + "MothFlameOptimizer", |
| 240 | + "MothSearchAlgorithm", |
| 241 | + "MountainGazelleOptimizer", |
133 | 242 | "Nadam", |
134 | 243 | "NelderMead", |
135 | 244 | "NesterovAcceleratedGradient", |
| 245 | + "OrcaPredatorAlgorithm", |
| 246 | + "OspreyOptimizer", |
136 | 247 | "ParticleFilter", |
137 | 248 | "ParticleSwarm", |
138 | 249 | "ParzenTreeEstimator", |
| 250 | + "PathfinderAlgorithm", |
| 251 | + "PelicanOptimizer", |
| 252 | + "PenaltyMethodOptimizer", |
| 253 | + "PoliticalOptimizer", |
139 | 254 | "Powell", |
| 255 | + "RIMEOptimizer", |
140 | 256 | "RMSprop", |
| 257 | + "ReptileSearchAlgorithm", |
141 | 258 | "SGDMomentum", |
| 259 | + "SalpSwarmOptimizer", |
| 260 | + "SandCatSwarmOptimizer", |
| 261 | + "SeagullOptimizationAlgorithm", |
| 262 | + "SequentialMonteCarloOptimizer", |
| 263 | + "SequentialQuadraticProgramming", |
142 | 264 | "ShuffledFrogLeapingAlgorithm", |
143 | 265 | "SimulatedAnnealing", |
144 | 266 | "SineCosineAlgorithm", |
| 267 | + "SlimeMouldAlgorithm", |
| 268 | + "SnowGeeseOptimizer", |
| 269 | + "SoccerLeagueOptimizer", |
| 270 | + "SocialGroupOptimizer", |
| 271 | + "SpottedHyenaOptimizer", |
145 | 272 | "SquirrelSearchAlgorithm", |
| 273 | + "StarlingMurmurationOptimizer", |
146 | 274 | "StochasticDiffusionSearch", |
147 | 275 | "StochasticFractalSearch", |
148 | 276 | "SuccessiveLinearProgramming", |
149 | 277 | "TabuSearch", |
| 278 | + "TeachingLearningOptimizer", |
150 | 279 | "TrustRegion", |
| 280 | + "TunicateSwarmAlgorithm", |
151 | 281 | "VariableDepthSearch", |
152 | 282 | "VariableNeighborhoodSearch", |
153 | 283 | "VeryLargeScaleNeighborhood", |
154 | 284 | "WhaleOptimizationAlgorithm", |
| 285 | + "WildHorseOptimizer", |
| 286 | + "ZebraOptimizer", |
155 | 287 | ] |
0 commit comments