Page 137 - 《软件学报》2025年第12期
P. 137
5518 软件学报 2025 年第 36 卷第 12 期
如图 3 所示, 强化学习涉及以下几个要素.
(1) 环境 (Environment): 智能体进行学习和决策的场所. 环境可以是现实世界中的任何场景, 也可以是模拟
环境.
(2) 状态 (State): 描述了在特定时刻智能体所处的情况或条件. 状态对于智能体的决策非常重要, 因为它决定
了智能体应该采取何种行动.
(3) 动作 (Action): 智能体在特定状态下可以执行的操作或行为. 智能体通过选择不同的动作来影响环境.
(4) 奖励 (Reward): 环境根据智能体执行的动作和状态的变化给予的反馈. 奖励可以是正数、负数或 0, 用来
评估智能体的行为好坏.
(5) 策略 (Policy): 智能体采取行动的规则或策略. 策略可以是确定性的 (给定状态, 选择一个特定的动作) 或是
随机的 (根据概率选择动作).
将强化学习应用于数据库系统参数的优化时, 数据库系统作为环境 (Environment), 优化算法作为智能体
(Agent), 数据库系统的运行时度量指标 (Metrics) 作为状态 (State). 数据库系统的指标 (Metrics) 是记录其内部运行
时组件活动的计数器. 例如, 系统自启动以来从磁盘读取的页面数, 表的行锁持有的平均时间等. 根据数据库的当
前性能指标 (如: 吞吐量、延迟) 的变化设置奖励函数 (Reward), 将优化算法推荐的参数设置作为智能体的动作
(Action). 工作流程如图 4 所示.
智能体
策略
状态
计数器
(如: 从磁盘读取的页面数)
奖励
数据库性能变化
(如: 吞吐量和延迟的变化)
动作
环境(数据库系统 ) 数据库系统参数设置
工作负载
图 4 强化学习应用于数据库系统参数优化的工作框架
(1) 智能体 (优化算法) 从环境 (数据库系统) 中获取当前的环境状态, 根据策略做出动作 (参数设置), 动作会
对环境产生影响, 数据库系统的性能会发生变化;
(2) 环境会根据预先设置的奖励函数对当前的动作产生的影响做出评价, 给出一个奖励反馈;
(3) 智能体会根据收到的奖励反馈和预定的策略, 做出下一个动作;
(4) 迭代上述过程, 直到累计奖励达到最大. 即智能体与环境的交互过程的累计奖励的变化趋于稳定.
强化学习的方法有很多种类别, 包括基于价值的、基于策略的、基于策略和价值相结合的方法, 每种方法都
有各自的特点和应用场景. 其中, 基于价值和策略相结合的强化学习方法能够充分利用价值函数和策略函数的优
势, 并通过相互协作来提高学习的效率和稳定性, 在解决复杂问题时通常具有稳定性、高效性、广泛适用性. 深度
确定性策略梯度 (DDPG) 方法属于基于策略和价值相结合的方法, 适用于连续动作空间的强化学习问题. DDPG
学习的是确定性策略, 即给定状态直接输出动作, 而不是学习一个概率分布, 适用于数据库参数调优这种应用

