Optimizing Selection of Competing Services with Probabilistic - - PowerPoint PPT Presentation

optimizing selection of
SMART_READER_LITE
LIVE PREVIEW

Optimizing Selection of Competing Services with Probabilistic - - PowerPoint PPT Presentation

Optimizing Selection of Competing Services with Probabilistic Hierarchical Refinement Tan Tian Huat 1 Competing Services Example 1 Car Booking Services Hotel Booking Services 2 Competing Services Example 2 Netflix A global


slide-1
SLIDE 1

Optimizing Selection of Competing Services with Probabilistic Hierarchical Refinement

Tan Tian Huat

1

slide-2
SLIDE 2

Competing Services – Example 1

Car Booking Services Hotel Booking Services

2

slide-3
SLIDE 3

Competing Services – Example 2

  • Netflix

– A global provider of streaming movies and TV series – leverages Microservice Architecture (opposed to monolithic architecture) – Advantages:

  • Strong module boundaries
  • Independent Deployment
  • Technology Diversity

3

slide-4
SLIDE 4

Competing Services – Example 2

4

slide-5
SLIDE 5

Composite Service

Travel Agency Composite Service (TAS)

Hotel Booking Service (HBS) Request from User Flight Booking Service (FBS) Reply User

Abstract service (e.g., Hotel Booking Service) Concrete service (e.g., the Hilton Hotel booking service)

Composite Service: A service that leverages other existing services for achieving a business goal.

Abstract Composite Service Concrete Composite Service

5

slide-6
SLIDE 6

Quality of Service (QoS)

  • Type of QoS

– Positive

  • Availability

– Negative

  • Cost, Response Time
  • QoS Constraints (can be due to Service Level

Agreement)

– Response time < 50 ms, Cost < $20

  • QoS Optimality: The best QoS based on user

preference.

Concrete Services Response Times (ms) Cost f1 200 10 f2 100 20 f3 50 30

6

slide-7
SLIDE 7

Optimal Service Selection

Given a composite service: – For each abstract service (e.g., a hotel booking service) – Select a concrete service (e.g., the Hilton Hotel booking service) for the abstract service at runtime. – Maximize the QoS optimality. – Satisfy all QoS constraints.

An NP Hard Problem!

7

slide-8
SLIDE 8

Probabilistic Hierarchical Refinement (ProHR)

Preprocessing Probabilistic Ranking Hierarchical Refinement

Abstract Composite Service Concrete Composite Service No Feasible Selection

8

slide-9
SLIDE 9

Probabilistic Hierarchical Refinement (ProHR)

Preprocessing Probabilistic Ranking Hierarchical Refinement

Abstract Composite Service Concrete Composite Service No Feasible Selection

9

slide-10
SLIDE 10

Preprocessing

Unsatisfiable Services Pruning

Concrete Services Response Times (ms) Availability f1/h1 100 0.85 f2/h2 300 0.92 f3/h3 500 0.95 f4 600 0.94 h4 600 0.8 Concrete Services for TAS

FBS HBS ≤ 600ms

Concrete Service for FBS f1,f2,f3,f4 Concrete Service for HBS h1,h2,h3,h4

10

slide-11
SLIDE 11

Preprocessing

Non-Skyline Services Pruning

FBS HBS ≤ 600ms ≤ 600ms

Concrete Services Response Times (ms) Availability f1/h1 100 0.85 f2/h2 300 0.92 f3/h3 500 0.95 f4 600 0.94 h4 600 0.8 Concrete Services for TAS Concrete Service for FBS f1,f2,f3,f4 Concrete Service for HBS h1,h2,h3,h4

11

slide-12
SLIDE 12

Probabilistic Hierarchical Refinement (ProHR)

Preprocessing Probabilistic Ranking Hierarchical Refinement

Abstract Composite Service Concrete Composite Service No Feasible Selection

12

slide-13
SLIDE 13

