【问题标题】:Why are agents able to seize portable resources from different location?为什么代理能够从不同位置获取便携式资源?
【发布时间】:2020-07-02 07:58:56
【问题描述】:

我正在尝试模拟一个自行车共享系统,其中自行车是客户可以获取和使用的资源,然后在使用后放置在多个站点中的任何一个站点。我希望客户从他们所在的车站取车,然后前往其他几个可用车站之一。我尝试使用可移植资源来做到这一点(我相信这意味着资源只能由代理移动)。

当我这样做时,我发现客户可以从他们所在的车站以外的车站取车。例如,到达 Station1 的客户能够取车在 Station 2 可用的自行车。

我使用一个资源池,并为不同站点的自行车定义 GIS 位置。 有没有办法限制代理从他们的位置获取资源,并确保自行车不会自行从一个站点移动到另一个站点,还是我应该考虑使用不同于使用 1 个资源池的方法?另外,如何在模拟开始时定义自行车的位置?

非常感谢任何帮助,谢谢!

/哈尔

Small example with 2 stations, overview

【问题讨论】:

    标签: resources portability anylogic


    【解决方案1】:

    您在 1 中的问题太多...所以我会给您一些提示

    1. 每辆自行车都应该是一个资源代理,您可以在其中保存它的当前位置,这将由一个名为 station 的变量保存,该变量将定义位置。
    2. 要让一个人从当前位置抓取自行车,您需要抓取一个自定义代理(在服务块属性中自定义资源代理),其中 unit.station.equals(agent.station)... 假设您的代理中还有一个站变量这定义了他在哪个车站...否则你需要找到最近的车站或类似的东西
    3. 您必须确保资源在释放后不会返回首页...我认为必须取消选中在退出时恢复代理位置
    4. 要使所有资源从您想要的位置开始,您可以选择主位置节点,并可能根据它们的主位置定义资源数量...有很多方法可以做到这一点,您必须添加更多详细信息

    尝试一切以开始......

    【讨论】:

      猜你喜欢
      • 2021-05-19
      • 1970-01-01
      • 2013-09-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-07-15
      • 1970-01-01
      相关资源
      最近更新 更多