首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在netlogo中同时产卵乌龟

如何在netlogo中同时产卵乌龟
EN

Stack Overflow用户
提问于 2015-12-03 23:08:10
回答 2查看 241关注 0票数 3

有没有办法在模拟过程中即使海龟死了也能产卵。在我的模拟中,鱼是吃浮游生物的,所以如果它们遇到浮游生物,浮游生物就会死亡/被吃掉。然而,当一条鱼不能再吃浮游生物时,它就会死亡,因为它不再通过吃浮游生物来获取能量。因此,当所有的鱼都死了,浮游生物应该会回来;由于迁徙等原因,浮游生物会大量生长。我不确定如何实现这一点?create函数在这里不起作用,只能在设置中起作用。

代码语言:javascript
复制
to plankton-reproduce
  if random-float 100 < reproduce-plankton [
    set energy (energy / 2)
    hatch 1 [setxy random-xcor random-ycor]
  ]
  if count plankton < 10 [
    create-plankton 20
    setxy random-xcor random-ycor
  ]

错误:您不能在turtle上下文中使用create-plankton,因为create-plankton只是观察者

EN

回答 2

Stack Overflow用户

发布于 2015-12-04 00:14:30

我想我可能理解这个问题。

要让海龟创建海龟,请使用HATCH。你的代码可以工作(如果我理解的话)如果你使用

代码语言:javascript
复制
hatch-plankton 20

而不是

代码语言:javascript
复制
 create-plankton 20

我做得对吗?海龟hatch,patches spawn和观察者creates。孵化出来的海龟将与孵化的海龟完全相同,并且都将在hatch被调用的地方。假设你不想那样做。使用

代码语言:javascript
复制
hatch-plankton 20 [setxy random-xcor random-ycor]
票数 2
EN

Stack Overflow用户

发布于 2015-12-04 04:31:40

我已经在代码中加入了这一点,但当浮游生物数量为零时,就不会有浮游生物重新出生,这是因为所有的浮游生物都死了,不能孵化。你知道另一种方法可以在模拟过程中繁殖浮游生物或重新繁殖海龟,即使它们死了吗?在重现浮游生物的代码下面:

代码语言:javascript
复制
to plankton-reproduce
  while [count plankton != 0 and count plankton < 3000]
    [ if random-float 100 < reproduce-plankton
      [set energy (energy / 2)
       hatch-plankton 1 [setxy random-xcor random-ycor]]]
  if count plankton = 0
  [set energy 1
  hatch-plankton 20 [setxy random-xcor random-ycor]]
end
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34069373

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档