■ 몬테카를로 기법을 사용해 원주율을 구하는 방법을 보여준다.
▶ 예제 코드 (PY)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
import matplotlib.pyplot as pp import tensorflow as tf trialCount = 100 hitCount = 0 x = tf.random_uniform([1], minval = -1, maxval = 1, dtype = tf.float32) y = tf.random_uniform([1], minval = -1, maxval = 1, dtype = tf.float32) piList = [] with tf.Session() as sess: for i in range(1, trialCount): for j in range(1, trialCount): if x.eval() ** 2 + y.eval() ** 2 < 1: hitCount = hitCount + 1 piList.append((4 * float(hitCount) / i) / trialCount) pp.plot(piList) pp.show() |