- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我从 Railsback 第 16 章的基于代理和基于个体的建模一书中获得了这段代码,但它不起作用,我也不知道为什么。我是 NetLogo 的新手,软件在第 22 行显示“Expected keyword”。(create-packs)
breed [dogs dog]
breed [packs pack]
breed [disperser-groups disperser-group]
dogs-own
[
age
sex
status
my-pack
my-disperser-group
]
packs-own [pack-members]
disperser-groups-own
[
sex
group-members
]
create-packs initial-num-packs
[
; set a location and shape just for display
setxy random-xcor random-ycor
set shape "box"
; create the pack’s dogs
let num-dogs random-poisson initial-mean-pack-size
hatch-dogs num-dogs
[
; first, set display variables
set heading random 360
fd 1
; now assign dog state variables
ifelse random-bernoulli 0.5
[set sex "male"]
[set sex "female"]
set age random 7
set-my-status ; a dog procedure that sets
; social status from age
set my-pack myself ; set dog’s pack to the one
; creating it
] ; end of hatch-dogs
; Initialize the pack’s agentset that contains its dogs
set pack-members dogs with [my-pack = myself]
; show count pack-members ; Test output – off for now
; now select the alpha dogs
update-pack-alphas ; a pack procedure to give the
; pack 2 alphas
] ; end of create-packs
to go
tick
if ticks > years-to-simulate [stop]
; First, age and status updates
ask dogs
[
set age age + 1
set-my-status
]
ask packs [update-pack-alphas]
; Second, reproduction
ask packs [reproduce]
; Third, dispersal
ask packs [disperse]
; Fourth, mortality
ask dogs [do-mortality]
; Fifth, mortality of collectives
ask packs [do-pack-mortality]
ask disperser-groups [if count group-members = 0 [die]]
; Sixth, pack formation
ask disperser-groups [do-pack-formation]
; Finally, produce output
update-output
end
to disperse ; a pack procedure
; First, identify the subordinates and stop if none
let my-subordinates pack-members with
[status = "subordinate"]
if not any? my-subordinates [stop]
; Now check females
if count my-subordinates with [sex = "female"] = 1
[
if random-bernoulli 0.5
[
create-disperser-group-from
my-subordinates with [sex = "female"]
]
]
if count my-subordinates with [sex = "female"] > 1
[
create-disperser-group-from
my-subordinates with [sex = "female"]
]
; And check males
if count my-subordinates with [sex = "male"] = 1
[
if random-bernoulli 0.5
[
create-disperser-group-from
my-subordinates with [sex = "male"]
]
]
if count my-subordinates with [sex = "male"] > 1
[
create-disperser-group-from
my-subordinates with [sex = "male"]
]
end ; to disperse
to create-disperser-group-from [some-dogs]
; a pack procedure
; "some-dogs" is an agentset of the dispersers
; First, create a disperser group and put the dogs in it
hatch-disperser-groups 1
[
; Set disperser group variables
set group-members some-dogs
set sex [sex] of one-of some-dogs
; Display the group
set shape "car"
set heading random 360
fd 2
; Now the disperser group sets the variables of the
; dispersing dogs
ask some-dogs
[
set my-disperser-group myself
set status "disperser"
set color green
; and display them in a line from the disperser group
move-to my-disperser-group
set heading [heading] of my-disperser-group
fd 1 + random-float 2
] ; end of ask some-dogs
] ; end of hatch-disperser-groups
; Finally, remove the dispersers from their former pack
let dogs-former-pack [my-pack] of one-of some-dogs
ask dogs-former-pack
[set pack-members pack-members with
[status != "disperser"]]
end ; to create-disperser-group-from
谢谢
最佳答案
您需要使用单词to
来启动一个过程,但是您不能调用一个过程create-packs,因为那实际上是一个NetLogo 命令。我手边没有这本书,但我怀疑这是安装程序。在上一行添加过程名称,大概是这样的:
to setup
create-packs initial-num-packs
您还需要以单词 end
结束每个过程,这也是缺失的。往下看应该是这样的:
end
to go
将来,在每个代码块的末尾进行语法检查(绿色勾号),而不是键入整个页面。这样您就知道错误在哪里,并且可以将您键入的内容与书中的内容进行比较。
关于netlogo - 预期关键字错误 - Netlogo,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37176795/
我正在将 NetLogo 列表从 NetLogo 传递到 Java(到扩展),然后再次将它发送回 NetLogo,我想将它用作另一个过程的参数。但是当我将它发送回 NetLogo 时,LogoList
我从 Railsback 第 16 章的基于代理和基于个体的建模一书中获得了这段代码,但它不起作用,我也不知道为什么。我是 NetLogo 的新手,软件在第 22 行显示“Expected keywo
对于一个项目,我们需要在 NetLogo 和 RepastS 之间做出决定。 我们将模拟一个机构网络,人们在它们之间移动。人们进出这些被实现为黑匣子的机构。我们认为使用 NetLogo 没有问题。该项
我是 NetLogo 的新手,我对以下代码有一些疑问: people-own [ walker-type ;; can be "cautious", "adaptive" or "reckle
我想知道如何计算网络中节点之间的分离度。 我创建了一个网络,其中包含两个可以随时间传播病毒的品种。 to setup create-people_inf 5 [set label "Infected"
例如,在我创建的一个项目中,有 1000 个人。现在,如果满足概率,那么我会创建一只狗,并将他与人类联系起来。我们开始吧: to setup-agents set-default-shape hum
NetLogo中是否可以有枚举数据类型? 假设我有一个婚姻状况变化的模型。 代理人可以有 3 种婚姻状况:单例、已婚、离婚。 我想将这些状态映射为数字,以便在执行时占用更少的内存。 单个 = 1 已婚
我对 netlogo 和整个建模还很陌生,但我真的很喜欢它。现在我陷入困境......在我的模型中,我有品种,每个品种都有“x”只海龟,每只海龟都有一个“x”变量,直到此时我才设法获得每只海龟的值(v
从NetLogo代码中是否可以获得所有程序的可视化流程图?观察者程序..代理程序..以及它们之间的链接。 最佳答案 如果我理解正确的话,您要求的是 call graphs 。我说得对吗? 我相当确定
5秒有5000毫秒。因此,如果我在那段时间在 Netlogo 中运行此代码: every 0.001 [ some-calls-in-the-middle tick ] 我预计会获得 5000
我是 netlogo 的新手,希望有人能帮助我如何根据用户输入创建海龟。 在界面选项卡中,我有一个 slider ,其值介于 2 和 10 之间。根据用户使用此 slider 定义的值,应该创建那么多
我想使用 Netlogo Web 打开我的 Netlogo(桌面版)模型,但它似乎不起作用。当我尝试上传我的模型时,我收到一个“TO 或 TO-REPORT 预期”错误。不知道我做错了什么。我在下面插
尝试从社区运行两个 netlogo 模型时,我收到“无法使用当前格式打开模型”的提示。模型是: http://ccl.northwestern.edu/netlogo/models/community
我想在 power law 之后的环境 ABM 中添加自然灾害的可能性。 (通常是很少的伤害,较少的是一般的伤害,很少是强烈的伤害,很少是完全的伤害)。 到目前为止,我编写了以下代码: to envi
breed [ As A ] breed [ Bs B ] bs-owns [ stock0 stock1 .... stock5] 我创建了 A 的 5 个和 B 的 100 个,B 拥有 stoc
我正在使用这些变量解决以下问题: set variablex .5 set threshhold-list [0 .3 .6] set variable-list [0 0 1] 我有三个agentt
我是 netlogo 的新手,我有一个类(class)作业我完成了大部分,但是我无法设置笔来使用开关我应该写什么代码来做到这一点这是我的代码 turtles-own [pen ] to setup
我对 NetLogo 很陌生,这就是我被困在这里数周的原因。 我想做的是让代理人以 4 人一组的方式组成 2 个团队。 我的计划是让一个函数保存 4 个海龟 ID, to assign-groupma
我正在尝试在线共享我的 NetLogo 模型,以便其他人可以在没有安装 NetLogo 桌面的情况下在他们的笔记本电脑或智能手机上运行它。 我发现可以使用 NetLogo web (http://ww
我在 NetLogo 中有两个“选择器”。即( 类别 和 子类别 )。类别选择器具有值(“动物”和“鸟类”),子类别选择器包含所有动物和鸟类。我想在运行时填充子类别选择器,以便 1) 如果在类别中选择
我是一名优秀的程序员,十分优秀!