我安排代理(工厂)的任务在接下来的X个时间段内执行。对于每个任务,我正在记录Amount_To_Produce和OrderID。我使用了一系列列表,每天两个。在三个时间段内,它看起来像这样。
TimePeriod 1
Amount_To_Produce, OrderID
5,100
6,101
2,102
TimePeriod 2
Amount_To_Produce, OrderID
10,103
5,101
20,104
TimePeriod 3
Amount_To_Produce, OrderID
5,100
5,105
这样可行:我每天都要处理一个:
(foreach list1 ...命令)
但如果我想把它延长到更多的日子,那就太痛苦了。
另外,我需要将其与另外两个列表相关联,这两个列表存储了与订单ID一起购买商品的代理商(通知上面一个订单可能会溢出多天)。但这一点是可以的 - 它确实是每天需要列表的问题。
我知道代理商计划未来的天数,因此不必动态创建。我唯一的另一个想法是:
Day, Amount_To_Produce, OrderID
1,5,100
1,6,101
1,2,102
2,10,103
2,5,101
2,20,104
3,5,100
3,5,105
这个问题,foreach将处理第1天的订单三次,而不是一次。
无论如何:Netlogo有更好的数据结构来管理这类事情吗?
我真正喜欢的是每个代理都有自己的数据库,代理可以使用SQL类型命令查询的一系列表(我们有可能在NL7.0中得到这个吗?)
与此同时,您将如何存储这些数据?
答案 0 :(得分:3)
extensions [table]
globals [tbl1 tbl2 listOfTables]
to test
set tbl1 table:make
set tbl2 table:make
set listOfTables (list tbl1 tbl2)
table:put tbl1 1 [[5 100] [6 101] [2 102]]
show listOfTAbles
end