37% 규칙 — 앞의 37%는 그냥 보내고, 그다음 최고에서 멈춘다

비서 문제는 후보를 한 명씩 순서대로 만나고, 한 번 지나친 후보는 되돌아가 뽑을 수 없는 상황에서 최선 한 명을 찾는 문제다. 앞 37%를 무조건 보내고 그다음 처음 나오는 "지금까지 최고"에서 멈추면, 후보가 몇 명이든 최선을 고를 확률이 약 37%로 거의 같아진다.

다섯 번째 집 앞에서

여러 개의 문을 지나쳐 온 사람이 마지막 문 앞에 멈춰 손잡이를 잡는 복도 장면

집을 보러 다니는 중이고, 오늘이 다섯 번째 집이다. 방금 본 집이 지금까지 중에 제일 낫다. 그런데 여기서 계약서에 도장을 찍으면 다음 집은 영영 못 본다. 하루만 더 생각해 보겠다고 말하면 이 집은 대개 다른 사람에게 넘어간다.

이런 결정에는 공통된 모양이 있다. 선택지가 한꺼번에 펼쳐지지 않고 하나씩 순서대로 온다. 지나친 것은 되돌릴 수 없다. 그리고 지금 보고 있는 것이 앞으로 올 것들보다 나은지는 알 길이 없고, 지금까지 본 것들 사이에서 몇 등인지만 안다. 순서대로 지원자를 만나는 면접, 주차장을 돌며 빈자리를 찾는 몇 분, 몇 달에 걸쳐 이어지는 소개팅도 구조가 같다.

그래서 질문은 하나로 좁혀진다. 몇 번째까지는 그냥 보고, 언제부터 잡아야 하나. 이 질문에는 후보가 몇 명이든 거의 같은 숫자 하나가 답으로 나온다.

37% 규칙 — 답부터

답을 먼저 적는다. 후보가 모두 n명이라면 앞의 37%, 그러니까 0.37n명은 무조건 지나친다. 그 사람들은 아무리 마음에 들어도 뽑지 않고 기준으로만 쓴다. 그 구간이 끝나면 규칙이 바뀐다. 지금까지 본 누구보다 나은 사람이 처음 나오는 순간 거기서 멈추고, 끝까지 그런 사람이 없으면 마지막 후보를 받는다.

이 규칙으로 최선 한 명을 정확히 집어낼 확률은 약 37%다. 후보가 10명이어도, 100명이어도, 1억 명이어도 이 확률은 거의 그대로다. 후보가 늘어날수록 그중 딱 한 명을 맞히기는 훨씬 어려워질 것 같은데, 실제로는 그렇지 않다.

37%라는 숫자는 e에서 나온다. e는 약 2.718인 수 하나이고, 1을 e로 나누면 0.368이 된다. 후보 n명 중 보내는 사람 수를 k라 하면, 보내는 비율 k/n과 최선을 고를 확률이 후보가 많아질수록 둘 다 이 값으로 다가간다는 것이 이 규칙의 결론이다.

(1) $$ \frac{k}{n} \to \frac{1}{e} \approx 0.368, \qquad P \to \frac{1}{e} \approx 0.368 $$

왜 하필 중간쯤에 답이 있는지는 두 극단을 보면 짐작이 간다. 첫 번째 후보를 바로 잡으면 비교할 기준이 하나도 없어서 그냥 찍는 것과 같다. 반대로 거의 끝까지 보내고 나면 기준은 훌륭해진다. 대신 그 좋은 기준을 넘을 사람이 이미 지나가 버렸을 가능성이 커진다. 두 손해가 반대 방향으로 커지니 그 사이 어딘가에 봉우리가 하나 생긴다. 후보가 많아질수록 그 봉우리가 37% 자리로 굳는다.

보내는 비율에 따른 최선 선택 확률 곡선, 후보 수 5·10·100·1000의 네 곡선
그림 1. 보내는 비율(가로)과 최선을 고를 확률(세로). 후보가 많아질수록 봉우리가 37%·0.368에 붙는다.

그림 1의 네 곡선이 식 1가 말하는 수렴을 그대로 보여준다. 후보가 5명일 때는 봉우리가 넓고 뭉툭하다. 1000명이 되면 37% 자리에서 뾰족하게 선다. 후보가 늘어날수록 봉우리의 위치도, 높이도 같은 값으로 모인다.

곡선은 여러 판을 평균 낸 이야기다. 규칙이 한 판에서 어떻게 돌아가는지는 후보 10명짜리 시행을 늘어놓고 보는 편이 빠르다. 이번에는 앞 3명을 보내고 그 뒤에서 고르는 규칙이다.

