CN112306665B - Service integration method driven by sequence QoS - Google Patents

Service integration method driven by sequence QoS Download PDF

Info

Publication number
CN112306665B
CN112306665B CN202011308436.9A CN202011308436A CN112306665B CN 112306665 B CN112306665 B CN 112306665B CN 202011308436 A CN202011308436 A CN 202011308436A CN 112306665 B CN112306665 B CN 112306665B
Authority
CN
China
Prior art keywords
service
qos
cqos
sequence
integration method
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202011308436.9A
Other languages
Chinese (zh)
Other versions
CN112306665A (en
Inventor
李春山
郭潇
申义
初佃辉
张小东
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Harbin Institute of Technology Shenzhen
Original Assignee
Harbin Institute of Technology Shenzhen
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Harbin Institute of Technology Shenzhen filed Critical Harbin Institute of Technology Shenzhen
Priority to CN202011308436.9A priority Critical patent/CN112306665B/en
Publication of CN112306665A publication Critical patent/CN112306665A/en
Application granted granted Critical
Publication of CN112306665B publication Critical patent/CN112306665B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5003Managing SLA; Interaction between SLA and QoS

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Biophysics (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The invention discloses a service integration method driven by a sequence QoS, which comprises the following steps: presetting a sequence combination flow chart, and selecting QoS attribute characteristics; processing the QoS attribute characteristics to obtain an initial vector CQoS of a service sequence sc, normalizing the initial vector CQoS to obtain a normalized vector CQoS ', and further calculating a service score ScorCQoS'; extracting a data object subset which is not dominated by any other candidate service object from each candidate service object database corresponding to the task node in the preset sequence combination flow chart by using Skyline calculation, and taking the data object subset as an initial search space for solving an ant colony algorithm; and solving an allocation scheme corresponding to the optimal solution in the initial search space according to the ant colony algorithm. The method solves the problems of data flooding and user preference, and improves the efficiency of the integration process and the service quality of the service sequence.

Description

一种序列QoS驱动的服务集成方法A sequential QoS-driven service integration method

技术领域Technical field

本发明涉及服务集成技术领域,特别涉及一种序列QoS驱动的服务集成方法。The present invention relates to the technical field of service integration, and in particular to a sequence QoS-driven service integration method.

背景技术Background technique

目前,越来越多的企业、组织或个人将拥有的物理资源以服务的形式发布到互联网中。服务供应商根据业务流程划分将服务资源虚拟化,构建独立的服务模块。这些模块常常以应用程序或者API的形式出现,并且可在环境中独立部署、运行与管理。用户只需通过轻量的应用软件、接口或者API(Application Programming Interface)即可调用具备相应功能的服务。然而由于服务提供商提供的服务功能有限,很多情况下单一服务可能无法满足用户的功能需求,此时需要在功能有限的服务集合中进行有效的集成以满足用户的功能需求,并且保证组合后的服务具备良好的服务质量(Quality of Service,QoS),但是依靠用户解决服务集成问题具有一定的挑战。Currently, more and more enterprises, organizations or individuals publish their physical resources to the Internet in the form of services. Service providers virtualize service resources according to business process divisions and build independent service modules. These modules often appear in the form of applications or APIs and can be deployed, run, and managed independently in the environment. Users only need to use lightweight application software, interfaces or APIs (Application Programming Interface) to call services with corresponding functions. However, due to the limited service functions provided by service providers, in many cases a single service may not be able to meet the functional needs of users. In this case, it is necessary to effectively integrate a set of services with limited functions to meet the functional needs of users, and ensure that the combined The service has good quality of service (QoS), but relying on users to solve service integration problems poses certain challenges.

现实世界中服务在集成过程中因业务功能不同而具备多种执行顺序,例如顺序执行、并发执行和顺序、并发混合执行。为了更好地进行求解服务集成问题,许多学者已给出了并行服务串行化的解决方法。因此,只考虑顺序执行的服务序列。如图1所示,在一个服务流程中,每一个服务簇对应于一任务节点ti,i∈[1,5],每一任务节点ti对应一候选服务集合Ti,即每一服务簇对应一候选服务集合。为了满足用户服务需求,应从每一任务节点中调度一具体服务实例,使最终若干原子服务组成的组合服务能够为用户提供单一原子服务无法提供的功能。In the real world, services have multiple execution sequences due to different business functions during the integration process, such as sequential execution, concurrent execution, and sequential and concurrent mixed execution. In order to better solve service integration problems, many scholars have given solutions to parallel service serialization. Therefore, only sequentially executed service sequences are considered. As shown in Figure 1, in a service process, each service cluster corresponds to a task node ti , i∈[1, 5], and each task node ti corresponds to a candidate service set Ti , that is, each service A cluster corresponds to a set of candidate services. In order to meet user service needs, a specific service instance should be scheduled from each task node, so that the final composite service composed of several atomic services can provide users with functions that a single atomic service cannot provide.

如图1所示,由于候选服务集合内服务实例不唯一,导致产生多种集成方式,对应多个服务实例序列。为了得到最佳的服务序列集合,该方案同样采用服务质量作为区分服务序列的依据。但与原子服务的不同之处在于,服务序列的服务质量不能直接将参与其组成的各原子服务的服务质量单独考虑并直接进行处理。首先,在服务质量各特征属性的运算单位不同引起的数据“淹没”问题及用户偏好问题未能给出完整的解决方法,其次,许多集成方法适用于小的业务领域,在复杂大规模的服务集成过程的效率与服务质量不尽人意。As shown in Figure 1, since the service instances in the candidate service set are not unique, multiple integration methods are generated, corresponding to multiple service instance sequences. In order to obtain the best service sequence set, this solution also uses service quality as the basis for distinguishing service sequences. However, the difference from atomic services is that the service quality of a service sequence cannot directly consider and directly process the service quality of each atomic service participating in its composition. First of all, the data "flooding" problem and user preference problem caused by the different calculation units of each characteristic attribute of service quality cannot provide a complete solution. Secondly, many integration methods are suitable for small business fields and are not suitable for complex and large-scale services. The efficiency and service quality of the integration process are unsatisfactory.

发明内容Contents of the invention

本发明旨在至少在一定程度上解决相关技术中的技术问题之一。The present invention aims to solve one of the technical problems in the related art, at least to a certain extent.

为此,本发明的一个目的在于提出一种序列QoS驱动的服务集成方法,该方法可以提高服务集成算法的求解质量与求解速率。To this end, one purpose of the present invention is to propose a sequence QoS-driven service integration method, which can improve the solution quality and solution speed of the service integration algorithm.

为达到上述目的,本发明实施例提出了序列QoS驱动的服务集成方法,包括以下步骤:步骤S1,预设序列组合流程图,选取服务质量QoS属性特征;步骤S2,处理所述服务质量QoS属性特征,得到服务序列sc的初始向量CQoS,并将所述初始向量CQoS归一化处理,得到标准化向量CQoS’,进而计算服务分数ScoreCQoS’;步骤S3,利用Skyline计算在所述预设序列组合流程图中任务节点对应的各候选服务对象数据库中抽取出不被其他任何候选服务对象支配的数据对象子集合,将所述数据对象子集合作为蚁群算法求解的初始搜索空间;步骤S4,根据所述蚁群算法求解所述初始搜索空间中最优解对应的分配方案。In order to achieve the above purpose, the embodiment of the present invention proposes a sequence QoS driven service integration method, which includes the following steps: Step S1, preset sequence combination flow chart, select service quality QoS attribute characteristics; Step S2, process the service quality QoS attribute Features, obtain the initial vector CQoS of the service sequence sc, normalize the initial vector CQoS to obtain the standardized vector CQoS', and then calculate the service score ScoreCQoS'; step S3, use Skyline to calculate the preset sequence combination process Extract a subset of data objects that are not dominated by any other candidate service objects from each candidate service object database corresponding to the task node in the figure, and use the subset of data objects as the initial search space for solving the ant colony algorithm; Step S4, according to the The ant colony algorithm solves the allocation plan corresponding to the optimal solution in the initial search space.

本发明实施例的序列QoS驱动的服务集成方法,通过针对业务序列集成中的服务质量计算方法给出完整定义,解决传统服务集成问题中的数据“淹没”问题和用户对于QoS的不同属性有不同偏好的问题;基于Skyline的蚁群算法,提高了服务集成算法的求解质量与求解速率。The sequence QoS-driven service integration method of the embodiment of the present invention provides a complete definition for the service quality calculation method in business sequence integration, solving the data "flooding" problem in traditional service integration problems and users' differences in different attributes of QoS. The problem of preference; the ant colony algorithm based on Skyline improves the solution quality and solution speed of the service integration algorithm.

另外,根据本发明上述实施例的序列QoS驱动的服务集成方法还可以具有以下附加的技术特征:In addition, the sequential QoS-driven service integration method according to the above embodiments of the present invention may also have the following additional technical features:

进一步地,在本发明的一个实施例中,所述服务质量QoS属性特征包括响应时间、可用性、吞吐量和成功率。Further, in one embodiment of the present invention, the quality of service QoS attribute characteristics include response time, availability, throughput and success rate.

进一步地,在本发明的一个实施例中,所述步骤S2中,基于所述预设序列组合流程图,分别计算所述服务质量QoS属性特征中的响应时间、可用性、吞吐量和成功率,得到所述服务序列sc的初始向量CqoS。Further, in one embodiment of the present invention, in step S2, based on the preset sequence combination flow chart, the response time, availability, throughput and success rate in the quality of service QoS attribute characteristics are calculated respectively, Obtain the initial vector CqoS of the service sequence sc.

可选地,在本发明的一个实施例中,所述响应时间为从开始节点到终止节点所经过的各原子服务调用的响应时间之和;所述可用性为从开始节点到终止节点所经过的各个原子服务可用性的乘积;所述吞吐量为从开始节点到终止节点所经过的各原子服务吞吐量的最小值;所述成功率为从开始节点到终止节点所经过的各原子服务调用成功的成功率乘积。Optionally, in one embodiment of the present invention, the response time is the sum of the response times of each atomic service call from the start node to the end node; the availability is the time from the start node to the end node. The product of the availability of each atomic service; the throughput is the minimum value of the throughput of each atomic service passed from the start node to the end node; the success rate is the success rate of each atomic service call passed from the start node to the end node Success rate product.

进一步地,在本发明的一个实施例中,所述步骤S2中初始向量CQoS归一化处理过程为:根据所述服务质量QoS属性特征,规定所述可用性、所述吞吐量和所述成功率为正面属性特征,规定所述响应时间为正负面属性特征;根据归一化策略分别进行正面Qos归一化与负面Qos归一化,获得标准化的向量CQoS’;根据用户偏好设置和所述标准化的向量CQoS’计算得到所述服务分数ScoreCQoS’。Further, in one embodiment of the present invention, the initial vector CQoS normalization process in step S2 is: specifying the availability, the throughput and the success rate according to the quality of service QoS attribute characteristics is a positive attribute feature, and the response time is specified as a positive and negative attribute feature; perform positive Qos normalization and negative Qos normalization respectively according to the normalization strategy to obtain the standardized vector CQoS'; according to user preference settings and the normalization The vector CQoS' is calculated to obtain the service score ScoreCQoS'.

进一步地,在本发明的一个实施例中,所述蚁群算法包括觅食规则、最优解计算规则和信息素更新原则。Further, in one embodiment of the present invention, the ant colony algorithm includes foraging rules, optimal solution calculation rules and pheromone update principles.

进一步地,在本发明的一个实施例中,所述步骤S4包括:步骤S401,基于所述觅食规则为所述初始搜索空间中每一任务节点选择一个具体的服务实例;步骤S402,当将所有任务节点分配服务实例完成后,基于所述最优解计算规则,利用服务分数ScoreCQoS’衡量当前服务组合方案的质量;迭代执行步骤S401直至所有蚂蚁均求解得到一种分配方式与对应的服务分数ScoreCQoS’,即所述最优解对应的分配方案;步骤S404,通过所述最优解决对应的分配方案,基于所述信息素更新原则进行信息素更新。Further, in one embodiment of the present invention, the step S4 includes: step S401, selecting a specific service instance for each task node in the initial search space based on the foraging rule; step S402, after all task nodes are assigned service instances, based on the optimal solution calculation rule, using the service score ScoreCQoS’ to measure the quality of the current service combination plan; iteratively executing step S401 until all ants have solved an allocation method and a corresponding service score ScoreCQoS’, that is, the allocation plan corresponding to the optimal solution; step S404, updating pheromones based on the pheromone update principle through the allocation plan corresponding to the optimal solution.

本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。Additional aspects and advantages of the invention will be set forth in part in the description which follows, and in part will be obvious from the description, or may be learned by practice of the invention.

附图说明Description of drawings

本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:The above and/or additional aspects and advantages of the present invention will become apparent and readily understood from the following description of the embodiments in conjunction with the accompanying drawings, in which:

图1是服务业务序列示例图;Figure 1 is an example diagram of service business sequence;

图2是本发明一个实施例的序列QoS驱动的服务集成方法的流程图;。Figure 2 is a flow chart of a sequential QoS driven service integration method according to an embodiment of the present invention;

图3是本发明一个实施例的蚁群算法求解流程图;Figure 3 is a flow chart of an ant colony algorithm solution according to one embodiment of the present invention;

图4是本发明一个具体实施例的蚁群算法ACO、Skyline结合蚁群算法SkylineACO、强化学习方法RL和改进粒子群算法MPSO的运行时间柱状对比图;Figure 4 is a histogram comparison chart of the running time of the ant colony algorithm ACO, Skyline combined with the ant colony algorithm SkylineACO, the reinforcement learning method RL and the improved particle swarm algorithm MPSO according to a specific embodiment of the present invention;

图5是本发明一个具体实施例的Skyline计算时间柱状示意图;Figure 5 is a schematic diagram of a Skyline calculation time bar chart according to a specific embodiment of the present invention;

图6是本发明一个具体实施例的蚁群算法ACO、Skyline结合蚁群算法SkylineACO、强化学习方法RL和改进粒子群算法MPSO的求解质量折线对比图;Figure 6 is a polyline comparison chart of the solution quality of the ant colony algorithm ACO, Skyline combined with the ant colony algorithm SkylineACO, the reinforcement learning method RL and the improved particle swarm algorithm MPSO according to a specific embodiment of the present invention;

图7是本发明一个具体实施例的Skyline结合蚁群算法SkylineACO与强化学习方法RL求解质量对比图;Figure 7 is a comparison chart of the solution quality of Skyline combined with the ant colony algorithm SkylineACO and the reinforcement learning method RL according to a specific embodiment of the present invention;

图8是本发明一个具体实施例的蚁群算法ACO、Skyline结合蚁群算法SkylineACO、强化学习方法RL和改进粒子群算法MPSO的任务节点数为10的迭代次数敏感性对比图;Figure 8 is a comparison chart of the iteration number sensitivity of the ant colony algorithm ACO, Skyline combined with the ant colony algorithm SkylineACO, the reinforcement learning method RL and the improved particle swarm algorithm MPSO according to a specific embodiment of the present invention, when the number of task nodes is 10;

图9是本发明一个具体实施例的蚁群算法ACO、Skyline结合蚁群算法SkylineACO、强化学习方法RL和改进粒子群算法MPSO的任务节点数为20的迭代次数敏感性对比图。Figure 9 is a comparison chart of the iteration number sensitivity of the ant colony algorithm ACO, Skyline combined with the ant colony algorithm SkylineACO, the reinforcement learning method RL and the improved particle swarm algorithm MPSO according to a specific embodiment of the present invention, when the number of task nodes is 20.

具体实施方式Detailed ways

下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。Embodiments of the present invention are described in detail below, examples of which are illustrated in the accompanying drawings, wherein the same or similar reference numerals throughout represent the same or similar elements or elements with the same or similar functions. The embodiments described below with reference to the drawings are exemplary and are intended to explain the present invention and are not to be construed as limiting the present invention.

下面参照附图描述根据本发明实施例提出的序列QoS驱动的服务集成方法。The following describes the sequential QoS-driven service integration method proposed according to the embodiment of the present invention with reference to the accompanying drawings.

图2是本发明一个实施例的序列QoS驱动的服务集成方法的流程图。Figure 2 is a flow chart of a sequential QoS-driven service integration method according to an embodiment of the present invention.

如图2所示,该序列QoS驱动的服务集成方法包括以下步骤:As shown in Figure 2, this sequential QoS-driven service integration method includes the following steps:

在步骤S1中,预设序列组合流程图,选取服务质量QoS属性特征。In step S1, a sequence combination flow chart is preset and quality of service QoS attribute characteristics are selected.

需要说明的是,本发明实施例中选择的服务质量QoS属性特征为响应时间(ResponseTime)、可用性(Availability)、吞吐量(ThroughPut)、成功率(Successability),但并不限于此,本领域技术人员可根据实际需求进行调整。It should be noted that the quality of service QoS attribute characteristics selected in the embodiment of the present invention are response time (ResponseTime), availability (Availability), throughput (ThroughPut), and success rate (Successability), but are not limited to these. Technology in the art Personnel can be adjusted according to actual needs.

在步骤S2中,处理服务质量QoS属性特征,得到服务序列sc的初始向量CQoS,并将初始向量CQoS归一化处理,得到标准化向量CQoS’,进而计算服务分数ScoreCQoS’。In step S2, the quality of service QoS attribute characteristics are processed to obtain the initial vector CQoS of the service sequence sc, and the initial vector CQoS is normalized to obtain the standardized vector CQoS', and then the service score ScoreCQoS' is calculated.

具体而言,为了描述服务序列的QoS,本发明实施例将原子服务sij的QoS表示为向量QoS(qosResponseTime,qosAvailability,qosThroughPut,qosSuccessability),i代表任务节点编号,j代表任务节点i对应的候选服务结合内服务实例编号。例如任选s11∈T1,s21∈T2,s31∈T3,s41∈T4,s51∈T5,则以s11、s21、s31、s41和s51组成一服务序列sc1。服务序列sc的QoS表示为CQoS(cqosResponseTime,cqosAvailability,cqosThroughPut,cqosSuccessability),其各项计算方法如下:Specifically, in order to describe the QoS of the service sequence, the embodiment of the present invention represents the QoS of the atomic service s ij as a vector QoS (qos ResponseTime , qos Availability , qos ThroughPut , qos Successability ), i represents the task node number, and j represents the task node The candidate service corresponding to i is combined with the internal service instance number. For example, optionally select s 11 ∈T 1 , s 21 ∈T 2 , s 31 ∈T 3 , s 41 ∈T 4 , s 51 ∈T 5 , then it consists of s 11 , s 21 , s 31 , s 41 and s 51 One service sequence sc 1 . The QoS of service sequence sc is expressed as CQoS (cqos ResponseTime , cqos Availability , cqos ThroughPut , cqos Successability ), and its calculation methods are as follows:

响应时间:预设序列组合流程图,其组合服务响应时间为从开始节点到终止节点所经过的各原子服务调用的响应时间之和,则组合服务的响应时间cqosResponseTime由公式(1)计算。Response time: In the preset sequence combination flow chart, the combined service response time is the sum of the response times of each atomic service call from the start node to the end node. Then the response time of the combined service cqos ResponseTime is calculated by formula (1).

其中,N表示顺序组合服务涉及的原子服务数量,即任务节点个数,sij代表第i个任务节点对应的候选服务集合中编号为j的服务实例,j大小取决于候选服务集合内实例个数。Among them, N represents the number of atomic services involved in the sequential combination service, that is, the number of task nodes, s ij represents the service instance numbered j in the candidate service set corresponding to the i-th task node, and the size of j depends on the number of instances in the candidate service set. number.

可用性:预设序列组合流程图,其组合服务可用性为从开始节点到终止节点所经过的各个原子服务可用性的乘积,由公式(2)计算。Availability: A preset sequence combination flow chart, whose combined service availability is the product of the availability of each atomic service passing through from the start node to the end node, calculated by formula (2).

其中,N表示顺序组合服务涉及的原子服务数量,即任务节点个数,sij代表第i个任务节点对应的候选服务集合中编号为j的服务实例,j大小取决于候选服务集合内实例个数。Among them, N represents the number of atomic services involved in the sequential combination service, that is, the number of task nodes, s ij represents the service instance numbered j in the candidate service set corresponding to the i-th task node, and the size of j depends on the number of instances in the candidate service set. number.

吞吐量:预设序列组合流程图,其组合服务吞吐量为从开始节点到终止节点所经过的各原子服务吞吐量的最小值,由公式(3)计算。Throughput: The preset sequence combination flow chart, the combined service throughput is the minimum value of the throughput of each atomic service passing through from the start node to the end node, calculated by formula (3).

cqosThroughPut=Min(qosThroughPut(sij)),i∈[1,N] (3)cqos ThroughPut =Min(qos ThroughPut (s ij )),i∈[1,N] (3)

成功率:预设序列组合流程图,其组合服务成功率为从开始节点到终止节点所经过的各原子服务调用成功的成功率乘积,由公式(4)计算。Success rate: The preset sequence combination flow chart has a combination service success rate multiplied by the success rate of each atomic service call from the start node to the end node, calculated by formula (4).

进一步地,在本发明的一个实施例中,步骤S2中初始向量CQoS归一化处理过程为:Further, in one embodiment of the present invention, the initial vector CQoS normalization process in step S2 is:

根据服务质量QoS属性特征,规定可用性、吞吐量和成功率为正面属性特征,规定响应时间为正负面属性特征;According to the quality of service QoS attribute characteristics, availability, throughput and success rate are specified as positive attribute characteristics, and response time is specified as positive and negative attribute characteristics;

根据归一化策略分别进行正面Qos归一化与负面Qos归一化,以将初始向量CqoS标准化,得到服务对象集合CQoS’。According to the normalization strategy, positive Qos normalization and negative Qos normalization are performed to standardize the initial vector CqoS and obtain the service object set CQoS’.

具体而言,经上述步骤计算可得到服务序列sc的初始向量CQoS(cqosResponseTime,cqosAvailability,cqosThroughPut,cqosSuccessability),由CQoS计算服务序列聚合值时,由于不同特征取值范围不同,为了防止较大范围数据致使较小范围数据“淹没”,需将CQoS值进行标准化,将其归一化至[0,1]范围内。根据服务质量QoS各属性特征,可用性、吞吐量、成功率为正面的QoS属性特征,响应时间为负面属性特征,归一化策略分为正面QoS归一化与负面QoS归一化,其归一化公式如下公式(5)与公式(6)所示:Specifically, the initial vector CQoS (cqos ResponseTime , cqos Availability , cqos ThroughPut , cqos Successability ) of the service sequence sc can be calculated through the above steps. When calculating the service sequence aggregate value from CQoS, due to the different value ranges of different features, in order to prevent Larger range of data causes smaller range of data to be "flooded", so the CQoS value needs to be standardized and normalized to the range of [0, 1]. According to the quality of service QoS attribute characteristics, availability, throughput, and success rate are positive QoS attribute characteristics, and response time is a negative attribute characteristic. The normalization strategy is divided into positive QoS normalization and negative QoS normalization. The normalization The formulas are as follows: Formula (5) and Formula (6):

正面: front:

负面: Negative:

需要说明的是,服务序列其CQoS值在归一化过程中所涉及的cqosmax与cqosmin为所有可能的组合策略所对应的服务序列的cqos值中的最大值与最小值。以图1为例,任务节点为5个,假设每个任务节点对应的候选服务均为100个,则组合策略共100*100*100*100*100种,对应1005个组合服务,产生1005个CQoS值,以响应时间为例,cqosResponseTimeMax为这1005个组合服务中CQoS中响应时间的最大值,cqosResponseTimeMin为这1005个服务序列中CQoS中响应时间最小值。It should be noted that the cqos max and cqos min involved in the normalization process of the CQoS value of the service sequence are the maximum and minimum values among the cqos values of the service sequence corresponding to all possible combination strategies. Take Figure 1 as an example. There are 5 task nodes. Assume that each task node corresponds to 100 candidate services. Then there are a total of 100*100*100*100*100 combination strategies, corresponding to 1005 combination services, resulting in 1005 CQoS value, taking response time as an example, cqos ResponseTimeMax is the maximum response time in CQoS among these 1005 combined services, and cqos ResponseTimeMin is the minimum response time in CQoS among these 1005 service sequences.

考虑到每个任务节点对应的候选服务集合可能较大,不可能构造所有可能的组合策略来计算全部的CQoS以找到cqosmax与cqosmin,因此本发明实施例提出以下计算方法来求解各个QoS属性的cqosmax与cqosminConsidering that the candidate service set corresponding to each task node may be large, it is impossible to construct all possible combination strategies to calculate all CQoS to find cqos max and cqos min . Therefore, the embodiment of the present invention proposes the following calculation method to solve each QoS attribute. cqos max and cqos min .

首先计算每个候选服务集合的qosmax与qosmin。仍以图1的工作流为例,共有5个候选服务集合T1、T2、T3、T4和T5,分别计算候选服务集合内各个属性值的qosmax与qosmin,经求解每个QoS属性特征得到N个最大值与N个最小值,N为候选服务集合的个数,在此为5,根据此求解结果计算cqosmax与cqosmin,各属性特征计算方法如下。First calculate the qos max and qos min of each candidate service set. Still taking the workflow in Figure 1 as an example, there are five candidate service sets T 1 , T 2 , T 3 , T 4 and T 5 . Calculate the qos max and qos min of each attribute value in the candidate service set respectively. After solving each N maximum values and N minimum values are obtained from the QoS attribute characteristics. N is the number of candidate service sets, which is 5 here. Based on this solution result, cqos max and cqos min are calculated. The calculation method of each attribute characteristic is as follows.

响应时间:根据候选服务集合Ti计算得到响应时间最大值qosResponseTimeMaxi与响应时间最小值qosResponseTimeMini,则组合服务序列最大响应时间为各候选服务集合内的原子服务最大响应时间之和,组合服务序列最小响应时间为各候选服务集合内的原子服务最小响应时间之和,则cqosResponseTimeMax与cqosResponseTimeMin计算方法如公式(7)所示,其中i为任务节点编号。Response time: The maximum response time qos ResponseTimeMaxi and the minimum response time qos ResponseTimeMini are calculated based on the candidate service set T i . Then the maximum response time of the combined service sequence is the sum of the maximum response times of the atomic services in each candidate service set. The combined service sequence The minimum response time is the sum of the minimum response times of the atomic services in each candidate service set. The calculation method of cqos ResponseTimeMax and cqos ResponseTimeMin is as shown in formula (7), where i is the task node number.

可用性:根据候选服务集合Ti计算得到可用性最大值qosAvailabilityMaxi与可用性最小值qosAvailabilityMini,则组合服务序列可用性最大值为各候选服务集合内的原子服务最大可用性之积,组合服务序列可用性最小值为各候选服务集合内的原子服务最小可用性之积,cqosAvailabilityMax与cqosAvailabilityMin计算如公式(8)所示。Availability: The maximum availability value qos AvailabilityMaxi and the minimum availability value qos AvailabilityMini are calculated based on the candidate service set T i . Then the maximum availability value of the combined service sequence is the product of the maximum availability of the atomic services in each candidate service set, and the minimum availability value of the combined service sequence is The product of the minimum availability of atomic services in each candidate service set, cqos AvailabilityMax and cqos AvailabilityMin are calculated as shown in formula (8).

吞吐量:根据候选服务集合Ti计算得到吞吐量最大值qosThroughPutMaxi与吞吐量最小值qosThroughPutMini,则组合服务序列最大吞吐量为qosThroughPutMaxi中的最大值,组合服务序列最小吞吐量为qosThroughPutMini中的最小值,cqosThroughPutMax与cqosThroughPutMin计算如公式(9)所示。Throughput: The maximum throughput value qos ThroughPutMaxi and the minimum throughput value qos ThroughPutMini are calculated based on the candidate service set T i . Then the maximum throughput of the combined service sequence is the maximum value in qos ThroughPutMaxi , and the minimum throughput of the combined service sequence is qos ThroughPutMini . The minimum value of cqos ThroughPutMax and cqos ThroughPutMin are calculated as shown in formula (9).

成功率:根据候选服务集合Ti计算得到qosSuccessabilityMaxi与qosSuccessabilityMini,组合服务序列成功率最大值与最小值计算方法与可用性相似,cqosSuccessabilityMax与cqosSuccessabilityMin计算如公式(10)所示。Success rate: qos SuccessabilityMaxi and qos SuccessabilityMini are calculated based on the candidate service set T i . The calculation method of the maximum and minimum success rate of the combined service sequence is similar to that of availability. The calculation of cqos SuccessabilityMax and cqos SuccessabilityMin is as shown in formula (10).

经上述步骤初始组合服务的CQoS(cqosResponseTime,cqosAvailability,cqosThroughPut,cqosSuccessability)标准化为CQoS’(cqosResponseTime',cqosAvailability',cqosThroughPut',cqosSuccessability')。考虑到用户对于QoS的不同属性有不同偏好,给定一QoS特征(qos1,qos2,qos3,...,qosm),根据用户偏好设定QoS权重P(p1,p2,p3,...,pm),表示用户对于QoS特征的关注程度,其满足约束如公式(11)所示。After the above steps, the CQoS (cqos ResponseTime , cqos Availability , cqos ThroughPut , cqos Successability ) of the initial combination service is standardized to CQoS' (cqos ResponseTime ', cqos Availability ', cqos ThroughPut ', cqos Successability '). Considering that users have different preferences for different attributes of QoS, given a QoS feature (qos 1 , qos 2 , qos 3 ,..., qos m ), set the QoS weight P (p 1 , p 2 , p 3 ,..., p m ), represents the user's degree of attention to QoS features, and its satisfying constraints are shown in formula (11).

根据用户偏好设置与CQOS’经公式(12)计算得到CQoS’聚合值,即服务分数ScoreCQoS’。According to the user preference settings and CQOS’, the CQoS’ aggregate value is calculated by formula (12), that is, the service score ScoreCQoS’.

在步骤S3中,利用Skyline计算在预设序列组合流程图中任务节点对应的各候选服务对象数据库中抽取出不被其他任何候选服务对象支配的数据对象子集合,将数据对象子集合作为蚁群算法求解的初始搜索空间。In step S3, Skyline calculation is used to extract a subset of data objects that are not dominated by any other candidate service objects from each candidate service object database corresponding to the task node in the preset sequence combination flow chart, and the data object subset is regarded as an ant colony. The initial search space that the algorithm solves.

需要说明的是,Skyline计算是从一个数据库中抽取出不被其他任何数据对象支配的数据对象集合,以在多目标决策、数据挖掘、数据可视化等方面得到了潜在应用,其中经典例子就是旅馆选择问题,即在大量旅馆信息中找到一个离海边既近又便宜的旅馆。本质上,Skyline计算是数据抽取方法,其反应了数据集合的内部特征。It should be noted that skyline computing is to extract a set of data objects from a database that are not dominated by any other data objects. It has potential applications in multi-objective decision-making, data mining, data visualization, etc. A classic example is the hotel selection problem, that is, finding a hotel that is close to the sea and cheap among a large amount of hotel information. In essence, skyline computing is a data extraction method that reflects the internal characteristics of a data set.

对于一个具备多维度QoS信息的服务对象,即服务对象的QoS属性特征不唯一,可将其看成具有一个多维QoS的数据对象,通过比较不同的数据对象来选择较优的数据对象,从而为下一步的服务决策奠定基础。本发明使用Skyline计算的目的就是通过从具备多维度服务质量的服务对象集合中抽取出没有被其他数据对象支配的数据对象子集合,即以缩减服务搜索空间,提高下一步服务组合决策搜索效率。For a service object with multi-dimensional QoS information, that is, the QoS attribute characteristics of the service object are not unique, it can be regarded as a data object with multi-dimensional QoS, and the better data object is selected by comparing different data objects, thereby providing Lays the foundation for next service decisions. The purpose of using Skyline calculation in this invention is to extract a subset of data objects that are not dominated by other data objects from the service object set with multi-dimensional service quality, that is, to reduce the service search space and improve the search efficiency of the next step of service combination decision-making.

举例而言,以服务s1与s2为例,其服务质量分别为QoS1(qos1,qos2,qos3,qos4)和QoS2(qos1,qos2,qos3,qos4),如果s1的服务质量在各维度上均优于或等于s2,并且至少在一个维度上s1优于s2,则称s1支配s2For example, taking services s1 and s2 as an example, their service qualities are QoS1 (qos 1 , qos 2 , qos 3 , qos 4 ) and QoS2 (qos 1 , qos 2 , qos 3 , qos 4 ) respectively. If s 1 The service quality is better than or equal to s 2 in all dimensions, and s 1 is better than s 2 in at least one dimension, then s 1 is said to dominate s 2 .

对于正面的QoS,其形式化定义如公式(13)所示,其中M为服务质量维度。For positive QoS, its formal definition is as shown in formula (13), where M is the service quality dimension.

对于负面的QoS,形式化定义如公式(14)所示。For negative QoS, the formal definition is as shown in formula (14).

通过Skyline计算,在任务节点对应的各候选服务对象数据库中抽取出不被其他任何候选服务对象支配的服务对象,从而构成Skyline服务,作为蚁群算法求解的初始搜索空间。Through Skyline calculation, service objects that are not dominated by any other candidate service objects are extracted from the candidate service object database corresponding to the task node, thereby forming a Skyline service, which serves as the initial search space for ant colony algorithm solution.

在步骤S4中,根据蚁群算法求解初始搜索空间中最优解对应的分配方案。In step S4, the allocation plan corresponding to the optimal solution in the initial search space is solved according to the ant colony algorithm.

需要说明的是,蚁群算法的灵感来源于自然界中蚂蚁觅食的行为,其基本原理为蚂蚁在觅食的路途中会释放与路径信息有关的信息素,以供所有蚂蚁下次遇到此路口时提供选择依据,在前进过程中,碰到没走过的路口则随机选择,否则选择信息素浓度最大的路口,最终,最优路径上的信息素浓度越来越大,蚁群找到最优觅食路径。It should be noted that the ant colony algorithm is inspired by the foraging behavior of ants in nature. Its basic principle is that ants will release pheromones related to path information on the way to forage for all ants to encounter this location next time. Provide a basis for selection at intersections. During the process of moving forward, if you encounter an intersection that you have not passed, you will choose it randomly. Otherwise, choose the intersection with the highest pheromone concentration. In the end, the pheromone concentration on the optimal path will become larger and larger, and the ant colony will find the optimal path. Excellent foraging paths.

蚁群算法在求解最佳服务序列的过程中涉及以下几个重要过程。Ant colony algorithm involves the following important processes in solving the optimal service sequence.

觅食规则:蚂蚁觅食每次经过路口进行选择的过程相当于从候选服务集合中选择具体的服务实例,其服务实例选择规则主要有两类,若当前蚂蚁编号在此任务节点的蚂蚁编号临界点之前,采用最大信息素分配,蚂蚁将会选择信息素浓度最高的服务实例,若在临界点之后,则随机选择服务实例。Foraging rules: The selection process of ants foraging each time they pass through an intersection is equivalent to selecting a specific service instance from the candidate service set. There are two main types of service instance selection rules. If the current ant number is critical to the ant number of this task node Before the critical point, the maximum pheromone distribution is used, and the ants will select the service instance with the highest pheromone concentration. If it is after the critical point, the service instance will be randomly selected.

例如:taskCritivalPoint[i]=10表示第i个任务节点的蚂蚁编号临界点为10,在蚂蚁在第i个任务节点选择服务实例时,若蚂蚁编号在10号之前(包括10号)则选择最大信息素浓度的服务实例,若蚂蚁编号在10号之后,则在候选服务集合内随机选择服务实例。For example: taskCritivalPoint[i]=10 means that the critical point of the ant number of the i-th task node is 10. When the ant selects a service instance on the i-th task node, if the ant number is before the 10th (including the 10th), the largest one will be selected. For service instances with pheromone concentration, if the ant number is after No. 10, the service instance will be randomly selected from the candidate service set.

最优解计算规则:一只蚂蚁在为所有任务节点均选择了服务实例之后,则得到一种分配方案,即一种组合服务方案,以标准化后的组合服务分数ScoreCQoS’作为衡量分配方案质量的标准,其中,ScoreCQoS’分数值越高代表分配方案越好。Optimal solution calculation rules: After an ant selects service instances for all task nodes, it obtains an allocation plan, that is, a combined service plan. The standardized combined service score ScoreCQoS' is used to measure the quality of the allocation plan. Standard, where a higher ScoreCQoS' score value represents a better allocation solution.

信息素更新原则:信息素在蚂蚁进行服务实例选择时起重要作用,例如phenomoneMatrix[i][j]=0.1代表在第i个任务节点选择第j个服务实例的信息素浓度为0.1。每次迭代结束后进行信息素更新,所有信息素浓度均衰减p%,将本次迭代中最优解对应的信息素浓度增加q%。Pheromone update principle: Pheromones play an important role in ants selecting service instances. For example, phenomoneMatrix[i][j]=0.1 means that the pheromone concentration of selecting the j-th service instance at the i-th task node is 0.1. After each iteration, the pheromone is updated. All pheromone concentrations are attenuated by p%, and the pheromone concentration corresponding to the optimal solution in this iteration is increased by q%.

因此,本发明步骤S4具体包括:Therefore, step S4 of the present invention specifically includes:

步骤S401,基于觅食规则为初始搜索空间中每一任务节点选择一个具体的服务实例;Step S401: Select a specific service instance for each task node in the initial search space based on foraging rules;

步骤S402,当将所有任务节点分配服务实例完成后,基于最优解计算规则,利用服务分数ScoreCQoS’衡量当前服务组合方案的质量;Step S402: After all task nodes are assigned service instances, based on the optimal solution calculation rules, the service score ScoreCQoS’ is used to measure the quality of the current service combination solution;

步骤S403,迭代执行步骤S401直至所有蚂蚁均求解,得到一种分配方式与对应的服务分数ScoreCQoS’,即所述最优解对应的分配方案;Step S403, iteratively execute step S401 until all ants have solved the problem, and obtain an allocation method and the corresponding service score ScoreCQoS’, that is, the allocation plan corresponding to the optimal solution;

步骤S404,通过最优解决对应的分配方案,基于信息素更新原则进行信息素更新。Step S404: Update the pheromone based on the pheromone update principle through the allocation plan corresponding to the optimal solution.

也就是说,如图3所示,使用蚁群算法求解最佳ScoreCQoS’对应的组合服务过程为:基于觅食规则为每一任务节点选择一具体的服务实例,当为所有任务节点分配服务实例完毕后,基于最优解计算规则衡量本次分配方案即服务组合方案的质量,重复上述过程直至所有蚂蚁均求解得到一种分配方式与对应的方案质量,通过最优解对应的分配方案基于信息素更新原则进行信息素更新,至此完成一次迭代。That is to say, as shown in Figure 3, the combined service process corresponding to the optimal ScoreCQoS' using the ant colony algorithm is: selecting a specific service instance for each task node based on foraging rules, and allocating service instances to all task nodes After completion, the quality of this allocation plan, that is, the service combination plan, is measured based on the optimal solution calculation rules. Repeat the above process until all ants have solved and obtained an allocation method and the corresponding plan quality. The allocation plan corresponding to the optimal solution is based on the information. The pheromone is updated according to the pheromone update principle, and one iteration is completed.

由此,本发明实施例将大规模的候选服务集合使用Skyline计算进行服务缩减,进行局部优化,以缩小蚁群算法的求解规模,提高求解速率与质量,之后再按照组合服务的QoS使用蚁群算法进行全局寻优,找到具有最佳QoS的服务实例序列解决方案。Therefore, the embodiment of the present invention uses Skyline calculation to reduce the large-scale candidate service set and perform local optimization to reduce the solution scale of the ant colony algorithm and improve the solution speed and quality. Then, the ant colony is used according to the QoS of the combined service. The algorithm performs global optimization to find the service instance sequence solution with the best QoS.

下面提出一个具体实施例对本发明的序列QoS驱动的服务集成方法进一步说明。A specific embodiment is proposed below to further illustrate the sequential QoS-driven service integration method of the present invention.

本具体实施例采用国际公开数据集:QWS数据集进行算法有效性的实验验证。QWS数据集是服务计算领域研究人员普遍认可的数据集,本具体实施例在数据集上保留响应时间、可用性、成功率和吞吐量4个QoS属性信息。This specific embodiment uses an international public data set: the QWS data set to conduct experimental verification of the effectiveness of the algorithm. The QWS data set is a data set generally recognized by researchers in the field of service computing. This specific embodiment retains four QoS attribute information of response time, availability, success rate and throughput in the data set.

具体实施例中设计了5、10、15、20及25个任务节点的工作流模板模拟不同的组合服务复杂度,每个任务节点候选服务为100个,分别测试了蚁群算法(ACO)、Skyline结合蚁群算法(SkylineACO)、强化学习方法(RL)以及改进粒子群算法(MPSO)求解组合服务解决方案的过程,分别在算法的执行时间、组合服务求解质量、迭代次数等方面进行了四个算法的对比实验,以公式(12)的ScoreCQoS’作为组合服务求解质量的评价标准,分数越高代表求解质量越好。In the specific embodiment, workflow templates with 5, 10, 15, 20 and 25 task nodes were designed to simulate different combined service complexities. There were 100 candidate services for each task node, and the Ant Colony Algorithm (ACO), Skyline combines the ant colony algorithm (SkylineACO), reinforcement learning method (RL) and improved particle swarm algorithm (MPSO) to solve the process of combined service solutions. Four tests were conducted in terms of the execution time of the algorithm, the quality of the combined service solution, and the number of iterations. In the comparative experiment of two algorithms, ScoreCQoS' of formula (12) is used as the evaluation standard for the solution quality of the combined service. The higher the score, the better the solution quality.

(1)算法执行时间(1) Algorithm execution time

设定ACO、SkylineACO、RL以及MPSO迭代次数均为100,ACO、SkylineACO的蚁群与MPSO的粒子群大小设为50,算法的执行时间对比结果如图4所示。Skyline计算时间如图5所示。The number of iterations of ACO, SkylineACO, RL and MPSO is set to 100. The size of the ant colony of ACO, SkylineACO and the particle swarm of MPSO is set to 50. The execution time comparison result of the algorithm is shown in Figure 4. The Skyline calculation time is shown in Figure 5.

在相同迭代次数设置下,随着任务节点数的增加,算法的执行时间显著增加。其中,ACO算法平均执行时间明显高于其他方法,由此可见,本发明提出的SkylineACO算法能够显著降低原ACO算法的执行时间。其次,RL算法平均执行时间最低,SkylineACO略高于MPSO算法。Under the same iteration number settings, as the number of task nodes increases, the execution time of the algorithm increases significantly. Among them, the average execution time of the ACO algorithm is significantly higher than other methods. It can be seen that the Skyline ACO algorithm proposed by the present invention can significantly reduce the execution time of the original ACO algorithm. Secondly, the RL algorithm has the lowest average execution time, and SkylineACO is slightly higher than the MPSO algorithm.

(2)组合服务求解质量在图4的实验基础上收集了四个算法在不同任务节点数下的ScoreCQoS’,并进行多次实验求取平均值作为算法最终的ScoreCQoS’值,实验对比结果如图6所示。(2) Composite service solution quality Based on the experiment in Figure 4, the ScoreCQoS' of the four algorithms under different numbers of task nodes were collected, and multiple experiments were conducted to obtain the average value as the final ScoreCQoS' value of the algorithm. The experimental comparison results are as follows As shown in Figure 6.

由图6可知,在不同任务节点数的实验中,本发明所提出的SkylineACO算法求解质量均为最优,SkylineACO能够显著提高原ACO算法的求解质量。在任务节点数为10、15与20的实验对比中,其求解质量对比效果明显,SkylineACO求解结果质量优于MPSO求解结果质量,RL求解质量最差。随着任务节点数的增加,求解质量整体呈现下降趋势。It can be seen from Figure 6 that in experiments with different numbers of task nodes, the solution quality of the SkylineACO algorithm proposed by the present invention is optimal, and SkylineACO can significantly improve the solution quality of the original ACO algorithm. In the experimental comparison of 10, 15 and 20 task nodes, the comparison of solution quality is obvious. The quality of SkylineACO solution results is better than the quality of MPSO solution results, and the RL solution quality is the worst. As the number of task nodes increases, the overall solution quality shows a downward trend.

综合图4及图6的对比结果,可知SkylineACO在算法执行时间以及算法求解质量方面均优于ACO算法,在算法执行时间上,RL算法执行时间最短,在算法求解质量方面,SkylineACO求解质量最高。Based on the comparison results in Figure 4 and Figure 6, it can be seen that SkylineACO is superior to the ACO algorithm in terms of algorithm execution time and algorithm solution quality. In terms of algorithm execution time, the RL algorithm has the shortest execution time, and in terms of algorithm solution quality, SkylineACO has the highest solution quality.

为此,为了进一步对比SkylineACO与RL算法,采取增加RL算法迭代次数的方式增加RL算法的执行时间,使其与SkylineACO算法执行时间大致相同,从而对比两个算法的求解质量。实验结果如图7所示,SkylineACO算法求解质量优于RL算法求解质量。For this reason, in order to further compare the SkylineACO and RL algorithms, the execution time of the RL algorithm is increased by increasing the number of iterations of the RL algorithm, so that the execution time of the RL algorithm is roughly the same as that of the SkylineACO algorithm, thereby comparing the solution quality of the two algorithms. The experimental results are shown in Figure 7. The solution quality of the SkylineACO algorithm is better than the solution quality of the RL algorithm.

(3)迭代次数敏感性(3) Iteration number sensitivity

为了比较迭代次数对求解质量的影响,实验分别收集了四个算法在50、100、150、200及250次迭代次数下的求解质量,每个算法在指定迭代次数下进行10次实验,求取平均组合服务分数作为求解质量标准。图8与图9分别为任务节点数为10与任务节点数为20的实验结果。In order to compare the impact of the number of iterations on the solution quality, the experiment collected the solution quality of four algorithms under 50, 100, 150, 200 and 250 iterations. Each algorithm performed 10 experiments under the specified number of iterations to obtain The average combined service score is used as the solution quality criterion. Figures 8 and 9 show the experimental results when the number of task nodes is 10 and the number of task nodes is 20, respectively.

综合图8与9实验结果发现,RL算法对迭代次数最为敏感,随着迭代次数的增加,RL算法求解质量提升步幅最大,SkylineACO算法次之,MPSO改善较小,ACO算法基本没有改善,推断ACO算法陷入了局部最优解。Based on the experimental results in Figures 8 and 9, it is found that the RL algorithm is the most sensitive to the number of iterations. As the number of iterations increases, the solution quality of the RL algorithm improves the most, followed by the SkylineACO algorithm, MPSO has a smaller improvement, and the ACO algorithm has basically no improvement. Inference The ACO algorithm falls into a local optimal solution.

综上,实验证明使用Skyline计算改进的蚁群算法能够显著提升算法的执行效率,在求解质量上优于对比方法,因此所提出的SkylineACO算法能够快速地找到全局最佳ScoreCQoS’及其对应的组合服务方案。In summary, the experiment proves that using Skyline to calculate the improved ant colony algorithm can significantly improve the execution efficiency of the algorithm and is superior to the comparative method in terms of solution quality. Therefore, the proposed SkylineACO algorithm can quickly find the global optimal Score CQoS' and its corresponding Combined service plan.

根据本发明实施例提出的序列QoS驱动的服务集成方法,通过针对业务序列集成中的服务质量计算方法给出完整定义,解决传统服务集成问题中的数据“淹没”问题和用户对于QoS的不同属性有不同偏好的问题;基于Skyline的蚁群算法,提高了服务集成算法的求解质量与求解速率。According to the sequence QoS-driven service integration method proposed by the embodiment of the present invention, by giving a complete definition for the service quality calculation method in business sequence integration, the data "flooding" problem in the traditional service integration problem and the different attributes of users for QoS are solved. There are problems with different preferences; the ant colony algorithm based on Skyline improves the solution quality and solution speed of the service integration algorithm.

此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。In addition, the terms “first” and “second” are used for descriptive purposes only and cannot be understood as indicating or implying relative importance or implicitly indicating the quantity of indicated technical features. Therefore, features defined as "first" and "second" may explicitly or implicitly include at least one of these features. In the description of the present invention, "plurality" means at least two, such as two, three, etc., unless otherwise expressly and specifically limited.

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。In the description of this specification, reference to the terms "one embodiment," "some embodiments," "an example," "specific examples," or "some examples" or the like means that specific features are described in connection with the embodiment or example. , structures, materials or features are included in at least one embodiment or example of the invention. In this specification, the schematic expressions of the above terms are not necessarily directed to the same embodiment or example. Furthermore, the specific features, structures, materials or characteristics described may be combined in any suitable manner in any one or more embodiments or examples. Furthermore, those skilled in the art may combine and combine different embodiments or examples and features of different embodiments or examples described in this specification unless they are inconsistent with each other.

尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。Although the embodiments of the present invention have been shown and described above, it can be understood that the above-mentioned embodiments are illustrative and should not be construed as limitations of the present invention. Those of ordinary skill in the art can make modifications to the above-mentioned embodiments within the scope of the present invention. The embodiments are subject to changes, modifications, substitutions and variations.

Claims (8)

1. A sequential QoS driven service integration method, comprising the steps of:
step S1, presetting a sequence combination flow chart, and selecting quality of service (QoS) attribute characteristics;
step S2, processing the QoS attribute characteristics to obtain an initial vector CQoS of a service sequence sc, normalizing the initial vector CQoS to obtain a normalized vector CQoS ', and further calculating a service score ScorCQoS';
step S3, using Skyline to calculate and extract a data object subset which is not dominated by any other candidate service object from each candidate service object database corresponding to the task node in the preset sequence combination flow chart, and using the data object subset as an initial search space for solving an ant colony algorithm; and
step S4, solving an allocation scheme corresponding to the optimal solution in the initial search space according to the ant colony algorithm;
wherein the quality of service QoS attribute characteristics include response time, availability, throughput, and success rate;
the initial vector CQoS normalization processing in step S2 is as follows:
according to the QoS attribute characteristics, the availability, the throughput and the success rate are specified as positive attribute characteristics, and the response time is specified as positive and negative attribute characteristics;
respectively carrying out positive Qos normalization and negative Qos normalization according to a normalization strategy to obtain a normalized vector CQoS';
the service score is calculated from the user preference settings and the normalized vector CQoS'.
2. The sequence QoS driven service integration method according to claim 1, wherein in step S2, based on the preset sequence combination flowchart, response time, availability, throughput and success rate in the QoS attribute feature are calculated, respectively, to obtain an initial vector CqoS of the service sequence sc.
3. The sequential QoS-driven service integration method of claim 2, wherein the response time is a sum of response times of atomic service calls passing from a start node to a termination node.
4. The sequential QoS driven service integration method of claim 2, wherein said availability is a product of availability of individual atomic services traversed from a start node to a termination node.
5. The sequential QoS driven service integration method of claim 2, wherein said throughput is a minimum of each atomic service throughput passed from a start node to a termination node.
6. The sequential QoS driven service integration method of claim 2, wherein the success rate is a success rate product of success of each atomic service invocation passed from a start node to a termination node.
7. The sequential QoS driven service integration method of claim 1, wherein the ant colony algorithm comprises foraging rules, optimal solution calculation rules, and pheromone update rules.
8. The sequential QoS-driven service integration method according to claim 7, wherein said step S4 comprises:
step S401, selecting a specific service instance for each task node in the initial search space based on the foraging rule;
step S402, after all task nodes are distributed with service examples, based on the optimal solution calculation rule, the quality of the current service combination scheme is measured by using a service score ScorCQoS';
step S403, iteratively executing step S401 until all ants are solved to obtain an allocation mode and a corresponding service score ScorCQoS', namely an allocation scheme corresponding to the optimal solution;
and step S404, carrying out pheromone updating based on the pheromone updating principle through the allocation scheme corresponding to the optimal solution.
CN202011308436.9A 2020-11-19 2020-11-19 Service integration method driven by sequence QoS Active CN112306665B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011308436.9A CN112306665B (en) 2020-11-19 2020-11-19 Service integration method driven by sequence QoS

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011308436.9A CN112306665B (en) 2020-11-19 2020-11-19 Service integration method driven by sequence QoS

Publications (2)

Publication Number Publication Date
CN112306665A CN112306665A (en) 2021-02-02
CN112306665B true CN112306665B (en) 2024-03-22

Family

ID=74336035

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011308436.9A Active CN112306665B (en) 2020-11-19 2020-11-19 Service integration method driven by sequence QoS

Country Status (1)

Country Link
CN (1) CN112306665B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113469611B (en) * 2021-06-10 2023-03-24 哈尔滨工业大学 Express crowdsourcing distribution task scheduling method, system and equipment
CN117909377B (en) * 2024-01-17 2024-08-02 湖南惟客科技集团有限公司 Service self-adaptive adjustment method based on user operation behavior analysis

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011126419A1 (en) * 2010-04-07 2011-10-13 Telefonaktiebolaget L M Ericsson (Publ) Enhancement of positioning quality of service
CN106686076A (en) * 2016-12-21 2017-05-17 华侨大学 Clustering-based Key Feature Sequence Selection Method in Resource Service Network
CN107070704A (en) * 2017-03-22 2017-08-18 东南大学 A kind of Trusted Web services combined optimization method based on QoS

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011126419A1 (en) * 2010-04-07 2011-10-13 Telefonaktiebolaget L M Ericsson (Publ) Enhancement of positioning quality of service
CN106686076A (en) * 2016-12-21 2017-05-17 华侨大学 Clustering-based Key Feature Sequence Selection Method in Resource Service Network
CN107070704A (en) * 2017-03-22 2017-08-18 东南大学 A kind of Trusted Web services combined optimization method based on QoS

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于贝叶斯模型的云服务服务质量预测;陈伟等;计算机应用;20160410;第36卷(第4期);914-917 *

Also Published As

Publication number Publication date
CN112306665A (en) 2021-02-02

Similar Documents

Publication Publication Date Title
Stadler et al. Graph posterior network: Bayesian predictive uncertainty for node classification
US11966419B2 (en) Systems and methods for combining data analyses
CN112306665B (en) Service integration method driven by sequence QoS
CN111292008A (en) A risk assessment method for privacy-preserving data release based on knowledge graph
CN102571431B (en) Group concept-based improved Fast-Newman clustering method applied to complex network
CN109886334B (en) Shared neighbor density peak clustering method for privacy protection
Li et al. A RF-PSO based hybrid feature selection model in intrusion detection system
CN108491731A (en) Information privacy protection method under IoT environment towards typing resource
CN115270007B (en) A POI recommendation method and system based on hybrid graph neural network
Jiang et al. A method for discrete stochastic MADM problems based on the ideal and nadir solutions
CN104992078A (en) A Semantic Density-Based Method for Identification of Protein Network Complexes
Sun et al. Automatically building service-based systems with function relaxation
CN112906865B (en) Neural network architecture search method, device, electronic device and storage medium
Yang et al. An improved cop-kmeans clustering for solving constraint violation based on mapreduce framework
CN102831219B (en) A kind of be applied to community discovery can covering clustering method
CN116701979A (en) Method and system for social network data analysis based on restricted k-means
CN112511346A (en) Web service combination method based on credibility screening
CN108647487A (en) The prediction technique and forecasting system of g protein coupled receptor-ligand interaction relationship
CN110119268B (en) Workflow optimization method based on artificial intelligence
CN108924196B (en) Industrial Internet Green Energy Management System
Yang et al. Classification-based diverse workflows scheduling in clouds
Zou et al. FHC-DQP: Federated Hierarchical Clustering for Distributed QoS Prediction
CN110176279A (en) Lead compound virtual screening method and device based on small sample
Liao et al. Research on web service composition selection based on QoS metrics
CN110135747B (en) Flow customization method based on neural network

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant