Page 67 - 《软件学报》2021年第11期
P. 67

赵时海  等:用户群体满意度最大化的 Top-k 在线服务评价                                                 3393


                                            Table 2  Satisfaction matrix of user-service
                                                 表 2   用户-服务满意度矩阵
                                                             在线服务
                                            用户
                                                     s 1    s 2    s 3     s 4
                                             u 1     3      2      1       0
                                             u 2     3      1      2       0
                                             u 3     3      0      1       2
                                                     3      2      0       1
                                             u 4
                                             u 5     1      3      2       0
                                             u 6     0      1      3       2

                 3.2   基于Monroe规则的Top-k在线服务评价
                    给定 n 个用户、m 个在线服务以及所有用户对在线服务的偏好排序,本文提出的 Top-k 在线服务评价方法
                 首先依据第 3.1 节中介绍的满意度计算方法计算用户-服务满意度矩阵,然后利用 Monroe 规则返回指定数量的
                 Top-k 在线服务集合.该方法将用户按比例动态地分为 k 组,每组最多包含⎡n/k⎤个用户,每个用户分别被分配给一
                 个在线服务作为该用户的代表,并计算用户满意度,且每个服务最多只能代表⎡n/k⎤个用户,或者不能作为代表.
                 寻找在分配过程中最大化用户群体满意度的 k 个在线服务作为评价结果.
                    根据上述 Monroe 规则的分配思想,可借助集合间的映射关系来理解.用户集合 U 中每个用户 u i ,在服务集
                 合 S 中均有唯一在线服务 s j 与之对应,建立从用户集合 U 到在线服务集合 S 的多对一映射,记为 f:U→S.当 k=m
                 时,映射 f 为满射;当 k<m 时,该映射为非满射.在线服务集合 S 中,某个在线服务 s j 代表 n/k 个用户,或者不代表任
                 何用户,即⎣n/k⎦≤n′(s j )≤⎡n/k⎤或 n′(s j )=0.其中,n′(s j )表示在映射中服务 s j 对应的集合 U 中的用户数量.结合例 1
                 得到可能的一个映射如图 1 所示.

                                                     u 1
                                                                  s 1
                                                     u 2
                                                                  s 2
                                                     u 3
                                                     u 4
                                                                  s 3
                                                     u 5
                                                     u 6          s 4

                                                Fig.1   Mapping of set U to set S
                                                图 1   集合 U 到集合 S 的映射

                    由图 1 的映射过程可知,基于 Monroe 规则的 Top-k 在线服务评价可以理解为建立集合 U 到集合 S 的一种
                 可能的最佳映射.最佳映射为集合 U 中的用户匹配集合 S 中的 k 个在线服务所得用户群体满意度最大时的对应
                 关系.聚合映射中所有用户对 Top-k 在线服务集合的满意度得到用户群体满意度,即用户群体满意度为每个用
                 户对应的其代表服务的满意度的累加结果.用户群体满意度计算公式如公式(3)所示.
                                                       n
                                                 A ( )Φ  Sat ij ( pos i ( ( )))iΦ = ∑                 (3)
                                                       i= 1
                 其中,Φ表示局部分配任务,Φ(i)表示能代表用户 u i 的在线服务,pos i (Φ(i))表示能代表用户 u i 的服务在用户 u i 的
                 偏好排序中的位置.
                    基于上述分析,我们可以为 Top-k 在线服务评价建立一个最优化模型.其中,
                    •   变量 s ij 表示在线服务 s j 能否代表用户 u i :能代表,用 1 表示;不能代表,用 0 表示.
                    •   变量 x j 表示在线服务 s j 是否在 Top-k 在线服务集合中,取值为 0 或 1:在集合中,则用 1 表示;不在集合
                        中,用 0 表示.
                    最优化模型用数学公式表达如公式(4)所示.
                                                         n
                                                   A
                                                max ( )Φ = ∑ Sat ij ( pos i ( ))s j  s ij             (4)
                                                         i= 1
   62   63   64   65   66   67   68   69   70   71   72