22
1 DIANE An Integrated Approach to Automated Service Discovery, Matchmaking and Composition Ulrich Küster 1 , Birgitta König-Ries 1 , Mirco Stern 2 and Michael Klein 2 1 University Jena, 2 University Karlsruhe, Germany ukuester|[email protected] mirco.stern|[email protected]

An Integrated Approach to Automated Service Discovery ...€¦ · For humans trivial, for a matchmaker not! Main problems: efficiently determine good configuration ensure constraints

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: An Integrated Approach to Automated Service Discovery ...€¦ · For humans trivial, for a matchmaker not! Main problems: efficiently determine good configuration ensure constraints

1

DIANE

An Integrated Approach to AutomatedService Discovery, Matchmaking and

Composition

Ulrich Küster1, Birgitta König-Ries1, Mirco Stern2 and Michael Klein2

1University Jena, 2University Karlsruhe, Germany

ukuester|[email protected]|[email protected]

Page 2: An Integrated Approach to Automated Service Discovery ...€¦ · For humans trivial, for a matchmaker not! Main problems: efficiently determine good configuration ensure constraints

WWW07 - Banff, Canada - May 20072

Motivating Example

screws only

shipping only

integrated sale and shipping

"I need 1000 units of screws at

my factory in Karlsruhe"

Page 3: An Integrated Approach to Automated Service Discovery ...€¦ · For humans trivial, for a matchmaker not! Main problems: efficiently determine good configuration ensure constraints

WWW07 - Banff, Canada - May 20073

Motivating Example (cont.)

� For humans trivial, for a matchmaker not!

� Main problems:

� efficiently determine good configuration

� ensure constraints on composition (and configuration)

� shipping departs where screws are purchased

� specific screw packages must adhere to shippers restriction on weight and size

� …

� Need to express such constraints

� Need a matcher thatautomatically composesservices and handlesthose constraints efficiently

screws only

shipping only

integrated sale and shipping

"I need 1000 units of screws at my factory in

Karlsruhe"

Page 4: An Integrated Approach to Automated Service Discovery ...€¦ · For humans trivial, for a matchmaker not! Main problems: efficiently determine good configuration ensure constraints

WWW07 - Banff, Canada - May 20074

Agenda

1. Introduction and Motivation

2. Background information on DSD(service descriptions and matchmaking)

3. Adaptation to matching multiple effects

4. Evaluation and Summary

Page 5: An Integrated Approach to Automated Service Discovery ...€¦ · For humans trivial, for a matchmaker not! Main problems: efficiently determine good configuration ensure constraints

WWW07 - Banff, Canada - May 20075

DIANE Service Descriptions (DSD)

� Goal: Complete and efficient automation of service discovery, matchmaking and invocation

� Layered lightweight ontology language

� concepts from frame languages, DLs, fuzzy logic and modal logic

� Specific elements for service descriptions

� more intuitive modelling

� fine-tuned expressivity

� efficient yet precise matchmaking

Page 6: An Integrated Approach to Automated Service Discovery ...€¦ · For humans trivial, for a matchmaker not! Main problems: efficiently determine good configuration ensure constraints

WWW07 - Banff, Canada - May 20076

Country

== germany

Cityy

city

locatedIn

Characteristics of DSD (1)

� Set-based declarative descriptions

� Vendors sell thousands of articles

� Shipper provide transportationto a multitude of locations

� Offer described as set of possible effects

� Requests accept differingservices with differing preference

� Request described as fuzzyset of acceptable effects

� Semantics: One out of the described set of effects is requested / will be created

Address

Page 7: An Integrated Approach to Automated Service Discovery ...€¦ · For humans trivial, for a matchmaker not! Main problems: efficiently determine good configuration ensure constraints

WWW07 - Banff, Canada - May 20077

Characteristics of DSD (2)

� Configuration by Variables

� Link inputs and outputs of a service with concepts in thedescription

� Offer-In-Variables (configure offers / provide input)

� Offer-Out-Variables (provide output)

Input: German city

Output: Complete address in

that city

Page 8: An Integrated Approach to Automated Service Discovery ...€¦ · For humans trivial, for a matchmaker not! Main problems: efficiently determine good configuration ensure constraints

WWW07 - Banff, Canada - May 20078

An exemplary offer description (excerpts)

upper

offer : Serviceupper.profile

: ServiceProfilepresents

effect

AddressIN,e,1IN,x,1 Address

IN,e,1IN,x,1

fromAddress toAddress

PhysicalEntity

cargo

WeightMeasureIN,e,1IN,x,1

