多智能体技术及应用
上QQ阅读APP看书,第一时间看更新

前言
Preface

多智能体一般专指多智能体系统(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虚拟模拟,这种通过场景模拟、智能体搭建运行及可视化编程的方式能够为构建多智能体技术学习环境提供一个充满乐趣的有效的教学及科技创新应用平台。

本书特别关注多智能体系统建模及应用,讨论了自然界和人类社会大量案例。将问题驱动教学模式和计算思维进行整合,以问题为导向规划单元内容,按案例组织方式编写。学生可以通过具体的材料而不是抽象的命题来建立知识,以改善学生们的思考和解决问题的方式。通过本书的案例,借助Netlogo这个人工智能虚拟仿真实验室,能够增加学习者解决问题的间接经验,支撑学习者的记忆,为学习者遇到的问题提供参照,提高学生的认知弹性,同时为学习者解决问题的学习提供了重要的支撑和示范。通过人工智能虚拟仿真实验室,我们可以为许多自然和社会现象建立模型,可基于三维仿真技术快速搭建行业人工智能应用场景,实现完整的人工智能应用虚拟仿真实验。在学完本书之后,您将对复杂的自组织系统的概念有一个基本理解,获得基本的多智能体建模经验。

由于时间仓促,书中难免存在不妥之处,请读者原谅,并提出宝贵意见。

作者

2021年3月