1. 개요
2. 문제 제기
기댓값 문서에도 나와있지만, 확률에 배정된 값을 얻을 수 있는 기댓값은 (확률)×(배정된 값)의 총합이다. 예를 들어 주사위를 던졌을 때 각각의 눈이 나올 확률은 1/6이고, 해당되는 눈은 {1,2,3,4,5,6}이므로 기댓값은 (1+2+3+4+5+6)×(1/6) = 3.5가 된다.
그런데 경우의 수가 무한이고, 낮아지는 확률에 맞춰서 배정된 값을 증가시키면 어떻게 될까? 1713년 니콜라스 베르누이가 이 문제에 대해 언급했고, 1738년 베르누이 정리로 유명한 다니엘 베르누이가 이를 정리하여 상트페테르부르크의 역설을 발표한다.
그런데 경우의 수가 무한이고, 낮아지는 확률에 맞춰서 배정된 값을 증가시키면 어떻게 될까? 1713년 니콜라스 베르누이가 이 문제에 대해 언급했고, 1738년 베르누이 정리로 유명한 다니엘 베르누이가 이를 정리하여 상트페테르부르크의 역설을 발표한다.
동전 한 개를 뒷면이 나올 때까지 던진다. 첫 번째에 뒷면이 나오면 2, 두 번째로 뒷면이 나오면 2의 2제곱인 4, 세 번째로 뒷면이 나오면 2의 3제곱인 8를 지불한다. 마찬가지로 n번째에 뒷면이 나오면 2의 n제곱을 지불한다. 이런 도박장에서 처음에 얼마를 내는 것이 공정할까?
이산확률변수의 기댓값의 공식인 각각의 경우에서의 확률*변수값의 총합을 생각해 보면, 이 게임의 기댓값은
[math( displaystyle E = 2 cdot frac{1}{2} + 4 cdot frac{1}{4} + cdots + 2^n cdot frac{1}{2^n}+cdots = infty )]
3. 현대수학에서의 해석
현대에 정립된 공리적 확률론과는 전혀 모순이 없다. 기댓값의 정의인 확률*변수값의 총합 혹은 그 적분(일반적 측도론적 관점에서)만을 보면, 발산하는 무한급수처럼 기대값이 정의되지 않는 확률변수도 충분히 존재할 수 있다.
기댓값에 의미를 주는 핵심 법칙인 큰 수의 법칙과도 전혀 모순되는 내용은 없다. 큰 수의 법칙은 기댓값이 존재하는 확률시행을 [math(n)]번 했을 때의 평균값이 [math(n rightarrow infty)]일 때 기댓값에 수렴한다는 것인데, 평균값이 없는 저 변수에 대해선 성립하지 않는다. 실제로 저 게임을 n번 했을 때 받을 수 있는 금액은 대략 [math(n log_2 n )] 정도의 경향을 띄므로 [2]들을 위 상트페테르부르크 게임의 독립시행들이라 했을 때, 확률변수 [math((X_1+cdots+X_n)/(n log_2 n))]이 [math(1)]에 확률수렴한다는 것을 증명할 수 있다.] 반복했을 때의 평균값이 대략 [math(log_2 n)]가 되어 끝없이 커져 나가는 것도 사실이다. 하지만 로그함수의 느린 성장세를 본다면 현실적으로 대략 저 게임을 백만 번 정도 했을 때 평균 20 만큼을 버는 정도로, 무한대 기댓값이라고 순진하게 생각했을 때의 우려할 만한 수준과는 거리가 있어 보인다.
즉 많은 역설이 그렇듯, 이 역설도 순수한 논리 자체의 역설이라기보다는, 기댓값이라는 개념과 현실 직관과의 차이를 느끼게 해 주는 현상으로 보는 것이 정확하다.
기댓값에 의미를 주는 핵심 법칙인 큰 수의 법칙과도 전혀 모순되는 내용은 없다. 큰 수의 법칙은 기댓값이 존재하는 확률시행을 [math(n)]번 했을 때의 평균값이 [math(n rightarrow infty)]일 때 기댓값에 수렴한다는 것인데, 평균값이 없는 저 변수에 대해선 성립하지 않는다. 실제로 저 게임을 n번 했을 때 받을 수 있는 금액은 대략 [math(n log_2 n )] 정도의 경향을 띄므로 [2]들을 위 상트페테르부르크 게임의 독립시행들이라 했을 때, 확률변수 [math((X_1+cdots+X_n)/(n log_2 n))]이 [math(1)]에 확률수렴한다는 것을 증명할 수 있다.] 반복했을 때의 평균값이 대략 [math(log_2 n)]가 되어 끝없이 커져 나가는 것도 사실이다. 하지만 로그함수의 느린 성장세를 본다면 현실적으로 대략 저 게임을 백만 번 정도 했을 때 평균 20 만큼을 버는 정도로, 무한대 기댓값이라고 순진하게 생각했을 때의 우려할 만한 수준과는 거리가 있어 보인다.
즉 많은 역설이 그렇듯, 이 역설도 순수한 논리 자체의 역설이라기보다는, 기댓값이라는 개념과 현실 직관과의 차이를 느끼게 해 주는 현상으로 보는 것이 정확하다.
4. 현실적인 해결
이 역설이 시사하는 핵심적인 바 중 하나는, 기댓값은 1회 시행과는 별로 상관이 없다는 것이다. 위 베르누이의 게임에 한정해서 말하면, 만약 이걸 무한히 반복하면 평균적으로는 끝없이 늘어나는 수익을 얻을 수 있지만, 그 정보가 지금 단판승부에 얼마를 걸지랑 그렇게 상관이 있는지는 생각해 봐야 한다는 것이다. 한 판만 했을 때랑 무한히 반복할 때의 결과가 다르다는 것은 이후 게임 이론 등에서도 무수히 많은 예시로 증명된 바 있다.
제일 처음 처음 베르누이가 시도한 해결책은 금액에 따른 효용이 로그함수로 나타난다는 내용이었고, 이 효용의 기댓값이 게임의 가치로 나타난다는 것이었다. 2000원을 받으면 1000원을 받는 2배만큼 좋겠지만, 200억원을 받는다고 100억원을 받는 2배나 기분이 좋지는 않을 것이라는 생각이다. 단순히 효용을 로그함수 하나로 나타내는 해결책 자체는 위 게임에서 숫자만 조금 바꾸면 로그함수의 기댓값도 무한대로 만들어 버릴 수 있기 때문에 기각되었지만, 금액에 따른 만족이 단순히 금액에 정비례하지 않는다는 사고방식은 경제학의 효용이론을 탄생시키는 데에 크게 기여한다.
사람이 받아들이기 힘든 압도적으로 작은 확률을 배제한다는 사고방식도 있었다. 위의 베르누이 게임에서 보면 뒷면이 한 20번 나올 수 있는 확률만 해도 백만분의 1 정도로, [math(n)]번 이상 뒷면이 나올 확률을 절사했을 때의 기댓값을 계산하면 [math(n/2)]이므로 보통 상식적인 확률 수준에서 절사하면 그렇게 커지지 않는다. 물론 '상식적인 확률'이라는 개념을 정확히 정의하기는 애매하다는 문제가 있다. 달랑베르가 제시했던 이 관점은 이후에 전망이론의 발전으로 이어진다.
효용 이론에서 뻗어나온 리스크의 문제도 이 게임에 나름 적용될 수 있다. 극단적으로 작은 확률을 절사하고 보더라도 분산을 계산해 보면 평균과는 매우 큰 차이가 있다. 분산과 리스크의 관련성을 몰라도, 게임의 구성 자체가 적은 확률로 일확천금을 얻는 복권처럼 짜여있는 것을 보면 리스크가 크다는 것을 직감할 수 있을 것이다.
행동경제학에서는, 효용함수 뿐만 아니라 확률에도 효용함수와 유사한 것을 적용해야 한다고 한다. 예를들면, 저 게임을 통해 약 16000원을 받을 확률은 0.006%정도 된다. 우리는 16000원을 받으리라고 "기대"하는가? 우리가 저 게임의 효용을 계산하는데 있어 이렇게 작은 확률은 무시하기 마련이다.
어찌 보면 놀랍게도 관점 하나하나가 경제학의 굵직한 내용들로 이어지는 것이 흥미로운데, 조금 확대해석을 한다면 이 역설을 생각해 왔던 이런 방식들은 결국에 게임의 가치를 평가하는 기준으로 기댓값 말고 무엇이 있는가? 하는 금융투자에서의 근본적 질문과도 이어진다고 볼 수 있다.
한편 수학에서 다루는 무한대의 확률과정이 현실적으로 불가능하다는 당연한 관점도 있다. 이 역설에서는 동전이 30번만 뒷면이 떠도 10억을 지불해야 하니 한 50번쯤 뜨면 카지노는 파산할 것이다. 카지노가 일정 총 자산까지만 지불한다고 가정했을 때 이 게임을 분석하는 관점도 있다.
프로그래밍으로 표현하면 아래와 같다.
여러 번 돌려보면 1천만 회 시행했을 때 약 12~13 정도에서 평균값이 결정됨을 알 수 있다.
제일 처음 처음 베르누이가 시도한 해결책은 금액에 따른 효용이 로그함수로 나타난다는 내용이었고, 이 효용의 기댓값이 게임의 가치로 나타난다는 것이었다. 2000원을 받으면 1000원을 받는 2배만큼 좋겠지만, 200억원을 받는다고 100억원을 받는 2배나 기분이 좋지는 않을 것이라는 생각이다. 단순히 효용을 로그함수 하나로 나타내는 해결책 자체는 위 게임에서 숫자만 조금 바꾸면 로그함수의 기댓값도 무한대로 만들어 버릴 수 있기 때문에 기각되었지만, 금액에 따른 만족이 단순히 금액에 정비례하지 않는다는 사고방식은 경제학의 효용이론을 탄생시키는 데에 크게 기여한다.
사람이 받아들이기 힘든 압도적으로 작은 확률을 배제한다는 사고방식도 있었다. 위의 베르누이 게임에서 보면 뒷면이 한 20번 나올 수 있는 확률만 해도 백만분의 1 정도로, [math(n)]번 이상 뒷면이 나올 확률을 절사했을 때의 기댓값을 계산하면 [math(n/2)]이므로 보통 상식적인 확률 수준에서 절사하면 그렇게 커지지 않는다. 물론 '상식적인 확률'이라는 개념을 정확히 정의하기는 애매하다는 문제가 있다. 달랑베르가 제시했던 이 관점은 이후에 전망이론의 발전으로 이어진다.
효용 이론에서 뻗어나온 리스크의 문제도 이 게임에 나름 적용될 수 있다. 극단적으로 작은 확률을 절사하고 보더라도 분산을 계산해 보면 평균과는 매우 큰 차이가 있다. 분산과 리스크의 관련성을 몰라도, 게임의 구성 자체가 적은 확률로 일확천금을 얻는 복권처럼 짜여있는 것을 보면 리스크가 크다는 것을 직감할 수 있을 것이다.
행동경제학에서는, 효용함수 뿐만 아니라 확률에도 효용함수와 유사한 것을 적용해야 한다고 한다. 예를들면, 저 게임을 통해 약 16000원을 받을 확률은 0.006%정도 된다. 우리는 16000원을 받으리라고 "기대"하는가? 우리가 저 게임의 효용을 계산하는데 있어 이렇게 작은 확률은 무시하기 마련이다.
어찌 보면 놀랍게도 관점 하나하나가 경제학의 굵직한 내용들로 이어지는 것이 흥미로운데, 조금 확대해석을 한다면 이 역설을 생각해 왔던 이런 방식들은 결국에 게임의 가치를 평가하는 기준으로 기댓값 말고 무엇이 있는가? 하는 금융투자에서의 근본적 질문과도 이어진다고 볼 수 있다.
한편 수학에서 다루는 무한대의 확률과정이 현실적으로 불가능하다는 당연한 관점도 있다. 이 역설에서는 동전이 30번만 뒷면이 떠도 10억을 지불해야 하니 한 50번쯤 뜨면 카지노는 파산할 것이다. 카지노가 일정 총 자산까지만 지불한다고 가정했을 때 이 게임을 분석하는 관점도 있다.
프로그래밍으로 표현하면 아래와 같다.
Random random = new Random();
long totalScore = 0L, totalTry = 0L;
for(int i=0; i<10000000; i++) {
long score = 1L;
totalTry++;
while (random.nextBoolean() == true) {
score *= 2;
}
totalScore += score;
}
System.out.println("총 시도 횟수 : " + totalTry + ", 누적 스코어 : " + totalScore);
System.out.println("1회 평균" + totalScore/(double)(totalTry));
여러 번 돌려보면 1천만 회 시행했을 때 약 12~13 정도에서 평균값이 결정됨을 알 수 있다.