タスク1.1 - アクティビティセットを使用する
タスクの概要
FlexSim Healthcareの3Dオブジェクトと処理フローアクティビティは、病院、救急治療室、クリニックなどのさまざまな医療シミュレーションモデルの構築を容易にします。このチュートリアルタスクでは、FlexSim Healthcare(HC)モデルの構築方法の基礎を学びます。次の方法を学習します。
- FlexSim Healthcare環境に切り替える
- 3Dモデルにフロアプランを追加する
- 3Dモデルに場所を追加する
- 3Dモデル内で人を作成する処理フローを構築する
- 処理フロー内でアクティビティセットを使用してロジック構築を高速化する
FlexSim Healthcare 3Dオブジェクトと処理フローの使用方法を学ぶために、ウォークイン医療クリニックの一部を構築します。このチュートリアルタスクでは、システムの新しい患者の到着を処理するセクションのみを構築します。必要なオブジェクトを追加し、クリニックに到着してキオスクで受付をする患者の基本的な動作を作成します。
タスクが完了すると、モデルは次の画像のようになります。
ステップ1 フロアプランを追加する
このステップでは、新しいモデルを作成して、FlexSim Healthcare環境に切り替えます。技術的にはこのステップは不要です。なぜなら、この環境でなくても同じ3Dオブジェクトと処理フローアクティビティにアクセスできるからです。たとえば、[人]グループのライブラリでFlexSim Healthcare 3Dオブジェクトにアクセスすることも、処理フローライブラリの下の方にあるさまざまな[人]グループのライブラリでFlexSim HC処理フローアクティブティにアクセスすることもできます。
ただし、FlexSim Healthcare環境に切り替えると、これらの特定の3Dオブジェクトと処理フローアクティビティがそれぞれのライブラリの一番上に移動するため、アクセスしやすくなります。インターフェイス全体、メインツールバー、およびライブラリ内のオブジェクトの構成も簡素化され、医療モデルの構築が効率化されます。
Healthcare環境に切り替えたら、このチュートリアルでシミュレートするクリニックの平面図を追加します。この平面図は、ソフトウェアのインストール時にFlexSimと一緒にインストールされます。フロアプランの追加が完了すると、モデルは次の画像のようになります。
FlexSim Healthcare環境に切り替えて平面図を追加するには:
- デフォルト設定を使用して、新しいモデルを作成します。
- メインウィンドウの右上([プロパティ]の上)で、[環境を変更]ボタン
をクリックしてメニューを開きます。[Healthcare]を選択して、FlexSim Healthcare環境に切り替えます。
- メインツールバーで[平面図]ボタンをクリックして、メニューを開きます。[平面図を追加]を選択して、新しい平面図を追加し、[モデルの背景のプロパティ]ウィンドウを開きます。
- [背景]タブで、[ファイル名]ボックスの横にある[参照...]ボタンをクリックして、コンピュータのファイルディレクトリを開きます。
- コンピュータの[ドキュメント]フォルダに移動し、次に[FlexSim 2020プロジェクト]フォルダに移動します。[ER_small.dwg]ファイルをダブルクリックして選択します。
- 図面の空間に関するデフォルト設定を使用します。
- [レイヤー]タブでは、レイヤーの横にある色付きのボックスをクリックすると、そのレイヤーの色を変更できます。
モデルがこのステップの冒頭で示した画像のような3Dモデルになっていることを確認します。
ステップ2 3Dモデルに場所を追加する
FlexSim Healthcare 3Dライブラリには、医療モデルの構築に特化して設計されたオブジェクトのセットが含まれています。このステップでは、FlexSim Healthcareの場所とマルチロケーションを3Dモデルに追加する方法を学習します。
FlexSimの概要を理解していれば、場所が標準FlexSim環境内のフローアイテム用の固定リソースに似ていることがわかります。患者は、これらの場所に移動して、それぞれのオブジェクトのタイプに基づいて相互作用します。通常、相互作用は、患者がその場所に入るとき、その場所を使用しているとき、またはその場所から出るときに患者のビジュアルやアニメーションに何らかの変化をもたらします。たとえば、患者が椅子と相互作用するときは、患者が椅子に座っているアニメーションが表示されます。
また、このステップでは3Dモデルにマルチロケーションを追加します。マルチロケーションは、関連する場所のグループを包括する場所です。患者が複数の場所を取得する場合は、そのグループ内の個別の場所を取得できます。このモデルでは、待合室の椅子を表すために椅子のマルチロケーションを追加します。それぞれの椅子は潜在的に患者によって取得される可能性がありますが、各椅子をモデルに追加する必要はありません。椅子のグループのみを追加します。
この時点では、モデルの登録エリアを作成します。登録エリアには、患者用の出入り口、患者の到着時に受付をするキオスク、待機エリアがあります。作業が完了すると、3Dモデルは次の画像のようになります。
これらの場所をモデルに追加するには:
- 左側のペインで、[ライブラリ]タブをクリックして、ライブラリを開きます。
- オブジェクトの[医療]グループの下で、[場所]オブジェクトをクリックして、場所オブジェクトのメニューを開きます。[キオスク]オブジェクトを3Dモデルにドラッグします(このセクションの冒頭で示した画像を参考にしてオブジェクトを配置してください)。
- キオスクを180度回転させます(青色のサイズ調整矢印を右クリックしてからドラッグしてオブジェクトを回転させるか、[プロパティ]を使用してZ回転
を
180
に変更します)。 - [医療]グループのライブラリで、[小道具]オブジェクトをクリックして、小道具オブジェクトのメニューを開きます。[ガラス]ドア([ドア]グループ内)を3Dモデルにドラッグします。
- [医療]グループのライブラリで[マルチロケーション]オブジェクトをクリックして、マルチロケーションオブジェクトのメニューを開きます。モデルに[椅子]オブジェクトをドラッグします。
- 3Dモデルで、[Chairs1]のマルチロケーションをクリックして選択します。[プロパティ]で、オブジェクトの名前を「待合室」に変更します。
- 待合室を45度回転させます。
3Dモデルがこのステップの冒頭に表示した画像のようになっていることを確認します。
ステップ3 患者フローを追加する
このステップでは、処理フローの設定方法を学習します。処理フローツールを使用すると、モデルのロジックのフローチャートを作成できます。このフローチャートの中に、あらかじめプログラムされたロジックまたは指示の小さいかたまりを含むアクティビティを追加します。シミュレーションモデルを実行すると、トークンと呼ばれる小さな緑色の円が処理フローアクティビティを移動し、各アクティビティの指示を実行します。
このステップでは2つの処理フローを作成します。1つは、作成後に患者と3Dモデルの相互作用を制御するために使用する患者処理フローです。もう1つは、3Dモデル内での患者の作成頻度を制御する「到着」という名前の一般的な処理フローです。
患者フロー処理フロー内で、モデルを通して患者のフローを誘導するアクティビティセットを追加します。FlexSim Healthcareモデルには、シミュレーションモデルのロジックの構築に使用可能なアクティビティセットがいくつかあります。アクティビティセットは、FlexSim Healthcareモデル内の最も一般的なロジックタスクの一部を遂行するよう事前にプログラムされた処理フローアクティビティのグループです。詳細については、「アクティビティセット」を参照してください。
患者フローを追加してセットアップするには:
- メインツールバーで、[患者フロー]ボタンをクリックして、メニューを開きます。[患者処理フローを追加]を選択して、新しい処理フローを作成します。新しいウィンドウが開き、2つの処理フローが表示されます。
- [到着]タブをクリックして開きます。この処理フローには4つのアクティビティからなるスタックブロックが1つあることに注意してください。1つ目は、指定されたスケジュールに従ってトークンを作成します。2つ目は、3Dモデルで患者を作成して、それを患者フローにアタッチします。3つ目は、患者の外観をランダム化し、4つ目は、トークンを削除します。
- [患者を作成]アクティビティのアイコンをクリックして、そのプロパティを開きます。[目的地]ボックスの横にある[サンプラー]ボタン
をクリックしてサンプリングモードに入ります。
- 3Dモデルで、[Glass Door1]をクリックしてサンプリングします。
- [患者フロー]ボックスでそれが[
Patient Flow
]処理フローにリンクされていることが示されていることに注意してください。 - [患者フロー]タブをクリックして開きます。この処理フローにはすでに[スケジュールソース]アクティビティがあります。このアクティビティでは、到着フロー内の[患者を作成]アクティビティで患者が作成されるたびにトークンが作成されます。
ステップ4 処理フローにアクティビティセットを追加する
このステップで追加するアクティビティセットには、場所を取得して、そこまで歩いて行き、そこでしばらく時間を過ごすように患者に指示するアクティビティが含まれています。
作業が完了すると、処理フローは次の画像のようになります。
ここでは、これらのアクティビティの追加と接続だけを行います。後のステップで、プロパティを編集してロジックを追加します。
これらのアクティビティを追加して接続するには:
- [HCアクティビティセット]グループのライブラリで、[ウォークしてからプロセス]アクティビティセットを[患者フロー]処理フローにドラッグします。
- コンテナの上のテキストをダブルクリックして、コンテナの名前を「サインイン」に変更します。
- 場所リソースをダブルクリックして、その名前を「キオスク」に変更します。
- [ソース]アクティビティから[サインイン]コンテナの端までのコネクターを作成します。
- 空白部分をダブルクリックして、[クイックライブラリ]を開きます。[HCアクティビティセット]グループで、[ウォークしてからプロセス]をクリックし、[患者フロー]処理フローに別のアクティビティセットを追加します。
- コンテナの名前を「待機」に変更します。
- 場所リソースの名前を「待合室」に変更します。
- [サインイン]コンテナの下端から[待機]コンテナの上端までのコネクターを作成します。
- Ctrlキーを長押しします。[待機]コンテナ内の[処理]アクティビティをクリックして、それをスタックブロックからドラッグします。[処理]アクティビティを削除します。
このアクティビティセット内のアクティビティの連携方法の詳細については、「フォークしてからプロセス」を参照してください。
患者フローがこのステップの冒頭に示した画像のようになっていることを確認してください。
ステップ5 アクティビティのプロパティを編集する
このステップでは、処理フローのアクティビティのプロパティを編集します。留意すべき重要な概念の1つとして、このチュートリアルでは、[到着]処理フローで作成された各患者に対して処理フローインスタンスを使用します。つまり、このステップで各患者用に作成するテンプレートに基づき、患者はそれぞれ独自の[PatientFlow]処理フローのコピーを実行します。処理フローインスタンスの動作の詳細については、「処理フローインスタンス」を参照してください。
具体的には、アクティビティのプロパティにおいて現在のpatient
というキーワードが表示されるときは、この処理フローのこのインスタンスを実行している現在の患者を参照することを意味します。このインスタンスを通じて実行するトークンは、この患者に結び付けられます。
これらのプロパティを編集するには:
- [キオスク]アクティビティのアイコンをクリックして、そのプロパティを開きます。[場所]ボックスの横にある[サンプラー]ボタン
をクリックして、3DビューでKiosk1オブジェクトをサンプリングします。
- [待合室]アクティビティのアイコンをクリックして、そのプロパティを開きます。[場所]ボックスの横にある[サンプラー]ボタン
をクリックして、3Dビューで待合室オブジェクトをサンプリングします。
- [サインイン]コンテナ内の[処理]アクティビティのアイコンをクリックして、そのプロパティを開きます。[処理時間]フィールドで、minutes(10)をminutes(3)に変更します。
この時点でシミュレーションモデルを保存することをおすすめします。
ステップ6 モデルをテストする
このステップでは、シミュレーションモデルを実行します。一般的に、小さなセクションを作成したところで定期的にモデルロジックをテストすることをおすすめします。モデルを実行すると、期待どおりに動作しなかった部分やエラーに気付くことができます。詳細については、「シミュレーションモデルを実行する」を参照してください。
モデルを実行するには、メインツールバーの下にあるシミュレーションコントロールバーの[リセット]ボタンを押します([リセット]を押すと、シミュレーションモデルがクリアされ、開始値に戻ります)。シミュレーションを開始するには[実行]を押し、シミュレーションを一時停止するには[停止]を押します。
3Dモデルを見ると、患者がドアを通って到着し、キオスクまで歩いて行ってから、待合室に入ります。
3Dモデル内のアクションは[PatientFlow]処理フローの出来事と相関関係にあることに注意してください。トークンが処理フローを移動すると、それらは3Dモデルにおける患者の行動と相関します。処理フローアクティビティは、患者がさまざまなタイプの場所やスタッフメンバーと相互作用するすべてのアクションとロジックを処理します。
結論
これで、医療クリニックシミュレーションモデルの最初のフェーズが作成されました。いくつかのFlexSim Healthcare 3Dオブジェクトをモデルに追加し、処理フローツールとピープルアクティビティセットを使用してモデルのロジックを構築する方法を見てきました。次のチュートリアルでは、引き続き、医療クリニックでの残りの患者追跡を構築し、スタッフの使用方法を学習します。「チュートリアルタスク1.2 - スタッフを追加する」に進んでください。