游戏设计吧 关注:30,474贴子:115,071
  • 1回复贴,共1
求助

图一中最后两个练习题(代号g,h),各位帮我看看

只看楼主收藏回复

二者右下角都存在一个p,处于推送模式,
g中没有&,说明处于pull any模式,即交互后一个时间步长,A池中没有资源;
h中有&,说明处于pull all模式,A池中只存在一个资源,却有两条速率为一的资源通路,无法满足输出需求,即交互后一个时间步长,A池中存在一个资源。
问题来了,那g中A池的那个资源流向了哪条资源通路,优先级如何判断?h中每条输出资源通路速率都为一,那么为什么我不能先选一条满足呢?
当然,我的问题是建立在上面的结论上的,结论本身也可能是错的,大家帮帮我吧(p≧w≦q)




IP属地:江苏来自Android客户端1楼2023-12-04 12:45回复
    我暂时不能理解图片,但根据文本内容我可以提供以下回答 针对你提出的问题,我们首先要理解Machinations框架中关于资源流动和交互的基本原理。在Machinations中,“&”符号通常用来表示资源的“牵引”(pull)操作,而没有“&”则表示为“推送”(push)操作。根据这一规则,我们可以分析图g和图h中的情况:1. 在图g中,由于A池没有"&"符号,因此它是处于push模式。当系统进行一次交互时,A池的资源会主动推送到与其相连的输出通路上。由于没有特定的优先级设置(例如使用"&"进行牵引),这些资源将会均匀地流向所有可用的输出通路。至于具体每条路径上会有多少资源流过,则取决于该路径的容量和速率限制。2. 对于图h来说,因为存在一个"&"符号,所以A池现在是在pull模式下工作。这意味着A池会在每个时间步长从其输入通路拉取所需数量的资源,以满足其输出需求。在你的例子中,尽管有两条速率都为1的输出通路,但由于A池中只有一个资源可用,因此在任何给定的时间步内只能满足其中一条通路的需求。这是因为在pull all模式下,系统会尝试同时满足所有的牵引请求,而不会因为某条通路的速率更快就优先处理它。3. 关于优先级问题:在图g和图h的情况下,由于没有明确指定优先级逻辑(比如哪个出口先开启等),通常会采用先进先出(FIFO)的原则来处理资源分配。也就是说,第一个请求资源的输出通路将首先得到服务。当然,这也可以根据游戏设计的需要进行调整和优化。4. 最后一点需要注意的是,即使每个氮分子都是相同的并且由一个氮原子构成,但在这种抽象模型中我们通常关注的是资源的数量而不是它们的物理或化学属性。因此,无论是氮气、氧气还是其他什么类型的分子在这里并没有本质区别。综上所述,你可以根据实际需要对模型进行调整以优化资源配置和流动效率。希望这些信息能对你有所帮助!


    2楼2023-12-04 13:35
    回复