Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在NetLogo上创建具有内存的海龟?_Netlogo - Fatal编程技术网

如何在NetLogo上创建具有内存的海龟?

如何在NetLogo上创建具有内存的海龟?,netlogo,Netlogo,我需要一些帮助来编写一个代码:一只乌龟探索世界并死去,下一只乌龟将被创造出来,它将走上与前一只乌龟相同的道路,依此类推,所以最后一只乌龟可以走之前的任何其他乌龟走的任何道路。如果有人有任何想法,我可以这样做或一些模式,我可以探索这个想法。我非常感激 谢谢大家我想您需要两个列表:一个是海龟自己的列表,其中包含路径(这里的补丁或特定坐标列表)。在海龟死亡之前,您可以将路径保存在全局“路径列表”中 当海龟不应该走自己的路,而应该“模仿”另一只海龟的路时,它可以从路径列表中获得一条随机路径,使用其中的一

我需要一些帮助来编写一个代码:一只乌龟探索世界并死去,下一只乌龟将被创造出来,它将走上与前一只乌龟相同的道路,依此类推,所以最后一只乌龟可以走之前的任何其他乌龟走的任何道路。如果有人有任何想法,我可以这样做或一些模式,我可以探索这个想法。我非常感激


谢谢大家

我想您需要两个列表:一个是海龟自己的列表,其中包含路径(这里的
补丁
或特定坐标列表)。在海龟死亡之前,您可以将路径保存在全局“路径列表”中

当海龟不应该走自己的路,而应该“模仿”另一只海龟的路时,它可以从路径列表中获得一条随机路径,使用
其中的一个
,然后
移动到列表的第一个元素(如果保存了补丁或
setxy
,如果保存了坐标)。你应该删除第一个项目,以便在下一步海龟将移动到下一个位置

也许品种的概念对你来说很有趣,你可以区分创造自己道路的海龟和跟随它们的海龟

turtles-own 
[
  path
  imitation-path
]
globals [path-list]

to setup-random
  ca
  reset-ticks
  set path-list []
  crt 2
  [
    setxy random-xcor random-ycor
    pen-down
    set path (list patch-here)
  ]
end

to go-random
  tick
  ask turtles 
  [
    if ticks > 10
    [
      set path-list lput path path-list
      die
    ]
    move-to one-of neighbors
    set path lput patch-here path
  ]
end

to setup-imitators
  crt 2
  [
    set imitation-path one-of path-list
    move-to first imitation-path
    set imitation-path remove-item 0 imitation-path
  ]  
end

to imitate
  ask turtles 
  [
    if empty? imitation-path
    [ die ]
    move-to first imitation-path
    set imitation-path remove-item 0 imitation-path
  ]
end