weixin_52834332 2022-04-21 19:58 采纳率: 77.4%
浏览 41
已结题

netlogo仿真重现出错

所有代码如下:

breed [ circles circle ]
breed [ cars car ]
breed [ person a-person ]

to setup
  clear-all ;;将世界重设为初始、全空状态
  setup-nodes ;;建立车站节点
  setup-URT-network ;;建立城市轨道交通网络
  setup-trains ;;创建列车主体
  setup-OD ;;随机生成客流需求矩阵
  reset-ticks ;;按时间步更新
end

to setup-nodes
  set-default-shape circles "circle"
  create-circles 6 ;;网络中创建6个节点
  [
    ask circle 0 [
      setxy 0 0 ;;将车站0设置在中心位置
      set size 4 ;;设置几何尺寸
      set label 0 ;;设置标签
      set station-type center-transfer-station ;;车站0的类型为中心换乘站
      set station-capacity 4200 ;;参照地铁设计规范虚设车站最大容量
      set alighting-proportion random 10 / 10 ;;设置列车在车站的下课率
    ]
    ask circle 1 [
      setxy -5 10
      set size 2
      set label 1
      set station-type transfer-station ;;车站1的类型为一般换乘站
      set station-capacity 3200
      set alighting-proportion random 10 / 10
    ]
    ask circle 2 [
      setxy 8 10
      set label 2
      set station-type intermediate-station ;;车站2的类型为中间站
      set station-capacity 2500
      set alighting-proportion random 10 / 10
    ]
    ask circle 3 [
      setxy 12 -3
      set size 2
      set label 3 ;;车站3的类型为一般换乘站
      set station-type transfer-station
      set station-capacity 3200
      set alighting-proportion random 10 / 10
    ]
    ask circle 4 [
      setxy 6 -11
      set size 3
      set label 4
      set station-type larger-transfer-station ;;车站4的类型为较大换乘站
      set station-capacity 3600
      set alighting-proportion random 10 / 10
    ]
    ask circle 5 [
      setxy -4 -9
      set label 5
      set station-type end-station ;;车站5的类型为始发/终到站,即端点站
      set station-capacity 2000
      set alighting-proportion random 10 / 10
    ]
  ]
end

to setup-URT-network
  ask circle 0 [ create-link-with circle 1 ] ;;链接车站0与车站1,进而创建红线
  ask link 0 1 [
    set thickness 1
    set color red
    set weight 1200 ;;weight的单位为米,即相邻两站间的距离
  ]
  ask circle 0 [ create-link-with circle 3 ]
  ask link 0 3 [
    set thickness 1
    set color red
    set weight 700
  ]
  ask circle 1 [ create-link-with circle 2 ] ;;创建绿线
  ask link 1 2 [
    set thickness 1
    set color green
    set weight 850
  ]
  ask circle 2 [ create-link-with circle 0 ]
  ask link 2 0 [
    set thickness 1
    set color green
    set weight 1000
  ]
  ask circle 0 [ create-link-with circle 4 ]
  ask link 0 4 [
    set thickness 1
    set color green
    set weight 650
  ]
  ask circle 5 [ create-link-with circle 4 ] ;;创建蓝线
  ask link 5 4 [
    set thickness 1
    set color blue
    set weight 1100
  ]
  ask circle 4 [ create-link-with circle 3 ]
  ask link 2 0 [
    set thickness 1
    set color blue
    set weight 900
  ]
end

to setup-trains
  create-cars num-trains
[
  setxy -5 10 ;;设置所有列车初始地理位置
  set train-speed 9.72 ;;设置列车速度
  set capacity 1000 ;;设置单列车最大载客量
  set npob 0 ;;设置初始车上乘客人数
]
end

