当前位置: 首页 > article >正文

一文了解:多智能体系统(MAS)的演变(方法论篇)

咱们上回聊的是多智能体系统(MAS)的进化,那会儿咱们主要从算法的角度来看,从最早的神经网络聊到了现在的高级模型。具体参见:《一文了解:多智能体系统(MAS)的演变(算法篇)

这回咱们换个角度,从方法论上探讨一下MAS的演变。

具体来说,咱们要聊聊早期的MAS是咋那么依赖集中化方法的。也就是说,很多智能体的学习都是在一台中心服务器上完成的。

然后咱们再聊聊,这种模式是怎么变成更分散、更去中心化的方法的,这种方法可是解决了一大堆问题,像啥可扩展性问题、数据隐私问题等等。

图片

 

先看看MAS里的集中化是咋回事?

除了要处理那些不稳定的因素,让多智能体系统变得复杂,还有个问题就是可扩展性和所有操作都得集中处理。

咱们传统的多智能体系统里,操作基本上都是集中搞的。这个集中化的核心就是有一个中央大boss——可能是个服务器、算法或者协调器啥的——来管着所有智能体。这个大boss通常都知道整个系统的全局信息,比如每个智能体和环境是个啥状态。它还得搞定智能体之间的协调工作,确保它们能愉快地一起玩耍,这样就不会有冲突啊、效率低下啊或者重复劳动这种问题。

集中化MAS有几个典型的例子:

  1. 交通管理系统:在智能城市里,一个集中的控制系统可能会监控城市里所有的交通灯。这些交通灯(智能体)会告诉控制系统它们现在的状态,然后中央控制器就会优化整个城市的交通流量。

  2. 仓库机器人:在一个集中管理的仓库里,服务器可能会给每个机器人分配任务,比如取货,然后协调它们的行动,确保它们不会撞到一起或者互相干扰。

  3. 军用无人机:一个中央指挥中心可能会控制一群无人机,给每个无人机分配特定的目标或监视区域,然后协调它们的行动,以确保任务的成功。

图片

图- 具有分散的行动者和集中的评论家的多智能体DDPG算法架构

集中化操作确实有几个好处。最大的优点就是决策的优化,因为中央实体可以看到所有的信息。它还能让智能体之间的协调变得简单直接,减少冲突的机会。对于智能体本身来说,依赖中央实体意味着它们自己不需要有太复杂的决策能力。

但是,使用集中化操作的主要缺点就是可扩展性问题。随着智能体数量的增加,中央实体要处理所有信息并做出实时决策就变得越来越困难,可能会导致瓶颈。

而且,当我们想同时在独立的数据上训练多个智能体时,由于隐私问题不能和中央实体分享数据,集中化操作就变得不太现实了。这就是去中心化方法大显身手的地方。

去中心化这个概念其实很早就在各个领域里出现了,像政治学、经济学、计算机科学,还有生物学等等。它的意思挺直接的,就是把权力啊、控制啊、或者决策权分散到不同的实体或者节点上,而不是全部集中在一个中央大权威手里。

比如咱们看看政治学,很多国家都在用联邦制,就是中央和地方政府分权。在生物学里,这个概念也很重要,比如你看那些蚂蚁,它们就是以去中心化的方式行动的,没有一个老大来控制整个群体,它们都是靠局部的互动来找食物的。

这个去中心化的概念在我们的日常生活中也很常见,而且效果不错。所以,这个概念也被用在了技术领域,最有名的例子就是区块链和加密货币

区块链的点子其实就是从去中心化来的。它搞了一个分布式的账本,所有的参与者或者节点都可以独立地验证交易,不需要靠银行或者政府这种可信的中央权威。

图片

图- 区块链技术下的加密交易工作流程

比如说,你给别人发送比特币,这个交易就会被广播到比特币网络里,等着被放进一个区块里。然后,有一群叫做矿工的人会检查你这个交易是不是靠谱,把它放进区块里,然后竞争解决一个加密难题,看谁能把这个区块加到区块链上。一旦这个区块加进去了,成了区块链账本的一部分,你的交易就算确定了。这么做的好处就是减少了因为安全漏洞或者欺诈交易带来的风险。

区块链技术成功地实现了去中心化的概念之后,我们也看到人工智能领域开始用这个概念了,特别是在多智能体系统里。

