如何创建具有多个级别的变量并关联到 NetLogo 中的不同海龟配置文件?
How to create variables with several levels and associate to different turtle profiles in NetLogo?
我被一段代码卡住了。有人可以帮我吗?
问题是:我有 31 个海龟剖面图(从一只海龟到另一只海龟是不同的,这是你放置“巢穴”的地方,可以将巢穴放置在任何类型的地面覆盖物中,然后还有更多变化。只在特定栖息地类型中放置“巢穴”的专家。
但是这些配置文件中的每一个都有 2 个参数,它们是:新陈代谢(具有 3 个级别 = 3 个值)和生殖能量(也具有 3 个级别 = 3 个值)。即:
新陈代谢:
-1级
-2级
-3级
再生能量:
-1级
-2级
-3级
所以我希望 31 个海龟配置文件中的每一个都具有这 2 个参数和这 3 个级别。例如:
配置文件 1:
代谢:
-1级
-2级
-3级
再生能量:
-1级
-2级
-3级
重点是要用这3个值创建2个参数,我创建了一个代码如下:
turtles-own [ energy-reproduction metabolism ]
to setup
ask turtles [
let a2 random-float 1.01
(
ifelse
a2 <= 0.33
[
set energy-reproduction 5
]
a2 > 0.33 and a2 <= 0.66
[
set energy-reproduction 25
]
a2 > 0.66
[
set energy-reproduction 50
]
)
]
ask turtles [
let a3 random-float 1.01
(
ifelse
a3 <= 0.33 [
set metabolism 2
]
a3 > 0.33 and a3 <= 0.66
[
set metabolism 8
]
a3 > 0.66
[
set metabolism 16
]
)
]
end
重点是,对于配置文件 1,乌龟可能有:1 个新陈代谢为 3 的菌落和两个新陈代谢为 2 的菌落,none 新陈代谢为 1。这个想法是所有 31 个配置文件都有2 个参数(即繁殖和新陈代谢的能量)中的每一个的 3 个级别中的每一个。我该怎么做?
如有任何帮助,我将不胜感激。
如果我没理解错的话,你想在至少一只海龟中使用任何可能的参数级别组合。这是一个关于如何为每个参数组合创建一个海龟的示例,通过接口输入 var1、var2、var3:
to go
let list1 [green red blue]
let list2 (list var1 var2 var3)
foreach list1 [ item1 ->
foreach list2 [ item2 ->
crt 1 [
set color item1
set size item2
setxy random-xcor random-ycor
]
]
]
end
我被一段代码卡住了。有人可以帮我吗?
问题是:我有 31 个海龟剖面图(从一只海龟到另一只海龟是不同的,这是你放置“巢穴”的地方,可以将巢穴放置在任何类型的地面覆盖物中,然后还有更多变化。只在特定栖息地类型中放置“巢穴”的专家。
但是这些配置文件中的每一个都有 2 个参数,它们是:新陈代谢(具有 3 个级别 = 3 个值)和生殖能量(也具有 3 个级别 = 3 个值)。即:
新陈代谢: -1级 -2级 -3级
再生能量: -1级 -2级 -3级
所以我希望 31 个海龟配置文件中的每一个都具有这 2 个参数和这 3 个级别。例如:
配置文件 1: 代谢: -1级 -2级 -3级 再生能量: -1级 -2级 -3级
重点是要用这3个值创建2个参数,我创建了一个代码如下:
turtles-own [ energy-reproduction metabolism ]
to setup
ask turtles [
let a2 random-float 1.01
(
ifelse
a2 <= 0.33
[
set energy-reproduction 5
]
a2 > 0.33 and a2 <= 0.66
[
set energy-reproduction 25
]
a2 > 0.66
[
set energy-reproduction 50
]
)
]
ask turtles [
let a3 random-float 1.01
(
ifelse
a3 <= 0.33 [
set metabolism 2
]
a3 > 0.33 and a3 <= 0.66
[
set metabolism 8
]
a3 > 0.66
[
set metabolism 16
]
)
]
end
重点是,对于配置文件 1,乌龟可能有:1 个新陈代谢为 3 的菌落和两个新陈代谢为 2 的菌落,none 新陈代谢为 1。这个想法是所有 31 个配置文件都有2 个参数(即繁殖和新陈代谢的能量)中的每一个的 3 个级别中的每一个。我该怎么做?
如有任何帮助,我将不胜感激。
如果我没理解错的话,你想在至少一只海龟中使用任何可能的参数级别组合。这是一个关于如何为每个参数组合创建一个海龟的示例,通过接口输入 var1、var2、var3:
to go
let list1 [green red blue]
let list2 (list var1 var2 var3)
foreach list1 [ item1 ->
foreach list2 [ item2 ->
crt 1 [
set color item1
set size item2
setxy random-xcor random-ycor
]
]
]
end