else: realK = kVal for [search, distance, cum] in runConfigs: params = sim.SimInput(nVal, realK) params.setSearchMethod(search) params.setMutateDistance(distance) params.setCumulativeDistance(cum) params.generateAdjMatrix() utils.logInitialConditions(logger, params, landscapes) simulation = model.NK(params) key = int(round(time.time() * 1000)) output = simulation.runSimulation(key, landscapes) utils.logResults(logger, params, output, landscapes) nextRow = [] nextRow.append(params.nValue()) nextRow.append(params.kValue()) nextRow.append(output.meanFitness()) nextRow.append(params.searchMethodString()) nextRow.append(params.mutateDistance()) nextRow.append(params.cumulativeDistance()) nextRow.append(output.landscapes()) nextRow.append(output.stddevFitness()) nextRow.append(output.meanAttemptedFlips()) nextRow.append(output.meanAcceptedFlips()) resWriter.writerow(nextRow) resFile.flush() results.append([params, output])
maxTimePeriod = int(div100 * 100) output = [] plt.figure(figsize=(15,24)) plt.xlabel("Time Period") plt.ylabel("Fitness") ax = plt.subplot(len(settings.kList) * len(settings.nList), 1, plotId) """ Calculate the time periodwise average system fitness """ for configIndex in range(0, len(runConfigs)): tempo = sim.SimOutput() tempo.setLandscapes(landscapes) tempo.setFinessDistribution(fitnessDistribution[configIndex]) tempo.setAttemptedFlipsDistribution(attemptedFlipsDist[configIndex]) tempo.setAcceptedFlipsDistribution(acceptedFlipsDist[configIndex]) output.append(tempo) utils.logResults(logger, params[configIndex], tempo, landscapes) nextRow = [] nextRow.append(params[configIndex].nValue()) nextRow.append(params[configIndex].kValue()) nextRow.append(output[configIndex].meanFitness()) nextRow.append(params[configIndex].searchMethodString()) nextRow.append(params[configIndex].mutateDistance()) nextRow.append(params[configIndex].cumulativeDistance()) nextRow.append(output[configIndex].landscapes()) nextRow.append(output[configIndex].stddevFitness()) nextRow.append(output[configIndex].meanAttemptedFlips()) nextRow.append(output[configIndex].meanAcceptedFlips()) resWriter.writerow(nextRow) resFile.flush() results.append([params[configIndex], output[configIndex]])