1。介绍
增强的互连、内部通信和信息处理平台的互操作性,以及一体化程度的提高,提出了更高的要求的可靠的服务能力和服务质量保证服务计算系统(
1 ]。通用信息处理平台提供了一个一致的操作环境为各种各样的一般信息处理服务和支持的集约经营各种各样的信息服务。同时,各种信息系统在同一平台上,不同的服务在相同的信息系统中,不同用户的不同服务请求,和同一用户的不同要求都有不同需求的服务质量(
2 ]。一方面,服务计算的独特的特点,如松散耦合、位置透明性,独立和协议,使它理想的模型来构建各种复杂的数据处理和信息服务系统的网络环境。另一方面,松动等因素,独立,和计算环境的异质性也带来新的技术挑战的保证实时性能等非功能属性,服务计算的安全性、可靠性和可用性。在开放、动态的网络环境中,综合面向服务的计算模型需要实现一个可靠的软件体系结构具有高可靠性、适应性,和自我管理能力
3 ]。
可信计算集成实时、安全、可靠和可用的计算理论在传统的分类和研究系统的交互行为下非功能属性统一的方式,这样的行为状态可以被监控,可以评估行为的结果,可以控制和异常行为(
4 ]。服务质量(QoS)是一个全面的索引描述计算机系统和通信网络的非功能特征,用于测量使用服务的满意度
5 ]。可信计算和QoS知道计算关注系统的多维非功能特征,因此它可以被认为代表了信任属性的多维QoS需求系统,为网络服务提供信誉保证。它已成为一个重要的方向在可信计算领域的使用服务质量理论提供一个保证可信需求的服务(
6 ]。
随着Web服务通过网络共享数量的急剧增加,传统的用户选择服务供应商发布的基于QoS的价值观。在现实中,网络环境由Web服务共享的特征是开放,受到外部环境的影响,不稳定和不可靠的QoS服务受到商业竞争的价值。QoS的价值不能相信的Web服务和Web服务的调用的不确定性让用户无法获得Web服务组合根据实际需求。因此,在复杂的网络环境和大量的Web服务的情况下,如何有效地选择一组Web服务能满足用户的功能需求,从大量的候选服务信誉是关键科学和技术问题要解决服务领域的计算。
在本文中,我们提出了一个方法组成的QoS建模、QoS预测,QoS规划、服务选择,保证组合服务的QoS。首先,我们建立了模型来描述原子服务的可信赖的QoS和可信复合服务的QoS,分别。其次,我们引入了指数平滑方法评估原子服务的能力,发现原子服务的QoS信息的预测指数平滑方法是准确可行的。基于QoS的估计,我们建模QoS计算规则的组合服务。此外,我们提出了一系列服务选择算法和计算模拟表明,使用欧氏距离优先算法有一个更加平衡和优秀的特点。最后,我们比较了迷因与随机选择算法,满足多维复合服务的QoS要求。
2。相关的工作
Web服务技术的普及和发展,一方面,越来越多的用户开始完成各种业务流程结合Web服务,和业务流程模式被提升为更广泛的用户。另一方面,用户不再需要特定Web服务的执行者任务过程中由于大量的Web服务的出现具有相同或相似的功能,而不是自动选择Web服务根据用户的需求和约束。
为满足特定的应用背景和需求,我们通常需要按照一定的粒度多个Web服务结合,形成一个服务过程与一个特定的结构,实现完整的业务逻辑在处理复杂的业务。面对这种情况使它重要的评估和保证QoS的过程。
当用户选择Web服务,除了功能属性外,还可以设置限制一些非功能属性,也就是说,通过约束QoS属性选择。QoS可以包含属性,如价格、响应时间、可用性和可靠性(
7 ]。Web服务提供商也往往给一系列服务的QoS属性值,从而为潜在用户提供一个参考。
QoS的QoS敏感的业务流程,整个过程也是一个用户关心的功能除了要求流程完成预定义的任务(
8 ]。因此,如何做一个有效的选择的替代Web服务来满足用户的需求,所以选择Web服务不仅可以完成任务分配的过程,满足当地的约束,而且还配合完成其他任务的Web服务在这个过程中,迫切需要解决的问题,它通常被称为QoS敏感的Web服务组合问题。
目前,许多学者研究了可信计算技术和QoS技术在复杂的分布式计算环境中,取得了一些结果
9 ]。现有研究往往是基于QoS保证的概念,从可靠性、安全性、和其他非功能属性的服务计算研究,特别是通过原子服务最大化的结合用户的需求(
10 ,
11 ]。为Web服务组合在这项研究中,研究者提出了基于数学规划的服务选择方法;基于遗传算法(GA)的服务选择方法;服务选择方法基于粒子群优化(PSO)算法,基于群体智能计算;基于全球QoS约束分解的服务选择方法;基于人工智能理论的服务选择方法;和许多其他类型的服务组合方法
12 - - - - - -
14 ]。
文献[
15 )进行的一项调查和研究审查领域的Web服务技术,阐明了研究动机的服务信誉评价,讨论了原子Web服务信誉的重要性,建设服务组合策略,和分类可信度评估方法。王等人。
16 )服务组合的过程分为三个阶段:服务规划、服务选择,和服务绑定,合理、有效地评估服务的信誉,并在每个阶段调查服务的可信度。Ardagna和Pernici
17 )设计了一种基于混合整数规划的服务组合方法在考虑可能的局部和全局QoS约束服务选择。太阳和赵
18 全球QoS约束)分解成当地QoS约束通过混合整数规划方法,从而将服务组合问题属于全局优化问题的局部最优服务选择问题,降低问题的复杂性。Surianarayanan et al。
19 )提出了一个服务组合方法的约束分解方法计算复合服务的效用通过组件服务的工具和实用程序约束的组件服务组合服务约束。文献[
20. 服务组合分解为两个阶段:约束分解和服务选择。另一项研究[
21 )提出了一个服务组合优化方法基于相关图和0 - 1线性规划。基于数学规划的服务组合优化方法可以有效地解决服务的问题在一定程度上优化组合。然而,当问题规模很大,这种方法的计算时间相对较长,而且不能满足实时需求的服务组合。
一些研究人员在上述研究区分服务和服务实体的概念从信任的角度QoS保证架构。做QoS规划时,规划者面临潜在的原子服务实体,提供特定的服务功能。在这个系统看来,信任的QoS要求的复合服务只能通过QoS规划基于原子服务实体的选择。此外,QoS服务在运行时实体体现的往往是不一致的与声明的QoS服务实体,这使得这个QoS规划方法有限的受信任的QoS保证组合服务在运行时。
3所示。值得信赖的QoS服务建模
在本文中,我们把信任约束的复合服务QoS形容由BPEL语言和状态图联合流程。比我们更关注服务实体服务过程;直接决定了过程QoS不是QoS的服务实体,但QoS;QoS的计划也是基于QoS的服务(抽象服务),不是QoS的服务实体。
服务组合是将一些相对简单的服务按照一定的业务流程逻辑复杂的复合服务,从而提供更强大的和完整的业务功能。基于松散的服务组合,可以实现业务流程的定制,个性化服务可以提供给用户,这样业务才能适应变化(
22 ]。
实体被定义为人们、单位、各种计算机硬件和软件模块,或者多组。多个集各种元素的线性积分系数之和。
原子服务/服务实体的定义是一个实体,或操作另一个实体称为服务。在这里,工作是服务提供者;操作(计算机和信息接收、发送、转换,等等)是计算机硬件和软件模块提供的服务。
复合服务被定义为多个小粒度服务合并到一个大粒度的服务。在网络体系结构中,服务提供者的服务组合是一个组合。
抽象服务被定义为服务提供的功能服务实体。它也可以被理解为一个抽象代理组成的原子服务实体具有相同服务功能(但QoS的非功能能力会有所不同),用于表示所有原子服务的功能。
这个概念,在QoS的规划过程,我们可以提出合理要求每个抽象服务的QoS复合服务,因为抽象服务代表所有原子服务的运行状态和QoS功能实体具有相同的功能。在本文中,除非另有规定,我们称之为抽象服务“检修”,这是不同于原子服务(服务实体)。
当业务流程发生变化时,只需要重组的服务业务流程或动态调整组件服务的业务流程快速应对变化的业务流程
23 ]。在业务流程中实现服务组合、开发人员和最终用户都可以结合现有的服务,以获得新的和复杂的服务,形成新的甚至动态业务流程。这可以促进服务的利用率,提高服务的可重用性,和加速应用程序的发展项目(
24 ]。
3.1。值得信赖的QoS原子服务建模
有许多方法建模原子服务的信任属性。一般来说,它分为实时可用性,可靠性,成本,等等。在本文中,我们使用以下方法模型:
(我)
实时:它是用来测量时间服务的特征。服务调用的时间
t 定义如下:在服务调用者方面,时间之间的差异
t 1 时刻,
t 2 时刻从发送服务请求接收返回的结果
t
2
−
t
1
。
t 包括网络传输时间。实时性能的服务将被三元<最低。最低、平均和最大的所有元素
R +。平均代表平均服务调用历史上时间来访问服务,和最大代表最低服务调用历史上时间来访问服务。平均访问时间可以使用以下公式计算:
T
年代
=
∑
我
=
1
n
T
我
年代
/
n
,在那里
n 服务的次数是历史上观察到的,然后呢
T
我
年代
的时间服务被称为历史上。
为什么这个算术平均法预测功能是,它可以在一定程度上消除随机变化的影响造成的意外干扰原子服务的QoS能力。然而,这种方法也隐藏的波动趋势的发展原子服务本身。
针对这种建模方法的限制,我们将使用加权平均方法命名的指数平滑法在QoS的规划过程。这意味着最近原子服务的QoS特征对未来有更大的影响和更多的最新信息反映;重要性的历史数据预测原子服务的QoS能力应该减少从近到远。
(2)
可用性:一个服务描述的可用性服务可以访问正确的概率。服务的可用性
年代, 即
一个 (
年代 ),被定义为一个实数在[0,1],
一个
年代
∈
0 1
。使用下面的方法来衡量服务的可用性:
一个
年代
=
T
θ
年代
/
θ
,在那里
θ
秒的时间常数和吗
T
θ
年代
的时间服务可以正确访问过去吗
θ
秒。在实际应用中,不同
θ
值是选择根据不同服务的访问频率的观察。对于服务频率高的访问,我们选择一个较小的时间进行调查。服务访问频率较低的,我们选择一个更大的时间进行调查。
(3)
成本:使用一个服务的费用。可信的服务成本被描述为一个正整数。原子服务的成本被定义为一个元素I +。在实际应用程序中,服务的成本是由服务的提供者(或成本是根据所花费的时间取决于服务用户计算资源和使用资源)。
3.2。值得信赖的QoS复合服务建模
受信任的本质过程相同的信任方面和描述域信任服务的本质。复合服务的可信度取决于它的子服务的可信度及其组合模式。复合服务的操作功能由多个子任务以某种方式,子任务之间有控制依赖和数据依赖关系。组合服务的执行过程
年代 ,我们可以参照分解方法在
10 ),描述了控制依赖在执行过程中通过使用状态图。在此基础上,我们可以使用的方法(
8 )来生成一个有向无环图来描述其执行过程。节点代表了子任务,和边缘的方向描述任务的执行顺序。不同的子任务可能由不同的子任务。服务的执行计划
年代 被定义为
G
,
P
,在那里
G 是一个有向无环图表示的控制依赖执行期间。
P
=
t
1
,
年代
1
,
t
2
,
年代
2
,
…
,
t
n
,
年代
n
描述对应的子任务和子服务之间的关系,以及
t
我
,
年代
我
表明
t
我
完成的服务吗
年代
我
。
图
1 是一个典型的实施计划图。服务的过程
年代 可以分解为多个的子任务。控制任务之间的依赖关系所描述的有向无环图。初始状态是
t
我 ,两个并行的子任务
t
1 和
t
2 同时触发,并发活动是同步的吗
t
4 ,那么任务
t
5 最后,开始吗
t
f 完成为止。这些子任务由多个服务提供的功能。
t
我
,
年代
我
描述了相应的子任务和服务之间的关系。其中,<
t
我 ,
t 1 ,
t 2 ,
t 3 ,
t 4 ,
t
f >是一个关键路径(如图所示的绿色方块图
1 在执行过程中),关键路径的执行时间决定了整个操作的执行时间。
图1
一个原理图的典型实现计划。
更复杂的业务流程的Web服务,我们可以将它分解成几个基本的递归组合机构。表
1 给出了QoS几个基本结构的计算规则流。在本文中,我们将解释和验证该方法有三个共同的QoS属性:时间、成本和可用性。
顺序结构(顺序):服务序列结构的过程
W 由服务
米
年代
1
,
年代
2
,
年代
我
,
…
,
年代
米
在一定的顺序。
时间(T):响应时间
T (
W )服务的过程
W 由每个服务的响应时间的总和构成了服务过程。
(1)
T
W
=
∑
我
=
1
米
T
年代
我
。
成本(C):成本
C (
W )的服务流程
W 是每个服务的成本的总和,构成了服务过程。
(2)
C
W
=
∑
我
=
1
米
C
年代
我
。
可用性(A):可用性
一个 (
W )的服务流程
W 由每个服务的可用性产品,构成了服务过程。
(3)
一个
W
=
∏
我
=
1
米
一个
年代
我
。
选择结构(选择):选择的服务流程结构
W 由服务
米
年代
1
,
年代
2
,
年代
我
,
…
,
年代
米
在一定的顺序。
选择结构,每个选择分支是标有被选中的概率。例如,一个流程选择结构有两个分支,它的价格
c 1 和
c 2 ,分别。被选中的概率
p 分别和q。整个结构的成本计算如下:
p
c
1
+
问
c
2
,酸处理
p
+
问
=
1
。
的初始化值概率可以由设计师的业务流程,然后监控流程执行过程中获得的信息不断更新。因此,选择结构1…
m和N 分支,每个分支的概率是
p
1
,
p
2
,
…
,
p
我
,
…
,
p
米
,其中
∑
我
=
1
米
p
我
=
1
。通常,这个选择的QoS结构是每个任务的属性值及其对应的分支概率,然后求和。
时间(T):响应时间
T (
W )服务的过程
W 由响应时间的加权和服务构成服务过程的概率。
(4)
T
W
=
∑
我
=
1
米
P
我
∗
T
年代
我
。
成本(C):成本
C (
W )的服务流程
W 由成本的加权和服务构成服务过程的概率。
(5)
C
W
=
∑
我
=
1
米
P
我
∗
C
年代
我
。
可用性(A):可用性
一个 (
W )的服务流程
W 由成本的加权和服务构成服务过程的概率。
(6)
一个
W
=
∑
我
=
1
米
P
我
∗
一个
年代
我
。
平行结构(并行):平行结构的服务流程
W 由服务
米
年代
1
,
年代
2
,
年代
我
,
…
,
年代
米
在同步。
时间(T):响应时间
T (
W )服务的过程
W 由响应时间的最大价值,构成了服务过程。并行结构的时间响应过程是有限的时间响应最大的分支。
(7)
T
W
=
马克斯
T
年代
我
,
我
∈
1、2
,
…
,
米
。
成本(C):成本
C (
W )的服务流程
W 由服务的成本的总和,构成了服务过程。
(8)
C
W
=
∑
我
=
1
米
C
年代
我
。
可用性(A):可用性
一个 (
W )的服务流程
W 由每个服务的可用性产品,构成了服务过程。
(9)
一个
W
=
∏
我
=
1
米
一个
年代
我
。
循环结构(循环):服务过程W循环的结构组成
米 次的重复循环体服务
年代 。对于一个给定的服务
年代 的数量和周期
米 ,也可以相当于一个顺序结构组成的
米 相同服务的
年代 。
如果一个循环的旅行费用
c 1 估计总成本的循环结构
米
∗
c 1 。与扩大循环的方法相比,该方法可以计算整个过程的QoS更快更准确。
时间(T):响应时间
T (
W )服务的过程
W 是
米 次循环体服务的响应时间
年代 。
(10)
T
W
=
米
∗
T
年代
。
成本(C):成本
C (
W W)的服务过程
米 次循环服务的成本
年代 。
(11)
C
W
=
米
∗
C
年代
。
可用性(A):可用性
一个 (
W )服务过程中W
m 的力量
年代 循环体的可用性。
(12)
一个
W
=
一个
年代
米
。
表1
QoS复合服务的计算方法。
QoS维度
工作流
序列
选择
平行
循环
时间(T)
∑
我
=
1
米
T
年代
我
∑
我
=
1
米
P
我
∗
T
年代
我
马克斯
T
年代
我
,
我
∈
1、2
,
…
,
米
米
∗
T
年代
可用性(一)
∑
我
=
1
米
一个
年代
我
∑
我
=
1
米
P
我
∗
一个
年代
我
∏
我
=
1
米
一个
年代
我
一个
年代
米
成本(C)
∑
我
=
1
米
一个
年代
我
∑
我
=
1
米
P
我
∗
C
年代
我
∑
我
=
1
米
C
年代
我
米
∗
C
年代
4所示。原子服务的数据预处理
QoS规划模块选择服务之前,必须知道原子服务的QoS信息服务组合,它应当符合原子服务信任建模方法中描述的部分
3所示。1 。原子服务,其QoS能力可以体现在不同的层次。简单地说,多次执行的原子服务必然会反映出不同的QoS,正如Web服务每次都不会有相同的响应时间。面对这样的大量的历史信息,是非常重要的QoS规划的准确性做出合理的分析和估计原子服务的QoS能力在未来执行。
每个原子服务具有相同的功能,其提供服务的能力是不同的,不仅是限制其特征也显示不同的QoS特征由于环境中部署和资源分配。因此,对于每个原子服务,需要估计的QoS能力目前提供的服务。这个过程称为原子服务的QoS的预测。原子服务的QoS预测的主要目的是为了满足需求后QoS规划尽可能通过选择适当的原子服务,也就是说,以满足用户的QoS需求同时,为了避免资源的调整层。预测估计当前原子服务的QoS功能,如果准确,可以避免资源层控制的额外开销。如果没有特别说明,本文以时间维度的QoS预测为例说明。
4.1。指数平滑法预测
指数平滑方法需要较少的数据,所以它是一个简单和实用的预测方法对QoS预测(
25 ]。指数平滑法的方法以一系列历史事件的加权平均作为预测未来的。这是一个加权移动平均法的特例,我们只选择一个重量,最近的观测值的重量。其他数据可以自动计算的权重,将随着时间的推移变得越来越小。指数平滑法的基本模型如下。
(13)
F
t
+
1
=
α
Y
t
+
1
−
α
F
t
。
在(
13 ),
F
t + 1 时间序列的预测价值的时期
t + 1,
Y
t 是时间序列的实际价值的时期
t ,
F
t 时间序列的预测价值的时期
t ,
α
是平滑常数
0
≤
α
≤
1
。
公式(
13 )表明,预测值
t + 1是实际值的加权平均
t 和预测价值
t 。事实上,我们可以表明,指数平滑法的预测价值方法对任何时期也是所有历史实际数据的加权平均时间序列,如
F
4
=
α
Y
3
+
α
1
−
α
Y
2
+
1
−
α
2
Y
1
。
虽然指数平滑方法提供了一个历史观测数据的加权平均,我们不需要在电脑上存储所有历史数据为下一个时期。一旦平滑常数
α
被选中时,我们只需要两个项目的信息来计算预测价值。公式表明,如果
α
,我们只需要知道实际值和预测值的时间序列的周期
t ,即
Y
t 和
F
t ;然后,我们可以计算的周期的预测价值
t + 1
。
预测精度。尽管任何值
α
0到1是可以接受的,一些值
α
生产比其他人更准确的预测。我们重写(
13 )以下形式:
(14)
F
t
+
1
=
F
t
+
α
Y
t
−
F
t
。
因此,新的预测(
F
t + 1 )=历史预测(
F
t )加上一个调整,等于
α
时报》最新的预测误差(
Y
t −
F
t )。换句话说,通过调整的预测价值
t 期间,一些预测错误,我们可以得到的预测价值
t + 1。如果时间序列包含大量的随机变化,我们倾向于使用一个更小的平滑常数。这种选择的原因是,许多预测错误是由于随机变化,而我们不希望太快反应过度预测和调整。时间序列的随机变化小,可以选择一个更大的指数平滑常数。这种方法的优点是快速,条件可以改变调整预测误差时的错误发生。最合适的选择
α
均方误差(MSE)分析应通过对历史数据的分析或实验。
4.2。QoS预测实验随机变化
图
2 显示了原子服务的QoS能力估计图基于指数平滑方法,其中垂直轴上的红色虚线表示执行的Web服务响应时间连续50次,和蓝色星号代表这些50个原子服务的响应时间。横坐标代表数量的测试基于指数平滑法的时间估计方法。此外,我们使用
T
Y
我
代表的实际测量值
我 th Web服务响应时间,
T
F
我
用于表示的指数平滑法估计
我 th Web服务响应时间,
我
∈
1、2
,
…
,
50
。
图2
QoS估计随机变化。
从图可以看出,指数平滑方法具有良好的预测影响原子服务的QoS能力估计和平滑能力偏差显示服务在其执行,这在一定程度上可以消除干扰错误。这些错误可能是由于测量不准确或原子服务本身的环境部署。指数平滑方法可以用来描述在相当大的程度上的真实水平服务质量的原子服务本身,这是一个重要的特征原子服务,而不是受环境影响的性能特征的部署和资源的分配。此外,指数平滑法的QoS估计不能保证QoS级别的准确预测未来原子服务的执行。从本质上讲,它是历史价值的加权平均的QoS的服务指标,这是一个改善的时间平均信任QoS原子服务的建模方法
3所示。1 。
我们需要注意的是,每个蓝色星号的价值
T
F
我
给出了加权平均的
T
Y
j
j
∈
1、2
,
…
,
我
−
1
,小于
我 在时间坐标。当然,在实际应用中,为了减少存储容量,实际值存储在数据中心的实际测量值与估计值的最后执行Web服务计算的(
14 ),而不是记录历史的所有测量原子服务的执行时间。
进行了线性拟合实际和估算值之间的50测量在这个实验中,如图
3 横坐标代表实际值,纵坐标代表估计价值,
T
Y
j
,
T
F
我
构成图中的坐标点。图
3(一个) 代表原始数据,和图
3 (b) 代表实际和估算值排序的结果从小型到大型(反映QoS的波动幅度值)。结果表明,实际值和估计值能反映Web服务的响应时间大约在100年,尽管估计价值较小的标准方差。图的拟合方程
3 (b) 是
T
F
=
0.29
T
Y
+
71年
和相关系数
R 2 = 0.97。
R 2 是一个真正的数字0和1之间,用于评价回归方程的拟合程度。值越大,拟合程度越好。
图3
QoS随机变化的拟合。(一)实际值。(b)的实际价值。
(一)
(b)
图
4 测量结果显示50之间的残留分析和估计的结果。所有的值都是均匀分布的,属于标准的正常形状,这进一步证实了线性拟合图的正确性
3 。在这个实验中,QoS的预测效果不够好,因为QoS随机变化。然而,原子服务QoS能力的评估使用指数平滑方法相对比较准确的。它本质上是一个动态估计的平均值原子服务QoS能力和历史测量值的加权平均。它探讨了服务的基本特征。原子服务的QoS能力将显示随机波动与白噪声干扰。实验的结果表明,2.75标准差的估计价值显著低于实际价值的9.19(如图
2 和
3 )。估计价值嵌入小波动在真正的QoS能力值100。这意味着基于指数平滑法的估计价值可能反映了原子服务的QoS能力的本质。因此,这种方法符合原子服务的QoS建模部分
3所示。1 。
图4
残留分析图表。
4.3。用线性趋势预测的QoS
研究表明,服务的QoS供应水平的实体有关服务的负载节点服务实体所在地。例如,在[
26 ),通过大量的实验测试数据库服务,发现服务的平均服务响应时间与服务节点的CPU负载。这种关系可以直观地理解如下:一般来说,一个较低的服务节点意味着服务节点上的负载较少的服务调用请求的本地服务队列,和服务的服务请求实体会被处理得更快。此外,当一个服务节点的负载很低,服务流程切换造成的任务调度开销和文件关联不同的服务实体之间的交互过程将减少,这也将提高服务的响应时间和可用性的实体。
原子服务的时间响应与节点负载,可能会发生变化,这种变化有线性趋势。换句话说,在一定的时间序列,一个原子服务的响应时间将增加节点负载的增加和减少的减少节点负载。虽然他们不一定是一个严格的线性关系,这种单调的趋势确实存在。
基于理论的响应时间和节点负载之间的关系,我们再次进行了相关测试,如图
5 。QoS估计有上升趋势,指数平滑法也可以有很好的跟踪效果,和实际测量值的估计是准确的,这充分反映了原子服务的时间响应特性。然而,对于一个真正的系统,响应时间增加的节点负载的增加应该是值变化更慢,更接近于部分所示
4.2 。
图5
估计QoS的上升趋势。
图
6 显示实际的QoS和估算值之间的拟合上升趋势。图
6(一) 显示了原始数据和图
6 (b) 显示了实际和预计值排序从最小到最大。结果表明,线性趋势的QoS估计与随机变化比这更准确,并能反映QoS的变化趋势。的
R 2 线性方程拟合的数据
6(一) 和
6 (b) 大于0.95,相关系数大于0.9。RMSE值和上交所拟合结果图的价值
6(一) 分别为14.76和10460年,RMSE值和上交所拟合结果图的价值吗
6 (b) 分别为7.875和2977年。这表明实际值之间有很强的相关性和估计价值之间的比例
T
F
和
T
Y
接近1,表明估计的值是非常准确预测实际的测量值。
图6
QoS配件有上升趋势。(一)实际值。(b)的实际价值。
(一)
(b)
上述两个实验充分证明原子服务QoS信息由指数平滑法的预测方法是准确可行的。估计指数平滑法获得的数据是一组QoS信息相对缓慢的变化,充分反映了可靠的原子服务的QoS级别。此外,算法简单,操作方便,系统资源的消耗很小。因此,它可以完全应用于原子服务的QoS数据的预处理对可靠QoS规划。
5。基于QoS的服务选择的计划
历史数据预处理的原子服务,每个原子服务的多维信任QoS信息可以获得。典型的信息将被应用到信任的QoS计划,相当于将应用程序的过程QoS需求分解为每个服务QoS要求的复合服务。
QoS计划的分解的QoS需求提出的申请过程用户的QoS要求应该满足每个服务,流程(流程如图
7 )。基于QoS的结果规划、系统选择原子服务为每个服务可以保证服务的QoS要求根据一定的服务选择策略。选择适当的原子服务形成一个复合服务的关键是满足用户的QoS要求。为了验证,本文使用QoS的三维指标说明:时间(T)、成本(C),和可用性(A)。基于QoS的计划的结果,作者提出了三种服务选择策略。
图7
QoS规划算法的流程图。
5.1。时间优先算法
复合服务,每个服务的原子服务的最短响应时间(数据预处理后的价值)来完成服务根据需求选择时间维度的QoS规划的结果(平均时间复杂度
O (
n 2 ))。这种方法最大限度地满足用户的QoS需求时间维度,因为每个原子服务,即使QoS能力估计使用数据预处理,仍没有准确保证原子服务的QoS特性将是估计价值在下次执行。在当原子服务的时间特征明显不同的估计价值,用户的需求时间维度可以最大限度地满足时间偏好的政策,因为它的叶子的最大冗余。
5.2。成本/可用性(C / A)优先算法
成本/可用性(C / A)优先算法是一种基于QoS的服务选择算法规划。如下所示,基本理念是满足用户的需求在时间维度以尽可能低的成本。(算法
1 )。
大胆<大胆>算法1:< / >
输入:
(1)
流程图
(2)
流程图中包含
米 任务,表示为
t
j
,
j
∈
1、2
,
…
,
米
。
(3)
每个任务都有
n
j
服务使用相同的函数来完成这个任务,表示
年代
j
我
,
我
∈
1、2
,
…
,
n
j
。
(4)
每个原子服务有三个QoS属性:
T (实时)(可用性)和C(成本)。每个原子服务都有自己的实时时间间隔
T
j
我
1
,
T
j
我
2
和估计执行时间
T
j
我
¯
。
(5)
每个服务都有实时要求
T
p
j
和可用性需求
一个
p
j
QoS计划后,
j
∈
1、2
,
…
,
米
。
算法描述:
(1)
基于QoS的结果计划,为每个服务的原子服务,满足实时要求
T
p
j
并形成一个序列
一个
j
被选中。注意,序列中的原子服务的顺序。
(2)
序列中的每个原子服务
一个
j
,支持形成一个服务组,直到可用性满足QoS规划需求
一个
p
j
(如果原子服务的可用性已经满足要求,不需要备份);原子服务集团的成本
C
j
我
∗
k
,
k 是原子服务的数量在服务集团。
(3)
递增的顺序排序的所有原子服务团体成本/可用性(C / A)、服务的不同的功能在一个专栏中,获得订单
一个
j
。
(4)
从序列选择第一个服务集团
一个
j
,即,the service
年代
j
1
最小的C / A,形成了服务流。
这个服务选择策略允许用户实现所需的QoS要求每个维度与最小成本。平均时间复杂度
O
∑
年代
j
我
+
B
⋅
N
一个
+
N
一个
2
,在那里
B 的平均备份时间吗
一个
j
和
N
一个
原子服务的数量吗
一个
j
。然而,对于原子服务的实时QoS估计明显偏离实际的测量,实时性能可能不会满意。
5.3。欧氏距离优先算法
选择的组合服务欧几里得距离优先算法是最接近全面的服务质量提出的用户(
27 ]。除此之外,所需的服务质量为每个服务QoS规划后表示
QoS
年代
=
T
,
C
,
一个
代表服务应满足的条件,在三维空间中:真正的时间,成本,和可用性。
例如,有
n 原子服务
年代 1 ,
年代 2 ,
年代 3 ,
QoS
年代
1
=
T
1
,
C
1
,
一个
1
,
QoS
年代
2
=
T
2
,
C
2
,
一个
2
,
QoS
年代
3
=
T
3
,
C
3
,
一个
3
,这样的服务相同的功能可以被描述为一个矩阵:
(15)
问
=
T
1
C
1
一个
1
T
2
C
2
一个
2
…
…
…
T
n
C
n
一个
n
。
的服务质量标准,质量标准,值越大表示质量更好,虽然有质量标准,降低值显示更好的质量(
28 ]。前者被称为优势品质标准,比如可用性,而后者被称为negative-quality标准,如执行时间。此外,为了防止质量标准的价值非常大,影响最终结果,需要集中精力的值之间的所有质量标准[0,1]。
消极的服务质量,我们使用(
16 )进行处理;积极的服务质量,(
17 )用于处理。
(16)
V
我
,
j
=
问
j
马克斯
−
问
我
,
j
问
j
马克斯
−
问
j
最小值
,
如果
问
j
马克斯
−
问
j
最小值
≠
0
,
1
,
如果
问
j
马克斯
−
问
j
最小值
=
0。
(17)
V
我
,
j
=
问
我
,
j
−
问
j
马克斯
问
j
马克斯
−
问
j
最小值
,
如果
问
j
马克斯
−
问
j
最小值
≠
0
,
1
,
如果
问
j
马克斯
−
问
j
最小值
=
0。
在上面的方程中,原子服务
年代
ij 使用相同的函数构成的服务
年代
j ,
问
j
马克斯
表示服务的最大价值
年代
j 在维
问 ,
问
j
最小值
表示所有原子服务的最小值
年代
j 在维
问 ,
问
我
,
j
表示原子服务的价值维度
问 ,在那里
问 表示服务质量的维度,例如,实时
T 、成本C和可用性。
矩阵(
15 )根据处理(
16 )和(
17 )获得
(18)
问
∗
=
V
11
V
12
V
13
V
21
V
22
V
23
…
…
…
V
n
1
V
n
2
V
n
3
=
问
1
问
2
…
问
n
。
我们计算的需求
QoS
年代
=
T
,
C
,
一个
QoS计划使用上面的公式还后综合素质得到综合素质的价值
问 。
问 和
问 1 是两个点,然后使用欧氏距离计算之间的偏差
问 和
问 1 。每个服务质量的价值
问 处理后可以设置为
问
1
,
问
2
,
问
3
,然后之间的偏差
问 和
问
j 是
(19)
d
问
,
问
j
=
∑
我
=
1
3
问
我
−
V
j
我
2
。
然后,最小的一个
d
问
,
问
j
是最接近全面服务用户提出的服务质量。平均时间复杂度
O
n
⋅
米
+
n
+
1
,在那里
n 原子服务的数量和吗
米 是QoS的数量维度。
5.4。仿真实验
图
8 显示了使用受信任的QoS规划后的结果图。以下的三个算法的总时间相比,总成本,分别和欧氏距离度量。水平轴表示仿真实验的数量,纵轴表示我们检查的指标。
图8
规划结果过程QoS。
三个算法研究的总时间,如图所示
9 。
图9
比较四种算法的总时间。
从图可以看到,时间(
T )优先算法具有最短的总时间,这是由于该算法只使用度量为基础服务选择,最大化的满足时间要求。随机选择算法和成本/可用性(C / A)优先算法表现出随机波动的期望值(1400)因为他们不考虑时间度量。欧几里得距离优先算法比随机选择算法和执行成本/可用性(C / A)优先算法的时间指标,因为它考虑时间、成本、和可用性在一起,而不是和时间(
T )优先算法。
三个算法检查总成本而言,如图
10 。
图10
比较四种算法的总成本。
从图
10 可以看到,它的成本/可用性(C / A)优先算法代价最小的方案。这是由于这样的事实,该算法使用成本(C)作为测量服务选择的指标,因此能够最大化满足成本。
随机选择算法和时间(
T )优先算法表现出随机波动的期望值(250)因为成本的指标都是随机的。欧氏距离优先算法执行比随机选择算法和时间(
T )优先算法的成本指标,因为它考虑时间、成本、和可用性在一起,但不是以及成本/可用性(C / A)优先算法。
三个算法研究了相似的期望值(欧氏距离),如图
11 。
图11
比较四种算法的欧几里得距离的期望值。
从图可以看出
11 ,欧几里得距离优先算法具有最好的性能指标。该算法考虑的时间(
T )、成本(C)和可用性(A)。随机选择算法的最差表现在所有的三个指标,因为他们是随机抽取的。的时间(
T )优先算法执行比随机选择算法的期望值的欧氏距离,因为它需要时间(
T )考虑在内。成本/可用性(C / A)优先算法优于时间(
T )选择算法的欧氏距离,因为它认为成本(C)和可用性(A),但它不如欧几里得距离优先算法。
总之,欧几里得距离优先算法集成了三个指标考虑,有一个更加平衡和优秀的特点。在实践中,根据不同的需要可以选择不同的算法。
5.5。基于启发式算法的服务选择
当计算能力充足,服务选择可以通过使用启发式算法不通过QoS的规划。服务选择的组合服务是一个np难问题,算法和本文提出的媒母(MA)通过结合遗传算法(GA)与本地搜索来解决这类问题
29日 ,
30. ]。
本文的算法框架中列出的算法
2 。首先,遗传算法的各个参数,组合服务的流动,以及每个原子服务的QoS要求输入。然后生成的人口P是初始化函数InitialPopulation(),和明年进入一个循环,直到迭代次数达到最大迭代次数。在循环,首先,选择()用于选择亲本种群轮盘的方式参与交叉和变异,然后GeneticOperation()用来执行交叉和变异操作。LocalSearch()是一个交叉和变异操作后进一步搜索,找到局部最优,然后UpdatePopulation()用来更新人口和人口得到更好的染色体。最后,计算的结果输出。
<大胆>算法2:< /大胆>马的服务选择。
输入: 的最大迭代数:
N Imax 。人口的规模:
年代 P 。交配池的大小:
年代 国会议员 。比赛的大小:
年代 T 。交叉的概率:
P C 。突变的概率:
P 米 。复合服务的过程和每个原子服务的QoS。
输出: 选中的原子服务和组合服务的QoS。
步骤:
(1)
初始化
P ←InitialPopulation (
年代
P );
(2)
为
n = 1;
n < NImax + 1;
n + +
(3)
P 父 ←选择(
P SMP,圣);
(4)
P 孩子 ←GeneticOperation (
P 父 ,
P
C ,
P
米 );
(5)
P newchild ←LocalSearch (
P 孩子 );
(6)
P ←UpdatePopulation (
P ,
P newchild );
(7)
结束了
(8)
返回
P ,QoSmax
的本地策略算法
3 为了加快收敛。
N abst 在算法
3 表示抽象的服务组合服务的数量,和
N 原子 (
我 )在抽象服务表示原子服务的数量
我 。我们遍历每个基因的染色体,决定是否更换另一个原子服务提高了QoS。如果改变原子服务的基因可以提高QoS,新基因被接受,以便达到一个局部最优。如果能提高QoS通过改变原子服务的典型基因,这种基因可以接受以达到最优的结果。马算法的平均时间复杂度
O
N
Imax
∑
N
abst
N
原子
我
。
<大胆>算法3:< /大胆>本地搜索的算法。
输入: 染色体
P 孩子 。复合服务的过程和每个原子服务的QoS。
输出: 新的染色体
P newchild 。
步骤:
(1)
初始化
P newchild =
P 孩子 ;
(2)
为
我 = 1;
我 <
N abst + 1;
我 + +
(3)
为
j = 1;
j <
N 原子 (
我 )+ 1;
j + +
(4)
P 孩子 (
我 )=
年代 (
j );/ /(不同于原子服务
P Nchild 的基因)
(5)
如果
QoS (
P 孩子 )>
QoS (
P newchild )/ /(找到一个原子服务,提高QoS)
(6)
P newchild =
P 孩子 ;
(7)
如果
(8)
结束了
(9)
P 孩子 (
我 )=
P newchild (
我 );
(10)
结束了
(11)
返回
P newchild
仿真实验对组合服务执行流图
8 马,使用随机选择原子服务和原子服务的选择对于每一个实验,总共100测试。我们设置
N Imax = 1000,
年代 P = 100,
年代 国会议员 = 100,
年代 T = 2,
P C = 0.1,
P 米 = 0.9。图
12 显示了上述两种方法的成功在会议提出的QoS要求应用程序在100年的实验中,分别在水平坐标代表实验的数量
n ,
n
∈
1、2
,
…
,
One hundred.
,纵坐标代表的次数
米 复合服务的QoS需求得到满足
n 实验中,
米
∈
1、2
,
…
,
n
。从图可以看出,马成功后选择原子服务的数量远远大于成功的数目原子服务的随机选择。在100年的实验中,90%能满足用户的需求,因为复合服务的QoS MA-selected原子服务以后,而随机选择服务成功的几率不到50%的QoS需求提出的用户,虽然可以满足用户的功能需求。
图12
算法基于QoS保证成功率的比较。