to setup-OD
  create-person 15 ;;对称OD矩阵上半对角设置有15个元素
  [
    ask person 13 [ ;;person后边的数字13代表who值
      ;;任意两个海龟的who编号都不会重复,此前已创建6个circles和7条links,
      ;;who值已从0编号到12,故此处的who值从13开始
      set O 0 ;;乘客的O点为车站0
      set D 1 ;;乘客的D点为车站1
      set label 01 ;;乘客的标签为01
      setxy 0 0 ;;乘客已经位于出发车站0
      set color 9
      hatch random-poisson 3 * 60 * 0.1 ;;OD需求矩阵元素对应同类乘客数量值
    ]
    ask person 14 [
      set O 0
      set D 2
      set label 02
      set color 15
      hatch random-poisson 3 * 60 * 0.2
    ]
    ask person 15 [
      set O 0
      set D 3
      set label 03
      set color 25
      hatch random-poisson 3 * 60 * 0.2
    ]
    ask person 16 [
      set O 0
      set D 4
      set label 04
      set color 35
      hatch random-poisson 3 * 60 * 0.2
    ]
    ask person 17 [
      set O 0
      set D 5
      set label 05
      set color 45
      hatch random-poisson 3 * 60 * 0.3
    ]
    ask person 18 [ ;;person18——person21分别代表OD12,13,14,15
      set O 1
      set D 2
      set label 12
      setxy -5 10
      set color 55
      hatch random-poisson 2 * 60 * 0.1 ;;set arr-rt random-poisson 2
    ]
    ask person 19 [
      set O 1
      set D 3
      set label 13
      set color 65
      hatch random-poisson 2 * 60 * 0.3
    ]
    ask person 20 [
      set O 1
      set D 4
      set label 14
      set color 75
      hatch random-poisson 2 * 60 * 0.4
    ]
    ask person 21 [
      set O 1
      set D 5
      set label 15
      set color 85
      hatch random-poisson 2 * 60 * 0.2
    ]
    ask person 22 [ ;;person22——person24分别代表OD 23,24,25
      set O 2
      set D 3
      set label 23
      set color 95
      hatch random-poisson 2 * 60 * 0.3
    ]
    ask person 23 [
      set O 2
      set D 4
      set label 24
      set color 105
      hatch random-poisson 2 * 60 * 0.4
    ]
    ask person 24 [
      set O 2
      set D 5
      set label 25
      set color 115
      hatch random-poisson 2 * 60 * 0.3
    ]
    ask person 25 [ ;;person25——person26分别代表OD 34,35
      set O 3
      set D 4
      set label 34
      set color 125
      hatch random-poisson 2 * 60 * 0.4
    ]
    ask person 26 [
      set O 3
      set D 5
      set label 35
      set color 135
      hatch random-poisson 2 * 60 * 0.6
    ]
    ask person 27 [ ;;person7代表OD 45
      set O 4
      set D 5
      set label 45
      set color 107
      hatch random-poisson 2 * 60
    ]
  ]
end

界面未进行设置,系统提示未定义问题应该如何解决?

  • 写回答

1条回答 默认 最新

  • weixin_46094025 2022-04-22 10:38
    关注

    借楼,想请问一下netlogo的循环怎么写,谢谢

    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 4月23日
  • 专家修改了标签 4月21日
  • 创建了问题 4月21日

悬赏问题

  • ¥15 关于#网络#的问题:网络是从楼上引一根网线下来,接了2台傻瓜交换机,也更换了ip还是不行
  • ¥15 资源泄露软件闪退怎么解决?
  • ¥15 CCF-CSP 2023 第三题 解压缩(50%)
  • ¥30 comfyui openpose报错
  • ¥20 Wpf Datarid单元格闪烁效果的实现
  • ¥15 图像分割、图像边缘提取
  • ¥15 sqlserver执行存储过程报错
  • ¥100 nuxt、uniapp、ruoyi-vue 相关发布问题
  • ¥15 浮窗和全屏应用同时存在,全屏应用输入法无法弹出
  • ¥100 matlab2009 32位一直初始化