weight

Country

in {germany, switzerland,

austria}

Cityy

city

locatedIn

Country

in {germany, switzerland,

austria}

city

locatedIn

WeightUnit

== pound

Double

<=50

valunit

Shipped

City

Page 9: An Integrated Approach to Automated Service Discovery ...€¦ · For humans trivial, for a matchmaker not! Main problems: efficiently determine good configuration ensure constraints

WWW07 - Banff, Canada - May 20079

Matching DSD-Descriptions

� Match fuzzy request set r with configurable offer set o

� Compute fuzzy containment valuesubset Є [0, 1] of o in r(How well is the offer contained in the requested effects?)

� configure o such as to maximize subset

� Implementation descends through description graphs, fills variables with optimal values, recursively computes subset for each element, combines subset values according to strategies

Page 10: An Integrated Approach to Automated Service Discovery ...€¦ · For humans trivial, for a matchmaker not! Main problems: efficiently determine good configuration ensure constraints

WWW07 - Banff, Canada - May 200710

Matching Example (excerpts)

unit

upper

request : Service

upper.profile

: ServiceProfile

presents

effect

Shipped

0.3 * shippingTime + 0.7 * price

toAddresscargo

Address

String

== "Mr. Barney Gumble"

name

String

== "320 East 7th Street"

street

String

== "10021"

zipCode

City

== newyork

city

weight

val

Double

== 10

PhysicalEntity

WeightMeasure

WeightUnit

== pound

upper

offer : Service

upper.profile

: ServiceProfile

presents

effect

AddressIN,e,1IN,x,1

toAddress

PhysicalEntity

cargo

WeightMeasureIN,e,1IN,x,1

weight

Country

in {germany, switzerland,

austria, usa}

city

locatedIn

WeightUnit

== pound

Double

<=50

valunit

Shipped

City

Multiple Effects ???

Page 11: An Integrated Approach to Automated Service Discovery ...€¦ · For humans trivial, for a matchmaker not! Main problems: efficiently determine good configuration ensure constraints

WWW07 - Banff, Canada - May 200711

Agenda

1. Introduction and Motivation

2. Background information on DSD(service descriptions and matchmaking)

3. Adaptation to matching multiple effects

4. Evaluation and Summary

Page 12: An Integrated Approach to Automated Service Discovery ...€¦ · For humans trivial, for a matchmaker not! Main problems: efficiently determine good configuration ensure constraints

WWW07 - Banff, Canada - May 200712

Expressing constraints – intuitive approach

Address

Screw

ShippedOwned

upper

request : Service

upper.profile

: ServiceProfile

Address

presents

cargoentity

effecteffect

location

fromAddress

toAddress

� Intuitive Approach: Point to the same concept

� Breaks tree structure of descriptions

� Poses problems when configuring an offer

� Need to consider all possible combinations of configurations� not efficient

Page 13: An Integrated Approach to Automated Service Discovery ...€¦ · For humans trivial, for a matchmaker not! Main problems: efficiently determine good configuration ensure constraints

WWW07 - Banff, Canada - May 200713

Expressing constraints – Value Propagation

Address

Screw

ShippedOwned

upper

request : Service

upper.profile

: ServiceProfile

Address

presents

effect 2effect 1

location

fromAddress

toAddress

Screw

Address

Screw

defines $xScrew

uses $x

Address

defines $y

Address

uses $y

entity cargo

� Effects are ordered

� Configuration will be performed at the first encounter (locally and no more globally optimized)

� Chosen value will be propagated

� Preprocessing prevents fatal configurations(can be done efficiently)

Page 14: An Integrated Approach to Automated Service Discovery ...€¦ · For humans trivial, for a matchmaker not! Main problems: efficiently determine good configuration ensure constraints

WWW07 - Banff, Canada - May 200714

A Three-Step Matchmaking Algorithm

Coverage 2Coverage 1

Service 3'(300 packages

of screw #93 to

Karlsruhe)

Service 1'(500 packages

of screw #384

in Hamburg)

Service 2'(shipping from

Hamburg to

Karlsruhe)

Plug-In Matcher

(effect - to – effect, ignores variables)

Service

request

descrip-

tion

Service

offer

descrip-

tions

Service Composer

(1. compute effect coverages, 2. restrict variables)

Final Matcher

(effect - to - effect, fills variables)

Service 4

(shipping

between

US-DE)

Service 3

(vendor

with

shipping)

Service 2

(shipping

in DE,

AU, CH)

Coverage 2

Service 3

(vendor

with

shipping)

