(二)多智能体强化学习

目录

前言

一、多智能体强化学习的概念

二、多智能体面临的问题

三、现有算法简介

总结


前言

         基于上一篇文章对于强化学习基础概念的介绍,本篇文章针对多智能体强化学习进行介绍和总结,帮助大家了解多智能体的基本概念以及算法,方便大家后续的学习,后面专题也会针对各种经典算法进行介绍。

一、多智能体强化学习的概念

   多智能体强化学习(Multi-Agent Reinforcement Learning,MARL)是强化学习(Reinforcement Learning,RL)研究方向的一个分支。多智能体是指在学习过程中,有多个智能体跟环境进行交互。多个智能体之间相互影响,共同决定了系统的整体表现,如图1所示。

        根据多个智能体之间的关系,可以分为几种类型:1.完全合作型 2.完全竞争型 3. 混合型。

完全合作型:所有智能体的奖励函数相同,多智能体的目标是达到全局最优。

完全竞争型:两个奖励函数相反的智能体,同时博弈的过程遵循随机博弈的过程。

混合型:多智能体被换分为多个组,组内为合作关系,组间为竞争关系。

利己型:奖励函数互不相关,每个智能体仅考虑自身奖励最大,利益最大化。

        按照训练方式进行分类,主要分为集中式,分散式,集中训练和分散执行等框架。

集中式:采用集中训练集中执行的方式,训练效果好;但是由于集中执行的动作空间维度爆炸等问题,使得该方法计算复杂度过高。

分散式:采用分散训练分散执行的方式,计算复杂度低;但是由于各个智能体之间缺少联系,会导致奖励分配不均、多智能体无法实现合作目标,计算不收敛等问题。

集中训练和分散执行框架:为了平衡计算复杂度与精度之间的关系,现有的主流框架为集中训练和分散执行 (centralized training and decentralized execution, CTDE)框架,智能体在集中训练时,共享所有智能的数据,使从全局的角度来优化策略以及学习过程。分布式执行是指每个智能体根据自己的策略进行独立的决策,不依赖于其他智能体的信息或者控制,这样可以降低计算复杂度。由于训练阶段已经进行了全局优化,因此能够实现多智能体之间的有效协作。CTDE框架可以有效地平衡全局奖励与执行效率的关系,实现有效的性能优化和提升。

二、多智能体面临的问题

        1. 环境的非平稳性:在多智能体环境中,每个智能体要考虑其他智能体的动作和回报,使得环境非平稳变化。在这样的的环境中,多智能体之间相互影响,奖励函数不能正确反映出行为的正确性,使得算法不收敛。

        2.多智能体的非完全观测:每个智能体仅能实现自己有关环境信息的观测,不能实现全局信息的观测。

        3.多智能的奖励分配问题:当多智能体之间的关系为合作关系时,即全局奖励函数作为所有智能的奖励时,如何确定各智能体对于奖励函数的贡献值,也就是确定奖励的分配是十分重要的问题。这个问题也被称为信用分配问题(credit assignment )。

        4.训练执行框架的设计:框架的设计会影响多智能体强化学习的训练效果,进而影响全局的表现。不同的问题要具体分析,设计合理的框架进行训练和执行。

        5.学习过策的鲁棒性问题:由于训练数据有限,使得学习后的策略仅在特定环境下有效。尽可能多的设计各种情况下的训练场景,增强学习过程的鲁棒性和稳定性。

三、现有算法简介

        此部分不做过多的详细介绍,后续会根据不同的算法写文章进行专门详细的介绍。协作类算法主要是研究如何通过集中式的训练达到各智能体独立执行策略;通信类的算法是建立多智能体之间的联系从而实现协同合作。

协作类算法:

VDN

QMIX

QTRAN

MADDPG

……

通信类算法:

RIAL

CommNet

BiCNet

ATOC

IC3Net

TarMAC

SchedNet

DGN

……


