anne h. h. ngu

19
Semantic Brokering over Dynamic Heterogeneous Web Resources Anne H. H. Ngu Department of Computer Science Southwest Texas State University November 2002 Novemberr 2002 2 Overview Objectives of data integration in InfoSleuth system. InfoSleuth architecture Role of brokering and ontology in data integration Multibrokering design and implementation Performance evaluation of multibrokering system Dynamic integration and coordination of services

Upload: others

Post on 19-Apr-2022

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Anne H. H. Ngu

1

Semantic Brokering over Dynamic Heterogeneous Web Resources

Anne H. H. NguDepartment of Computer ScienceSouthwest Texas State University

November 2002

Novemberr 2002 2

Overview

Objectives of data integration in InfoSleuth system.InfoSleuth architectureRole of brokering and ontology in data integrationMultibrokering design and implementationPerformance evaluation of multibrokering systemDynamic integration and coordination of services

Page 2: Anne H. H. Ngu

2

Novemberr 2002 3

Goals of InfoSleuth

Development of technologies and tools to support concept-based access to information sources in a dynamically changing web environment through mediated interoperation of agents.

•It allows concept-based search, retrieval and fusion of related information from changing set of web resources.•It monitors dynamic information sources for relevant changes and aggregates changes to multiple level of abstraction and notification.•It provides for easy evolution by allowing plug-in of new users, new resources and new services.

Novemberr 2002 4

InfoSleuth Architecture

InformationServices

Subscription agents

Ontology agents

UserAgent

User Agent

ResourceAgent

ResourceAgent

ResourceAgent

Ontologies

Broker agents

Text, Images,Video

StructuredDatabases

Query agents

Monitor agent

Page 3: Anne H. H. Ngu

3

Novemberr 2002 5

InfoSleuth Architecture (Cont.)

Core agents collaborate to service requests over a common ontology. Resource agents serve as mediators to external information sources such as structured DBMS, semi-structured web pages, multimedia sources etc.User agents act as proxies for individual users or group of users.

Novemberr 2002 6

Overview of how agents collaborate

As each agent comes online, it advertises its capabilities.

BrokerAgent

Joe’s UserAgent

MRQ Agent DB1 ResourceAgent

DB2 ResourceAgent

User JoeMultiresource Query processing (SQL)

DB Resource (SQL, classes C1, C2)

DB Resource (SQL, classes C2, C3)

Page 4: Anne H. H. Ngu

4

Novemberr 2002 7

Overview of how agents collaborate (Cont.)

User Joe submits SQL query select * from C2to his user agent

BrokerAgent

Joe’s UserAgent

MRQ Agent

DB1 ResourceAgent

DB2 ResourceAgentWho has

multiresource query processing (SQL)?

MRQ Agent

Select * from C2

Novemberr 2002 8

Overview of how agents collaborate (Cont.)

MRQ agent looking for resource agents that can answer an SQL query involving class C2.

BrokerAgent

Joe’s UserAgent

MRQ AgentDB1 ResourceAgent

DB2 ResourceAgent

Who has resources for class C2 (SQL)?

DB1 Resource Agent and DB2 Resource Agent

Select * from C2

Select *from C2

Page 5: Anne H. H. Ngu

5

Novemberr 2002 9

Broker Agent Functions

Repositoryaccepts and stores agent advertismentsmaintains the state of the system, periodically prunning non responding agents

Matchmakerreasons over agent capabilities and their information contentsrecommends only potentially relevant agents for a task

Novemberr 2002 10

Focused Ontology and Ontology Fragments

One single global ontologyrelationships among different aspects of agent capabilities can be represented

0 difficult to manage inter-domain relationships and to add new ontological concepts

Multiple, focused ontologies adding a new ontology is easycapabilities of agents can be composed easily in terms of ontology fragments

Page 6: Anne H. H. Ngu

6

Novemberr 2002 11

Agent Capabilities, Advertisements and Queries

.

.

.

Capability 1

Capability 2

Capability n

or

or

Any subset of {

Ontology Fragment 1A

Ontology Fragment 1B

…..…..Ontology

Fragment 1M}

Query Capability

Ontology Fragment 1A

andOntology

Fragment 1Band

……..……..

OntologyFragment 1M

Agent Capabilities and Advertisments Agent Capabilities and Queries

