Transcript Document
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
Output comparable: Oservice
Irequirement
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
Flight
Booking
Register
Payment
Hotel
Booking
Runtime service selection
Non-functional properties/QoS includes:
[IBM]
[More]
Time consuming
Availability
Location
Accessibility
Language
Integrity
Devices supporting
Performance
…
Reliability
Regulatory
Security
Cost
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
0.5
Cost
0.2
Reputation
0.6
0.45
0.36
Without r
0.9
0
0.3
0.66
0.7
0.2
0.1
2
0.4
0.5
0.1
0.39
0.2
0.47
0.33
With r
0.76
0.03
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 reordering 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
orness
1 n 1
( n i ) i
n 1 i 1
This orness measurement function can be proved equal
to Fodor’s orness measurement function, when OWA
operator is applied.
Combining OWA operator with LSP
Integrity
Cost
Reputation
0.5
0.2
0.6
0.9
0
0.3
0.7
0.2
0.1
0.4
0.5
0.1
(0.6, 0.5, 0.2)
(0.9, 03, 0)
(0.1, 0.7, 0.2)w
(0.7, 0.1, 0.2)w
Orness (d)=(0.45+0.75)/2 = 0.600
(0.6, 0.5, 0.2)
(0.9, 03, 0)
(0.1, 0.4, 0.5)w
(0.4, 0.1, 0.5)w
Orness (d)=(0.30+0.45)/2 = 0.375
(0.1*2+0.7)/2=0.45
(0.7*2+0.1)/2=0.75
r ≈ 2.0
(0.1*2+0.4)/2=0.3
(0.4*2+0.1)/2=0.45
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
Criterion
Category
-criteria
-name
-description
1
*
-name
-type
-weight
-value
*
1
-criterion
1
-data
*
MetaData
-data
Operation
-name
1
-operations
*
-service
1
Service
-name
-endpoint
-description
*
-url
-attribute
-value
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
vmax v
1
vmax vmin
E
vmax v
vmax vmin
1
E
0
iff W 0
(1) Value metric
otherwise
if criteria is met
(2) Boolean metric
otherwise
E e1 e2 ... en / n
with ei being a score for each
element of the set
(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
d1 d 2... ...dn
Orness(d)=
n
A modified LSP method for service selection
Aggregation
n
L = ( ω1 E1r + ω2 E2r + + ωn Enr )1/ r with 0 E 1, ωi = 1
i=1
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