如何以编程方式停止优化实验中的模拟运行?

问题描述 投票:0回答:1

我有20台设备。暴风雨过后,他们都失败了。我会派几名维修人员来修理它们。我想了解服务人员数量对总修复成本的影响(粗略估计=设备维修成本+服务人员数量每天的人员成本*时间()+故障设备数量每单位收入day *time(); 这里 time() 给出从零到实验停止的模型时间单位数(天)。如果我增加维修人员的数量,维修这 20 台设备的时间就会减少。我想最小化总成本。因此,我想设置时间以外的停止条件,因为时间因不同的船员规模而异。有没有办法让20台设备修好后停止实验运行?

我发现我们可以在模型时间部分结束使用“Never stop”选项,并使用条件终止运行。我尝试添加额外的停止条件,但没有成功。停止条件应该写在哪里?enter image description here

anylogic
1个回答
0
投票

您正在指定整个优化何时停止。

认为正在做的是定义何时应停止单次运行。

您可以在模型内执行此操作。例如,有一个循环事件来检查您的条件是否满足。或者直接在维修计数器更新的地方进行检查。

您只需使用

stopSimulation()
即可终止单次运行。这会终止一次运行,优化可以在下一次运行中继续

© www.soinside.com 2019 - 2024. All rights reserved.