Novemberr 2002 12

Example of an advertisement<advertisement>

<capability NAME-”ResourceAgent5Cap”><ontology_fragment NAME=“_infoSleuth” VERSION=“1.0”

<class NAME=“agent”<slot NAME=“agent address” VALUE=“tcp:research.telcordia.com:7000”</slot><slot NAME=“agent name” VALUE=“ResourceAgent5”></slot><slot NAME=“type” VALUE=“resourceagent”></slot>

</class></ontology_fragment><ontology_fragment NAME=“_conversation” VERSION=“1.0”>

….</ontology_fragment><ontology_fragment NAME=“sql” VERSION=“1.0”>

<class NAME=“select-statement”></class><ontology_fragment><ontology_fragment NAME=“healthcare” VERSION=“1.0”>

<class NAME=“diagnosis”><slot NAME=“diagnosis-code”> </slot> </class>

<class NAME=“patient”> <slot NAME=“patient-age”></slot>

<constraint> <set_interval> MIN_VALUE=“43” MAX_VALUE=“75” </set_interval></constraint><key NAME=“patient-id”></key>

</class>…

</capability> </advertisement>

Page 7: Anne H. H. Ngu

7

Novemberr 2002 13

Example of a Query<query><capability NAME=“_generic_query_capability”>

<ontology_fragment NAME=“_infosleuth” RETURN_CLASSES=“false”><class NAME=“agent” RETURN_KEYS=“false” RETURN_SLOTS=“false” SLOT_SEMANTICS=“all”

<slot NAME=“agent name” RETURN_CONSTRAINTS=“true”></slot><slot NAME=“agent address” RETURN_CONSTRAINTS=“true”></slot> <constraint_conjunct> </constraint_disjunct>

<slot NAME=“type” VALUE=“resourceagent”></slot></constraint_disjunct></constraint_conjunct></class>…

<ontology_fragment NAME=“healthcare” RETURN_CLASSES=“true” CLASS_SEMANTICS=“any”><class NAME=“patient” RETURN_KEYS=“true” RETURN_SLOTS=“true” SLOT_SEMANTICS=“any”>

<constraint_conjunct><slot NAME=“patient-age” RETURN_CONSTRAINTS=“true”><set_interval> MIN_VALUE=“45” MAX_VALUE=“65” </set_interval>

</constraint_conjunct></class>……

</query>

Novemberr 2002 14

Problems with Single Broker Architecture

A single point of failureRepresent a hard limit to scalabilityThe reasoning engine degrades as the broker’s repository grows bigger

Page 8: Anne H. H. Ngu

8

Novemberr 2002 15

Principle for Scalable Multibrokering

Peer-to-Peer Architecture (not hierarchical)brokers may freely advertise or unadvertise to any broker

Non-broker agents must advertise to more than one broker

robustness increases if agents advertise redundantly to several brokers

Brokers should specializehelps in limiting search space when broker specialities are known and advertised.

Novemberr 2002 16

Multibroker Architecture

BrokerAgent1

BrokerAgent2

BrokerAgent4

BrokerAgent3

ResourceAgent 5

ResourceAgent 6

ResourceAgent 7

ResourceAgent 1

ResourceAgent 2

ResourceAgent 3

ResourceAgent 4

ResourceAgent 8

QueryAgent

UserAgent 2

UserAgent 1

Page 9: Anne H. H. Ngu

9

Novemberr 2002 17

Implementation of Multibrokering

Collaborative Reasoninghow to ensure that brokers process queries collaboratively and thoroughly

Integrating new broker and non-broker agentshow new broker find other brokershow non-broker agents find the brokers

Maintaining Connectivityhow to ensure that all brokers and agents remain interconnected

Novemberr 2002 18

Collaborative Reasoning

Each broker can forward queries to other brokers that may have other matching agents.Inter-broker search is initiated based on the nature of the request and a search policy.

Recommend-one - brokers are searched one by one in a breadth-first manner until a match is found.Recommend-all - brokers are searched in parallel until all accessible brokers have been queried.Hop count - defines how many hops should be traversed for a given query.broker trail - prevents cyclical propagation of search.

Page 10: Anne H. H. Ngu

10

Novemberr 2002 19

Integrating new agents and brokers