在多智能体系统的背景下,去中心化就意味着没有一个中央大boss来管所有智能体的行动。在去中心化的MAS里,每个智能体都有自己的自主权,它们都是根据自己的了解、环境还有和其他智能体的互动来自己拿主意的。

去中心化的这个方法帮我们搞定了多智能体训练里经常头疼的可扩展性问题。没有中央控制器,就意味着不会出现瓶颈,往系统里加更多的智能体,也不会让事情变得太复杂。还有,系统的抗故障能力也变强了。就算有一个智能体出了故障,其他的智能体还是能正常工作,整个系统不会受影响。

但这不是说没有中央控制,智能体之间就不能合作了。比如,智能体们可以通过共享目标,用一种分布式的方式互相协调,而不是靠中央命令来指挥。这个特别的想法,就是边缘AI和联邦学习发展起来的原因。咱们以后有机会再细聊这两个概念,它们在云计算领域里用得超级多。

说到边缘AI,我们通常是指在连网的小设备上直接跑机器学习模型,比如智能手机、物联网设备、传感器和嵌入式系统,而不是靠中心的云服务器。

你可能知道,我们用训练好的机器学习模型来做推理时,通常得把请求和数据发给API,然后模型很快就给我们响应。但是,去中心化的方法让我们可以在不通过API向中央服务器发送请求和数据的情况下,直接在边缘设备上用这些训练好的机器学习模型。比如,我们可以把训练好的AI直接装到小相机里,让它能做实时的设备处理。

图片

图- 云AI(集中式)与边缘AI(去中心化)之间的差异

这种方法好处不少。首先,它解决了延迟问题。通过在设备上直接处理,边缘AI可以立马做决策。这在那些延迟可能导致严重问题的场景里特别重要,比如自动驾驶或者医疗设备。

再说,现在有几百万的物联网设备在运行(像传感器、摄像头、手机这些),要扩展一个集中式的AI系统,成本和复杂性都会非常高。但是,通过在边缘设备上分布AI处理,边缘AI系统就能更容易地扩展,添加更多设备也不会压垮中央系统。

因为我们的AI是直接内置在设备里的,所以我们也就不用把自己设备上的数据分享给中央服务器或云端去处理了。这对减少数据泄露或者被滥用的风险超级重要。像个人数据、健康记录或者位置信息这些敏感信息都不用离开设备,这样可以大大提升隐私保护,也符合像GDPR这样的法规要求。

联邦学习是咋回事呢?简单来说,联邦学习关注的是咱们怎么训练机器学习模型。这种方法里,模型的训练是在各个设备上协同完成的,数据保持去中心化,而且就在设备上。

联邦学习的意思是,咱们不用把数据都收集到中央服务器或者云端去训练,而是让每个设备都在本地处理自己的数据,训练模型的一部分,然后只把模型的更新,比如学到的参数,分享给中央服务器。

用联邦学习训练模型的步骤大概是这样的:

  1. 服务器或云端给所有设备一个初始的全局模型。

  2. 每个设备都用自己本地的数据来训练这个模型。比如说,我们可能想在自己智能手机里存的图像数据上训练模型,然后设备就会创建关于模型参数的本地更新。

  3. 设备只把本地模型的更新,而不是数据,传回服务器。

  4. 服务器把这些更新整合起来,改进全局模型。

  5. 更新后的全局模型再发回设备,进行下一步的本地训练,这个过程会重复几次。

图片

图- 联邦机器学习过程的一个迭代

联邦学习的好处是啥呢?因为原始数据从来不会离开设备,所以数据隐私得到了很好的保护。这在医疗保健、金融和移动应用这些需要保护个人或敏感数据的领域特别有用。

此外,这么训练出来的模型会更适合你自己的使用情况,因为它是在你设备上的本地数据上训练的。比如,你手机里的AI可以根据你独特的输入习惯来定制它的预测文本模型,同时还能贡献给一个让所有用户都受益的全局模型。