후보 10명의 등수 띠 여섯 줄, 앞 세 칸은 관찰 구간이고 멈춘 칸이 강조된 그리드
그림 2. 후보 10명·앞 3명 보내기 규칙의 시행 여섯 판. 각 칸의 숫자가 그 후보의 등수이고, 강조된 칸이 규칙이 멈춘 자리다. 여섯 판 중 두 판에서 최선을 골랐고, 두 판은 기준을 넘는 사람이 끝내 나오지 않아 마지막 후보를 떠안았다.

그림 2의 각 줄이 한 번의 시행이다. 앞 세 칸은 무조건 보내는 구간이라 회색이고, 그 뒤로 가면서 처음으로 기준을 넘은 칸에서 멈춘다. 기준을 넘는 사람이 끝내 안 나오면 마지막 칸을 그대로 받는다. 잘 멈춘 판과 최선을 놓친 판이 섞여 있는 것이 이 규칙의 정상 상태다.

같은 규칙을 후보 100명·앞 37명 보내기로 20만 번 돌려 보면 확률이 눈에 보인다. 규칙 그대로를 함수 하나에 옮겼다. 표준 라이브러리만 쓴 짧은 코드다.

import random

def one_run(n, k, rng):
    """앞 k명은 무조건 보내고, 그 뒤 '지금까지 최고'보다 나은 첫 후보에서 멈춘다."""
    ranks = list(range(1, n + 1))   # 1 = 최선
    rng.shuffle(ranks)
    best_seen = min(ranks[:k])
    for r in ranks[k:]:
        if r < best_seen:
            return r
    return ranks[-1]                # 끝까지 못 고르면 마지막 후보를 떠안는다

rng = random.Random(20260818)
n, k, trials = 100, 37, 200_000
picked = [one_run(n, k, rng) for _ in range(trials)]

print(f"최선을 고른 비율 : {picked.count(1) / trials:.4f}")
print(f"상위 10등 안     : {sum(r <= 10 for r in picked) / trials:.4f}")
최선을 고른 비율 : 0.3706
상위 10등 안     : 0.6623

20만 판 중 37.06%에서 진짜 1등을 집었고, 66.2%는 상위 10등 안에서 끝났다. 규칙도 확률도 여기서 이미 다 나왔다. 아래로 이어지는 이야기는 전부 이 37%가 언제 맞고 언제 어긋나는지에 대한 것이다.

37%는 언제 더 크고 언제 더 작을까

37%는 후보가 아주 많을 때의 극한값이지, 어떤 상황에나 꽂아 넣는 상수가 아니다. 후보가 적을 때는 성공 확률이 오히려 더 높다. 5명 중에 고를 때는 2명을 보내고 최선을 집을 확률이 43.3%, 10명이면 3명을 보내고 39.9%다. 100명에서 37.1%, 1000명에서 36.8%까지 내려가면서 아래로는 0.368을 뚫지 않는다. 선택지가 적을수록 규칙이 유리한 셈이다.

보내야 하는 비율 쪽은 사정이 다르다. 이쪽은 작은 후보 수에서 37%보다 크기도 하고 작기도 하다. 5명이면 2명이라 40%, 10명이면 3명이라 30%, 20명이면 7명이라 35%다. 사람 수는 정수라서 계산된 최적점을 반올림해야 하고, 그 반올림이 비율을 위아래로 흔든다.

봉우리 근처는 어차피 평평하다. 10명일 때 3명을 보내면 39.87%, 4명을 보내면 39.83%라 어느 쪽을 골라도 사실상 같다. 컷오프를 한두 명 어긋나게 잡아도 성공률은 별로 흔들리지 않는다. 그런데 이 성공률이 재고 있는 목표가 무엇인지는 한 번 더 볼 필요가 있다.

목표가 다르면 컷오프도 다르다

지금까지의 계산은 목표를 아주 좁게 잡은 결과다. 최선 한 명만 정답이고 2등을 뽑으면 꼴찌를 뽑은 것과 똑같이 실패로 친다. 현실의 집 구하기는 그렇지 않다. 2등짜리 집도 충분히 좋고, 8등짜리 집은 그것대로 아쉽다.

그래서 목표를 바꿔서 다시 계산해 본다. 뽑은 사람의 등수를 점수로 환산하고(최선이 1점, 꼴찌가 1/n점) 그 점수의 평균을 가장 높이는 컷오프를 찾는 것이다. 답이 확 앞으로 당겨진다. 10명이면 3명이 아니라 2명만 보고 잡는 쪽이 낫고, 100명이면 37명이 아니라 9명이다. 최적 컷오프가 대략 n의 제곱근 근처로 옮겨 간다.

최선 목표와 점수 목표의 최적 컷오프를 후보 10명과 100명에서 비교한 기울기 그래프
그림 3. 같은 후보 수에서 목표만 바꾼 최적 컷오프. 최선 한 명이 목표면 3명·37명, 점수 기대값이 목표면 2명·9명이다.