Probabilistic Ranking

  • Ranked the candidate concrete services for an

abstract service according their

– Local Optimality (L(s))

  • The local QoS optimality of a service

– Constraint Satisfaction Probability (P(s))

  • How likely a service can satisfy the global constraints.

Concrete Services Response Times (ms) Availability L(s) P(s) L(s)*P(s) f1/h1 100 0.85 0.5 0.25 0.125 f2/h2 300 0.92 0.6 0.5 0.3 f3/h3 500 0.95 0.5 0.25 0.125

13

slide-14
SLIDE 14

Probabilistic Ranking – Local Optimality

FBS HBS f2 h2 f1 h1 f3 h3 Service Ranking: Concrete Services Response Times (ms) Availabilit y L(s) P(s) L(s)*P(s) f1/h1 100 0.85 0.5 0.25 0.125 f2/h2 300 0.92 0.6 0.5 0.3 f3/h3 500 0.95 0.5 0.25 0.125

Why f2/h2 ranks the highest in L(s):

  • f3/h3 has the worst response time
  • f1/h1 has the worst availability
  • f2/h2 is “just nice”

14

slide-15
SLIDE 15

Probabilistic Ranking – Constraint Satisfaction Probability

Service Ranking:

FBS HBS Response time≤ 600ms, Availability≥ 0.8

Global Constraints Local Constraints

Response time: 300ms for each abstract service Availability: 0.9 for each abstract service

Concrete Services Response Times (ms) Availabilit y L(s) P(s) L(s)*P(s) f1/h1 100 0.85 0.5 0.25 0.125 f2/h2 300 0.92 0.6 0.5 0.3 f3/h3 500 0.95 0.5 0.25 0.125

Why f2/h2 ranks the highest in P(s):

  • It is the only one that fit the local constraint well
  • f1/h1 does not match for availability
  • f3/h3 does not match for response time

FBS HBS f2 h2 f1 h1 f3 h3

15

slide-16
SLIDE 16

Probabilistic Hierarchical Refinement (ProHR)

Preprocessing Probabilistic Ranking Hierarchical Refinement

Abstract Composite Service Concrete Composite Service No Feasible Selection

16

slide-17
SLIDE 17

Hierarchical Refinement

<f2>, <h2 > r=1

Optimal selection using Mixed Integer Linear Programming (e.g., Gurobi, lpsolver)

FBS HBS f2 h2 f1 h1 f3 h3

17

slide-18
SLIDE 18

Hierarchical Refinement

<f2>, <h2 > <f2, f1, f3>, <h2, h1, h3> r=1 r=2

How many services to choose at each round?

  • P(S) is the probability that given an abstract service, at least
  • ne concrete service successfully satisfies the global

constraints.

  • P(S)> Threshold
  • Threshold is increased with the number of round.

Optimal selection using Mixed Integer Linear Programming (e.g., Gurobi, lpsolver)

FBS HBS f2 h2 f1 h1 f3 h3

18

slide-19
SLIDE 19

Hierarchical Refinement

r = 1 r = 2 . . . . . All Services included We will find a solution if there is one.

19

slide-20
SLIDE 20

Experiments Result

20

slide-21
SLIDE 21

At a Higher Level

Preprocessing Probabilistic Ranking Hierarchical Refinement Search Algorithms

21

slide-22
SLIDE 22

On a Higher Perspective

ProHR

  • 1. Preprocessing -> Delete unsuitable candidate
  • 2. Ranking -> Rank the candidates

probabilistically

  • 3. Hierarchical Refinement -> Select the ranked

candidates probabilistically

22

slide-23
SLIDE 23

Conclusion

Conclusion

  • We propose Probabilistic Hierarchical

Refinement (ProHR)

  • On a higher level - an approach that can be

integrated with searching techniques (e.g., MIP, EA) for NP-hard problems.

23

slide-24
SLIDE 24

Questions?

24