시작하기무료로 시작하기

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)
코드 편집 및 실행