def begin_evolution(self): # Begin actual evolution start_time = time.time() pop = self.pop pred_pop = self.pred_pop for g in xrange(self.gen_start_number, self.gen_start_number + Darwin.NGEN): creatures, predators = self.simulate(pop, pred_pop) pop = self.evolve_population(creatures, g) if len(pred_pop) > 0: pred_pop = self.evolve_population(predators, g) if g % 20 == 0: self.printTimeStats(start_time, g) self.pop = pop self.pred_pop = pred_pop self.gen_start_number = g f = open(Darwin.save_file, 'w') self.save_population(f) stats.save_stats(open('stats_' + Darwin.save_file, 'w')) stats.plot_all()
def begin_evolution(self): # Begin actual evolution start_time = time.time() pop = self.pop pred_pop = self.pred_pop for g in xrange(self.gen_start_number,self.gen_start_number+Darwin.NGEN): creatures, predators = self.simulate(pop, pred_pop) pop = self.evolve_population(creatures, g) if len(pred_pop) > 0: pred_pop = self.evolve_population(predators, g) if g % 20 == 0: self.printTimeStats(start_time, g) self.pop = pop self.pred_pop = pred_pop self.gen_start_number = g f = open(Darwin.save_file,'w') self.save_population(f) stats.save_stats(open('stats_' + Darwin.save_file,'w')) stats.plot_all()
""" else: #just copy the files print "Copying data files to ", data_dir for csvf in glob.iglob(join(args.indir[0],"*.csv")): shutil.copyfile(csvf, join(data_dir, os.path.basename(csvf))) """ print "Instantiating Slicer and loading series" slicer = Slicer(taskfile=join(data_dir, 'task.xls')) filelist=[join(data_dir,f) for f in os.listdir(data_dir) if \ re.compile(".*\.csv").match(f)] num_subjects = len(filelist) slicer.load_series_from_csv('raw', filelist) if args.stats: pp = PdfPages(join(report_dir, 'stats.pdf')) stats.plot_all(slicer, pp) fig, ax = plt.subplots() ax.plot(range(1, num_subjects + 1)) plt.title("Number of subjects") pp.savefig(fig) pp.close() if args.kernelsvm: kernel_svm.do_kernelsvm_slicer(slicer) if args.chartsforpaper: pp = PdfPages(join(report_dir, 'rolling_median.pdf')) charts_for_paper.do_charts(slicer, pp) pp.close()
""" else: #just copy the files print "Copying data files to ", data_dir for csvf in glob.iglob(join(args.indir[0],"*.csv")): shutil.copyfile(csvf, join(data_dir, os.path.basename(csvf))) """ print "Instantiating Slicer and loading series" slicer = Slicer(taskfile=join(data_dir,'task.xls')) filelist=[join(data_dir,f) for f in os.listdir(data_dir) if \ re.compile(".*\.csv").match(f)] num_subjects = len(filelist) slicer.load_series_from_csv('raw', filelist) if args.stats: pp = PdfPages(join(report_dir, 'stats.pdf')) stats.plot_all(slicer, pp) fig, ax = plt.subplots() ax.plot(range(1,num_subjects+1)) plt.title("Number of subjects") pp.savefig(fig) pp.close() if args.kernelsvm: kernel_svm.do_kernelsvm_slicer(slicer) if args.chartsforpaper: pp = PdfPages(join(report_dir, 'rolling_median.pdf')) charts_for_paper.do_charts(slicer, pp) pp.close()