Netlogo距离和转发命令

时间:2015-03-12 18:00:26

标签: distance netlogo agent forward turtle-graphics

我正在建造一个模型来模拟飞越有争议空域的飞机。

我的模型是一个400x50的瓷砖区域,每个瓷砖用于表示一英里。我现在有两个问题。

1)为了移动飞机(乌龟0),我使用以下代码:

 to go
 ask turtle 0
 [forward speed]
 check-engagement
 check-state
 end

在滑块上定义速度。但是,这不符合预期。当速度设置为1时,乌龟似乎向前跳了5个瓦片。相反,当速度设置为2时,它会向前跳跃10.我显然可以除以5,但我不确定为什么会这样。

接下来,我使用以下代码检查与其他Red Force海龟的距离:

to check-engagement
 ask redfor
  [ 
   let d DISTANCE turtle 0
   ifelse d <= range 
   [detect]
   [stop] 
  ]  
 end

在滑块上再次设置范围。然而,随着我前进,这是一个全有或全无的情况。一旦第一个红色单位检测到飞机,即使我没有链接,所有红色单位也会检测到它。此外,似乎所有红色单位+ 1都检测到它(如果地图上有4个单位,则有5个单位检测到它)。

我不明白为什么会这样,因为我在问飞机(乌龟0)。

0 个答案:

没有答案