kmc.update_V() kmc.simulate_discrete(prehops=prehops) for l in range(cf.avg): kmc.simulate_discrete(hops=hops) output[k * cf.avg + l] = kmc.current[cf.output] outputArray[i, j] = output fitness_list.append(cf.Fitness(output, cf.target)) genePool.fitness[j] = min(fitness_list) fitnessArray[i, j] = genePool.fitness[j] # Status print print("Generation nr. " + str(i + 1) + " completed") print("Highest fitness: " + str(max(genePool.fitness))) # Evolve to the next generation genePool.NextGen() # Save experiment SaveLib.saveArrays(filepath, geneArray=geneArray, fitnessArray=fitnessArray, outputArray=outputArray, target=cf.target, P=P, Q=Q) domain = kmc_dn_utils.visualize_basic(kmc) plt.figure() plt.plot(output) plt.show()
voltage[:, k * cf.avg + l] = kmc.electrodes[:, 3] voltageArray[i, j] = voltage currentArray[i, j] = output #fitness_list.append(cf.Fitness(voltage, output, cf.target)) fitness_list.append(cf.Fitness(output[2], cf.target)) genePool.fitness[j] = min(fitness_list) fitnessArray[i, j] = genePool.fitness[j] # Status print print("Generation nr. " + str(i + 1) + " completed") print("Highest fitness: " + str(max(genePool.fitness))) # Evolve to the next generation genePool.NextGen() # Save experiment SaveLib.saveArrays(filepath, geneArray=geneArray, fitnessArray=fitnessArray, currentArray=currentArray, voltageArray=voltageArray, target=cf.target, P=P, Q=Q) domain = kmc_dn_utils.visualize_basic(kmc) plt.figure() plt.plot(output) plt.show()
current_array = kmc_dn_utils.IV(kmc, 0, voltagelist, prehops=prehops, hops=hops) output = current_array[1] outputArray[i, j] = output fitness_list.append(cf.Fitness(output, target)) genePool.fitness[j] = min(fitness_list) fitnessArray[i, j] = genePool.fitness[j] # Status print print("Generation nr. " + str(i + 1) + " completed") print("Highest fitness: " + str(max(genePool.fitness))) # Evolve to the next generation genePool.NextGen() # Save experiment SaveLib.saveArrays( filepath, geneArray=geneArray, fitnessArray=fitnessArray, outputArray=outputArray, voltagelist=voltagelist, target=target, ) print('All done!')