在我的研究中,我试图构建一个代表真实工作环境的模拟,目的是创造关于如何让人们在工作中感觉更好的知识。特别是,我正在模拟一个人们为多个团队工作的场景(你一次只从事一个项目吗?许多人不...)。为此,我正在使用NetLogo。
我在向定制链接乌龟集的特定代理询问时遇到问题。关键是,有时它会报告一个错误,说“请求期望的输入成为一个代理或代理集,但却没有得到任何人”,但如果代理不存在,它就不应该到达“请求”状态!我做错了什么?
功能如下:
to TeamRecruiting
;; I ask non-complete teams to...
ask teams with [ teamsize != (count membership-neighbors) ]
[
;; ... count how many individuals they have...
let actualteammembers count membership-neighbors
;; ... to save locally how many individuals they can share...
let teamoverlap overlap
;; ... their target size...
let neededsize teamsize
;; ... and their identity.
let teamwho who
;; then I ask those individuals that have not yet more things than they can handle...
ask individuals with [ indMTM != (count membership-neighbors) ]
[
;; ... to save locally who they are...
let indwho who
let createdalink 0
;; ... then if some conditions have been met ...
if(some conditions)
[
;; I create a link (of my specific type) with the team...
create-membership-with team teamwho
;; I do the following because more than one individual could join the team teamwho in the same run of the function
ask team teamwho [ set actualteammembers (actualteammembers + 1) ]
set createdalink 1
]
;; if the association occurred, ...
if(createdalink = 1)
[
;; we ask all other teams to evaluate if the new connection violates their maximum overlap constraint between the team I am considering from the beginning of the function, and all other teams, in other words...
ask teams with [ who != teamwho ]
[
let numpaths 0
let team2who who
;; I count how many individuals say that they are shared by the two teams
ask individuals
[
if((membership-neighbor? team teamwho) and (membership-neighbor? team team2who)) [ set numpaths (numpaths + 1) ]
]
;; ... and if the number of paths is more than the maximum allowed overlap...
if(numpaths > teamoverlap)
[
;; I take the connection away...
ask membership teamwho indwho [ die ]
;; and I reduce the actual number of team members
set actualteammembers (actualteammembers - 1)
]
]
]
]
]
end
谢谢你宝贵的帮助!
我认为问题很可能在于你引用你请求的链接的方式membership
是一个无向链接,因此哪个代理是end1
,哪个是end2
取决于代理的创建顺序。who编号较低的一个是end1
,另一个是end2
。因此,如果团队代理是在个人代理之后创建的,那么特定的链接将是membership indwho teamwho
。总的来说,使用世卫组织的数字是不好的做法,但如果你使用团队和个人代理人本身,而不是他们的世卫组织数字,同样的问题也会出现。
在使用无向链接方面比我更有经验的人可能会有更好的建议,当你不知道哪个代理更老时,如何轻松地引用无向链接,但类似于
ifelse (indwho < teamwho) [
ask membership indwho teamwho [ die ]
]
[
ask membership teamwho indwho [ die ]
]
应该有用。使用定向链接可以避免此问题,因为创建者代理始终是end1,而目标代理始终是end2。因此,如果会员链接总是由个人创建的,那么您将始终知道个人位于end1。
希望这有帮助。查尔斯
谁能帮助我如何创建一个新的代理人,并将其链接到旧的,以治愈人民? 多谢!
具有依赖项的Maven/Java项目: 代码: 公共类bmp_Selenium{ } 控制台输出: BrowserMob代理运行在端口:57547上启动chrome driver 2 . 33 . 506106(8 a 06 c 39 c 4582 fbfbfbab 6966 db B1 c 38 a 9173 BF B1 a 2)在端口47157上只允许本地连接。2017年11月30日下午4:4
我有一个问题在这里我不知道如何解决这个问题,本尝试任何我知道解决这个仍然没有解决方案,请帮助 我有2个模块 主要的卢阿: 外部模块dog.lua: 堆栈回溯: 现在还在想在这里做什么。这是唯一阻碍我项目的事情。请帮忙,谢谢:)
问题内容: 我想从个人资料字典中获取地址,但出现错误“输入任何类型?没有下标成员” 我该如何解决并获取地址?非常感谢。 问题答案: 当您使用下标配置文件时,您将获得一个实例。您选择使用适合同一数组中的各种类型已导致发生类型擦除。您需要将结果转换回其实型,以便它知道实例代表。然后,您可以对其进行下标: 但是,这非常笨拙,并且一开始就使用Dictionary并不是一个非常合适的情况。 在这种情况下,如
问题内容: 得到反馈后,我运行该程序,但在控制台中没有任何输出 程序运行,但不输出。 问题答案: 是一种阻止方法。它会等到进程退出后再返回。这样做的问题是,许多程序只有在读取/清除标准输出缓冲区后才会退出,这意味着,就您而言,它可能永远不会退出。 尝试这样的事情…
几乎所有 HTTP 客户端都支持通过中间代理进行调用。传统上,这被用于在与外部世界的连接受到限制的防火墙环境中运行。然而,由于 linkerdd 可以作为 HTTP 代理,并且由于使用代理通常可以在没有代码更改的情况下实现,所以这种方法为使用 HTTP 的应用程序提供了一个简单的集成路径。 用linkerd作HTTP代理 linkerd 可以作为 HTTP 代理工作,无需任何额外的配置,提供关键功