Presentation is loading. Please wait.

Presentation is loading. Please wait.

ACM TRANSACTIONS ON THE WEB, VOL. 1, NO. 1, ARTICLE 6, PUBLICATION DATE: MAY 2007 69721033 陳郁婷 Efficient algorithms for Web services selection with end-to-end.

Similar presentations


Presentation on theme: "ACM TRANSACTIONS ON THE WEB, VOL. 1, NO. 1, ARTICLE 6, PUBLICATION DATE: MAY 2007 69721033 陳郁婷 Efficient algorithms for Web services selection with end-to-end."— Presentation transcript:

1 ACM TRANSACTIONS ON THE WEB, VOL. 1, NO. 1, ARTICLE 6, PUBLICATION DATE: MAY 2007 69721033 陳郁婷 Efficient algorithms for Web services selection with end-to-end QoS constraints

2 Outline Introduction System architecture Service selection algorithms for sequential flow structure Service selection algorithms for general flow structure Performance study Conclusion

3 introduction we design a broker-based architecture called QBroker, to provide end-to-end QoS management for distributed services. The main functions of Qbroker  service discovery, planning, selection,and adaptation.  efficiency is dominated by the running time of the service selection algorithm. service selection algorithms  combinatorial model  multidimension multichoice knapsack problem (MMKP)  graph model  multiconstrained optimal path (MCOP) problem In both models, a user-defined utility function of some system parameters may be specified to optimize application-specific objectives.

4 System architecture QoS service broker  Qbroker SYSTEM MODEL AND PARAMETERS  Composition Model  System Notations  Utility Function

5 Qbroker help users construct composite services  acts as an external, independent broker entity not a mandatory layer between service clients and providers service requests to service providers can be invoked by users directly

6 QoS Web service composition

7 Composition Model

8 System Notations Atomic service (component service) (s ij )  An atomic service sij is associated with a QoS vector q ij = [q 1 ij,.., q n ij ] T = t 1 + max(t 2 + p 1 ∗ t 4 + p 2 ∗ t 5, t 3 + K ∗ t 6 ) + t 7 C = c 1 + c 2 + p 1 ∗ c 4 + p 2 ∗ c 5 + c 3 + K ∗ c 6 + c 7

9 Utility Function μ – average of the QoS values σ – standard deviation of the QoS values w α and w β - weights for each QoS attribute (0 < w α, w β < 1) normalized by their averages and standard deviations  not be biased by any attribute with a large value

10 Service Selection Algorithms For Sequential Flow Structure Algorithms for the Combinatorial Model  BBLP Algorithm  WS_HEU Algorithm Algorithms for the Graph Model

11 Algorithms for the Combinatorial Model

12 BBLP Algorithm branch-and-bound fixed utility (F f )  produced by fixed classes utility upper bound (F b )  F b = F f + F LP branching class (S g )  the solution of F LP

13 BBLP iteratively performs 1. Find the utility upper bound F b for each node in the search tree branchs  F b is computed by the linear relaxation of the whole problem. 2. Select the node with the largest F b and expand it through Sg  largest x ij (closest to 1) will have the highest chance to be chosen in the final solution.  class will be fixed by adding new nodes to the search tree as the children of the current node  Each of the new nodes corresponds to select one service in S g

14 BBLP

15 WS_HEU O(N 2 (l −1) 2 m)

16 Algorithms for the Graph Model MCSP  every service candidate is a node in the service candidate graph  if a link from F i to F j exists in the function graph, then from every service candidate for F i to every candidate for F j, there’s a link  every service candidate v in the graph has a benefit value and several QoS attributes  set network QoS attributes of the links between every two nodes  add a virtual source node v s and sink node v d  The QoS attributes of these links are set to zero  add QoS attributes of the node to its incoming link and compute the utility of every link according to Utility Function

17 MCSP-K  keeping only K paths on each node  selection criteria are based on the nonlinear cost function concept that is used to combine the multiple constraints into one  The paths with K minimum g λ or ξ values will be kept at each intermediate  will never prune out a feasible path if one exists.

18 Service Selection Algorithms For General Flow Structure Algorithms for the Combinatorial Model  WS_IP Algorithm  IP Problem  WFlow Algorithm Algorithms for the Graph Model

19 Integer Programming  在一組特定的限制下尋找極大化或極小化目標函數  與線性規劃的主要差異為決策變數要求全部或部分變數必須是整數  branch-and-bound  Branch-and-Cut  Cutting Plane 0-1 Integer Programming Problem(0-1 IP Problem)  a set of service selection variables  a set of problemconstraints  an objective function Variables definition Constraints definition Objective function definition

20 branch-and-bound 可行域 OABD 内整數點,放棄整数要求后,最优解 B(9.2,2.4) Z0=58.8 而原整數規劃最優解 I(2,4) Z0=58 ,實際上 B 附近四个整數點 (9,2)(10,2)(9,3)(10,3) 都不是原規劃最優解。 I(2,4) B(9.2,2.4) D

21 問題分解 假如把可行域分解成五個互不相交的子問题 P 1 P 2 P 3 P 4 P 5 之 和, P 3 P 5 的定义域都是空集 而放棄整數要求後 P 1 最優解 I(2,4),Z 1 =58 P 2 最優解 (6,3),Z 2 =57 P 4 最優解 (98/11,2),Z 4 =52(8/11) I(2,4) B(9.2,2.4) D P1P1P1P1 P2P2P2P2 P4P4P4P4

22 樹狀圖  X 1  2  X 1  6  X 2  3  X 2  2  X 1  3  X 1  7  X 2  4  X 2  3 P1P1 P5P5 P4P4 P2P2 P3P3 P

23 IP Problem Formulation Execution Route (R) Sequential Path (P)

24 IP Problem Formulation Variables definition  x ij (0 ≤ i ≤ N,0 ≤ j ≤ L)  If service s ij is selected for class Si, x ij = 1, otherwise x ij = 0 Constraints definition  Exactly one service is selected for each service class  End-to-end QoS constraint for a sequential path  End-to-end QoS constraint for an execution route

25 IP Problem Formulation Objective function definition EU  The objective is to maximize the effective utility of all execution routes  HP  The objective is to maximize the utility of the route with the highest probability 

26 WS_IP Algorithm WS_IP lpx_intopt routine in GLPK (http://www.gnu.org/software/glpk/)http://www.gnu.org/software/glpk/ GNU Project  launched in 1984 to develop a complete Unix-like operating system which is free software: the GNU system.

27 Wflow 沿用 WS_HEU 架構  近最佳解  O(N 2 (l −1) 2 m) Wflow_EU Wflow_HP

28 Wflow_EU Feasible solution  only if all execution routes and sequential paths can meet the corresponding constraint requirements. Utility definition  Feasible upgrade  An item for feasible upgrades must meet two conditions: 1. it will increase the combined utility 2. it will not cause any execution route or sequential path to violate the constraint requirements

29 Wflow_HP Initial solution feasibility check.  only checks the feasibility of the execution route with the highest probability Solution optimization  On the first pass of the optimization procedure  only considers the feasibility of R max  After we find the feasible solution for R k, k = max  the optimization procedure will maintain the feasibility of all routes. Feasible solution for R k, k ≠ max  If the utility of Rmax has been downgraded  go back to Steps (2) and (3) to look for further improvements.

30 Algorithms for the Graph Model fork nodes for parallel and conditional paths  services selected must be the same for every branch join nodes for parallel and conditional paths  services selected for different branches need to be merged together MCSP_General MCSP-K_General

31 Merge operations Merge parallel branches  QoS values of all branches need to be combined  combining the utility of all branches Merge conditional branches  不需要 merge

32 Performance Study - Sequential Flow Structure Test Case Generation  use a degree-based Internet topology genrator, Inet 3.0  Generation power-law random graph with 4,000 nodes to represent the Internet  randomly select  25 ∼ 2,500 nodes as service candidates  2 nodes as the source and the sink  The number of service classes in the process plan ranges from 5 to 50  generate 10 flow instances  each with 10 sets of attributes for each instance  report the average value of the 100 cases

33 WS_HEU vs. BBLP BBLP/WS_HEU  5 candidates for each service class WS_HEU/HEU  saves 20%–70% running time while achieving the same utility

34 MCSP-K vs. MCSP Table V shows the set-up of 25 performance runs for evaluating MCSP-K and MCSP The performance runs are divided into 5 groups, each with the same number of service candidates (between 10–50)

35 Performance Study - General Flow Structure Test Case Generation  randomly generate composite service structures with two or more execution routes  100 structures are generated each containing two or more composition patterns (sequential, parallel, conditional, loop)  generate up to four QoS attributes and utility values for service candidates:  response time, cost, availability, and reliability.  Each is assigned a randomly generated value: q α ij (α = 1, 2, 3, 4) with a uniform distribution between [50,200].  The utility of each service Fij is also generated as a random value with a uniform distribution between [1, 500]  also generate the utility F(μ, ν) of each link as a random value with a uniform distribution between [1,200]  Finally, to check the feasibility for each execution route

36 WFlow vs. WS_IP WFlow / WS_IP WFlow  (IM1) Local selection where the service with the highest utility from each service class is selected  (IM2) MMKP selectionwhere item ρi with from each service class is selected WFlow performs very well in all situations by achieving near- optimal results (approximation ratio > 90% in most cases ) while it only requires a small portion of the computation of WS IP (less than 10%) IM2 usually achieves a better performance than IM1

37 MCSP_General vs. MCSP-K_General It can be seen that there is no guarantee that when K increases, a better utility will be achieved  utility function is not used togetherwith the cost function as the criteria to select K intermediate paths in MCSP-K algorithms  MCSP-K General does not always perform better with a larger K value

38 Conclusion algorithms are designed for two flow structures:  for service processes with a sequential flow structure  for service processes with a general flow structure including loops, conditionals, and parallel operations Both optimal and efficient heuristic algorithms have been presented We believe the proposed models and algorithms provide a practical solution to the end-to-end QoS guarantee on service processes


Download ppt "ACM TRANSACTIONS ON THE WEB, VOL. 1, NO. 1, ARTICLE 6, PUBLICATION DATE: MAY 2007 69721033 陳郁婷 Efficient algorithms for Web services selection with end-to-end."

Similar presentations


Ads by Google