待ち行列理論とは

待ち行列理論とは、人や物がサービスを受けるために並ぶ「行列」の長さや、待ち時間を数学的に計算し、混雑の状況を分析・予測するための学問です。レジや窓口の混雑緩和だけでなく、コンピュータや通信回線の設計にも深く関わっています。
この理論では、「サービスを受けるために到着する人の間隔」「サービスにかかる時間」「サービスを提供する窓口の数」といった要素を数式に当てはめます。これにより、「平均して何分待つことになるか」「行列の長さは最大でどれくらいになるか」を導き出すことができます。コンピュータの世界では、アクセスが集中したサーバーがリクエストを処理する順番を待つ仕組みや、ネットワーク上のデータがルーターのメモリで順番待ちをする設計などで、この理論が活用されています。
具体例
スーパーのレジをイメージしてください。お客さんがランダムに到着し、レジでの会計時間にバラつきがある場合、レジの数を何台にすれば「お客さんの平均待ち時間を3分以内に抑えつつ、レジ担当スタッフの手が空きすぎないようにできるか」という最適なバランスを待ち行列理論で計算できます。
もう少し詳しく
待ち行列理論を数式で評価する際、最も基本的なモデルとして「M/M/1」モデルが知られています。最初の「M」は客の到着間隔がランダム(ポアソン分布、あるいは指数分布に従う)であることを示し、2番目の「M」はサービス時間もランダム(指数分布に従う)であることを示します。最後の「1」は窓口(サーバー)の数が1つであることを意味します。このモデルでは、単位時間あたりに到着する平均客数(到着率:λ)と、単位時間あたりに処理できる平均客数(サービス率:μ)を用いて、窓口の混雑度を表す「利用率(ρ = λ / μ)」を計算します。利用率が1に近づくほど、待ち行列の長さや待ち時間は急激に増加し、利用率が1を超えると行列は無限に伸びて破綻してしまいます。このため、システムの設計では利用率を適切な範囲に抑えることが不可欠です。
試験でのポイント
試験においては、M/M/1モデルを用いた具体的な計算問題が頻出します。特に「平均待ち時間(Wq = (ρ / (1 - ρ)) * (1 / μ))」や「平均システム内時間(待ち時間とサービス時間の合計)」を求める公式の適用が求められます。また、「窓口の利用率(稼働率)が変化したときに、平均待ち時間が何倍になるか」といった応用的な問われ方も定番です。計算ミスを防ぐためには、到着率(λ)とサービス率(μ)の単位(「1時間あたり何人」なのか「1分あたり何人」なのか)を統一することが重要です。さらに、窓口が複数ある「M/M/s」モデルとの違いや、混雑を緩和するための手法(窓口を増やす、処理能力を向上させるなど)の効果についても概念的に理解しておく必要があります。
関連する用語
待ち行列理論に関連する用語としては、到着やサービスのランダム性を表す基礎となる「ポアソン分布」や「指数分布」が挙げられます。また、コンピュータネットワークにおいて通信パケットの処理優先度を制御する「QoS」や、サーバーへのアクセスを分散させる「ロードバランサ(負荷分散装置)」も、待ち行列の発生を防ぎシステムを安定稼働させるための重要な技術的アプローチとして深く関連しています。