in jsuarez/tools/TestGA.py [0:0]
def GA(fitness, generations, n, t, sigma, dims):
P, F = [], []
for g in range(generations):
Pn, Fn = [], []
for i in range(n):
if g == 0:
P.append(StimNet(*dims))
F.append(fitness(P[-1]))
elif i == 0:
Pn.append(P[0])
Fn.append(F[0])
else:
k = np.random.randint(0, t)
Pn.append(randomMutation(P[k], sigma))
Fn.append(fitness(Pn[-1]))
#Sort dec by F
if g > 0:
inds = np.argsort(Fn)[::-1]
F = np.asarray(Fn)[inds].tolist()
P = np.asarray(Pn)[inds].tolist()
print(F[0])