Tom과 Eva의 내기
이제 Tom과 Eva의 게임을 해 볼 시간이에요!
Tom은 일반적인 여섯 면 주사위를 가지고 있고, 그 결과는 1부터 6까지의 구간에서 이crete 균등분포를 따릅니다. Eva는 앞면이 나올 확률이 p인 편향된 동전을 가지고 있어요. Eva가 앞면이 나올 때까지 필요한 던지기 횟수의 분포는 기하분포입니다.
게임의 규칙은 다음과 같아요:
- Tom의 점수: 주사위에 나온 눈
- Eva의 점수: 앞면이 나올 때까지 필요한 동전 던지기 횟수
- 더 높은 점수를 받은 사람이 승리
이 게임을 모의실험으로 구현해 보세요! Eva의 동전이 앞면이 나올 확률을 나타내는 가능한 p 값 목록 [0.1, 0.2, 0.3, 0.5, 0.7, 0.8, 0.9]에 대해, 누가 이길 것으로 예상하시나요?
NumPy는 np로, SciPy의 stats 모듈은 st로 임포트되어 있습니다.
이 연습은 강의의 일부입니다
Python으로 배우는 Monte Carlo 시뮬레이션
연습 안내
- Tom의 주사위를 10,000번 굴려서 결과를
die_samples에 저장하세요. - Eva가 앞면이 나올 때까지의 동전 던지기를 10,000번 시뮬레이션하여 결과를
coin_samples에 저장하세요.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
for p in [0.1, 0.2, 0.3, 0.5, 0.7, 0.8, 0.9]:
low = 1
high = 7
# Simulate rolling Tom's die 10,000 times
die_samples = ____
# Simulate Eva's coin flips to land heads 10,000 times
coin_samples = ____
diff = np.mean(die_samples - coin_samples)
print(diff)