多智能体系统是分布式人工智能的一个重要分支。本书介绍了多智能体建模的基本理论与技术,将基于多智能体的模型应用于自然与环境、智能城市、交通、地理信息与空间智能、社会与民生、复杂网络等,涵盖了智能交通、智能城市、地理空间智能和人工智能社会等方面的系统智能建模与问题优化求解。
本书主要面向各高等院校本科人工智能专业、计算机等专业开设多智能体系统课程或相关专业开设人工智能的通识核心课程需求,也可以作为研究生、科研院所科技工作者及相关企业的工程技术人员阅读参考。
多智能体一般专指多智能体系统(Multi-Agent System,MAS)或多智能体技术(Multi-Agent Technology,MAT)。多智能体系统是分布式人工智能(Distributed Artificial Intelligence,DAI)的一个重要分支。智能体和多智能体技术起源于分布式人工智能研究。自20世纪80年代末以来,该方向成为人工智能领域活跃的研究分支,与数学、控制、经济学、社会学等多个领域相互借鉴和融合,逐渐成为国际上备受重视的研究领域之一。20世纪90年代,由于网络技术的发展,人工智能出现了新的研究高潮,开始由单智能体研究转向基于网络环境下的分布式人工智能研究,不仅研究基于同一目标的分布式问题, 而且研究多个智能体的多目标问题,并将人工智能推向社会生活的各个应用领域。多智能体系统等相关技术已日益应用于交通控制、智能机器人、车联网、无人飞行器编队、多传感器协同信息处理、计算机网络、电子商务、Softbot(软机器人)、虚拟现实、健康、娱乐等领域。目前,多智能体技术已经成为一种进行复杂自组织系统分析与模拟的思想方法与工具。未来发展要实现通用人工智能,多智能体系统是必须突破的研究方向,因此,这必然会成为一个研究重点。可能的研究方向有多智能体间的协商、交互机制、集成等。
人工智能(Artificial Intelligence,AI)技术,除了模拟人类智能之外,还需要模拟自然界、智能城市、智能交通、地理空间智能、人工智能社会、多智能体网络等系统智能,这些研究对象都属于复杂自组织系统,在多智能体技术的实践上,复杂自组织系统模型与建模扮演着相当重要的角色,模型的形态或结构可以减少其所呈现现象的复杂性,让抽象理论更加容易被理解,并可用来进行预测和推论,当然更是科学教学与学习历程中相当重要的呈现方式与不可或缺的能力。
本书基于Netlogo平台讲授多智能体技术。关于如何学好多智能体技术,进行人工智能系统的设计、开发,我们不得不提及麻省理工学院(MIT)人工智能实验室创办人之一的西摩尔·帕普特(Seymour Papert)。帕普特就是我们要介绍的与智能体技术和学习相关的心理学家、人工智能先驱者之一。
帕普特一生的贡献是发明LOGO编程语言和创建教育建构主义。
首先,LOGO源自希腊文,原意即为思想。LOGO的原型来自人工智能语言LISP,帕普特修改了LISP的语法,使得它更易于阅读。LOGO通常被称作没有括号的LISP。
帕普特在30多岁的时候,创建了麻省理工学院赫赫有名的两大实验室:多媒体实验室以及人工智能实验室。1963年,帕普特加入麻省理工学院,与著名人工智能科学家马文·明斯基共同研究人工智能。同时,帕普特还在研究如何借助计算机辅助儿童学习。在帕普特的带领下, LOGO语言和绘图小海龟机器人先后诞生。通过向海龟发送命令,用户可以直观地学习程序的运行过程,对初学者施行寓教于乐的教学方式。LOGO语言里实现了可以直接在显示器上绘制数字图形的数字小海龟。随着计算机行业的蓬勃发展,小海龟已经不仅存在于LOGO语言和海龟机器人,小海龟的绘图方式已经成为一种设计思想,海龟图形学在多种编程语言和科学研究中都得以应用。基于L系统的分形图形的绘制就使用了小海龟绘图法,通过更高级的编程语言,能够绘制出三维的植物生长模拟图。
另一方面,帕普特发明的建构主义教育理论,用来与教学主义对比,学生可以通过具体的材料而不是抽象的命题来建立知识。帕普特曾经出版过一本书,书名为《头脑风暴:孩子、计算机与充满活力的概念》。他在书中系统阐述了自己的教育哲学做中学。他创造的LOGO作为一个工具,以改善儿童思考和解决问题的方式。在他看来,好的教育不是想办法让老师教得更好,而是应该提供充分的环境和工具让学习者构建自己的知识结构。建构主义理论能较好地阐释知识的本质及知识的获得。在基于建构主义的教学过程中,是以学生为中心的,教师起着组织者、指导者、帮助者和促进者的作用,以充分发挥学生的主动性、积极性和创造性,使学生有效地实现对知识的意义建构。
Netlogo是继承了LOGO语言的一款编程开发平台,它改进了LOGO语言只能控制单一主体的不足,它可以在建模中控制成千上万的智能体,是一个多智能体编程环境,用来研究分散系统的运行机制,可以对许多现实世界中的现象进行建模并且观察研究,例如鸟群、交通、蚂蚁以及市场经济。它被广大的学生、教师以及全世界的研究者运用。如果说LOGO继承于人工智能语言LISP,那么LOGO就是代表了人工智能思想,而Netlogo则是模拟分布式人工智能思想平台。
综上所述,Netlogo将帕普特的LOGO编程语言和教育建构主义两大贡献统一起来,实现了一种基于建构主义思想的多智能体教学科研的系统平台。建模和模拟复杂系统,离不开实验,我们没有人工智能实验室,怎么办?我们可以DIY一个人工智能虚拟仿真实验室,这就是Netlogo平台。通过人工智能虚拟仿真实验室的2D/3D虚拟技术对智能体应用的各个环节(如场景的建立、智能体的构建以及运行仿真)进行高度的2D/3D虚拟模拟,这种通过场景模拟、智能体搭建运行及可视化编程的方式能够为构建多智能体技术学习环境提供一个充满乐趣的有效的教学及科
前言
第1章人工智能概述
11人工智能发展的三次浪潮1
12人工智能的三大主流学派8
13人工智能的研究领域14
14自然智能19
15人工智能31
16人工智能编程语言33
17习题38
参考文献39
第2章多智能体建模基础
21基于智能体建模(ABM)40
22Netlogo多智能体编程(建模)47
23开始一个模型探索52
24基于智能体建模的基本概念54
25习题61
参考文献61
第3章创建自己的模型
31如何创建一个模型63
32Netlogo语言基础67
33设计车辆跟驰模型74
34创建兔子吃草模型80
35基于智能体建模步骤84
36习题88
参考文献90
第4章自然智能与分形模拟
41分形与粒子系统91
42分形树97
43粒子瀑布99
44扩散凝聚104
45森林火灾105
46习题108
参考文献110
第5章智能城市
51智慧城市与智能城市112
52城市污染117
53城市蔓延122
54气候变化126
55习题133
参考文献134
第6章智能交通
61智能交通模型135
62智能停车管理138
63出租车智能调度143
64垃圾收运153
65习题163
参考文献163
第7章地理信息与空间智能
71地理空间智能 165
72GIS扩展171
73暴雨洪灾178
74人口统计181
75人员疏散185
76习题188
参考文献189
第8章智能社会
81人工智能社会190
82居住隔离194
83人工智能农场198
84谣言模型203
85习题207
参考文献209第9章多智能体网络
91复杂多智能体网络模型211
92SIR模型215
93小世界模型219
94无尺度网络227
95习题230
参考文献231
第10章智能算法与问题求解
101智能算法233
102鸟群觅食算法236
103蚁群算法求解旅行商问题242
104遗传算法进化机器人249
105神经网络图像识别259
106强化学习走迷宫267
107习题275
参考文献276