assimeeによるモデル作成方法やプロセスについてのより深い理解のためにこの記事を読む前に以下の記事を先にご覧いただくことをことをお勧めします。
また、時間帯別の人員配置の最適化については以下の記事をご覧ください。
ー概要ー
今回は病院の会計業務をモデルに人員配置の最適化を考えます。一般的に病院では診察時間よりも会計に時間が掛かることがあるので、assimeeの最適化機能を使って事前に適切な配置する人員数を計画することを考えます。
ーモデルー
今回のモデルでは以下を想定します。
- 病院は受付、診察、会計とそれぞれの待合から構成する
- 受付は短時間だが、診察には15分、会計には20分かかるとする
- 診察を行う医師は10人とする
- 来院者数のデータがある
- 診察は午前8時に開始、12時から13時は休診、16時の受付で終了
- 会計は18時まで稼働
モデルの作成
今回のモデルは以下の図ようになります。比較的簡単なモデルとなっています。
以下の通りプロセスを配置して設定して行きます。
入荷プロセス:
プロセス名を「000来院」へ変更、
入荷数は後程設定。
置き場プロセス:
プロセス名を「001受付待」へ変更、容量を「1000個」と設定
加工プロセス:
プロセス名を「002受付」へ変更、処理時間を「1分」、作業人数を「1人」と設定、
対象パーツ名称を「来院者」、個数を「1個」、
出力パーツ名称を「受付済」、個数を「1個」と設定
置き場プロセス:
プロセス名を「003診察待」へ変更、容量を「1000個」と設定
加工プロセス:
プロセス名を「004診察」へ変更、処理時間を「15分」、作業人数を「10人」と設定、
対象パーツ名称を「受付済」、個数を「1個」、
出力パーツ名称を「診察済」、個数を「1個」と設定
置き場プロセス:
プロセス名を「005会計待」へ変更、容量を「1000個」と設定
加工プロセス:
プロセス名を「006会計」へ変更、処理時間を「20分」、作業人数を「4人」と設定、
対象パーツ名称を「診察済」、個数を「1個」、
出力パーツ名称を「会計済」、個数を「1個」と設定
出荷プロセス:
プロセス名を「007帰宅」へ変更
来院者数の設定
今回は以下のような来院者データがあります。病院の午前と午後の診察にそれぞれ150人ずつの計300人が来院し、午前と午後の診察開始時間直後がもっとも混雑します。
時間帯 | 来院者数 |
0-60(8時台) | 60 |
60-120 | 30 |
120-180 | 30 |
180-240 | 30 |
240-300(12時台) | 0 |
300-360 | 60 |
360-420 | 30 |
420-480 | 30 |
480-540 | 30 |
540-600(17時台) | 0 |
「000来客」の詳細設定より「入荷データを直接入力」を押すと以下のような画面が立ち上がるので表のように設定していきます。
出荷目標の設定
出荷目標(会計済人数)は以下のように設定します。来院者数に比べて目標が高くなっていますが、このようにすることで、出荷が一番多くなる最も効率の良い形にプロセスの最適化が行われます。
時間帯 | 出荷目標(会計済人数) |
0-60(8時台) | 50 |
60-120 | 50 |
120-180 | 50 |
180-240 | 50 |
240-300(12時台) | 50 |
300-360 | 50 |
360-420 | 50 |
420-480 | 50 |
480-540 | 50 |
540-600(17時台) | 50 |
「007帰宅」をクリックして「出荷データ直接を入力」を選ぶと、以下のような画面が立ち上がるので、データの表のように入力して行きます。
シミュレーション
以上の設定後にシミュレーションを行います。シミュレーションを行う時間は600分(10時間)と設定します。(午前8時に開き診察を開始、12時から13時は休診、診察は16時の受付で終了し会計は18時まで稼働)。シミュレーション結果は以下の通りとなります。
この時、「001受付待」、「003診察待」、「005会計待」のパーツ数を見てみます。モデル図でそれぞれのプロセスをクリックするとグラフが表示されます。
受付待と診察待はパーツ数(人数)が右肩上がりになっていないため、問題なく終わっていますが、会計待はパーツ数が右肩上がりとなっておりが全く処理能力が不十分なことが分かります。次に最適化を行い人員配置の計画を考えてみましょう。
ー人員計画最適化ー
最適化の準備のためにまず「006会計」の作業人数を時間帯別のスケジュールに直します。
「006会計」の詳細設定の作業人数横のマークから時間帯別スケジュールのチェックボックスを入れると以下のような画面が立ち上がるので、60分刻みで600分まで4人と入力します。
次に人員最適化のタブを選び、新規人員最適化を実施を選びます。すると、最適化するパラメーターを選ぶ画面が立ち上がるので、「006会計」の作業人数を選び、「時間帯別スケジュールで入力」のチェックボックスをクリックします。
チェックボックスの右の文言をクリックすると時間帯別に人員の最大値と最小値を入れることが出来るので、最小値を2人、最大値を20人と設定し保存します。
設定が終わったらチューニングボタンを押すことで最適化が始まります。*最適化にはランダム変数が含まれるため、ここから先の結果は完全に一致しないことがあります。
最適化の結果は以下のようになりました。
最適化の結果が出たら、まず、先ほど溢れていた「005会計待」のパーツ数(人数)と出荷数(診察を終えて帰宅する人数)を確認します。ここでもモデル図でそれぞれのプロセスをクリックするとグラフが表示されます。
会計待の人数が右肩上がりで無くなり、0となっている他、帰宅人数(出荷数)が600分のところで300人となっていることが分かります。今回のモデルでは来院者数が300人なので、シミュレーション時間で600分(想定では18時)までに会計が終わって全員帰宅したということが分かります。
次に会計に配置された人数(作業人数)が最適化でどうなったのか確認します。グラフ画面の左下にある「リストで値を確認」ボタンを押すと以下の画面が立ち上がるので、「時間帯別スケジュールを入力」をクリックする、スケジュール別の最適化結果が表示されます。
この時、最適化値とあるのが最適化の結果となります。ここで値を抜き出し一覧にしてみると以下のようになります。*最適化にはランダム変数が含まれるため、結果が一致しないことがあります。
時間帯 | 作業人数 | 最適化後 |
0-60(8時台) | 4 | 10 |
60-120 | 4 | 10 |
120-180 | 4 | 11 |
180-240 | 4 | 10 |
240-300(12時台) | 4 | 19 |
300-360 | 4 | 10 |
360-420 | 4 | 10 |
420-480 | 4 | 11 |
480-540 | 4 | 10 |
540-600(17時台) | 4 | 14 |
この表を見ると、12時台と17時台に多めに人数を配置することで、病院が開いている間に300人すべての会計が処理できていることが分かります。また、それ以外の時間には10人ずつとほぼ一定の人数を配置すればよいということが分かりました。あくまで来院者数のデータが正確である前提ですが、今回の最適化結果からは、会計に配置する人数は10人が最低限必要な人数であること、午前と午後の診察が終わったタイミングで会計担当の人数を増やすことで無事に会計が終了することが分かりました。*ただし、例えば、診察の終わった患者さんは寄り道をせず会計に行ってくれることを暗に前提にしていることなど、実際には考慮しないといけない要素がまだあることに注意してください。
ーまとめー
今回は病院業務のうち待ち時間が多くなりがちな会計業務の人数をassimeeで見積もりました。このように、来院者数のデータがあれば、assimeeを使うことで前もって配置する最低人数を決めたり、必要なヘルプの人数を見積もることが簡単にできました。また、今回のように入荷数を来院者数などに置き換えて考えることで幅広い分野でassimeeを活用することが出来ます。