def worker(number, data, ppc): gmpy2.get_context().precision = 100 m = 1 setup(ppc) temp_data = [[0 for i in range(N)] for i in range(N)] mm = [[gmpy2.mpfr(0.0) for i in range(N)] for ii in range(N)] ss = [[0 for i in range(N)] for ii in range(N)] v0 = 0.0 #v([]) vector = list(range(N)) while (True): for i in range(0, m, N): shuffle(vector) prev_v = v0 spruik_solver() for ii, vv in enumerate(vector): #size ii, player vv new_v = v(vector[0:ii + 1]) x = new_v - prev_v prev_v = new_v mm[ii][vv] += x mm[N - ii - 1][vv] += x ss[ii][vv] += 1 ss[N - ii - 1][vv] += 1 for i in range(N): for ii in range(N): temp_data[i][ii] = mm[i][ii] / ss[i][ii] if ss[i][ ii] > 0 else 0 #indsplus*random()*2.0/N #random()*1000 data[number] = [ float(sum([temp_data[o][i] for o in range(N)]) / N) for i in range(N) ]
def run(input_file): print "---START---" global N ppc = json.load(input_file) N = len(ppc['bus']) setup(ppc) indsplus = calc_maxmin_minmax((1<<N)-1) print "indsplus = {}".format(indsplus) input_file.close()
def run(input_file, output_file): print "---START---" global N ppc = json.load(input_file) N = len(ppc['bus']) setup(ppc) data = [] for i in tqdm.tqdm(range(2**N)): data.append([i,calc_maxmin_minmax(i)]) output_file.write(json.dumps(data).replace("]","]\n")) # output_file.write("{} {}\n".format(N,time.time()-t)) output_file.close()
def worker(number, data, ppc): seed(32000) m = 100 setup(ppc) #print v([0,2,4]) #for i in range(10000000): # print v([0,3,5,1]) #sys.exit(0) listi = list(range(N)) shuffle(listi) #spruik_solver() for ii in range(1): #print "hello" output = [0.0] for i in range(1, N + 1): #N+1): #if (int(random()*4)==0): # spruik_solver() vv = listi[0:i] #v(vv) #print "{}\t".format(v(vv)), t = time.time() output.append(int(v(vv))) print i, time.time() - t, vv print output