【问题标题】:Parking randomly in Anylogic在 Anylogic 中随机停车
【发布时间】:2018-08-29 15:56:16
【问题描述】:
我正在使用 AnyLogic 的交通道路库,我知道可以在 car Source 模块中定义汽车在停车场的初始位置。
我希望随机选择停车场空间。我知道有这个函数randomFreeSpaceIndex() 返回随机选择的免费停车位的索引。
但我不知道如何在我的汽车源上调用它或将它与 CarMoveTo 工具一起使用。到目前为止,这是我的model。
感谢任何帮助!
【问题讨论】:
标签:
random
simulation
anylogic
parking
【解决方案1】:
我很确定您不能使用标准停车场,因此不幸的是,您必须创建许多带有 1 个停车位的停车场,如下图所示:
完成后,现在您可以选择一个随机停车位,其模型如下所示:
在这个模型中,我创建了一系列parkingLots...都带有1个停车位:
在选择输出块中询问是否有可用空间:
for(ParkingLot p : parkingSpaces){
if(p.nFree()>0)
return true;
}
return false;
然后在 carMoveTo 中调用函数 selectRandomParkingSpace():
selectRandomParkingSpace 使用以下代码:
ArrayList <ParkingLot> freeSpaces=new ArrayList();
for(ParkingLot p : parkingSpaces){
if(p.nFree()>0){
freeSpaces.add(p);
}
}
int randomSpace=uniform_discr(0,freeSpaces.size()-1);
return freeSpaces.get(randomSpace);
这是我的解决方案。