ontology aware software service agents meeting ordinary user needs on the semantic web n.
Download
Skip this Video
Download Presentation
Ontology Aware Software Service Agents: Meeting Ordinary User Needs on the Semantic Web

Loading in 2 Seconds...

play fullscreen
1 / 47

Ontology Aware Software Service Agents: Meeting Ordinary User Needs on the Semantic Web - PowerPoint PPT Presentation


  • 97 Views
  • Uploaded on

Ontology Aware Software Service Agents: Meeting Ordinary User Needs on the Semantic Web. Muhammed J. Al-Muhammed Brigham Young University. Supported by:. July 23, 2007. A Challenge for Semantic Web Services. Help users find and use services Reduce requirements for service specification.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Ontology Aware Software Service Agents: Meeting Ordinary User Needs on the Semantic Web' - knut


Download Now An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
ontology aware software service agents meeting ordinary user needs on the semantic web

Ontology Aware Software Service Agents: Meeting Ordinary User Needs on the Semantic Web

Muhammed J. Al-Muhammed

Brigham Young University

Supported by:

July 23, 2007

a challenge for semantic web services
A Challenge for Semantic Web Services
  • Help users find and use services
  • Reduce requirements for service specification

What’s the weather forecast for Springfield, Illinois, between the 24th and 27th?

weather forecasting service
Weather Forecasting Service

Access to the National Digital Forecast Database

problems with web services

Know how to use it

39.78

-89.66

2007-04-21

4

Problems with Web Services

Access to the National Digital Forecast Database

Discover the required service

Coupling problem

Communicate: keep the communication until the service responds

What is the weather forecast for Springfield, Illinois, between the 24th and 27th?

What is the weather forecast for Springfield, Illinois, between the 24th and 27th?

What is the weather forecast for Springfield, Illinois, between the 24th and 27th?

Data heterogeneity problem

better invoke services only by specifying requests
Better: Invoke Services only by Specifying Requests

The service recognizes constraints

And services the request

resolution ontology based web services
Resolution: Ontology-Based Web Services
  • Domain ontology
    • Declares concepts, relationships, and constraints
    • Has a central concept of interest
    • Has extensional recognizers
  • Process ontology
    • Matches a request with a domain ontology
    • Obtains information (from DB and from user)
    • Satisfies constraints
    • Negotiates (if necessary)
domain ontology1
Domain Ontology

Formal predicates:

object sets,relationship sets,& constraints

NumDays(x)

WeatherReport(x) is for Latitude(y)

