05. 다섯 번째 수업: 연속 확률의 곱셈과 연속 뽑기의 함정 (Consecutive Draws)

모듈 25 (확률 1부) 에서 “사건이 꼬리에 꼬리를 물고 이어서(AND) 터질 때” 는 두 개의 확률 값을 무자비하게 서로 곱하기($\times$) 스위치를 켜서 곱해버리라고 배웠습니다. 이 곱셈 엔진이 카지노 슬롯머신의 확률 배수를 무지막지하게 소수점 밑으로 박아버려, 도박꾼들을 빈털터리로 만드는 살상 무기입니다.

하지만, 프로그래머가 이 연속 뽑기($X$ 루프) 코드를 짤 때 가장 많이 내는 런타임 오류가 있습니다. 바로 [배열 데이터 리셋(Reset) 여부 확인] 입니다.


1. 독립 사건 (복원 추출 - 주사위의 기억 상실)

내가 방금 주사위를 던져서 $6$이 터졌습니다. (확률 $1/6$) 그다음에 한 번 더 연속(AND 연타) 으로 주사위를 던집니다. 이번에 또 $6$이 나올 확률은 얼마일까요? “아까 6이 한 번 나왔으니까 덜 나오려나?” 천만의 말씀! 주사위나 동전 같은 물리 엔진 객체는 아까 자신이 무슨 짓을 했는지 “메모리 캐시” 찌꺼기를 머금지 않는 기억상실증 객체들입니다. 매 시행마다 완전한 새 게임 리셋(Reset) 으로 취급됩니다!

따라서 첫 판에 6, 두 번째 판에 6이 연달아 연속으로 터질 기적의 확률 콤보는?

$= \frac{1}{6} \times \frac{1}{6} = \frac{1}{36}$ ($2.77\%$)

이처럼 앞 사건의 결괏값이 뒤 사건의 우주 확률 분모 바운더리에 $1$mg 의 영향도 끼치지 못하고 따로 노는 상태를 ‘독립 사건 (Independent Events)’ 이라고 부릅니다.

2. 종속 사건 (비복원 추출 - 주머니 속 카드 빼기)

자, 이번엔 당신의 호주머니에 [빨간 공 3개, 파란 공 7개] 의 구슬 리스트 데이터(총 $10$개) 가 존재합니다. 이 주머니에서 눈을 감고 연속으로 공을 두 번($2$연타) 뽑아 봅시다. 퀘스트: “두 번 모두 빨간 공 리미트 콤보를 뚫어라!”

[첫 번째 뽑기 턴]

당장 손을 쑥 집어넣으면 전체 공 $10$개의 우주 중에 내가 원하는 붉은색 승리 루트가 $3$개 깔려 있습니다.

  • 첫 번째 붉은 공이 뽑힐 럭키 확률: $\mathbf{\frac{3}{10}}$ ($30\%$)

— (그리고 방금 뽑은 그 붉은 공을 주머니 밖 쓰레기통에 내다 버려버렸습니다!) —

자, 여기서 초보 해커와 고급 해커의 희비 런타임 오차가 갈립니다.

[두 번째 뽑기 연타 턴]

아까 뽑은 빨간 공 하나가 우주 몽타주 배열 데이터에서 pop() 삭제 소멸되어 날아갔습니다! 주머니 전체 분모 크기는 이제 $10$개가 아니라 $\mathbf{9}$개로 쪼그라들었고, 그 속에 남은 불쌍한 빨간 공 개수(분자 루트) 역시 $3$개가 아니라 $\mathbf{2}$개로 마이너스 처리가 된 치명적인 너프 상태입니다!

  • 두 번째 판 연속 붉은 공이 뽑힐 남은 피투성이 확률: $\mathbf{\frac{2}{9}}$ ($22.2\%$)

최종 연타 콤보 결론 (종속 곱의 법칙): $\mathbf{\frac{3}{10} \times \frac{2}{9} = \frac{6}{90} = \frac{1}{15}}$ ($6.66\%$ 극악 확률 도달!)

이처럼 앞의 선행 퀘스트 사건의 결과가 리셋되지 않고 메모리(배열 전체 크기) 를 지저분하게 씹어먹어서 두 번째 사건의 베이스 확률값 체력을 바꿔버리는 악독한 구조를 ‘종속 사건 (Dependent Events)’, 포커 카드 칠 때의 ‘비복원 추출 (뽑고서 제자리에 다시 안 넣음)’ 이라고 부릅니다.

카지노 블랙잭 게임에서 왜 플레이어들이 그토록 침을 삼키며 바닥에 깔린 카드를 “카드 카운팅” 하면서 확률 분모(Total 덱 크기) 남은 장 수를 역산하는지. 바로 이 무서운 [비복원(종속) 곱셈] 의 확률 바운더리가 매초마다 실시간으로 변질되기 때문입니다. 이제 확률 수업의 대미를 장식할, 모든 연산을 포기하고 우주 컴퓨터 성능으로 그냥 총알 폭격을 날려버리는 파이썬 ‘몬테카를로’ 시뮬레이션 카오스 시스템으로 돌입하겠습니다!

서브목차