From Werner KRAUTH
Revision as of 20:10, 12 June 2024;
view current revision←Older revision |
Newer revision→
import random
N_trials = 100000
N = 6
data = [0] * N
for iter in range(N_trials):
NotVisited = set([k for k in range(N)])
x = 0
if random.uniform(0.0, 1.0) < 1.0 / N:
data[x] += 1.0 / N_trials
else:
NotVisited = set([k for k in range(N)])
NotVisited.discard(x)
while len(NotVisited) > 0:
sigma = random.choice([-1, 1])
x = (x + sigma) % N
NotVisited.discard(x)
data[x] += 1.0 / N_trials
print('stopping samples')
for k in range(N):
print('site = ', k,' probability = ', data[k])