使用 AnyLogic 進行模擬/離散事件模擬/銀行模型/步驟 6. 添加出納員
外觀
步驟 6. 添加出納員
現在,我們將透過新增在銀行工作的出納員來建立系統的另一個部分。現在,一些客戶會來找出納員,一些客戶會使用 ATM。我們可以使用延遲來建模出納員,就像我們對 ATM 的建模一樣。然而,使用資源建模出納員要方便得多。資源是可以被實體擁有的特殊單元。一次只有一個實體可以擁有一個資源;因此實體會爭奪資源。
- 新增 服務 物件。

服務 為實體獲取資源單位,延遲實體,並釋放獲取的單位。
修改物件屬性 - 新增 資源池 物件。資源池 物件是資源單元的儲存。它應該連線到資源獲取和釋放物件(在本例中為服務)。因此,將其連線到服務物件的下方埠。

將物件命名為tellers。指定此資源物件只有四個資源單位:定義其容量:4
- 放置 選擇輸出 物件。選擇輸出 物件是一個決策塊。到達該物件的實體將沿著兩個輸出埠之一轉發,具體取決於使用者定義的條件。
保留預設物件屬性。實體路由條件randomTrue(0.5)定義爭奪 ATM 和出納員服務的客戶數量將大致相等。
按圖示連線selectOutput和service到其他物件
由於模型發生了改變,我們也需要修改模型動畫。
- 繪製一條多邊形線來為等待客戶的佇列製作動畫。從左到右繪製。將多邊形線命名為queueBeforeTellers。

- 在queueBeforeTellers的右側繪製一個由四個點組成的多邊形線。該多邊形線將指示出納員動畫的位置。將其命名為tellerPlaces。

現在,我們將透過定義兩個影像來為出納員製作動畫,這兩個影像分別表示出納員處於空閒狀態和忙碌狀態。當資源單元被獲取和釋放時,AnyLogic 將自動在這些影像之間切換。
- 將影像從演示模板拖動到圖中藍色交叉矩形所示的位置。

- 轉到影像形狀的屬性。將影像命名為busyTeller。
- 定義該形狀將顯示的影像。使用新增影像按鈕新增Teller Busy.png。您可以在計費部門示例模型所在的資料夾中找到此檔案(類似於<AnyLogic 資料夾>\plugins\com.xj.anylogic.examples.<構建號>\models\Billing Department).
您將在預覽區域看到新增的影像。
- 選中原始大小複選框。如果未選中原始大小選項,則圖片會顯示為適合影像形狀的矩形,否則圖片會顯示為沒有任何失真。
- 建立另一個影像來顯示放鬆的出納員。將其命名為idleTeller,並選擇Teller Idle.png作為該形狀顯示的影像。
現在,我們將透過設定流程圖物件的動畫屬性來為流程圖製作動畫。
- 現在,我們需要為客戶佇列製作動畫。因此,修改service屬性
- 要為出納員製作動畫,請修改tellers屬性
在當前模型中,出納員的數量是固定的。但是,我們可能需要在模型執行時動態地改變它。AnyLogic 提供了一組控制元件,可以更改模型引數。現在,我們將新增一個滑塊,以便在執行時更改出納員的數量。
- 新增一個滑塊。開啟調色盤的控制元件模板,並將滑塊元素從那裡拖到圖形編輯器中。將其放置在我們的資源池物件的下方,讓使用者知道此滑塊將改變此特定物件的容量。

- 我們希望將系統中的出納員數量從 0 更改為 4。因此,將 4 設定為滑塊的最大值。
- 鍵入tellers.capacity作為滑塊的預設值。
- 指定tellers.set_capacity((int)value);作為滑塊的動作。

執行模型。您可以看到出納員正在使用我們的影像製作動畫。現在,您可以使用滑塊更改出納員的數量。因此,您可以看到特定客戶到達率需要多少出納員。













