NiaPy/algorithms/modified/hba.py 1 location
|
@@ 60-73 (lines=14) @@
|
| 57 |
|
self.best[i] = self.Sol[j][i] |
| 58 |
|
self.f_min = self.Fitness[j] |
| 59 |
|
|
| 60 |
|
def init_bat(self): |
| 61 |
|
for i in range(self.D): |
| 62 |
|
self.Lb[i] = self.Lower |
| 63 |
|
self.Ub[i] = self.Upper |
| 64 |
|
|
| 65 |
|
for i in range(self.NP): |
| 66 |
|
self.Q[i] = 0 |
| 67 |
|
for j in range(self.D): |
| 68 |
|
rnd = random.uniform(0, 1) |
| 69 |
|
self.v[i][j] = 0.0 |
| 70 |
|
self.Sol[i][j] = self.Lb[j] + (self.Ub[j] - self.Lb[j]) * rnd |
| 71 |
|
self.Fitness[i] = self.Fun(self.D, self.Sol[i]) |
| 72 |
|
self.evaluations = self.evaluations + 1 |
| 73 |
|
self.best_bat() |
| 74 |
|
|
| 75 |
|
@classmethod |
| 76 |
|
def simplebounds(cls, val, lower, upper): |
NiaPy/algorithms/basic/ba.py 1 location
|
@@ 57-70 (lines=14) @@
|
| 54 |
|
self.Fun = Griewank().function() |
| 55 |
|
elif function == 'sphere': |
| 56 |
|
self.Fun = Sphere().function() |
| 57 |
|
else: |
| 58 |
|
raise TypeError('Passed benchmark is not defined!') |
| 59 |
|
|
| 60 |
|
def best_bat(self): |
| 61 |
|
i = 0 |
| 62 |
|
j = 0 |
| 63 |
|
for i in range(self.NP): |
| 64 |
|
if self.Fitness[i] < self.Fitness[j]: |
| 65 |
|
j = i |
| 66 |
|
for i in range(self.D): |
| 67 |
|
self.best[i] = self.Sol[j][i] |
| 68 |
|
self.f_min = self.Fitness[j] |
| 69 |
|
|
| 70 |
|
def init_bat(self): |
| 71 |
|
for i in range(self.D): |
| 72 |
|
self.Lb[i] = self.Lower |
| 73 |
|
self.Ub[i] = self.Upper |
NiaPy/algorithms/basic/fpa.py 1 location
|
@@ 66-78 (lines=13) @@
|
| 63 |
|
val = upper |
| 64 |
|
return val |
| 65 |
|
|
| 66 |
|
def init_flower(self): |
| 67 |
|
for i in range(self.D): |
| 68 |
|
self.Lb[i] = self.Lower |
| 69 |
|
self.Ub[i] = self.Upper |
| 70 |
|
|
| 71 |
|
for i in range(self.NP): |
| 72 |
|
for j in range(self.D): |
| 73 |
|
rnd = random.uniform(0, 1) |
| 74 |
|
self.dS[i][j] = 0.0 |
| 75 |
|
self.Sol[i][j] = self.Lb[j] + (self.Ub[j] - self.Lb[j]) * rnd |
| 76 |
|
self.Fitness[i] = self.Fun(self.D, self.Sol[i]) |
| 77 |
|
self.evaluations = self.evaluations + 1 |
| 78 |
|
self.best_flower() |
| 79 |
|
|
| 80 |
|
def move_flower(self): |
| 81 |
|
S = [[0.0 for i in range(self.D)] for j in range(self.NP)] |