x(WeatherReport(x) 

1y(WeatherReport(x) is for Latitude(y))

extensional semantics
Extensional Semantics
  • Ontology augmented with data frames
  • A data frame specifies semantics for a concept
    • Its internal and external representation
    • Its contextual keywords or phrases
    • Operations along with contextual keywords or phrases
data frames
Data Frames

NumDays

internal representation: integer

default value: (1) …

Data frames: instance recognition;

operation recognition

StartDate

internal representation: date -- format yyyy-mm-dd

default value: (today)

text representation: {monthName}\s+([0]?[1-9] |

[12]\d|3[01])(\s*\,)?\s+\d{4} | (the\s+)?([0]?[1-9] |

[12]\d|3[01])\s*(th|...)|...

toInternalRepresentation(x:string) returns (StartDate)

NrDaysBetween(x1:StartDate, x2:EndDate)

returns (NumDays)

context keywords/phrases:

between the \s+{x1}\s+and\s+{x2} | ...

process ontology
Process Ontology
  • Create service-request view
  • Generate constraints
  • Obtain information
    • From system
    • From user
  • Satisfy constraints
  • Negotiate
  • Finalize service request
ontology based constraint recognition
Ontology-Based Constraint Recognition

What’s the weather forecast for Springfield, Illinois, between the 24th and 27th?

ontology based constraint recognition1
Ontology-Based Constraint Recognition

WeatherReport

text representation:

weather\s+forecast|…

What’s the weather forecast for Springfield, Illinois, between the 24th and 27th?

ontology based constraint recognition2
Ontology-Based Constraint Recognition

Longitude

...

getLongitude(x1:State, x2:City)

returns (Longitude)

What’s the weather forecast for Springfield, Illinois, between the 24th and 27th?

ontology based constraint recognition3
Ontology-Based Constraint Recognition

StartDate ...

NrDaysBetween(x1:StartDate, x2:EndDate)

returns (NumDays)

context keywords/phrases:

between the \s+{x1}\s+and\s+{x2} | ...

What’s the weather forecast for Springfield, Illinois, between the 24th and 27th?

ontology based constraint recognition4
Ontology-Based Constraint Recognition

Format …

Default value:

“24 Hourly” …

What’s the weather forecast for Springfield, Illinois, between the 24th and 27th?

ontology based constraint recognition5
Ontology-Based Constraint Recognition

What’s the weather forecast for Springfield, Illinois, between the 24th and 27th?

generated rel calculus query
Generated Rel. Calculus Query

What’s the weather forecast for Springfield, Illinois, between the 21st and 24th?

  • { <x2, x3, x4> |
  • WeatherReport(x0) is for Latitude(getLatitude(“Illinois”, “Springfield”))
  • WeatherReport(x0) is for Longitude(getLongitude(“Illinois”, “Springfield”))
  • WeatherReport(x0) starts on StartDate(NextDate(“24th”))
  • WeatherReport(x0) is for NumDays(NrDaysBetween(NextDate(“24th”), NextDate(“27th”)))
  • WeatherReport(x0) has Format(“24 Hourly”)
  • WeatherReport(x0) produces ReportPeriod(x1)
  • ReportPeriod(x1) has MaximumTemperature(x2)
  • ReportPeriod(x1) has MinimumTemperature(x3)
  • ReportPeriod(x1) has PercentChanceOfPrecipitation(x4) }
too many cars
Too Many Cars

“I want a dodge, a 2000 or newer. The Mileage should be less

than80,000 and the price shouldnotexceed$15,000.”

www.cars.com, November 2005

no car
No Car

“I want a dodge, a2000 or newer. The Mileage should be less

than 80,000 and the price should not exceed $4,000.”

www.cars.com, November 2005

constraint satisfaction
Constraint Satisfaction
  • Exactly one solution: return it as the result
  • A few solutions: return all and ask the user to select one
  • Too many solutions: resolve
  • No solution: resolve
key observations
Key Observations
  • Some (near) solutions are better than others
  • People specify constraints on some concepts in a domain more often than on other concepts
fundamental concepts reward penalty and expectation
Fundamental Concepts:Reward, Penalty, and Expectation
  • Reward: non-negative real number denoting a degree of satisfaction
  • Penalty: negative real number denoting a degree of violation
  • Expectation: probability of specifying a constraint on a concept
fundamental concepts pareto optimality
Fundamental Concepts:Pareto Optimality
  • Based on dominance relations
    • The reward for S1 is as high as the reward for S2
    • For at least one reward S1 has a higher reward
  • Dominating solutions are Pareto optimal
too many solutions reward based ordering
Too Many Solutions:Reward-Based Ordering
  • Calculate rewards and combine them
  • Order solutions, highest combined reward first
  • Select the top-m Pareto optimal solutions
too many solutions expectation based constraint elicitation
Too Many Solutions: Expectation-Based Constraint Elicitation
  • Associate expectations with domain concepts
  • Order the concepts in a domain based on their expectations
    • Example: make > price > model > …
  • Elicit additional constraints over unconstrained concepts
    • Example: if no preferred make provided, ask for make; if no price, ask for price; …
no solution penalty based ordering
No Solution: Penalty-Based Ordering
  • Calculate penalties and combine them
  • Order near solutions, lowest combined penalty first
  • Select the top-m Pareto optimal near solutions
no solution expectation based constraint relaxation
No Solution: Expectation-Based Constraint Relaxation
  • Associate expectations with constraints
  • Order constraints based on their expectation, lowest expectation first
  • Trade-off: amount of violation vs. expectation
no solution expectation based constraint relaxation1
No Solution: Expectation-Based Constraint Relaxation

“I want a dodge, a 2000 or newer. The Mileage should be less

than 80,000 and the price should not exceed $4,000.”

Can this constraint “shouldnotexceed$4,000” be relaxed to “$4,100”?

experiments
Experiments
  • Constraint recognition
  • Constraint resolution
    • Solution ordering
    • Near solution ordering
  • System usability
experiment constraint recognition
Experiment: Constraint Recognition
  • Subjects: BYU students
  • Domains:
    • Appointment scheduling
    • Car purchase
    • Apartment rental
  • Requests:

Requests Predicates Arguments

Appointment 10 126 34

Car 15 315 98

Apartment 6 107 38

Totals 31 548 170

results constraint recognition
Results: Constraint Recognition

Recall Precision

Appointment predicates 0.98 1.00

arguments 0.94 1.00

Car predicates 0.99 0.99

arguments 0.98 0.99

Apartment predicates 0.97 1.00

arguments 0.92 1.00

All predicates 0.98 0.99

arguments 0.95 0.99

results constraint recognition1
Results: Constraint Recognition

Recall Precision

Appointment predicates 0.98 1.00

arguments 0.94 1.00

Car predicates 0.99 0.99

arguments 0.98 0.99

Apartment predicates 0.97 1.00

arguments 0.92 1.00

All predicates 0.98 0.99

arguments 0.95 0.99

e.g. missed:

“any Monday of this month”

“most days of the week”

“a nook”

“extra storage”

results constraint recognition2
Results: Constraint Recognition

Recall Precision

Appointment predicates 0.98 1.00

arguments 0.94 1.00

Car predicates 0.99 0.99

arguments 0.98 0.99

Apartment predicates 0.97 1.00

arguments 0.92 1.00

All predicates 0.98 0.99

arguments 0.95 0.99

e.g. missed:

“I want a Toyota with a cheap price, 2000

would be great …”

The system incorrectly concluded that

“2000” was a price.

experiment constraint resolution
Experiment: Constraint Resolution
  • Tested appointment and car-purchase domains
  • 16 human subjects
    • The best-5 near solutions from 19 appointments
    • The best-5 solutions from 32 cars
  • Compared human selection with system selection
results constraint resolution
Results: Constraint Resolution

(appointment domain)

 = 0. 74 (“substantial agreement”)

Observer-agreement test:

results constraint resolution1
Results: Constraint Resolution

(car-purchase domain)

 = 0.67 (“substantial agreement”)

Observer-agreement test:

experiment system usability
Experiment: System Usability
  • 12 subjects: 8 in the senior-database class and 4 in the master’s program
  • Evaluated functionalities
    • Regular specification (only AND constraints)
    • Advanced specification (AND, OR, & Negation)
    • Constraint elicitation suggestions
    • Constraint relaxation suggestions
    • Best-k solutions
    • Best-k near solutions
    • Usefulness of the system
results request specification
Results: Request Specification

Regular specification is enough to specify all my requests.

Without disjunctions and negations I was not able to specify my requests

contributions
Contributions
  • Free-form service specification
  • Effective constraint resolution
  • Knowledge-based service creation
    • Only static knowledge
    • No code required
  • Ontology-based web services
    • Service decoupling resolution
    • Data heterogeneity resolution
  • Fully working prototypes
future work
Future Work
  • Conditional constraints

Example: if the appointment can be scheduled this week, schedule with Dr. Carter; otherwise schedule with Dr. Adams

  • Composite service requests

Example: coordinated multi-ontology instantiations (vacation planning)

  • Trust: predictability, transparency, etc.
  • Security: secure information exchange