New broker is configured with a list of other brokers, or a well known port it should advertised to.New broker advertises its location information and capabilities to other brokers.Non-broker agent is configured with a list of known brokers to connect to on startup.Non-broker agent can re-configure to a different broker or a different set of brokers later by monitoring quality of service of current brokers.

Novemberr 2002 20

Maintaining Connectivity

Redundant advertisingall agents keep a known-broker-list and a connected-broker-listeach agent or broker advertised to the known-broker-list, until the connect-broker-list reaches its max configured parameter

Robust connectivitybroker periodically pings all agentsagent periodically ping all its connected brokers.re-advertise when the connected-broker-list is less than the max configured number.

Page 11: Anne H. H. Ngu

11

Novemberr 2002 21

Scalability Experiments

Novemberr 2002 22

Experimental Query Streams

QUERY TEST STREAM NUMBER OF RESOURCE AGENTSSA (single agent) 1DA (double agent) 24A (four agent) 4VF (vertical fragmentation) 4CH (class hierarchy) 4FH(fragmentation & class hierarchy) 4

Page 12: Anne H. H. Ngu

12

Novemberr 2002 23

Experimental configurations

EXPERIMENT 4A DA SA VF FH CH # RESOURCE AGENTS

A X 4

B X X X 4

C X X X X 8

D X X X X X 12

E X X X X X X 16

F X X X X X X 16

Experiment F is used to check the effect of broker specialization. Thus resource agentsthat pertain to a particular query stream are kept with the same broker

Novemberr 2002 24

Experimental Results

In an underloaded system, a single broker system has a slightly better response time than a multi-broker system.

1:1.1In an overloaded system, a multi-broker system has an improved response time. As the load grows, the difference is significant

1:0.3Specialized brokers out perform replicated brokersSimulation experiments were also carried out which further confirmed the scalability of the multibrokering system.

Page 13: Anne H. H. Ngu

13

Novemberr 2002 25

Good brokering principles

Brokering should encompass both syntactic and semantic properties of services.Common ontology need to be established for semantic brokering. The focused ontologies approach allows different aspects of agent functionality to be specified and composed.Multibrokering enables scalable multi-agents system to be builtPrinciples of robust multibrokering and implementation issues:

How brokers are connectedHow brokers discover other brokersHow agents discover other agentsWhen to initiate inter-broker searchHow to maintain connectivity

Novemberr 2002 26

Related Work

Multidatabases approach:SIMS (Ariadne) at ISITSIMMIS at StanfordInformation Manifold at ATT labsDISCO at INRIA

Component-based approach:CORBA trading object service

Other agent based approach:RETSINA at CMUCOOL at Toronto University

Page 14: Anne H. H. Ngu

14

Novemberr 2002 27

Agent-approach towards Integration of Services

New on-line economy requires the ability to efficiently and effectively share business processes and data across the Web and across organization boundaries.Multi-agent system has shown to be a viable technology for data integration.However, there is a need to move from data to process or service integration.

Novemberr 2002 28

Example of service integration

Customer

Services are accessible on the web

Flight booking Hotel booking Car renting

Driving time calculate

Driving time > ?

Driving time <= ?

Start

End

Attraction Searching Bike renting

Start

Page 15: Anne H. H. Ngu

15

Novemberr 2002 29

From Data to Service Discovery

Service ontology (e.g. WSDL, DAML+S)defines the basic concepts and terminologies which will be used by all the participants in a specific domain

Service registering/advertising (e.g. UDDI, portal, advertising)a tool for service providers to register their services using a consistent ontology

Service Selection based on:semantic-brokering negotiationauction

WebService Agents (service interface and proxy)

Novemberr 2002 30

Agent-based Approach to Dynamic Composition of Services

ResourceAgent

WebServiceAgent

WebServiceAgent

ProcessAgent

BrokerAgent

BrokerAgent

OntologyAgent

UserAgent

UserAgent

User can submit a workflow through the User Agent which will first ask the broker agent fora process agent. The process agent upon receiving the workflow definition will parse it and for each task query the broker for a suitable service agent to execute the task.

Need to add servicefocused ontology

Need to mapagent conversation to Web serviceinvocation

Set up workflow

Page 16: Anne H. H. Ngu

16

Novemberr 2002 31

UML class diagram for service ontology

Service Ontology

Domain Service class

