얼랑 B 공식 (Erlang B Formula)
쉽게 풀면
전화 교환기에 회선이 10개 있는데 모두 통화 중이면 새로 걸려온 전화는 기다리지 못하고 '통화 중' 신호를 받습니다. 얼랑 B는 '회선 수와 통화량이 이 정도일 때 몇 %의 전화가 막히는가'를 계산해 줍니다. 얼랑 C가 '기다릴 수 있는' 시스템의 대기확률을 다룬다면, 얼랑 B는 '기다릴 수 없는' 시스템의 손실확률을 다룹니다.
왜 중요한가
통신망 회선 설계의 100년 된 고전 공식이며, 오늘날에도 병원 병상 수, 주차장 규모, 렌터카 차량 수, 클라우드 서버 용량처럼 '꽉 차면 고객을 돌려보내는' 모든 자원의 용량 결정에 쓰입니다. 서비스시간 분포에 무관하게 성립하는 둔감성(insensitivity) 덕분에 적용 범위가 매우 넓습니다.
논문에서는 이렇게 쓰입니다
병상이 꽉 차서 환자를 못 받는 확률을 병상 수에 따라 계산했다는 뜻입니다.
손실률 기준을 만족하는 가장 적은 서버 수를 공식을 반복 계산해 찾았다는 의미입니다.
조금 더 깊게 보면
B(c, a) = (aᶜ/c!) / Σ_{k=0}^{c} (aᵏ/k!) 이며, 실제 계산에는 B(c,a) = a·B(c−1,a) / (c + a·B(c−1,a)) 의 재귀식을 씁니다. 서비스시간 분포가 지수가 아니어도(M/G/c/c) 같은 결과가 성립하는 둔감성이 핵심 성질이고, 차단된 고객이 재시도하는 경우는 별도의 재시도 대기모형이 필요합니다. 규모의 경제가 강하게 나타나 서버를 합칠수록(풀링) 같은 차단확률에서 필요한 총 서버 수가 줄어듭니다.
주의할 점
도착이 포아송(무한 모집단)이라는 가정이 전제이며, 고객 모집단이 작으면 엥셋(Engset) 공식을 써야 합니다. 차단된 고객이 사라지지 않고 재시도하면 실제 부하가 공식의 가정보다 커져 차단확률을 과소평가하게 되고, 기다림이 일부 허용되는 시스템이라면 얼랑 C나 유한용량 대기모형이 적절합니다.