Coverage 1

Service 1*

(vendor in

DE)

Service 2*

(shipping

in DE)

*) Variables are restricted (e.g.

warehouses outside of operation

range of shipper are excluded)

MV: 0.7MV: 0.9 MV: 0.8

MV: 0.72

Remaining

offers

Service 1

(vendor in

DE, FR)

Service 5

(vendor in

Asia)

Remaining

offers(all combinationscontaining Service4 and 5 can not berestricted properlyin step 2 and are

dismissed)

MV: 0.7

Final result(two readily

configured options,Coverage 1 beingslightly better than

Coverage 2)

A

B

C

Page 15: An Integrated Approach to Automated Service Discovery ...€¦ · For humans trivial, for a matchmaker not! Main problems: efficiently determine good configuration ensure constraints

WWW07 - Banff, Canada - May 200715

A Matching Algorithm for Multiple Effects (1)

� Matching on an effect-to-effect base

� Ignores variables (does not configure offer yet)

� Greatly reduces number of remaining offers (very precise and selective matching)

Page 16: An Integrated Approach to Automated Service Discovery ...€¦ · For humans trivial, for a matchmaker not! Main problems: efficiently determine good configuration ensure constraints

WWW07 - Banff, Canada - May 200716

A Matching Algorithm for Multiple Effects (2)

� Compute all coverages (polynomial complexity)

� Restrict variables to the cut of linked concepts (linear complexity)

� Filter coverages with empty cut (incompatible services)

Page 17: An Integrated Approach to Automated Service Discovery ...€¦ · For humans trivial, for a matchmaker not! Main problems: efficiently determine good configuration ensure constraints

WWW07 - Banff, Canada - May 200717

A Matching Algorithm for Multiple Effects (3)

� Matching on an effect-to-effect base

� Fills variables / configures offer (includes value propagation)

� Computes overall match value

Page 18: An Integrated Approach to Automated Service Discovery ...€¦ · For humans trivial, for a matchmaker not! Main problems: efficiently determine good configuration ensure constraints

WWW07 - Banff, Canada - May 200718

Agenda

1. Introduction and Motivation

2. Background information on DSD(service descriptions and matchmaking)

3. Adaptation to matching multiple effects

4. Evaluation and Summary

Page 19: An Integrated Approach to Automated Service Discovery ...€¦ · For humans trivial, for a matchmaker not! Main problems: efficiently determine good configuration ensure constraints

WWW07 - Banff, Canada - May 200719

Experimental Evaluation of Approach

� Matchmaker fully implemented (Java)

� 11 service offer descriptions at different granularity

� 11 request descriptions with one to four effects

� 40 options to create matching compositions

� Runtime for each match on average less than 1 s

� Runtime dominated by Plug-In-Match

� composition doesn't compromise efficient matching

0

500

1000

1500

2000

2500

1 2 3 4 5 6 7 8 9 10

groups of request-offer-pairs

run

tim

e (

ms)

Pre-Match Plug-In-Match Service Composition Final Match

Composition

Page 20: An Integrated Approach to Automated Service Discovery ...€¦ · For humans trivial, for a matchmaker not! Main problems: efficiently determine good configuration ensure constraints

WWW07 - Banff, Canada - May 200720

Summary

� Approach integrates automated composition into matchmaking

� Main problems:

� proper configuration of offers

� compatibility of used offer configurations

� Addressed problems by

� extending service description language

� adapting matching algorithm

� introducing value propagation semantics

� Implemented and tested approach

� Working solution for considered case

� Matching time not dominated by composition

Page 21: An Integrated Approach to Automated Service Discovery ...€¦ · For humans trivial, for a matchmaker not! Main problems: efficiently determine good configuration ensure constraints

WWW07 - Banff, Canada - May 200721

Ongoing Work

� Better (but still efficient) configuration possible using techniques similar to top-k query answering?

� Other composition cases apart from multiple effects (like service chaining to transform inputs and outputs)

� Objective evaluation and certification by SWS-Challenge initiative (www.sws-challenge.org) / W3C SWS-Testbed Incubator Group (www.w3.org/2005/Incubator/swsc/)

Page 22: An Integrated Approach to Automated Service Discovery ...€¦ · For humans trivial, for a matchmaker not! Main problems: efficiently determine good configuration ensure constraints

WWW07 - Banff, Canada - May 200722

Thank you for your attendance!

Questions?

Ulrich Küster

[email protected]

DIANE project (services in ad hoc networks)

http://hnsp.inf-bb.uni-jena.de/DIANE/