MTV의 리얼리티 쇼 "Are you the one?"를 정보 이론 관점에서 모델링해, 무작위 선택과 최적 전략이 얼마나 많은 정보를 주고 얼마나 빨리 정답(퍼펙트 매치)에 도달하는지 분석한다.
URL: https://blog.owenlacey.dev/posts/are-you-the-one-is-free-money/
좋아, 이건 좀 마이너하다.
아내의 ‘죄책감 드는 취미’ 중 하나는 리얼리티 TV인데, 보통 연애를 중심으로 한 프로그램이다. 더 미국스러울수록 더 좋다. 그 여파로 나도 이런 소음을 어느 정도 흡수하게 되고, 가끔은 꽤 몰입하게 된다는 걸 인정한다.
어느 시점에 아내가(솔직히 말하면 우리 둘이) MTV의 **"Are you the one?"**라는 프로그램을 보고 있었다. 그리고 나는 이 게임이 사실상 공짜 돈이나 다름없다는 걸 보여주려고 한다.
남성과 여성이 같은 수로 있는 집단을 생각해 보자.
각 참가자는 이성 중 정확히 한 명의 퍼펙트 매치가 사전에 정해져 있다(색으로 표시됨). "Match" 버튼을 눌러 참가자들을 올바르게 짝지어 보자. 중요한 점은, 참가자들이 처음에는 누가 자신의 퍼펙트 매치인지 모른다는 것이다. 집단이 모든 퍼펙트 매치를 정확히 맞히면 상금 **100만 달러($1M)**를 받는다.
아마 “퍼펙트 매치는 어떻게 계산하나요?”라는 후속 질문이 떠오를 텐데, 좋은 질문이다. 요약하면: 모르겠다. 블랙박스다. 그냥 “과학”이라고 치자. 어떻게 계산되는지는 사실 핵심이 아니다. 전략만 맞으면, 그 과정이 뭐든 상관없다고 주장할 수도 있다. 참고로 TV 쇼의 설정에서는 "지금까지 본 적 없는 가장 광범위한 매칭 프로세스"를 사용한다고 한다.
이제 들어가 보자. 참가자들이 게임 중 새 정보를 얻는 방법은 두 가지다: **트루스 부스(truth booths)**와 매치업(match ups).
트루스 부스는 남자 1명과 여자 1명을 참가자들이 선택하면, 그 둘이 퍼펙트 매치인지 아닌지 확정적으로 밝혀주는 장치다. 가능한 결과는 두 가지:
(이걸 스트리밍으로 볼 수 있고 바로 재밌는 부분으로 건너뛰고 싶다면, 난 이 결과가 공개된 뒤의 후폭풍 장면으로 빨리 감기할 거다. S1E6에서는 Shanley가 Chris T와 Paige가 퍼펙트 매치라는 사실을 받아들이는 데 에피소드 전체가 걸렸는데, E1에서 이미 자기는 그와 매치가 아니라는 걸 배웠음에도 그랬다… 하.)
각 에피소드 마지막에 모든 참가자가 짝을 이루고, (드라마틱한 조명과 함께) 맞힌 커플 수가 몇 쌍인지 알려준다. 전부 맞히면 게임이 끝나고 우승한다.
중요한 점: 무엇이 정답 매치인지 알려주지 않고, 오직 총 몇 쌍이 맞았는지만 알려준다는 것이다. 유일하게 어떤 페어링을 확정적으로 배제할 수 있는 경우는 점수가 0점일 때다. 이른바 블랙아웃(blackout). 언뜻 나쁜 일처럼 보이지만, 장기적으로는 블랙아웃이 도움이 될 수도 있다. 왜냐하면 그때 매치업으로 잡힌 모든 커플에 대해 “정답이 아니다”라는 확정 정보를 한꺼번에 얻는 셈이기 때문이다. 각 커플마다 공짜 트루스 부스를 하나씩 받은 것과 비슷하다.
고등학교 디스코처럼, 남자들은 한쪽에, 여자들은 반대쪽에 세우고, 위 매치업 예시의 페어를 다시 써 보자.
여기서는 1번과 5번 위치에 있는 빨강과 분홍 커플이 정답이다. 2번 위치의 주황색 남자는 6번 위치의 보라색 여자와 짝지어졌고, 이런 식으로 이어진다.
점수 2점은 얼마나 좋은 걸까? 무작위로 사람들을 짝지었을 때보다 나은 걸까? 그냥 그렇게 해보자. ‘shuffle’ 버튼을 눌러 다시 뽑아 보자.
조금 돌려보면 평균 점수가 대략 1 근처로 나온다는 걸 알 수 있다. 이 선 그래프가 그걸 추적한다.
아래는 각 점수가 나온 빈도를 보여주는 차트인데, 시간이 지나면 특정한 모양으로 수렴하는 걸 볼 수 있다.
테두리가 있는 막대의 높이는 6커플 게임에서 무작위로 짝지었을 때 해당 점수가 나올 확률이다. 흥미롭게도, 이 확률들과 평균 점수는 커플 수를 얼마나 쓰든 변하지 않는다.
커플 수를 얼마로 선택하든 확률은 똑같이 유지된다. 여기서 흥미로운 가지치기 주제가 아주 많다1. 하지만 우리 목적은 “점수 X가 얼마나 좋은가”에 대해 데이터로 감을 잡는 것이었다.
나는 모든 커플의 **남아 있는 가능한 매칭(viable matchings)**을 계산하는 모델을 만들었다. 여기서 ‘가능한’이란, 아직 그 조합이 퍼펙트 매치일 가능성이 남아 있다는 뜻이다. 처음에는 당연히 이 수가 아주 크다. 게임의 목표는 이 수를 가능한 한 빨리 1로 줄이는 것이다.
새 정보가 생길 때마다 남은 매칭을 다시 계산한다. 예를 들어 트루스 부스에서 긍정(정답) 결과가 나오면, 남아 있는 매칭들은 그 두 사람이 한 쌍으로 들어 있는 경우만 남기도록 필터링한다. 반대로 부정(오답) 결과면, 남은 매칭들에서 그 둘이 커플로 묶인 경우는 전부 제거한다.
가능한 매칭 하나하나가 “Guess Who?”의 카드 한 장이라고 상상해 보자. 정보를 얻을 때마다 불가능해진 카드를 접어 내리는 거다. 매치업도 이 수를 크게 줄이는 데 도움이 되지만, 그 영향이 훨씬 간접적이라 인간의 뇌로는 한 번의 매치업 결과가 의미하는 바를 추론하기가 매우 어렵다.
다음은 시즌 1에서 시즌이 진행되며 남아 있는 가능한 매칭 수가 어떻게 줄어드는지 보여주는 그래프다. 10남 10녀 게임에서 가능한 매칭의 초기값이 거의 400만에 이른다는 사실이 놀라울지도 모른다.
점 위에 마우스를 올리면 남은 매칭 수 변화의 원인이 무엇인지 알 수 있다. 보다시피 이들은 에피소드 8까지 오면 게임에서 이길 만큼의 정보를 얻는다. 그런데 왜 그렇게 오래 걸려서야 정답을 맞췄을까? 앞서 말했듯 인간이 이 모든 가능 매칭을 추적하는 건 거의 불가능해서, 아마 그냥 몰랐을 것이다.
그렇다 해도 이 그래프는 그리 유용하진 않다. 몇 번의 이벤트만 지나면 선이 x축에 달라붙어서, 에피소드 8의 1과 에피소드 2의 5,773의 차이를 보기 어렵다. 로그(밑 2) 그래프로 바꿔 보자.
이게 더 명확하길 바란다. 진행하면서 정보를 어떻게 쌓는지, 그리고 에피소드 8의 매치업에서 모델이 어떻게 ‘정답을 깨는지’가 보인다. 또한 가장 가치 있는 정보가 에피소드 2의 매치업(초반 점수 4점)에서 나왔다는 것도 명확히 보인다. 직관적으로 그럴 듯하지만, 앞서 봤듯 무작위로 4점을 얻을 확률은 2% 미만이다.
이걸 몇 시즌 더 얹어서 다시 그려보자2.
S3와 S7을 제외하면, 참가자들은 수학적으로는 게임이 끝나기 전에 이길 만큼의 정보를 충분히 얻는다. 그런데 더 빨리 갈 수는 없었을까? 더 나은 트루스 부스/매치업 선택으로 우리가 쓰레기 TV 에피소드를 더 덜 볼 수는 없었을까? 그 전에 정보 이론의 기본을 좀 다뤄야 한다.
이제 "Guess Who?" 게임으로 돌아가자. 이것은 "Are you the one?"의 단순화 버전으로 생각할 수 있다. 따라와 줘라. 더 단순한 게임 메커니즘으로 정보 이론 기반 전략을 세운 뒤 그걸 "Are you the one?"에 적용하려는 것이다. 두 게임은 다음 점에서 유사하다.
8x8 격자의 가능한 답을 생각해보자.
나는 그림을 못 그려서 도형으로 설명해보려 한다. 도형은 4가지( , , 그리고 )가 있고, 타입은 2가지(채움 또는 윤곽선), 색은 8가지다. 그래서 총 64개의 고유 조합이 된다. 목표는 상대가 내 답을 맞히기 전에 내가 상대의 답을 맞히는 것이다. 이기려면 가능한 답을 가능한 한 빠르게 많이 배제해야 한다. 그렇다면 “채움인가요?”처럼 답 공간을 반으로 가르는 질문을 해야 할까, 아니면 “주황색 별인가요?”처럼 더 구체적인 질문을 해야 할까? 후자는 고위험 고보상이고, 전자는 거의 항상 남은 답의 절반을 날려버린다.
정보 이론에서 **1비트(bit)**의 정보는 문제 공간을 절반으로 줄이는 것으로 생각할 수 있다. 즉 남은 답의 절반을 배제하는 것이다. 여기서 _bit_라는 표현은 이 문맥에서 덜 정확해 보일 수 있지만, 정보 이론에서 실제로 쓰이는 용어라는 점을 강조하고 싶다.
“채움인가요?”는 확실하게 1비트의 정보를 준다. 반면 답이 라는 걸 알아서 전체 후보의 3/4을 접어낼 수 있다면, 이는 문제 공간을 두 번 반으로 나눈 것과 같으므로 2비트의 정보를 얻은 것이다.
이 예시에서 정답은 이다.
보다시피 어떤 질문/답은 다른 것보다 더 유용하다. “채움?”은 남은 답의 절반을 배제한다(1비트). 반면 “파란색?”은 7/8을 배제한다(3비트).
64개 후보에서 1개로 가려면 문제 공간을 6번 반으로 나눠야 한다. 64 → 32 → 16 → 8 → 4 → 2 → 1. 즉 6비트의 정보를 얻으면 정답을 확실히 알 수 있다. 위 세 질문으로 얻는 정보량 합이 6이라는 점과도 일치한다.
이제 실제 게임을 시뮬레이션해 보며, 얻는 정보량을 추적해 보자.
이제 외의 모든 것이 제거되는 순간, 6비트를 얻은 것이고 정답에 100% 확신할 수 있다. 그러면 가능한 빨리 6비트에 도달하기 위해, **기대 정보량(expected information)**이 가장 큰 질문을 고르는 것이 전략이 된다. 즉 그 질문의 답이 참일 때/거짓일 때 각각 얻는 정보량의 합을, 각 결과의 확률로 가중합한 값이다. 세 질문에 대해 기대 정보량을 계산해보자.
| 질문 | 참 | 거짓 | 합 |
|---|---|---|---|
| " ?" | 25% × 2.00비트 → 0.500 | 75% × 0.42비트 → 0.315 | 0.82 |
| "파란색?" | 12.5% × 3.00비트 → 0.375 | 87.5% × 0.19비트 → 0.166 | 0.54 |
| "채움?" | 50% × 1.00비트 → 0.500 | 50% × 1.00비트 → 0.500 | 1.00 |
이 표는 세 질문의 기대 정보량을 보여준다. 보다시피 “한 방”에 가까운 질문일수록 기대 정보량은 낮다. “파란색?”은 0.54로, “채움?”의 기대 정보량 1.00의 거의 절반이다. 따라서 이 게임에서 꽤 괜찮은 전략은 남은 문제 공간을 반으로 가르는 질문을 하는 것이라고 추측할 수 있다. 이를 뒷받침하기 위해 확률 0~1 사이 모든 값에 대해 그래프를 그려보자3.
이 그래프는 확률이 0.5일 때(문제 공간을 정확히 반으로 나눌 때) 기대 정보량이 최대임을 보여준다. 즉 “파란색?”처럼 매우 구체적인 질문은 통계적으로는 최악이다.
마지막으로 한 판 더 해보자. 이번에는 질문들을 기대 정보량이 큰 순서로 정렬해서 보여주겠다.
어땠나? 목록 위쪽 질문을 고르면 더 빨리 정답에 도달하고, 아래쪽 질문을 고르면 그 반대가 된다. 또 기대 정보량이 1을 넘는 질문은 절대 나오지 않는데, 이는 위 그래프가 1을 넘지 않는다는 사실과도 일치한다.
이제 "Guess Who?"에서 잘 작동하는 전략을 얻었으니, 다시 본게임으로 돌아가자.
앞에서 참가자들의 성과에 대해(그때까진 수사적이었던) 질문을 던졌다. 이를 답하려면 두 가지가 필요하다.
이 기준선을 위해, 나는 "Are you the one?"의 가짜 시즌을 100개 이상 시뮬레이션해서 매치업과 트루스 부스를 (거의4) 임의로 선택했을 때 얼마나 정보를 얻는지 확인했다.
무작위 시뮬레이션 모델의 성과는 1.23비트였다. 모든 시뮬레이션을 그래프에 그리고, 무작위와 실제 성과의 추세선을 함께 그려보자.
실제 성과가 더 빨리 x축에 닿는다. 즉 퍼펙트 매치를 더 빨리 좁혀 간다는 뜻이다. 안심되나? 사랑은 진짜일지도 모르겠다. 아니면 그냥 “아무렇게나 고르는 사람”보다 낫다는 뜻일 뿐이거나. 비교의 수치는 다음과 같다.
| 방법 | 이벤트당 | 성공률 |
|---|---|---|
| 무작위 | 1.23비트 | 74% |
| 실제 | 1.39비트 | 71% |
성공률은 게임이 끝나기 전에 수학적으로 퍼펙트 매치를 결정할 수 있었던 시즌의 비율이다. 보다시피 무작위 시뮬레이션의 성공률이 실제보다 높다. 물론 "Are you the one?" 시즌이 7개뿐인 표본 크기는 이런 비교에 유용하기엔 너무 작다.
이제 참가자들이 무작위보다는 더 나은 결정을 한다는 건 알았다. 남은 질문은 얼마나 더 나은가이다. 이를 보여주기 위해, "Guess Who?"에서 사용한 정보 이론 전략을 이 게임에 적용하자.
이 시뮬레이션은 무작위 시뮬레이션과 비슷하지만, 짝을 선택하는 메커니즘이 다르다. 즉 트루스 부스나 매치업에 선택되는 페어링은 통계적으로 가장 많은 정보를 줄 가능성이 큰 것들이다.
예를 들어 가능한 트루스 부스 후보들의 기대 정보량을 아래처럼 계산했다고 하자.
그러면 모델은 와 를 선택할 것이다. 가장 많은 정보를 줄 가능성이 크기 때문이다.
매치업도 비슷하지만, 이건 단순한 참/거짓 질문이 아니다. 대신 점수 0부터 10까지(10은 커플 수) 모든 점수에 대해, 그리고 모든 가능한 매칭에 대해 얻을 정보량을 계산해야 한다.
나는 이 정보 이론 시뮬레이션을 41번 돌렸다(기다리다 지루해져서 그랬을 뿐). 그 결과 무작위 시뮬레이션이나 실제 데이터보다 훨씬 좋은 성과를 보였다.
이제 세 시나리오를 비교할 수 있다.
| 방법 | 이벤트당 | 성공률 |
|---|---|---|
| 무작위 | 1.23비트 | 74% |
| 실제 | 1.39비트 | 71% |
| 정보 이론 | 1.59비트 | 98% |
즉 약간의 코드와 “하면 된다”는 태도만 있으면, 쇼 참가자들의 “감(vibes)” 접근보다 더 잘할 수 있다는 뜻이다.
샴페인을 터뜨리기 전에, 이게 충분히 좋은지(시간/에피소드가 다 떨어지기 전에 퍼펙트 매치에 도달할 수 있는지)는 아직 보여주지 않았다. 10대 10 게임에서 문제 공간은 10!이다(간단히 하려고 그냥 내 말을 믿어줘도 된다). 이는 21.8비트의 정보량이다. 따라서 마지막 매치업 전에 퍼펙트 매치를 확실히 알기 위해서는, 이벤트당 최소 1.15비트의 정보를 얻어야 한다.
잠깐, 그럼 무작위 시뮬레이션보다 더 낮은 수치 아닌가? 그 말은, 아무렇게나 찍어도 이길 수 있다는 뜻인가? 강조하자면 이건 평균이다. 무작위 시뮬레이션의 26%에서는 제시간에 도달하지 못했다.
이제 "Are you the one?"가 공짜 돈이라는 데 동의하길 바란다. 다만 성공률이 거의 완벽에 가까운 수준이라는 정도의 단서가 붙는다. 무작위로 페어링을 고르기만 해도 대체로 이길 만큼의 정보를 얻을 수 있고, 고전적인 정보 이론 기법을 사용하면 몇 에피소드나 남겨두고도 정답에 도달할 수 있음을 보였다.
이렇게 돈이 새는 구조가 쇼가 취소된 이유일 수도 있고, 아니면 사랑이 진짜일 수도 있다. 취향대로 믿으면 된다.
이 글은 내가 이런 종류의 콘텐츠를 처음 써본 것이다. 흥미로운 수학 문제를 가볍게 비틀어 보고 싶었고, 만들면서 내가 즐긴 만큼 당신도 즐겼으면 한다. 이 글에서 보인 기법은 정보 이론에서 아주 흔한 접근이다. 다만 3Blue1Brown의 워들(Wordle) 영상에서 영감을 받아 이런 식으로 적용해 봤다. 나는 10분이 넘는 유튜브 영상을 거의 보지 않지만(내 손해일지도), 이 주제가 흥미로웠다면 이 영상은 정말 추천한다.
추가로 조사하다가 1970년대부터 존재한 보드게임 Mastermind도 알게 됐다. 전제가 매우 비슷한데, “Guess Who?”를 하드 모드로 만든 느낌이라고 보면 된다.
또 이 아이디어를 The Pudding에 제안했고, 이 주제로 덕질(?)하며 대화하는 경험이 정말 좋았다. 내 아이디어를 채택하진 않았지만, 아주 훌륭하고 실행 가능한 피드백을 얻었고, 다음 거절이 기대된다.
내 다음 단계는 이 테마로 웹 기반 게임을 만들어 보는 것이다(너무 큰 기대는 말아 줘라). 사람들이 지금까지 얻은 정보에 기반해 직관적으로 어떻게 결정을 내리는지 궁금해서, 그걸 포착할 수 있는 방법을 찾고 싶고, 가능하면 재밌게 만들고 싶다.
마지막으로, 내 OR Tools 모델 코드는 여기에서도 볼 수 있다.