Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/azure/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Netlogo 如何选择特定链接并使其消亡_Netlogo - Fatal编程技术网

Netlogo 如何选择特定链接并使其消亡

Netlogo 如何选择特定链接并使其消亡,netlogo,Netlogo,我正试着让一个运送者从交货时收集金属片,然后把它放在切割机上。切割机将金属板切割成两个物体中的一个,并将其输出,由载体收集。创建和破坏下面这样的链接是模拟运送者运送、放下和收集物品的最佳方法吗?如果是这样,我如何选择要终止的特定链接?我已经用“X X”标记了NetLogo预期2个输入的位置,因为我不确定在那里写什么。干杯 globals[ metal-sheets cutter-closest-free-carrier s-welder-closest-free-carrier

我正试着让一个运送者从交货时收集金属片,然后把它放在切割机上。切割机将金属板切割成两个物体中的一个,并将其输出,由载体收集。创建和破坏下面这样的链接是模拟运送者运送、放下和收集物品的最佳方法吗?如果是这样,我如何选择要终止的特定链接?我已经用“X X”标记了NetLogo预期2个输入的位置,因为我不确定在那里写什么。干杯

globals[
  metal-sheets
  cutter-closest-free-carrier
  s-welder-closest-free-carrier
  p-welder-closest-free-carrier
  skeletons
  standard-skeletons
]

breed[carriers carrier]
breed[cars car]

cars-own [
body; standard, prestige
]

这并不能回答你的问题,因为我认为你已经陷入了一场真正的时间纠葛。整个事情需要重新组织,这将导致一个完全不同的问题

此代码使切割机在一个过程中找到板材、交付板材等。这意味着这一切都发生在同一时间。然而,它只向前移动了0.1。你需要以一种完全不同的方式来思考这个过程

在一个时间步中会发生什么?一些切割工找到并切割床单。已经有板材的其他切割机向输送点移动。其他的切割工也在运送他们的床单。这些都需要不同的程序。交付板材的切割器是连接模具所在的切割器,但您不必识别它们(您所拥有的X X),因为只有交付板材的切割器才会执行该程序

查看名为Shepherds的NetLog0模型库模型中的
go
过程。它的结构与您在这里需要的结构相似

to cut
  let free-carriers carriers with [laden = false]   
  let cutter patches with [machine-type = "cutter"] 
  let delivery patches with [area = "delivery"]
  set cutter-closest-free-carrier nobody

  ask cutter [
  if status = "import" [
      set cutter-closest-free-carrier min-one-of free-carriers[distance myself]]   ]

  if cutter-closest-free-carrier != nobody[
      ask cutter-closest-free-carrier [
      set target delivery
      face one-of delivery 
      fd 0.01
      set metal-sheets cars-here
      if any? metal-sheets [
        create-link-to one-of metal-sheets [tie]
        set laden true
        set target cutter
        face one-of cutter
        fd 0.01
        ask cutter[
           set metal-sheets cars-here
      if any? metal-sheets [
            ask link  X X [die]
          set status "pending"
          create-link-to one-of metal-sheets [tie]]       
        ] 
      ]    
    ]
  ]
end