AnyLogic 行动图实现银行排队疏散:选择最近出口
-
首先,在 AnyLogic 中创建一个新模型,并添加一个行人库和一个行人类型。将行人类型命名为'顾客'。
-
接下来,在模型中添加一个银行大厅,并将其设置为行人库的位置。将大厅的尺寸和形状调整为适合银行大厅的大小和形状。
-
在大厅中添加三个出口,分别命名为'出口1'、'出口2' 和 '出口3'。将它们放置在大厅的不同位置,以便行人可以轻松地找到它们。
-
在模型中添加一个行动图,并将其命名为'疏散'。在行动图中添加一个动作,将其命名为'选择最近的出口'。在此动作中,使用 AnyLogic 的内置函数来计算行人到每个出口的距离,并选择最近的出口。
-
在行人类型中添加一个属性,用于存储行人选择的出口。将此属性命名为'selectedExit'。
-
在行人进入大厅时,将其'selectedExit' 属性设置为'null'。在行动图中添加一个动作,将其命名为'选择出口'。在此动作中,使用条件语句来检查每个出口是否已满。如果出口没有满,行人将选择该出口,并将其'selectedExit' 属性设置为该出口的名称。如果所有出口都已满,行人将等待,直到有一个出口可用。
-
在行动图中添加一个动作,将其命名为'移动到出口'。在此动作中,使用行人的'selectedExit' 属性来确定行人应该移动到哪个出口。将行人移动到选择的出口,并将其'selectedExit' 属性设置为'null'。
-
在模型中添加一个事件,将其命名为'生成顾客'。在此事件中,使用 AnyLogic 的内置函数来生成新的顾客,并将其放置在大厅中。将此事件设置为每隔一段时间自动触发。
-
在模型中添加一个仿真运行控制元素,并将其设置为自动运行。启动仿真,并观察行人如何选择最近的出口并逐步疏散银行大厅。
注意:在实现此模型时,需要使用 AnyLogic 的行动图和条件语句来编写行人的行为逻辑。还需要使用 AnyLogic 的内置函数来计算行人到每个出口的距离。
原文地址: https://www.cveoy.top/t/topic/jz46 著作权归作者所有。请勿转载和采集!