现在的智能MAS从去中心化方法、边缘AI和联邦学习这些技术中获益良多,咱们上文也讨论过这些技术了。下面是一些这些技术结合起来的应用例子:

  1. 智能交通和自动驾驶汽车:自动驾驶汽车里的每辆车都是一个智能体,它们会根据自己的环境来做决策,比如检测障碍物和遵守交通规则。每辆车都处理自己的传感器数据来做出实时决策,不依赖云服务器。

  2. 智能城市:在智能城市里,交通灯、能源传感器和公共交通车辆这些基础设施可以看作是智能体。这些智能体独立运作,根据本地条件来做决策。比如,智能交通灯可以根据实时的交通流量来调整信号灯的时长,智能能源表可以在建筑物中调整用电量。

  3. 医疗保健系统:在医疗保健系统中,像可穿戴设备、智能监控系统和医疗诊断设备这样的医疗设备可以看作是智能体。在这种情况下,智能体可以实时监控患者的健康状况,或者根据本地的患者数据来提醒医生。

  4. 智能制造:在制造业中,我们可以把物联网设备,比如传感器或工业机器人看作是智能体。它们可以互相通信和协作,来优化生产流程,管理工作量,并通过分析本地的生产数据来防止停机时间。

  5. 智能农业:在农业领域,我们可以把各种设备,比如无人机、灌溉系统或机器人看作是智能体。多个自治的智能体可以协作监控农场的不同部分,收集数据,并做出本地决策,比如根据土壤湿度来调整灌溉,或者针对害虫区域使用杀虫剂。

虽然现在还在早期阶段,但是去中心化方法在MAS的未来看起来很有希望,尤其是随着对可扩展、保护隐私和弹性AI系统的需求不断增长。

这种方法还有潜力推动AI的民主化,让小型组织、初创企业甚至个人都能为开发最先进的模型做出贡献。这当然比现在由那些科技巨头控制的集中式AI系统要好。

在这篇文章中,我们从方法论的角度探讨了多智能体系统的演变。从集中式到去中心化方法的转变,解决了开发多智能体学习过程中的许多挑战。集中式MAS虽然在它的时代是有效的,但在可扩展性和数据隐私方面面临限制,使其对现代应用来说不太可行,现代应用要求可扩展性和安全性。

MAS的去中心化不仅解决了这些挑战,还利用了智能体之间的自主权。这种方法允许更高效、实时的决策,而没有与集中控制相关的瓶颈。像边缘AI和联邦学习这样的技术是这种去中心化方法的实际应用示例。这些技术在数据安全、降低延迟和尊重用户隐私的解决方案方面提供了显著的优势。

参考资料:

1. Multi-Agent Actor-Critic for Mixed Cooperative-Competitive Environments(https://arxiv.org/pdf/1706.02275)

2. SoK: Assessing the State of Applied Federated Machine Learning(https://arxiv.org/pdf/2308.02454)

3. https://www.kaaiot.com/iot-knowledge-base/beyond-the-cloud-how-edge-aioptimizes-iot-data-processing

4. https://link.springer.com/article/10.1007/s10586-021-03301-8


http://www.kler.cn/news/365490.html

相关文章:

  • springboot2.0x 和springboot 1.0 整合redis 使用自定义CacheManager 问题
  • DirectDraw和Direct3D的区别
  • electron的常用api
  • FreeSSl 申请免费证书,ACME实现自动化续期(https证书自动续期)
  • 接口测试(九)jmeter——关联(JSON提取器)
  • PyTorch模型参数初始化
  • 盘古信息:为制造企业打造全方位数字化转型方案
  • 创建ODBC数据源SQLConfigDataSource函数的用法
  • JavaEE——网络
  • Electron 是一个用于构建跨平台桌面应用程序的开源框架
  • java-实例化一个List,然后添加数据的方法详解
  • 云原生笔记
  • Find My平板键盘|苹果Find My技术与键盘结合,智能防丢,全球定位
  • 鸿蒙NEXT应用上架与分发步骤详解
  • 希尔排序的增量和缩小增量问题
  • Cout输出应用举例
  • Python 模块导入方式详解:从基础到进阶【超清晰大白话版!!】
  • 青少年编程与数学 02-002 Sql Server 数据库应用 09课题、规则、约束和默认值
  • 【Unity】【游戏开发】【VR开发】如何让按钮在被Ray选中时发声?
  • docker网络-network(下集)自定义网络模式
  • QT + MSVC + spdlog乱码
  • 使用 pydub 的 AudioSegment 获取音频时长 - python 实现
  • Docker搭建DVWA靶场以及刷题记录
  • Spring Boot框架下中小企业设备管理系统开发
  • 关于在vue2中实现el-table的表头合并
  • 无人机之低空管控技术