もう一度(これでだめな時は更新してください。) : lambda, mu1とmu2を変えて最初(time=0)からやり直します。
M/M/2待ち行列(1999年5月7日公開、2013年05月26日23:51:33第13回の改訂)
待ち行列関係M/M/1M/M/2
客数推移関係客数推移客数推移と客さばき数推移
客数推移と客さばき数推移 時間帯毎に到着率が変わる版
スクリーンセーバー

上はJAVAで作られています。メモリを大量に使ったり、重くなるかもしれません。その時は、ごめんなさい。
実行後に画面をスクロールしたり、アプレット全体が画面に入ってないと、間違った画面になるかもしれないので、気をつけてください。画面の大きさを決めてから”もう一度”をクリックするか、更新(reload)してください。


場合によってはアプレットの中の黄色い数字がスムーズに動かないかもしれません。

●M/M/2待ち行列の説明
上のアプレットではM/M/2待ち行列をやってます。
M/M/2待ち行列はM/M/1のサーバーを2つにしたものです。
mu1は上のサーバー、mu2は下のサーバーが、単位時間にどれだけの客をサービスできるかを表しています。
来た客は、上も下も空いている時は、muの値に無関係に50%の確率で上か下に行き、片方が空いている時は空いている方に行きます。どちらもサービス中の時は列に並び、サーバーが空くのを待って空いた方に行きます。
サーバーの右の数字は、今までにサービスをした客の数です。

●プログラムのダウンロード
○Java(mm2.java 12KB)
○Visual Basic(スクリーンセーバー用)
・スクリーンセーバー(mm2.scr 26KB)
・Visual Basic Module(mm2.bas 1KB)
・Visual Basic Project(mm2.vbp 1KB)
・VBWファイル(mm2.vbw 1KB)
・Visual Basic Form(mm21.frm 26KB)
・Visual Basic Form(mm22.frm 2KB)
○BASIC(mm2bas.bas 4KB)

●プログラムの説明
Visual Basicのmm21.frmの説明をします。
このプログラムではl1がλ、l2がμ1(上のサーバー)、l3がμ2(下のサーバー)です。
51、52、53行目あたりでそれらを与えてください。
初期設定の後、シミュレーションの本体は
while tis<...からです。
t1,t2m,t3mはそれぞれ、
次の到着までの時間、
次の2つのサービス終了までの時間です。
M/M/なので、指数時間にしていますが、一般の分布にしたければ、ここを変えてください。
ksm=1の時、到着の処理を行います。
ksm=2の時、上のサービス終了の処理を行います。
ksm=3の時、下のサービス終了の処理を行います。

ご意見、ご感想、お問い合わせ、お願い等がございましたら、お気軽に、
メール送信フォームからメールを送るか、
●掲示板に書き込むか、
どちらかお好きな方法で、ご連絡お願いいたします。


●大山崇のホームページの利用について
●大山崇のホームページ