我要求补丁发芽的海龟数量等于滑块的初始种群在界面上,现在我不知道每个海龟周围的邻居是空的,每个补丁包含一只海龟。在我的错误代码下面
to setup-turtles
set-default-shape turtles "circle"
ask n-of initial-population patches with [(pcolor = white - 1) and (not any? other turtles-here) and (not any? turtles-on neighbors)] [
sprout-normals 1 [
我是Netlogo的初学者,我正在尝试制作一个简单的模型,以便在创建个人时,必须将其放置在与父对象相邻的补丁中(8个空间中的一个)。我想我需要使用一个邻居命令并萌芽,但我不确定如何做到这一点。 目前,我的代码中包含以下内容: to birth-death
set npop count turtles
ask turtles [
if random-float 1.0 < dt * r [
set i random-pxcor
set j random-pycor
ask patch i j [set lpop count turtle
使用Netlogo:我想要的是海龟根据它们的位置(后来根据它们的大小)吃其他海龟。我尝试过以下代码: breed [cods cod]
cods-own [energy target]
to setup
clear-all
setup-patches
setup-turtles
reset-ticks
end
to setup-patches
ask patches [set pcolor grey]
end
to setup-turtles
create-cods number [
set color blue
setxy random-xc
我将对我的模型做一个简短的描述:
海龟可以是红的或绿的,杂食的和素食的。
两个市场(蓝色方块):肉类和替代品(可供消费的产品而不是肉类)市场
当我经营这个模型时,我希望海龟开始购买肉或替代品(只有当它们在两个市场中的一个市场中,并根据它们所处的市场情况),如果它们是素食主义者,购买肉就会变红,而如果它们停止购买肉,只买替代品,它们就会变成绿色(在我还没有决定的一定数量蜱虫之后,它们可以被视为素食者)。
to go
move-turtles
market
tick
end
to market
ask turtles
[ ifelse pcolor = blue
[b
我想把海龟的大小设置为它所站在上面的补丁的大小。更好的是,我需要更大的海龟,像4或16块补丁。
例如,如果我有一个有16x16个补丁的平方世界,我想有海龟可以是大的1x1或2x2或4x4等等.海龟应完全重叠,可能是1片(1x1例),4片(2x2例)等。
在尝试使用以下代码时,abott将海龟的大小设置为等于修补程序的sie,以实现完美的重叠:
hatch-turtle 1 [set size [size] of patch-here ]
但它给了我一个错误:
A patch can't access a turtle variable without specifying which
在处理NetLogo 5.x中的递归过程的一个简单练习中似乎出现了一个问题。该模型模拟海龟一次游荡在一个补丁中,并从补丁中收集M&M。目标是使用递归过程调用来允许找到M&M的乌龟获得两个额外的回合。这可以通过非递归方法很容易完成,在这种方法中,我们使用一个变量来跟踪回合数。然而,在这种情况下,我们需要使用递归,而递归似乎导致了一个无法解释的问题:
patches-own [MM]
turtles-own [collection]
to setup ;; observer
ca
random-seed 1234
ask patches [ set MM random
let pop area * density
distribute-turtles
to distribute-turtles [ pop box ]
if (pop > count box) [ error "Box can't hold all turtles!" ]
ask n-of pop box [sprout-inboxturtles 1[
set color blue
set exit true ;ignore
set alpha alpha-exit
我想解决Netlogo中的一个问题,这个问题到目前为止已经超出了我的编程能力。我想为每只海龟建立一个列表,其中包含海龟在这“一天”走得最远的补丁。到目前为止,我试图建立一个列表,所有的补丁都是为每只海龟存储的。现在我想要计算-对于每只海龟-从这个列表中的补丁,具有最大的距离,它的家(隐藏)。我想每天晚上清空列表(这不是强制的)这就是我目前的代码: let temp-visited-patch-list lput patch-here temp-visited-patch-list
if period = night
[
[foreach [temp-visited-patc
我在模拟有界天使中的随机游走,我想在我的模型中用2D计算海龟的。海龟都是从中心开始的。我不知道在海龟到达边界后如何更新它们的xy坐标。我要求海龟在撞墙时反弹,并保存他们的新xcor和ycor。这是我的密码:
to go
ask turtles
[; head in a random direction in range (-theta, +theta)
ifelse theta = 0
[set heading heading + 0 ]
; choose a normally distributed random angel in range (-theta,