总结

        通过本篇文章,大家可以对多智能体有一个初步的了解和认知。至于各种算法的具体表现形式和步骤将会在接下来的文章中详细介绍。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/489140.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Linux网络编程】传输协议UDP

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站 🌈个人主页: 南桥几晴秋 🌈C专栏: 南桥谈C 🌈C语言专栏: C语言学习系…

汽车车牌识别数据集,支持YOLO,COCO,VOC格式的标注,8493张图片,可识别多种环境下的车牌

汽车车牌识别数据集,支持YOLO,COCO,VOC格式的标注,8493张图片,可识别多种环境下的车牌 数据集分割 训练组82% 6994图片 有效集12% 999图片 测试集6% 500图片 预处理 自动…

流网络复习笔记

所以这里的19是118-019 <s , w> 1/3就是容量是3&#xff0c;流量是1 残留网络就是两个相对箭头上都是剩余对应方向还能同行的流量 所以s->w 3-1 2, w->s 1

Mac m2电脑上安装单机Hadoop(伪集群)

1. 引言 本教程旨在介绍在Mac 电脑上安装Hadoop 2. 前提条件 2.1 安装JDK Mac电脑上安装Hadoop&#xff0c;必须首先安装JDK&#xff0c;并配置环境变量&#xff08;此处不做详细描述&#xff09; 2.2 配置ssh环境 关闭防火墙 在Mac下配置ssh环境&#xff0c;防止后面启…

使用html和JavaScript实现一个简易的物业管理系统

码实现了一个简易的物业管理系统&#xff0c;主要使用了以下技术和功能&#xff1a; 1.主要技术 使用的技术&#xff1a; HTML: 用于构建网页的基本结构。包括表单、表格、按钮等元素。 CSS: 用于美化网页的外观和布局。设置字体、颜色、边距、对齐方式等样式。 JavaScript…

2000-2022年各省产业结构高级化、产业结构合理化指数(两种方法)(含原始数据+计算过程+计算结果)

2000-2022年各省产业结构高级化、产业结构合理化指数&#xff08;两种方法&#xff09;&#xff08;含原始数据计算过程计算结果&#xff09; 1、时间&#xff1a;2000-2022年 2、来源&#xff1a;统计年鉴、各省年鉴、人口和就业年鉴 3、指标&#xff1a;GDP、第一产业增加…

神经网络基础-初识神经网络

人工神经网络&#xff08; Artificial Neural Network&#xff0c; 简写为ANN&#xff09;也简称为神经网络&#xff08;NN&#xff09;&#xff0c;是一种模仿生物神经网络结构和功能的计算模型。人脑可以看做是一个生物神经网络&#xff0c;由众多的神经元连接而成。各个神经…

Mac安装brew的终极方法

/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"按回车后&#xff0c;根据提示操作&#xff1a; 输入镜像序号&#xff08;1-5都可以&#xff09;输入Y&#xff0c;回车等待brew安装完成即可。 M系列芯片亲测有效&#x…

vscode借助插件调试OpenFoam的正确的.vscode配置文件

正确的备份文件位置&#xff1a; /home/jie/桌面/理解openfoam/正确的调试爆轰单进程案例/mydebugblastFoam 调试爆轰案例流体 并且工作区和用户区都是openfoam-7版本 问题&#xff1a;F5以debug模式启动后不停在断点 解决方法&#xff1a; 这里备份一下.vsode正确的配置&…

MATLAB2021B APP seriallist 串口通信

文章目录 前言一、项目需要二、使用步骤1.查找串口填写到查找列表2.发送函数3. 接收函数4.检测串口按钮5.选择串口号 总结 前言 提示&#xff1a;这里可以添加本文要记录的大概内容&#xff1a; 项目需要&#xff1a; 提示&#xff1a;以下是本篇文章正文内容&#xff0c;下面…

TIM输入捕获---STM

