얼랑 B 공식 (Erlang B Formula)

산업공학
한 줄 정의: 대기공간이 없는 M/M/c/c 손실 시스템에서 c개의 서버가 모두 사용 중이어서 도착한 고객이 서비스를 받지 못하고 손실될 확률(차단확률)을 제공 부하 a = λ/μ와 서버 수 c의 함수로 나타낸 공식입니다.

쉽게 풀면

전화 교환기에 회선이 10개 있는데 모두 통화 중이면 새로 걸려온 전화는 기다리지 못하고 '통화 중' 신호를 받습니다. 얼랑 B는 '회선 수와 통화량이 이 정도일 때 몇 %의 전화가 막히는가'를 계산해 줍니다. 얼랑 C가 '기다릴 수 있는' 시스템의 대기확률을 다룬다면, 얼랑 B는 '기다릴 수 없는' 시스템의 손실확률을 다룹니다.

왜 중요한가

통신망 회선 설계의 100년 된 고전 공식이며, 오늘날에도 병원 병상 수, 주차장 규모, 렌터카 차량 수, 클라우드 서버 용량처럼 '꽉 차면 고객을 돌려보내는' 모든 자원의 용량 결정에 쓰입니다. 서비스시간 분포에 무관하게 성립하는 둔감성(insensitivity) 덕분에 적용 범위가 매우 넓습니다.

논문에서는 이렇게 쓰입니다

"응급실 병상 수를 결정하기 위해 환자 도착을 포아송 과정으로 보고 얼랑 B 공식(Erlang B formula)으로 병상 수별 환자 거부 확률을 산출하였다."

병상이 꽉 차서 환자를 못 받는 확률을 병상 수에 따라 계산했다는 뜻입니다.

"목표 차단확률 1% 이하를 만족하는 최소 서버 수를 얼랑 B의 재귀식으로 탐색하였다."

손실률 기준을 만족하는 가장 적은 서버 수를 공식을 반복 계산해 찾았다는 의미입니다.

조금 더 깊게 보면

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나 유한용량 대기모형이 적절합니다.

관련 용어