Page 223 - 《软件学报》2025年第8期
P. 223

3646                                                       软件学报  2025  年第  36  卷第  8  期


                 保持与真实马尔可夫决策过程的语义等价性.
                    定义  7. 时空语义度量. 时空语义度量通过比较两个状态               s 1  和  s 2  在奖励、迁移概率、动作空间分布及状态上
                 的相似性, 来量化它们之间的等价性. 对于任意             s 1 , s 2 ∈ S ,

                                ) ≜  max  { c R |R(s 1 ,ˆa)−R(s 2 ,ˆa)|+c P D p [P(·|s 1 ,ˆa),P(·|s 2 ,ˆa)] +c D D A [ ˆ A(s 1 ), ˆ A(s 2 )]+c T D S [s 1 ,s 2 ]  (9)
                                                                          }
                   d(s 1 ,s 2 ) = d(θ s 1  ,θ s 2
                                      ∩
                                   ˆ a∈ ˆ A(s 1 )  ˆ A(s 2 )
                     c R c P c D c T  分别为奖励差异、迁移概率差异、动作空间差异和状态差异的权重系数, 用于调节各部分对最
                 其中,  ,  ,   ,
                 终度量值的影响程度.        D P [P(·|s 1 ,a),P(·|s 2 ,a)]  表示两个状态下采取相同动作后状态转移概率分布的差异度量.
                 D A [ ˆ A(s 1 ), ˆ A(s 2 )] 表示两个状态可采取的动作集合的差异度量.  D S [s 1 , s 2 ] 表示状态   s 1  和  s 2  的直接差异度量.   max
                                                                                                     ∩
                                                                                                 ˆ a∈ ˆ A(s 1 )  ˆ A(s 2 )
                                                                                 ˆ a c D , c T  是充分大的正数, 当
                 表示在两个抽象状态的抽象动作集合交集中能最大化后面表达式的抽象动作  .
                 c D D A [ ˆ A(s 1 ), ˆ A(s 2 )]⩽ ε 时,   ˆ A(s 1 ) 等价于抽象动作集合   ˆ A(s 2 ). 时空价值矩阵满足互模拟性、唯一性, 即当  d(s 1 ,s 2 ) = 0
                 时,  s 1 =s 2 .
                    结合定义    6  和定义  7, 利用  4  个参数来修改抽象的精度: 1) 两区间之间的最小距离            d MIN ; 2) 抽象状态中包含的
                 最小具体状态数量      n MIN ; 3) 两区间之间的最大距离    d MAX ; 4) 时空价值矩阵阈值  ε.
                                                                                    n MIN  避免了只包含少量具
                    最小距离    d MIN  保证了两个不同区间反映不同的语义层次, 最小包含具体状态数量
                 体状态的冗余区间出现. 此外, 当状态存在临界情况时, 将其合并到相邻的抽象状态可能会导致语义值出现显著误
                 差, 因此, 使用第   3  个参数, 最大距离    d MAX , 将临界状态分割为单独的抽象状态. 抽象状态的语义值设置为其包含
                                                  ε, 以第  1                    (ε,d) -抽象得到最终的抽象状态空
                 的具体状态的平均语义值. 最后, 设定阈值                   阶段抽象作为其输入, 使用
                 间   ¯ S  和抽象状态函数  Φ.
                    需要注意的是, 相关参数可以根据精度和模型尺寸要求进行修改, 即越小的误差阈值, 对应的模型越精确, 抽
                 象状态空间越大. 公式      (7) 中第  1  个平均误差的公差    e  j   是为了保证抽象的代表性和整体的准确性. 理想情况下,
                                                          MEAN
                 每个抽象状态应该表示一组具有相似语义的具体状态, 因此每个语义的平均误差应该相对较小, 以防止抽象状态
                 偏离其实际物理状态. 同样, 对于         e  j  , 如果出现较大的平均误差, 则可能导致过多语义差异明显的具体状态被聚
                                           MAX
                 合为相同的抽象状态, 从而导致状态空间过度压缩. 第                1  阶段抽象的作用是将离散化的数据状态划分为不同的区
                 间, 第  2  阶段的  (ε,d) -抽象可以划分某类抽象状态的语义鲁棒半径, 实现更高层级的模型抽象. 因此, 基于时空语义
                       (ε,d) -抽象的核心目标是在最优值函数上尽可能保持抽象               MDP  与真实  MDP  的一致性, 以确保它们在语义
                 度量的
                 层面上等效. 这种方法的精髓在于有效地保留对系统行为具有重大影响的关键信息, 并剔除对决策和系统性能影
                 响不大的信息, 从而实现状态空间高效压缩和简化. 此外, 通过时空语义度量, 在空间维度上探究状态之间相似性,
                 并考虑了状态变化和动作选择概率分布, 在解决高维状态空间问题中提供了新视角. 这种基于语义相似性的状态
                 度量方法使本文能够更准确地评估状态之间距离, 并深入理解系统行为本质.
                    算法  2  首先确定聚类数量      k (见第  1  行), 然后通过随机初始化聚类中心点         (见第  2  行) 来准备聚类过程. 接下
                 来, 通过迭代将数据点分配给最近的聚类中心点, 并更新中心点, 直到达到收敛状态                         (见第  3–10  行). 最终, 算法返

                 回基于语义的     (ε,d) -抽象空间   ˆ S  和抽象映射函数  Φ. 这里的聚类中心点      c 1 , c 2 , c 3 ,…, c k 包含了抽象空间的最终表
                 示  (见第  11  行).

                 算法  2. 基于因果语义的时空      (ε,d) -抽象算法.
                                    ˆ S I = {D 1 ,D 2 ,...,D n }, 最优状态数量确定函数  K, 时空语义度量
                 输入: 区间化的抽象空间                                                      d;
                 输出: 基于语义的     (ε, d)-抽象空间   ˆ S , 抽象模型  Φ.
                                   ( )
                 1. 确定聚类数量    k ← K ˆ S I
                 2. 随机初始化聚类中心:      c 1 ,c 2 ,...,c k ← ˆ S I  中的随机点
                 3. while 未收敛 do
                 4.  for i=1 to n do
   218   219   220   221   222   223   224   225   226   227   228