1 / 33

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

This thesis explores the possibility of automating everyday tasks using domain ontologies, with the goal of reducing information overload and finding and using services that meet user needs. It proposes a proof-of-concept prototype that leverages task, domain, and process ontologies to automate tasks and establish relationships. The thesis also introduces the concept of data frames in domain ontologies and describes a task recognition process that marks domain ontologies based on task specifications. The text language is English.

ksheehan
Download Presentation

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

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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Ontology Aware Software Service Agents: Meeting Ordinary User Needs on the Semantic Web Muhammed Al-Muhammed April 19, 2005

  2. The Challenge • Reduce information overload • Find and use services I want to see a dermatologist next week; any day would be ok for me, at 4:00 p.m. The dermatologist must be within 20 miles from my home and must accept my insurance.

  3. Thesis Statement • Hypothesis: it is possible to automate everyday tasks whose invocation results in establishing agreed-upon relationships in a domain ontology • Validation: proof-of-concept prototype

  4. Approach • Task ontology • Domain ontology • Process ontology • Characteristics • Task specification: Free-form text • Request recognition: find best task ontology • Task execution • Specialize task ontology processes • Execute generated code

  5. Domain Ontology • Components • Object sets = concepts • Relationship sets • Constraints • Uses • Task knowledge • Task recognition

  6. Domain Ontology

  7. Domain Ontology • Augmented with data frames • A data frame defines information about a concept • Its internal and external representation • Its contextual keywords or phrases • Operations along with contextual keywords or phrases

  8. Data Frames

  9. Task Recognition • A task domain determination • Input: a task specification, domain ontologies • Output: a marked domain ontology • A domain-independent process

  10. Appointment … context keywords/phrase: “appointment |want to see a |…” Dermatologist … context keywords/phrases: “([D|d]ermatologist) | …” I want to see a dermatologist next week; any day would be ok for me, at 4:00 p.m. The dermatologist must be within 20 miles from my home and must accept my insurance.

  11. Appointment … context keywords/phrase: “appointment |want to see a |…” Dermatologist … context keywords/phrases: “([D|d]ermatologist) | …”  I want to see a dermatologist next week; any day would be ok for me, at 4:00 p.m. The dermatologist must be within 20 miles from my home and must accept my insurance.

  12. Appointment … context keywords/phrase: “appointment |want to see a |…” Dermatologist … context keywords/phrases: “([D|d]ermatologist) | …”   I want to see adermatologist next week; any day would be ok for me, at 4:00 p.m. The dermatologist must be within 20 miles from my home and must accept my insurance.

  13. Appointment … context keywords/phrase: “appointment |want to see a |…” Dermatologist … context keywords/phrases: “([D|d]ermatologist) | …”       I want to see adermatologistnext week; any day would be ok for me, at 4:00p.m. The dermatologist must be within 20 miles from my home and must accept my insurance.

  14. Date … NextWeek(d1: Date, d2: Date) returns (Boolean) context keywords/phrases: next week | week from now | … Distance internal representation : real textual representation: ((\d+(\.\d+)?)|(\.\d+)) context keywords/phrases: miles | mile | kilometers | … Within(d1: Distance, “20”) returns (Boolean) context keywords/phrases: within | not more than |  | … return (d1d2) … end Appointment … context keywords/phrase: “appointment |want to see a |…” Dermatologist … context keywords/phrases: “([D|d]ermatologist) | …”       I want to see adermatologistnext week; any day would be ok for me, at 4:00 p.m. The dermatologist must be within 20 miles from my home and must accept my insurance.

  15. Process Ontology • Process to execute tasks in a domain • Statenet • States • Transitions, based on ECA rules

  16. Process Ontology

  17. Task Execution • Domain-independent subprocesses • Coded once • Specialized for a domain • A domain-dependent subprocess • Fully determined (given the task specification and domain ontology) • Automatically generated

  18. Task View Creation      

  19. Task View Creation

  20. Creation of Additional Task Constraints Date … NextWeek(d1: Date, d2: Date) returns (Boolean) context keywords/phrases: next week | week from now | … … end Distance internal representation: real textual representation: ((\d+(\.\d+)?)|(\.\d+)) context keywords/phrases: miles | mile | kilometers | … Within(d1: Distance, “20”) returns (Boolean) context keywords/phrases: within | not more than |  | … return (d1d2) … end

  21. Creation of Additional Task Constraints Taskimposed constraints: NextWeek(d1: Date, d2: Date) Person(x) is at Address(a1) and Dermatologist(y) is at Address(a2) and Within(DistanceBetween(a1, a2), “20”)  i2 (Dermatologist(y) accepts Insurance(i2 ) and Equal(i1, i2))

  22. Obtaining Information from the System Insurance Dermatologist Name Address Date Time - > Appointment “4:00” Person Taskimposed constraints: NextWeek(d1: Date, d2: Date) Person(x) is at Address(a1) and Dermatologist(y) is at Address(a2) and Within(DistanceBetween(a1, a2), “20”)  i2 (Dermatologist(y) accepts Insurance(i2 ) and Equal(i1, i2))

  23. Dermatologist Dermatologist0 Dermatologist1 Insurance “IHC” “DMBA” Name “Dr. Carter” “Dr. Larry” Address “Orem 600 State St.” “Lindon 12 Main St.” Date “5 Jan 05” “6 Jan 05” Time “4:00” Appointment -> Person Obtaining Information from the System Taskimposed constraints: NextWeek(d1: Date, d2: Date) Person(x) is at Address(a1) and Dermatologist(y) is at Address(a2) and Within(DistanceBetween(a1, a2), “20”)  i2 (Dermatologist(y) accepts Insurance(i2 ) and Equal(i1, i2))

  24. Dermatologist Dermatologist0 Dermatologist1 Insurance “IHC” “DMBA” Name “Dr. Carter” “Dr. Larry” Address “Orem 600 State St.” “Lindon 12 Main St.” Date “5 Jan 05” “6 Jan 05” Time “4:00” Appointment -> Person Obtaining Information from the User Taskimposed constraints: NextWeek(d1: Date, d2: Date) Person(x) is at Address(a1) and Dermatologist(y) is at Address(a2) and Within(DistanceBetween(a1, a2), “20”)  i2 (Dermatologist(y) accepts Insurance(i2 ) and Equal(i1, i2))

  25. Dermatologist Dermatologist0 Dermatologist1 Insurance “IHC” “DMBA” Name “Dr. Carter” “Dr. Larry” “Lynn Jones” Address “Orem 600 State St.” “Lindon 12 Main St.” “Provo 300 State St.” Date “5 Jan 05” “6 Jan 05” Time “4:00” Appointment -> Person Person100 Obtaining Information from the User Taskimposed constraints: NextWeek(d1: Date, d2: Date) Person(x) is at Address(a1) and Dermatologist(y) is at Address(a2) and Within(DistanceBetween(a1, a2), “20”)  i2 (Dermatologist(y) accepts Insurance(i2 ) and Equal(i1, i2))

  26. Dermatologist Dermatologist0 Dermatologist1 Insurance “IHC” “DMBA” Name “Dr. Carter” “Dr. Larry” “Lynn Jones” Address “Orem 600 State St.” “Lindon 12 Main St.” “Provo 300 State St.” Date “5 Jan 05” “6 Jan 05” Time “4:00” Appointment -> Person Person100 Constraint Satisfaction Taskimposed constraints: NextWeek(d1: Date, d2: Date) Person(x) is at Address(a1) and Dermatologist(y) is at Address(a2) and Within(DistanceBetween(a1, a2), “20”)  i2 (Dermatologist(y) accepts Insurance(i2 ) and Equal(i1, i2))

  27. Constraint Satisfaction

  28. Dermatologist Dermatologist0 Insurance “IHC” “DMBA” Name “Dr. Carter” “Lynn Jones” Address “Orem 600 State St.” “Provo 300 State St.” Date “5 Jan 05” Time “4:00” Appointment -> Person Person100 Constraint Satisfaction - Task imposed constraints: Pers on(Person100) is at Address((“Provo 300 State St.”) and Dermatologist(Dermatologist0) is at Address(“Orem 600 State St.”) and Within(DistanceBetween(“Provo 300 State St.”, “Orem 600 State St.”), “22”)

  29. Dermatologist Dermatologist0 Insurance “IHC” “DMBA” Name “Dr. Carter” “Lynn Jones” Address “Orem 600 State St.” “Provo 300 State St.” Date “5 Jan 05” Time “4:00” Appointment -> Person Person100 Negotiation - Task imposed constraints: Pers on(Person100) is at Address((“Provo 300 State St.”) and Dermatologist(Dermatologist0) is at Address(“Orem 600 State St.”) and Within(DistanceBetween(“Provo 300 State St.”, “Orem 600 State St.”), “22”)

  30. Dermatologist0 “IHC” “DMBA” “Dr. Carter” “Lynn Jones” “Orem 600 State St.” “Provo 300 State St.” Appointment 7 “4:00” “5 Jan 05” Person100 Finalization NextWeek(“28 Dec 04”, “5 Jan 05”) Person(Person100) is at Address(“Provo 300 State St.”) and Dermatologist(Dermatologist0) is at Address(“Orem 600 State St.”) and Within(DistanceBetween(“Provo 300 State St.”, “Orem 600 State St.”), “22”)  i2 (Dermatologist(Dermatologist0) accepts Insurance(i2) andEqual(“IHC”, i2))

  31. Testing • “Black box” testing • Concept recognition • Constraint recognition • Domain recognition • Execution performance • “White box” testing for the processes of the system such as • Negotiation • Obtaining information from the user

  32. Delimitations • Recognition and execution of complex tasks • Compositional tasks • Alternative tasks • Conditional tasks • Graphical or vocal specification of tasks

  33. Contributions • Simplification of everyday task execution—find and use versus specify • Automatic process generation for task execution • Domain recognition and specialization • Automatic information gathering from both system and user • Constraint satisfaction • Negotiation • Prototype implementation

More Related