人工智能导论(11)——群智能(Swarm Intelligence)


一、 概述

群智能(Swarm Intelligence,SI)主要研究的内容包括群智能算法和多智能体(Multi-Agent)。

本文将人工智能"群智能"基础知识整理为思维导图,便于回顾和记忆。

二、 重点内容

  • 群智能的基本流程和特点
  • 群智能的主要研究内容
  • 群智能优化算法的核心思想
  • 常见群智能算法
    • 蚁群算法
    • 粒子群算法
    • 其他受到生物群体启发而提出的自然计算方法

三、 思维导图

人工智能导论(11)——群智能

四、 重点知识笔记

群智能算法

群智能(Swarm Intelligence,SI)是指在集体层面表现的分散的、去中心化的自组织行为。群智能源于对以蚂蚁、蜜蜂等为代表的“社会性”生物群体行为的研究。每个具有经验和智慧的个体通过相互作用机制形成强大的群体智慧来解决复杂问题。

人工智能领域的“三驾马车”

  • 进化算法
  • 人工神经网络
  • 群智能

群智能具有较强的自学习性、自适应性、自组织性等智能特征,算法结构简单、收敛速度快、
全局收敛性好,在旅行商问题、图着色问题、车间调度问题、数据聚类问题等领域得到广泛的应用

群智能已经成为有别于传统人工智能中符号主义和链接主义的一种新的关于人工智能的研究路线

群智能算法主要流程

  • 将寻优过程模拟成生物个体的觅食等行为过程,用搜索空间中的点模拟自然界中的生物个体
  • 将求解问题的目标函数量化为生物个体对环境的适应能力
  • 将生物个体觅食等行为过程类比为传统寻优方法,用较优的可行解取代较差可行解的迭代过程
    • 演化成为:一种具有“生成+检验”特征的迭代搜索算法
    • 或演化为:一种求解极值问题的自适应人工智能技术。

群智能优化算法实质上是将工程优化问题转化为函数优化问题,建立目标函数,求目标函数最优解。

群智能优化算法原理

以群落形式生存的生物在觅食行为时一般遵循以下三个规则:

  • 分隔规则:尽可能避免与周边生物个体距离太近,造成拥挤
  • 对准规则:尽可能与周边生物个体的平均移动方向保持一致,向目标方向移动
  • 内聚规则:尽可能向周边生物个体的中心移动

群智能优化算法就是利用雷诺兹模型模拟整个生物群体的行为,算法在迭代过程中不断利用个体最优值与群体最优值进行寻优搜索,完成个体信息与群体信息的交互。

群智能主要研究内容

1)群智能算法

群智能算法包括

  • 蚁群算法(蚂蚁觅食)
  • 粒子群算法(蜂群或鸟群觅食)
  • 其他受到生物群体启发而提出的自然计算方法
    • 鱼群算法(鱼群的移动与觅食)
    • 猴群算法(猴群的移动与觅食)
    • 细菌觅食算法
    • 混合蛙跳算法
    • 果蝇优化算法

主要用于求解各类优化问题:

  • 函数优化
  • 组合优化
  • 单目标优化
  • 多目标优化等

群智能优化算法特点

与传统优化算法不同,群智能优化算法是一种概率搜索算法,具有以下特点:

  • 较强的鲁棒性,群体中相互作用的个体是分布式的,没有直接的控制中心,不会因少数个体出现故障而影响对问题的求解。
  • 结构简单,易于实现,每个个体只能感知局部信息,个体遵循的规则简单。
  • 易于扩充,开销较少。
  • 具有自组织性,群体表现出的智能复杂行为由简单个体交互而来

2)多智能体

大部分人类活动都涉及多个人构成的社会团体,协作”是人类社会群智能行为的主要表现形式之一。
而机器智能还不能实现群体协作,因此多智能体研究有助于实现机器的群智能。

蚁群算法

蚁群算法,又称为蚂蚁算法。

蚂蚁的觅食特征:

  • 蚂蚁是一种社会性生物,在寻找食物时,会在经过的路径上释放一种信息素
  • 一定范围内的蚂蚁能够感觉到这种信息素,并移动到信息素浓度高的方向
  • 因此蚁群通过蚂蚁个体的交互能够表现出复杂的行为特征

基本思想:

  • 如果在给定点,一只蚂蚁要在多条路径中进行选择
  • 信息素留存浓度较高,被先行蚂蚁大量选择的路径被选中的概率就更大
  • 路径中的信息素浓度越高意味着距离越短,最短的路径也就是问题的最优答案

蚁群算法的改进(提高蚁群算法性能):

  • 蚂蚁—Q系统
  • 蚁群系统
  • 最大—最小蚂蚁系统
  • 自适应蚁群算法

粒子群算法

粒子群优化算法(Particle Swarm Optimization,PSO)源于对鸟群社会系统的研究。

核心思想

利用个体的信息共享促使群体在问题解空间从无序进行有序演化,最终得到问题的最优解。

  • 粒子群优化算法将每个问题的解类比为搜索空间中的一只鸟,称之为“粒子”
  • 问题的最优解对应为鸟群要寻找的“玉米地”
  • 每个粒子设定一个初始位置和速度向量,根据目标函数计算当前所在位置的适应度值(Fitness Value)
    • 可以将其理解为距离“玉米地”的距离
  • 粒子在迭代过程中,根据自身的“经验”和群体中的最优粒子的“经验”进行学习,从而确定下一次迭代时飞行的方向和速度
  • 通过逐步迭代,整个群体逐步趋于最优解

