collections - 如何在 Anylogic 中存储作业车间生产中的路线
问题描述
我有一个生产模型,订单(代理人口)运行不同的站点。对于每个订单,使用的站点及其顺序可以不同。这些站点有 12 种不同的组合。应为订单分配一种随机可能性。
如何在我的 Anylogic 模型中存储和分配这些可能性?哪种数据类型最适合?
我已经尝试过的是使用 Excel 界面,但后来我想将不同的可能性组合成一个更长的列表(大约 50 种可能性相互结合),Excel 似乎不是最好的方法。
我确信这不是一个超级困难的问题,但我找不到任何关于它的东西。提前致谢!
解决方案
希望我能理解你的问题,所以就这样吧。以下是我提出的模型: 这里的例子有 3 个站(服务)。您将所有输入块放在一个名为 enterBlocks 的集合中,并将所有输入块的名称放在一个名为 enterNames 的集合中......所以如果您使用 excel,您可以在您的 excel 中包含输入块名称并在通过阅读excel开始模型。每个代理可能会有不同的集合,所以集合应该在代理内部,但这里我只是简化一下。
然后使用一个计数器(初始值为 0)和一个名为 getNextService 的函数,该函数将存在于 4 个退出块的每一个中。此功能将选择下一个要使用的站点:
if(counter>=enterBlocks.size())//if the agent is done with all the stations
end.take(agent); // take the agent to the exit
else{
Enter enter=findFirst(enterBlocks,e>e.getName().equals(enterNames.get(counter)));//find the enter block with the correct name
enter.take(agent); //take the agent to the correct station
counter++; //update your counter
}
推荐阅读
- php - Laravel:简单的表单获取请求返回 500 错误
- javascript - 如何从下拉边框底部中删除边框颜色?
- sql - 用于自动删除、下载和恢复 SQL 数据库的 Powershell 脚本未完全执行
- c# - 尝试将 BsonDocument 反序列化为类时出现 System.FormatException
- kubernetes - GKE kubernetes webhook 支持
- python - 在生成器对象上使用 joblib.Parallel 而不将生成器加载到 ram
- api - 表意(中文)语言上的 Azure 搜索通配符
- java - 由于服务器为每个类单独启动,Java 集成测试运行缓慢
- c - 求方阵的最大对角元素
- php - 使用多个过滤器和分页简化 Eloquent Laravel?