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

强化学习-MATLAB

1.

What is RL

How do i set it and solve it?

benefits and drawbacks

black box -> machine learning

ML combines 3 Paradigm

Unsupervised Learning:

不需要标签,根据内在特征进行聚类等相似操作;

Supervised Learning:

这就是ML所擅长的,从数据中找出特征进而得到label;

RL与这两个使用静态数据集的学习框架不同;

序列行为实现最优的回报;

可以将policy使用深度神经网络这也是DRL的由来;

RL算法的作用就是基于观测,奖励等去优化策略,以采取最优动作进而获得最大回报;

所以,RL就是一个优化问题:

与其他优化问题区分开来:

关键点:评估状态价值,将能够使得智能体获得更高回报,而不是只是关注即时奖励;

如果不能够评估状态价值,很有可能导致Agent陷入利用(贪婪)的状态,不断在原地打转;

当然,能够估计越来越远的状态价值,并非适合所有任务,对于金融等任务,等你到了那个时间点,可能并非和预测的一样,因此这种情况下,短视就更加重要;

而控制智能体远视和短视,依靠gamma折扣因子;

探索利用平衡

智能体能否冒着短期的风险去找到探索一个更大的奖励,进而填补value函数中更多未知部分;

RL问题和控制问题异同:

最小化cost实际上可以通过最大化-reward来实现,

在RL更新过程中实际上也使用了-loss区别于监督学习这类任务;

不同:在一段时间内RL需要去学习最优策略,而不是说显式求解

so:

总结:这基本上就是一个任务,我们需要在算法层面考虑的

2.Env and Reward Engineering

工作流:​​​​​​​​​​​​​

和控制任务不同,强化学习中环境是除agent之外的所有(包括被控制对象的动态特性)

Model-based很好用,可以避免无效的探索,但是目前model-free使用最多,避免对模型建模

仿真环境好处:

传统控制任务已经做好了仿真,

更加具体:

奖励的设计:

问题:

稀疏奖励和指定优化

之后就是策略和算法(取决于环境设置)

维度灾难:

表格的形式很明显无法应对这种状态很多的情况,尤其是连续空间

此时如果有一个value函数能够通过S-A得到,其实也就是说找到一个拟合函数能够获得s-a的value,那么这个V的结构是什么?实际上很难去设计,通过NN去拟合比较符合

http://www.dtcms.com/a/322864.html

相关文章:

  • STM32的中断系统
  • 数据分析框架从 “工具堆砌” 转向 “智能协同”
  • java -jar xxx.jar 提示xxx.jar中没有主清单属性报错解决方案
  • PAT 1052 Linked List Sorting
  • 第16届蓝桥杯Scratch选拔赛初级及中级(STEMA)2024年10月20日真题
  • 求和算法的向后稳定性 backward stable
  • 【Python 高频 API 速学 ③】
  • 优化器:SGD、Adam、RMSprop等优化算法对比与机器翻译应用
  • 99-基于Python的京东手机数据分析及预测系统
  • I2CHAL库接口
  • c++ opencv调用yolo onnx文件
  • 用天气预测理解分类算法-从出门看天气到逻辑回归
  • SymPy 表达式的变量获取:深入理解与正确实践
  • 对数运算法则(rule of logarithmic operations)和对应导数关系
  • 带冷端补偿的热电偶采集方案MAX31855
  • Python(6) -- 数据容器
  • 《原型链的柔性骨架:JavaScript面向对象架 构的动态设计与演化逻辑》
  • 【线性代数】线性方程组与矩阵——(1)线性方程组与矩阵初步
  • Python中的Lambda函数详解
  • 北京JAVA基础面试30天打卡05
  • PowerShell 实战:第 6 章动手实验全攻略(含命令详解与示例)
  • Ubuntu和Windows系统Kafka配置方法
  • 模式组合应用-适配器模式
  • 光伏面板损伤检出率↑91%!陌讯多模态识别算法在无人机巡检的落地实践
  • 基于clodop和Chrome原生打印的标签实现方法与性能对比
  • 深入理解Maven BOM
  • 基于MATLAB的Halo轨道设计与可视化实现
  • [SC]SystemC 常见的编译/语法错误与解法(三)
  • PDF 转 HTML API 数据接口
  • 在Spring Boot项目中如何动态切换数据源、数据库?