Download presentation
Presentation is loading. Please wait.
1
Ontology Aware Software Service Agents: Meeting Ordinary User Needs on the Semantic Web Muhammed Al-Muhammed April 19, 2005
2
(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
April 19, 2005 (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
April 19, 2005 (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
April 19, 2005 (5) Domain Ontology Components Object sets = concepts Relationship sets Constraints Uses Task knowledge Task recognition
6
April 19, 2005 (6) Domain Ontology
7
April 19, 2005 (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
April 19, 2005 (8) Data Frames Time … textual representation: “([2-9]|1[012]?)\s* :\s*([0-5]\d)\s*[AaPp]\s* \.?\s* [Mm]\s* \.?)” … end Distance internal representation: real textual representation: ((\d+(\.\d+)?)|(\.\d+)) context keywords/phrases: miles | mile | kilometers | … Within(d1: Distance, d2: Distance) returns (Boolean) contextual keywords/phrases: less than | | … … end
9
April 19, 2005 (9) Task Recognition A task domain determination Input: a task specification, domain ontologies Output: a marked domain ontology A domain-independent process
10
April 19, 2005 (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
April 19, 2005 (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
April 19, 2005 (12) 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.
13
April 19, 2005 (13) 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.
14
April 19, 2005 (14) 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. 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
15
April 19, 2005 (15) Process Ontology Process to execute tasks in a domain Statenet States Transitions, based on ECA rules
16
April 19, 2005 (16) Process Ontology
17
April 19, 2005 (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
April 19, 2005 (18) Task View Creation
19
April 19, 2005 (19) Task View Creation
20
April 19, 2005 (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
April 19, 2005 (21) Creation of Additional Task Constraints Task imposed constraints: NextWeek(d1: Date, d2: Date) Person(x) is at Address(a 1 ) and Dermatologist(y) is at Address(a 2 ) and Within(DistanceBetween(a 1, a 2 ), “20”) i 2 (Dermatologist(y) accepts Insurance(i 2 ) and Equal(i 1, i 2 ))
22
April 19, 2005 (22) Obtaining Information from the System Appointment -> Dermatologist Insurance Time “4:00” Date Person Address Name Task imposed constraints: NextWeek(d1: Date, d2: Date) Person(x) is at Address(a 1 ) and Dermatologist(y) is at Address(a 2 ) and Within(DistanceBetween(a 1, a 2 ), “20”) i 2 (Dermatologist(y) accepts Insurance(i 2 ) and Equal(i 1, i 2 ))
23
April 19, 2005 (23) Obtaining Information from the System Appointment -> Dermatologist Dermatologist0 Dermatologist1 Insurance “IHC” “DMBA” Time “4:00” Date “5 Jan 05” “6 Jan 05” Person Address “Orem 600 State St.” “Lindon 12 Main St.” Name “Dr. Carter” “Dr. Larry” Task imposed constraints: NextWeek(d1: Date, d2: Date) Person(x) is at Address(a 1 ) and Dermatologist(y) is at Address(a 2 ) and Within(DistanceBetween(a 1, a 2 ), “20”) i 2 (Dermatologist(y) accepts Insurance(i 2 ) and Equal(i 1, i 2 ))
24
April 19, 2005 (24) Obtaining Information from the User Appointment -> Dermatologist Dermatologist0 Dermatologist1 Insurance “IHC” “DMBA” Time “4:00” Date “5 Jan 05” “6 Jan 05” Person Address “Orem 600 State St.” “Lindon 12 Main St.” Name “Dr. Carter” “Dr. Larry” Task imposed constraints: NextWeek(d1: Date, d2: Date) Person(x) is at Address(a 1 ) and Dermatologist(y) is at Address(a 2 ) and Within(DistanceBetween(a 1, a 2 ), “20”) i 2 (Dermatologist(y) accepts Insurance(i 2 ) and Equal(i 1, i 2 ))
25
April 19, 2005 (25) Obtaining Information from the User Appointment -> Dermatologist Dermatologist0 Dermatologist1 Insurance “IHC” “DMBA” Time “4:00” Date “5 Jan 05” “6 Jan 05” Person Person100 Address “Orem 600 State St.” “Lindon 12 Main St.” “Provo 300 State St.” Name “Dr. Carter” “Dr. Larry” “Lynn Jones” Task imposed constraints: NextWeek(d1: Date, d2: Date) Person(x) is at Address(a 1 ) and Dermatologist(y) is at Address(a 2 ) and Within(DistanceBetween(a 1, a 2 ), “20”) i 2 (Dermatologist(y) accepts Insurance(i 2 ) and Equal(i 1, i 2 ))
26
April 19, 2005 (26) Constraint Satisfaction Appointment -> Dermatologist Dermatologist0 Dermatologist1 Insurance “IHC” “DMBA” Time “4:00” Date “5 Jan 05” “6 Jan 05” Person Person100 Address “Orem 600 State St.” “Lindon 12 Main St.” “Provo 300 State St.” Name “Dr. Carter” “Dr. Larry” “Lynn Jones” Task imposed constraints: NextWeek(d1: Date, d2: Date) Person(x) is at Address(a 1 ) and Dermatologist(y) is at Address(a 2 ) and Within(DistanceBetween(a 1, a 2 ), “20”) i 2 (Dermatologist(y) accepts Insurance(i 2 ) and Equal(i 1, i 2 ))
27
April 19, 2005 (27) Constraint Satisfaction
28
April 19, 2005 (28) Constraint Satisfaction Task imposed constraints: 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”) Appointment -> Dermatologist Dermatologist0 Insurance “IHC” “DMBA” Time “4:00” Date “5 Jan 05” Person Person100 Address “Orem 600 State St.” “Provo 300 State St.” Name “Dr. Carter” “Lynn Jones”
29
April 19, 2005 (29) Negotiation Task imposed constraints: 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”) Appointment -> Dermatologist Dermatologist0 Insurance “IHC” “DMBA” Time “4:00” Date “5 Jan 05” Person Person100 Address “Orem 600 State St.” “Provo 300 State St.” Name “Dr. Carter” “Lynn Jones”
30
April 19, 2005 (30) 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”) i 2 (Dermatologist(Dermatologist0) accepts Insurance(i 2 ) and Equal(“IHC”, i 2 )) Appointment 7 Dermatologist0 “IHC” “DMBA” “4:00” “5 Jan 05” Person100 “Orem 600 State St.” “Provo 300 State St.” “Dr. Carter” “Lynn Jones”
31
April 19, 2005 (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
April 19, 2005 (32) Delimitations Recognition and execution of complex tasks Compositional tasks Alternative tasks Conditional tasks Graphical or vocal specification of tasks
33
April 19, 2005 (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
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.