杨放春, 苏森, 李祯, 混合QoS模型感知的语义Web服务组合策略, 中国科学F辑: 信息科学
这篇文章讨论的是组合服务任务规划已知, 候选服务已经给定的条件下, 基于QoS优选服务以得到较优解.
(1) 介绍了QoS本体, 将QoS值的数据类型分为实数型, 区间型和语言型三类.
(2) 提出UMC-core算法, 这个是用来给执行计划打分的.
(3) 提出UMC-DH算法, 主要是为了提高效率
本文基于工作流模型对Web服务组合进行建模, 讨论了四种原子结构: sequence, loop, choice, parallel
1. 将QoS值的数据类型分为3种
实数型: 比如价格
区间型: 比如响应时间
语言型: 此类型QoS值需要量化. 本文中将模糊打分映射为相应的三角模糊数(triangular fuzzy number, TFN), 包括下界, 核和上界值
本文对以下五种QoS进行了讨论
(1) price: Pws+Pt, 前者是Web服务执行内容涉及到的费用, 后者是调用该Web服务需要支付的费用.
(2) availability: 这里的可用性是平时说的"可靠性".
(3) response time: 用区间型数据来表示.
(4) reliability: 表示用户调用Web服务后的评价, 用户的评价是模糊的, 需要量化.
(5) reputation: WSrep, 作者之前有一篇论文讨论过Web服务声誉模型.
另, QoS属性可分为成本型(price, response time)和效益型(availability, reliability, retputation).
2. (S2.2)提出了混合QoS模型的综合评估方法- UMC-Core
(1) 去模糊化
将三角模糊数去模糊化. 去模糊化之后, 仅包括实数型数据和区间型数据.
(2) 规格化(即去单位化)
使用平方和的开方作为分母
(3) 综合评估
提出了一个优良度函数. 对每个组合执行计划都计算出优良度, 优良度越高. 则该执行计划越优.
整个评估方法有点小繁, 但是不难, 核心内容仍是满足QoS约束的情况下求得效能最大化的执行计划, 换汤不换药.
这类的评估方法也看到过好几种了, 对于这些方法的可用性和实际价值如何, 我是比较怀疑的, 也没有见过对这些评估方法进行比较的资料.
3. (S2.4) UMC-DH 算法思路
(1) 先对每个任务的候选服务按照指标值进行排序
(2) 对与II型结构, 使用k启发聚合算法
对II型结构中每个任务都选出k个指标最优的服务, 然后算出每种可能的聚合方案的整体QoS指标.
如果这个II型结构包含n个任务, 那么就有k^n中聚合方案
(3) 此步骤中将II型结构看做一个任务, 这样整个组合方案中只包括I型结构了. 每个任务都有数个候选服务.
本文采用了"全局回溯控制算法", 其实是很简单的. 首先选择每个任务中单个最优的候选服务, 算出组合服务的整体QoS,
如果QoS不满足条件, 那么用任务中次优的获选服务取代, 直到选出组合服务的整体QoS.
该方法在最坏情况下要遍历所有的任务; 而且不能保证求出的解是最优的.
(S2.3)工作流拆分策略
分为两类结构
I型: S结构, L结构(利用历史数据可以平摊循环结构, 化简成S结构), C结构(采用Zeng的论文中的方法, 对于包含C型结构的模型拆分为多个Execution Path)
这类结构QoS聚合时操作有求和, 求积和平均
II型: P结构
这类结构QoS聚合时操作有求和, 求积, 平均和max, 其中max算子比较特殊, 使得不能从局部最优解导出整体最优解.
4. 相关工作
将语义web服务组合过程分为3个阶段
(1) 任务规划 - 基于工作流技术生成组合服务的执行路径
QoS-aware middleware for web services composition.
胡春华, 吴敏, 刘国平, 等. 一种基于业务生成图的Web 服务工作流构造方法. 软件学报, 2007
Dong J, Sun, Y T, Yang S, et al. Dynamic web service composition based on OWL-S. Sci China Ser F-Inf Sci,
2006, 49(6): 843―863
(2) 服务发现 - 通过语义匹配的方法为执行路径中的每个任务找到满足功能性需求的服务实例
Sycara K, Paolucci M, Ankolekar A, et al. Automated discovery, interaction and composition of semantic web
services. J Web Semant, 2003,
(3) QoS感知的服务选择过程
(3.1) QoS计算 (存在没有完全考虑算法执行效率的问题)
"QoS computation and policing in dynamic web service selection"
-->"Synthetical evaluation of multiple qualities for service selection(ICSOC06)"(基于WSMO)
(3.2) 数学规划(随着问题规模增加, 算法效率大幅度下降)
"QoS-aware middleware for web services composition"
(3.3) 启发式算法
5. (其他)
(1) (S2.4) 提到了服务之间的QoS存在关联的情形, 在这种情况下, QoS聚合后的总体值不能用简单的相加相乘等方法得到.
不过本文没有深入讨论这方面.
(2) 文中没有明说, 不过本文的UMC-DH算法是应用于一个Execution Path, 如果组合中含有条件分支(即包括多条Execution Path), 需要对每一条Execution Path求解, 然后再进一步处理以得到组合的解..
6. 暂时没有读实验验证部分.