A Method for Runtime Service Selection
Hong Qing Yu
Internal seminar (18/10/2007)Department of Computer Science
Outline
Web service selection problems
Competable definition Runtime service selection Multicriteria aggregation methods LSP method OWA operators A modified LSP method for service
selection Future work plan
Service selection problems based on mulitcriteria
When are the services competable? What is the most significant difference
between design time service selection and run time selection?
How can we measure the individual criterion of each service?
How can we aggregate the muilticriteria to get final evaluation result for each comparable service?
Run time competable definition
Definition 1: Services are comparable in run time, iff
their input, output, precondition, effect (IOPE) are comparable.
Input comparable: Iservice Irequirement
Output comparable: Oservice Orequirement
Precondition comparable: Pservice = Prequirement
Effect comparable: Eservice = Erequirement
Run time competable definition
Example
Input = {departure time, return time, name}Output = {Reference number}Precondition = {Registered, login}Postcondition = {Ticket is blocked}
Input = {departure time, return time}Output = {Reference number, price}Precondition = {Registered, login}Postcondition = {Ticket is blocked}
Input = {departure time, return time}Output = {Reference number}Precondition = {Registered, login}Postcondition = {Ticket is blocked}
Runtime service selection
Runtime service selection: Automatic selecting a best suitable service
based on desired Non-functional criteria for dynamically service composition. (If there are comparable services)
For example
Register
Flight Booking
Hotel Booking
Payment
Runtime service selection
Non-functional properties/QoS includes:[IBM]AvailabilityAccessibility IntegrityPerformance Reliability Regulatory SecurityCost
[More]Time consumingLocationLanguageDevices supporting…
MultiCriteria aggregation methods
Arithmetric aggregation
Geometric aggregation
MultiCriteria aggregation methods
LSP aggregation
LSP method - orness
Orness degree (d) depends on what kind of aggregation function M(x)
0.5<d<1 : replaceability 0<d<0.5 : simultaneity 0<d<1/3 : mandatory
LSP method - example
Integrity Cost Reputation
0.5 0.2
0.9 0 0.3
0.7 0.2 0.1
0.4 0.5 0.1
0.45 0.36
0.66 0.39
2
0.2
Without r
With r0.03
0.330.47
0.76
0.6
OWA: a fuzzy set operator
Definition: An OWA operator of dimension n is a mapping F : Rn -> R, that has an associated n vector W = (w1, w2, …wn) T such as wi [0, 1];
1 i n, and W = (w1+w2+…+wn = 1).
F(a1, a2, … an) = w1b1+w2b2+…+wnbn
bj is the j-th largest element of the bag
<a1, a2, … an >.
OWA - example
For example, assume W = [0.4, 0.3, 0.2, 0.1] ,
F(0.7,1, 0.3, 0.6) = (0.4)(1)+(0.3)(0.7)+(0.2)(0.6)+(0.1)
(0.3)=0.76.
A fundamental aspect of this operator is the re-ordering step, an aggregate ai is not associated with a particular weight wi but rather a weight is associated with a particular ordered position of aggregate
OWA - orness
This orness measurement function can be proved equal to Fodor’s orness measurement function, when OWA operator is applied.
1
1
)(1
1 n
iiorness in
n
Combining OWA operator with LSP
Integrity Cost Reputation
0.5 0.2
0.9 0 0.3
0.7 0.2 0.1
0.4 0.5 0.1
0.6
(0.6, 0.5, 0.2) (0.1, 0.7, 0.2)w (0.1*2+0.7)/2=0.45 (0.9, 03, 0) (0.7, 0.1, 0.2)w (0.7*2+0.1)/2=0.75
Orness (d)=(0.45+0.75)/2 = 0.600 r ≈ 2.0
(0.6, 0.5, 0.2) (0.1, 0.4, 0.5)w (0.1*2+0.4)/2=0.3 (0.9, 03, 0) (0.4, 0.1, 0.5)w (0.4*2+0.1)/2=0.45
Orness (d)=(0.30+0.45)/2 = 0.375 r ≈ 0.2
Dujmovic’s LSP method
Dujmovic’s LSP method includes five major steps:
1. Specifying evaluation criteria (manually)
2. Defining evaluation methods for each criterion (manually)
3. Orness degree analysis (manually)
4. Local aggregation and global aggregation (manually)
5. Cost/benefit analysis (manually)
A modified LSP method for service selection
Our proposed the modified LSP method for service selection has four major steps:
1. Specifying evaluation criteria for a group services which are in the same services category (manually)
2. A unified type-based evaluation methods are defined for all kinds of criteria (automatically)
3. OWA combining degree analysis/decision (automatically)
4. Aggregating soft criteria and hard criteria to get final result (automatically/statically)
A modified LSP method for service selection
1. Service selection concept model
-name-description
Category -name-type-weight-value
Criterion
-name
Operation
1
-criteria
*
*
*
-name-endpoint-description
Service
-service 1
-operations *
-url-attribute-value
MetaData
1
-data
*
-criterion1
-data1
0<W<1, bigger evaluation value is desired (soft)-1<W<0, smaller evaluation value is desired (soft)W=1, the criterion is hard requirement
Relevance engine
2. Type-based evaluation methods
otherwisevv
vv
Wiffvv
vv
E
minmax
max
minmax
max 01
otherwise
metiscriteriaifE
0
1
settheofelement
eachforscoreabeingewithneeeE in /...21
(1) Value metric
(2) Boolean metric
(3) Set metric
A modified LSP method for service selection
Automatic orness analysis and calculation:
W = (w1, w2, … wn)
F1 = (a11, a21, … a1n)->W1’->d1
F2 = (a21, a22, … a2n)->W2’->d2
… Fn = (an1, an2, … ann)->Wn’->dn
Orness(d)= n
dndd ......21
A modified LSP method for service selection
Aggregation
1 1,0 with 1
/12211 =ωE)Eω++Eω+Eω(=L
n
=ii
rrnn
rr
0
>0
0
>0
0
Conclusion
Web service selection problems
Competable definition Runtime service selection Multicriteria aggregation methods LSP method OWA operators A modified LSP method for service selection
Future work plan
Complexity analysis Implementation and evaluation
Questions