Exemplo n.º 1
0
def n_players_plots(alg_list, noise=0.1, ranking=Copeland, horizon=1000):
	alg_names = [str(alg(0, ranking)) for alg in alg_list]
	print('alg_names', alg_names)
	players = [1000,200,100,40,20,10] # [20,18,16,14,12,10]
	n_trials = [1, 10, 10, 30, 30,30] # [10,10,10,10,10,10] #
	cum_regs = np.zeros((len(players), len(alg_list)))
	for num_players in players:
		ds = GenDataset
		analysis = Analysis(alg_list, dataset=ds, name=str(ds(0,0))+'_noise'+str(noise)+'_Copeland', ranking_procedure=ranking, noise=noise, n_trials = n_trials[players.index(num_players)], n_players=num_players, horizon=horizon)
		cum_reg = analysis.get_cum_regret_n(t=horizon-1)
		cum_regs[players.index(num_players),:] = cum_reg
		print('cum_reg', cum_regs)
		with open('players_test_'+str(players.index(num_players))+'.txt','w') as f:
			f.write(str(cum_regs.tolist()))
		f.close()
		
	plot_n_cumregrets(cum_regs, alg_names, players)
	plot_n_cumregrets(cum_regs, alg_names, players, axis='log')
	plot_n_cumregrets(cum_regs, alg_names, players, axis='loglog')
Exemplo n.º 2
0
def n_noise_plots(alg_list, noises, n_trials=10, num_players=10, ranking=Copeland, horizon=100, ds=NormalGenDataset):
	alg_names = [str(alg(0, ranking)) for alg in alg_list]
	print('alg_names', alg_names)
	n_trials = [n_trials] * len(noises)
        
	cum_regs = np.zeros((len(noises), len(alg_list)))
	for noise in noises:
		analysis = Analysis(alg_list, dataset=ds, name=str(ds(0,0))+'_noise'+str(noise)+'_Copeland', ranking_procedure=ranking, noise=noise, n_trials = n_trials[noises.index(noise)], n_players=num_players, horizon=horizon)
		cum_reg = analysis.get_cum_regret_n(t=horizon-1)
		cum_regs[noises.index(noise),:] = cum_reg
		print('cum_reg', cum_regs)
		with open('noises_test_'+str(noises.index(noise))+'.txt','w') as f:
			f.write(str(cum_regs.tolist()))
		f.close()

        if ds == NormalGenDataset:
                ds_label = "Dataset Generated by Normal"
        elif ds == GenDataset:
                ds_label = "Dataset Generated by Bernoulli"
        else:
                raise "Unrecognized dataset"
	plot_n_cumregrets(cum_regs, alg_names, noises, ds_label=ds_label)
	plot_n_cumregrets(cum_regs, alg_names, noises, axis='log', ds_label=ds_label)
	plot_n_cumregrets(cum_regs, alg_names, noises, axis='loglog', ds_label=ds_label)