粒子群优化算法流程如下:

  1. 算法初始化,随机设置每个粒子的初始位置和速度。
  2. 根据目标函数,计算每个粒子的适应度值。
  3. 计算每个粒子的局部最优值pi。
    • 将每个粒子当前的适应度值与其历史最优值pi进行比较
    • 将二者最佳结果作为该粒子的局部最优值pi。
  4. 计算群体的全局最优值pg
    • 将每个粒子局部最优值pi与群体的历史最优值pg进行比较
    • 将二者最佳结果作为该粒子的局部最优值pg
  5. 分别更新粒子的速度和位置。
  6. 检查算法终止条件。如果未达到设定误差范围或者迭代次数,则返回2

特点:

  • 收敛速度快
  • 在算法运行初期,算法存在精度较低、易发散等缺点

粒子群算法改进方法(提高算法性能):

  • 理论研究改进
  • 拓扑结构改进
  • 混合改进算法
  • 参数优化等方面

其他群智能优化算法

人工鱼群算法

是一种源于鱼群自治行为的群智能优化算法,通过构造人工鱼来模仿鱼群的觅食、聚群、追尾和随机行为,从而实现寻优,具有较快的收敛速度,可以用于解决有实时性要求的问题。

鱼的几种典型行为:

  • 觅食行为:一般情况下鱼在水中随机地自由游动,当发现食物时,则会向食物逐渐增多的方向快速游去。
  • 聚群行为:鱼在游动过程中为了保证自身的生存和躲避危害会自然地聚集成群,鱼聚群时所遵守的规则有三条:
    • 分隔规则:尽量避免与临近伙伴过于拥挤;
    • 对准规则:尽量与临近伙伴的平均方向一致;
    • 内聚规则:尽量朝临近伙伴的中心移动。
  • 追尾行为:当鱼群中的一条或几条鱼发现食物时,其临近的伙伴会尾随其快速到达食物点。
  • 随机行为:单独的鱼在水中通常都是随机游动的,这是为了更大范围地寻找食物点或身边的伙伴。

特点:

  • 具有较快的收敛速度,可以用于解决有实时性要求的问题;
  • 对于一些精度要求不高的场合,可以用它快速的得到一个可行解;
  • 不需要问题的严格机理模型,甚至不需要问题的精确描述,这使得它的应用范围得以延伸。

果蝇优化算法

是一种模拟果蝇觅食行为寻求全局最优的新方法。果蝇具有强大的嗅觉与视觉器官,其嗅觉器官能感知远达40km 以外的食物源。果蝇在觅食过程中首先通过嗅觉搜寻食物源,到达食物附近后,利用视觉确定食物和群体聚集位置,最终飞往该方向。

算法流程:

  1. 初始化果蝇群体位置
  2. 设定果蝇个体利用嗅觉器官搜寻食物的随机方向和距离。
  3. 由于具体食物位置无法确定,先估计果蝇个体与原点的欧式距离Disti,再计算味道浓度判定值Si,Si为距离Disti的倒数。
  4. 将味道浓度判定值Si代入味道浓度判定函数Function( ),得出果蝇个体位置的味道浓度Smelli。
  5. 找出该果蝇群体的中味道浓度值最高(求解极大值问题)/最低(求解极小值问题)的果蝇
  6. 保留当前最佳味道浓度值与位置,果蝇群体利用视觉器官向该位置飞去
  7. 进行迭代寻优,重复执行步骤2-5,并判断当前味道浓度值是否优于上一代味道浓度值,若是则执行6。

多智能体

多智能体系统是多个智能体组成的集合,它的目标是将大而复杂的系统建设成小的、彼此互相通信和协调的,易于管理的系统。
多智能体系统是分布式人工智能(DAI,DistributedArtificial Intelligence)的一个重要分支。

多智能体系统在表达实际系统时,通过各智能体间通讯、合作、互解、协调、调度、管理及控制来表达系统的机构、功能及行为特性。

目前多智能体系统已在飞行器的编队、传感器网络、数据融合、多机械臂协同装备、并行计算、多机器人合作控制、交通车辆控制、网络的资源分配等领域广泛应用。

多智能体的协同控制的基本问题包括:

  • 一致性控制
  • 会和控制
  • 聚结控制
  • 编队控智能

其中后三者可视为一致性控制的推广与特例。多智能体系统达到一致是实现协同控制的首要条件。

多智能体系统控制系统

  • 知道“我”在哪
  • 知道“你”在哪
  • 知道“我”要做什么

多智能体协同控制系统主要做以下三个方面的研究:

  • 编队队形的设计:多个无人车及无人机在指令下运行至指定的位置,并最终实现既定的编队形态
  • 编队队形的保持:在无人车及无人机执行指令过程中能克服来自系统内部或外在环境干扰,进而保持整个队形不变;
  • 编队队形的变换:在无人车及无人机行进过程中能够适应来自系统内部或外在环境干扰而对编队做出适当且合理的改变

多智能体系统的主要具有以下的特点:

(1)自主性。每个智能体都能管理自身的行为并做到自主的合作或者竞争。
(2)容错性。某几个智能体出现了故障,其他智能体将自主地适应新的环境并继续工作,不会使整个系统陷入故障状态。
(3)灵活性和可扩展性。采用分布式设计,智能体具有高内聚低耦合的特性,使得系统表现出极强的可扩展性。
(4)协作能力。多智能体系统是分布式系统,智能体之间可以通过合适的策略相互协作完成全局目标。


个人总结,部分内容进行了简单的处理和归纳,如有谬误,希望大家指出,
持续修订更新中。

修订历史版本见:https://github.com/hustlei/AI_Learning_MindMap

© 版权声明
THE END
喜欢就支持一下吧
点赞910 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容