Operation Operation NameSynonyms

ParameterSpecification

input output

1

*

*

*1

* *

Novemberr 2002 32

Example of a Service Ontology<advertisement>

<capability NAME-”ServiceAgent5Cap”><ontology_fragment NAME=“_infoSleuth” VERSION=“1.0”

<class NAME=“agent”<slot NAME=“agent address” VALUE=“tcp:research.telcordia.com:7000”</slot><slot NAME=“agent name” VALUE=“ServiceAgent5”></slot><slot NAME=“type” VALUE=“serviceagent”></slot></class>

</ontology_fragment><ontology_fragment NAME=“_conversation” VERSION=“1.0”>

<class NAME=“conversation”><slot NAME=“type”><set_constraint><![CDATA[“ask-all”, “ask-one”, “subscribe”]]></set_constraint><slot NAME=“message” VALUE=“SOAP”></slot</class></ontology_fragment>

<ontology_fragment NAME=“_trip_planning _services” VERSION=“1.0”><class NAME=“domain”>

<slot NAME=“domainSynonym” VALUE=“travel”></slot><slot NAME=“rootDomain” VALUE=“tourism”></slot>/class>

<class NAME=“booking-flight-ticket”></class><slot NAME=“operation” VALUE=“Find-Ticket”></slot><slot NAME=“INPARAM1” VALUE=“DepartingAirport” TYPE=“String”></slot>

<constraint><states><value>Texas</value><value>California</value> </states></constraints>

<slot NAME=“INPARAM2” VALUE=“ArrivalAirport” TYPE=“String”></slot><slot NAME=“OUTPARMA1” VALUE=“Preice” TYPE=“float”></slot><slot NAME=“operation” VALUE=“Book-Ticket”></slot>

……</class>

<ontology_fragment>

Page 17: Anne H. H. Ngu

17

Novemberr 2002 33

WebService Agents need to support Conversational Interactions

Process specificationObtain-SP-FQDN

Obtain-SP-FQDN

Init Cable ModemInit Cable Modem

Reset Cable Modem

Map Features

Service interface Service proxy

Proxyimplementation

Input parameters Output parameters

State machine with application-dependentstates and operations

Pointer to the proxy

implementation(a Java class)

External system implementing desired service

Control and monitoringinteractions

WebService Agent

• Service interface captures abstractions of external applications using state machine• The service proxy is an adapter to external systems• States and operations defined in the interface are used to control and converse with the external service

• Service interface captures abstractions of external applications using state machine• The service proxy is an adapter to external systems• States and operations defined in the interface are used to control and converse with the external service

WebService Agent

Novemberr 2002 34

Agent-based Approach to Data and Process Integration

CompanyDatabase Database

Resource

Company Ontology

Hoovers Online Web Site

ResourceUS Patent

Office Web SiteResource

NewsFeed Web Site

ResourceQuery

Sub-scription

events

Virtual Blackboard

DatabaseResource

Intermediate and stored knowledge

ComplexEvent

Detector

Analysis

DeviationDetector

Analysis

User AgentSet up processes/workflow

Process Agent

Process Ontology

Examine results

Page 18: Anne H. H. Ngu

18

Novemberr 2002 35

Process Agent

T3

T1

T4

X > ?

X <= ?

Start

EndT2

??

??

??

??

Web services

Process Agent

T3

T1

X > a

X <= a

Start

EndT2

s3

s7

s9

s4

T4

Process Template

Process Instance

Process Agent

Result

Step 1Service Selection

Step 2Process Execution

User profileinput

Novemberr 2002 36

Dynamic generation of composite Web Service (workflow)

One of the fundamental assumptions in WFMS is that workflow schema or process must be predefined.It is a daunting task to predefined every possible workflows with every possible possibilities.Due to frequent changing business conditions, it is necessary to alter or modify business processes on the fly.This implies the need for dynamic generation of workflow.One approach is to define business rules and business objective and generate workflow dynamically by using backward chain rules, forward chain rules, service selection rules and data flow rules.

Page 19: Anne H. H. Ngu

19

Novemberr 2002 37

Other Research Projects

Process-based approach to semantic B2B Integration Peer-to-peer provisioning of dynamic web services Multimedia databases

modeling and querying of moving objectsindexing scheme to support fast and accurate retrieval of multimedia data