def generate_research(): for i in range(20): researchers.append({ "name": myGenerator.name(), "mwet_id": str(myGenerator.uuid4()) }) for i in range(5): groups.append(myGenerator.last_name()) for i in range(10): adsorptions.append(myGenerator.random_uppercase_letter() + myGenerator.random_lowercase_letter()) for i in range(20): polymers.append(myGenerator.random_uppercase_letter() + str(myGenerator.random_digit_not_null()) + str(myGenerator.random_digit_not_null())) for i in range(100): x = Experiment() research_projects.append(x) #Avoid that whole nightmare again check_for_unprofessional_lang(research_projects[i]) researcher = random.choice(researchers) research_projects[i].data["researcher"]["name"] = researcher["name"] research_projects[i].data["researcher"]["mwet_id"] = researcher[ "mwet_id"] research_projects[i].data["researcher"]["group"] = random.choice( groups) research_projects[i].data["researcher"]["institution"] = random.choice( institutions) research_projects[i].data["experiment_metadata"][ "gap"] = random.choice(gaps) research_projects[i].set_polymer(random.choice(polymers)) research_projects[i].set_adsorbing(random.choice(adsorptions)) research_projects[i].data["uid"] = str(uuid.uuid4())
Critic, 'critic_kwargs': critic_kwargs, 'critic_optim': torch.optim.Adam, 'critic_optim_kwargs': critic_optim_kwargs, 'num_iters': 200, 'ep_per_iter': 5, 'log_file': './kl/logs/{}/{}/{}_log.npz'.format(env_str, alg.__name__, seed) } experiment = Experiment(**experiment_parameters) experiment.run() kls = torch.tensor(experiment.results['kl']) mean = torch.mean(kls).item() std = torch.std(kls).item() cvs.append(std / mean) plt.plot(kls, alpha=0.2, color="blue") #experiment.plot('./kl/plots/cartpole/{}/{}_'.format(alg.__name__, seed)) # show one example episode as a sanity check #sample_memory(experiment.env, experiment.actor, 1, True) print(cvs)
from experiment_class import Experiment max_doses = [200] curve_types = ['linear'] experiment_type = 'rate-survival' n_sims = 10 slopes = [.1,.5,1.5] # scale = 5 # scale time by two mut_rate = 0.00005 death_rate = 0.3 # mut_rate = mut_rate/scale # death_rate = death_rate/scale options = {'mut_rate':mut_rate, 'death_rate':death_rate, # 'x_lim':100, # 'y_lim':2*10**4, # 'counts_log_scale':True, 'plot':True} e = Experiment(max_doses=max_doses, slopes=slopes, curve_types = curve_types, experiment_type = experiment_type, n_sims=n_sims, population_options=options) e.run_experiment() e.plot_barchart()
kl_list.append(max_kl) print('\nNow running wiht max_kl = {}'.format(max_kl)) # set up experiment ac_alg_kwargs['max_kl'] = max_kl experiment_parameters['ac_alg_kwargs'] = ac_alg_kwargs trial_log_dir = log_dir + 'kl_{0:1.4f}/'.format(max_kl) try: os.mkdir(trial_log_dir) os.mkdir(trial_log_dir + 'plots/') except: pass experiment = Experiment(**experiment_parameters) # run mutliple experiments with different seeds mult_exp = mult_seed_exp(experiment_parameters, seeds, trial_log_dir) mult_exp.run() try: mult_exp.plot(trial_log_dir + 'plots/') except: pass # get results mean_results, std_results = mult_exp.get_mean_results() print( 'Mean return at termination with max_kl {0:1.5f} was {1:1.2f}'.format(
from experiment_class import Experiment import seaborn as sns import matplotlib.pyplot as plt # max_doses = [100,300,400,500] max_doses = [350] experiment_type = 'dose-entropy' n_sims = 100 e1 = Experiment(max_doses=max_doses, experiment_type=experiment_type, n_sims=n_sims) e1.run_experiment() e = e1.entropy_results # fig,ax = plt.subplots() # sns.swarmplot(x='dose',y='max entropy',data=e,ax=ax,hue='survive condition',dodge=True,color='black') # sns.boxplot(x='dose',y='max entropy',data=e,ax=ax,hue='survive condition',dodge=True,palette='Set2') # handles, labels = ax.get_legend_handles_labels() # ax.legend(handles[:2], labels[:2])
# population_options=options) # e.run_experiment() # e.plot_barchart() # experiment_type = 'inoculant-survival' # options = {'n_gen':1000,'v2':True,'max_dose':400,'max_cells':10**7} # inoculants = [10**3,10**4,10**5,10**6] # curve_types=['constant','linear','pharm'] # n_sims = 10 # e = Experiment(experiment_type = experiment_type, # inoculants=inoculants, # curve_types=curve_types, # n_sims=n_sims, # population_options=options) # e.run_experiment() # e.plot_barchart() experiment_type = 'inoculant-survival' options = {'n_gen':1000,'v2':True,'max_dose':800,'max_cells':10**7} inoculants = [10**3,10**4,10**5,10**6] curve_types=['constant','linear','pharm'] n_sims = 10 e = Experiment(experiment_type = experiment_type, inoculants=inoculants, curve_types=curve_types, n_sims=n_sims, population_options=options) e.run_experiment() e.plot_barchart()
from experiment_class import Experiment # import matplotlib.pyplot as plt options = { 'n_impulse': 20, 'k_abs': 0.04, 'k_elim': 0.03, 'max_dose': 150, 'n_gen': 1000, 'mut_rate': 0.00005, 'death_rate': 0.3 } e = Experiment(experiment_type='drug-regimen', n_sims=10, prob_drops=[0, .4, .7], population_options=options, debug=True) e.run_experiment() e.plot_barchart() e.save_images() # import matplotlib.pyplot as plt # fig,ax = plt.subplots() # ax.bar([0,1,2],[10,20,30]) # ax.set_xticks([0,1,2]) # ax.set_xticklabels(['a','b','c'])