그림 3에서 두 선이 벌어지는 폭이 목표의 차이다. 100명 중 37명을 보내면 평균 점수가 0.810이고, 9명만 보내고 잡으면 0.914다. 첫 사람을 무조건 잡는 극단은 0.505까지 떨어진다. 목표를 조금만 낮추면 훨씬 일찍 멈춰도 된다는 뜻이다. 그런데 원래의 37% 규칙에는 아직 말하지 않은 면이 하나 남아 있다.

규칙의 뒷면

37% 규칙에는 대칭인 뒷면이 하나 있다. 앞 37명을 보내고 나서 그 기준을 넘는 사람이 끝까지 한 명도 안 나오는 경우다. 이 일은 전체 1등이 앞 37명 안에 들어 있었다는 뜻이고, 그 확률은 37/100이다. 최선을 고를 확률과 아무도 못 고를 확률이 나란히 37%인 셈이다.

"37% 확률로 최선"의 뒷면은 "37% 확률로 마지막 후보"다. 규칙이 실패하면 남는 선택지가 마지막 한 명뿐이고, 그 사람의 등수는 완전히 운에 맡겨진다. 되돌아갈 수 없는 결정에서 이 규칙을 쓸 때는 실패했을 때 떠안을 것이 무엇인지 먼저 계산해 두는 편이 낫다.

실제 사람들은 이 규칙보다 일찍 멈추는 경향이 실험에서 보고돼 있다(Seale & Rapoport, 1997). 언뜻 보면 계산을 못 해서 손해를 보는 것처럼 읽힌다. 그런데 앞 섹션의 점수 목표를 놓고 보면 이야기가 달라진다. 목표가 "무조건 1등"이 아니라 "충분히 괜찮은 사람"이라면 이른 컷오프가 오히려 정답에 가깝다.

몇 명인지 몰라도 된다

여기까지는 후보가 몇 명인지 미리 안다고 두고 계산했다. 우리가 실제로 처한 상황은 대개 그렇지 않다. 이번 달에 매물이 몇 채나 나올지, 지원자가 몇 명이나 더 올지는 아무도 알려주지 않는다. 세어야 할 전체 수를 모르는데 그 37%를 어떻게 계산하나.

방법은 세는 대상을 바꾸는 것이다. 후보의 순번 대신 시간을 쓴다. 마감이 정해져 있다면 — 이사 날짜까지 두 달이라면 — 후보들이 대개 언제쯤 오는지를 기준으로 삼아, 그중 37%가 지나간 시점까지는 무조건 보기만 한다. 오는 시점이 기간 안에 고르게 흩어진다고 보면 첫 3주 남짓이 그 지점이다. 그 뒤로는 지금까지 본 누구보다 나은 사람이 나오는 순간 잡는다. 후보가 그 기간에 몇 명 오든 최선을 고를 확률은 1/e 아래로 내려가지 않는다. 다만 후보마다 오는 시점이 서로 영향을 주지 않고, 어느 때에 얼마나 몰리는지가 다들 같다는 전제가 붙는다 — 몇 명이 올지는 몰라도 되지만, 대개 언제쯤 오는지는 알아야 한다는 말이다. 브루스가 1984년에 증명한 1/e-법칙이다.

숫자로도 확인해 봤다. 후보 수를 1명에서 200명 사이에서 매번 새로 뽑았다. 각자의 도착 시각은 기간 안에 고르게 흩뿌렸다. 시각 37% 지점까지 관찰하고 그다음 최고에서 멈추는 방식으로 10만 번을 돌렸다. 최선을 고른 비율은 0.3675로 나왔고, 이론적 하한 0.3679와 사실상 같은 값이다.

다만 이 결과는 후보 수 분포를 저렇게 잡았을 때 하한에 거의 붙는다는 뜻이다. 어떤 상황에서나 정확히 37%가 나온다는 말은 아니다. 후보 수를 정확히 안다면 성공률은 그보다 조금 더 높다.

세는 대상이 사람 수에서 달력으로 바뀌었을 뿐, 규칙의 모양은 그대로다. 앞의 37%는 보내고, 그다음 최고에서 멈춘다. 후보가 몇인지 몰라도, 되돌아갈 수 없어도, 이 한 줄이면 최선을 고를 확률 37%쯤은 챙긴다.

더 읽기

  • Secretary problem — Wikipedia — P(r) 식, 작은 n의 최적 컷오프 표, 변형 문제 정리
  • Thomas S. Ferguson, "Who Solved the Secretary Problem?" Statistical Science 4(3), 1989 — 문제의 출처와 역사
  • Darryl A. Seale, Amnon Rapoport, "Sequential decision making with relative ranks: An experimental investigation of the ‘secretary problem’" Organizational Behavior and Human Decision Processes 69(3), 1997, 221–236 — 실제 사람들이 이론보다 일찍 멈춘다는 실험 보고
  • F. Thomas Bruss, "A Unified Approach to a Class of Best Choice Problems with an Unknown Number of Options" The Annals of Probability 12(3), 1984 — 1/e-법칙 원논문