一、简介 IC输入捕获 输入捕获模式下&#xff0c;当通道输入引脚出现指定电平跳变时&#xff0c;当前CNT的值将被锁存在CCR中&#xff0c;可用于测量PWM波形的频率、占空比、脉冲间隔、电平持续时间等参数 每个高级定时器和通用定时器都拥有4个输入捕获通道 可配置为PWMI模…

Linux驱动开发(14):PWM子系统–pwm波形输出实验

PWM子系统用于管理PWM波的输出&#xff0c;与我们之前学习的其他子系统类似,PWM具体实现代码由芯片厂商提供并默认编译进内核&#xff0c; 而我们可以使用内核&#xff08;pwm子系统&#xff09;提供的一些接口函数来实现具体的功能&#xff0c;例如使用PWM波控制显示屏的背光、…

C++在关键嵌入式软件领域逐步取代 Ada 的演进历程

第一章&#xff1a;引言 1.1 Ada 与 C在嵌入式系统中的角色 在嵌入式系统开发领域的漫长演进历程中&#xff0c;Ada 与 C宛如两颗璀璨而又各具特色的星辰&#xff0c;交替影响着该领域的发展轨迹。它们不仅代表了两种不同的编程哲学&#xff0c;也反映了不同时期对软件可靠性…

商业化大前端在性能优化领域的探索与实践

导读&#xff1a;在业务飞速发展的过程中&#xff0c;用户体验是必不可少的一个环节&#xff0c;而页面性能是直接影响用户体验的重要因素。当页面加载时间过长、交互操作不流畅时&#xff0c;意味着业务可能会出现转化率降低、用户流失等业务问题。在过去一年&#xff0c;为了…

基于wifipumpkin3的AP伪造

一、软硬件需求 利用wifipumpkin-3进行AP伪造需要kali系统&#xff0c;还需要一张支持在kali的环境下能够支持AP伪造的无线网卡&#xff0c;如果是针对特定的无线网的话&#xff0c;再来第二张网卡的话更好用来转发流量更好。对于wifipumpkin-3的安装使用可以分为两种方式&…

【解决】k8s使用kubeadm初始化集群失败问题整理

执行提示命令&#xff0c;查看报错信息 journalctl -xeu kubelet1、错误&#xff1a;running with swap on is no 报错 "command failed" err"failed to run Kubelet: running with swap on is no 解决&#xff1a; swap未禁用&#xff0c;需要禁用swap&…

专升本-高数 1

第 0 章&#xff0c;基础知识 一&#xff0c;重要公式 1、完全平方 (ab)a2abb (a-b)a-2abb 2、平方差公式 &#xff08;a-b&#xff09;(ab)a-b 3、立方差公式 a-b(a-b)(aabb) 4、 立方和公式 ab(ab)(a-abb) 二&#xff0c;基本初等函数 1&#xff0c;幂函数 一元二…

桥接模式的理解和实践

桥接模式&#xff08;Bridge Pattern&#xff09;&#xff0c;又称桥梁模式&#xff0c;是一种结构型设计模式。它的核心思想是将抽象部分与实现部分分离&#xff0c;使它们可以独立地进行变化&#xff0c;从而提高系统的灵活性和可扩展性。本文将详细介绍桥接模式的概念、原理…

深入探索:createThread与cancelThread的用法及实例

在多线程编程领域,线程的创建与管理是核心技能之一。本文将详细介绍两个关键函数:createThread(用于创建新线程)和cancelThread(用于取消已存在的线程),并通过具体实例展示它们的用法。需要注意的是,不同的编程语言和线程库可能有不同的API设计,但基本概念是相通的。本…

SpringBoot【十三(完结篇)】集成在线接口文档Swagger2

一、前言&#x1f525; 环境说明&#xff1a;Windows10 Idea2021.3.2 Jdk1.8 SpringBoot 2.3.1.RELEASE 二、Swagger常用注解 由于Swagger 是通过注解的方式来生成对应的 API&#xff0c;在接口上我们需要加上各种注解来描述这个接口&#xff0c;所以对它常用的注解我们是必…