开发起点与团队
乌里·威伦斯基(Uri Wilensky)与CCL团队开发了NetLogo。曾在2001—2014年担任NetLogo首席开发者的塞思·蒂苏(Seth Tisue),在技术回忆中把项目起点表述为约1999年。他指出,早期实现积累了大量Java代码,后来才逐渐改写。
埃里克·特雷纳(Erik H. Trainer)等人的独立访谈研究同样记载,NetLogo开发于1999年。1999年对应项目的开发起步。
到2001年,莱伊·特斯法齐翁(Leigh Tesfatsion)编写的经济学研究通讯已明确介绍其开发团队:美国伊利诺伊州埃文斯顿西北大学的关联学习与计算机建模中心(CCL),即此前开发StarLogoT的人们。
建模工具的教育来历
在编程语言的谱系中,NetLogo属于Logo的派生语言。辛西娅·尼古拉伊(Cynthia Nikolai)与格雷戈里·马迪(Gregory Madey)的平台调查将它放在教育传统中理解,并把帮助初学者编写模型列为其用途之一;同一平台也面向社会科学和自然科学。
这项调查指出,不同人群要求的工具并不相同。缺乏编程经验的社会科学家重视容易操作的模拟界面,计算机研究者往往更在意能否修改、扩展软件,教师则关心学生如何学会并继续深入。NetLogo需要服务的,正是这种从初学建模到研究应用的连续需求。
参考:[6]
两条命令形成圆环
威伦斯基的2001年论文以一个短程序说明方法:先执行“create-turtles 1000”,建立聚在画面中心的1000只“海龟”;再执行“ask turtles [forward 20]”。海龟沿各自初始朝向前进相同距离,许多位置合起来便呈现圆环。
这里的海龟是可编程个体。圆环没有被当作整幅图案预先画出,而是由个体行动合成;学生由此观察微观规则与宏观形态的关系。
论文也以狼与羊的模型展示同一思路:狼与羊各有能量,移动消耗能量,进食补充能量,能量低于零便死亡。学生改变个体规则,同时查看群体数量曲线,而非直接指定曲线的形状。
论文中的课堂活动从学生扮演系统中的个体开始,再转向运行、修改现成模型,最后选择现象自行建模。
参考:[3]
研究通讯里的公开测试
2001年12月,爱荷华州立大学的《ACE研究通讯》在软件栏向读者推荐NetLogo,把它称为新的跨平台复杂系统建模与模拟环境,并引导读者取得Beta 8和使用指南。这是一个具体的公开测试记录:软件已经能够被校外研究者寻找和试用,并通过研究通讯进入主体计算经济学的交流网络。
该通讯当时把Beta 8称作正式发布前的最后测试版。这是当时的发布预告,所记录的阶段仍是测试,不应与其后1.0版混为一谈。
2002年4月的1.0版
德国研究者迈克尔·克拉森(Michael Clasen)在2002年的会议论文中写明,NetLogo 1.0自当年4月起可以取得。他的记录还强调,模拟能够作为Java小程序在浏览器中运行,参与者可以操纵一个或多个主体,使人的行动进入模拟过程。
克拉森把这一新软件放在模拟工具的比较中介绍。他所关心的实际问题是数字市场如何形成或消失,需要能快速修改规则、观察结果的开发环境。这种研究需求说明,易于上手的图形工具会吸引教学以外的使用者;同时,工具是否适合具体模型,仍取决于数据结构、表达能力和运行速度。
参考:[5]