The case of Description Logics
Fuzzy DLs The semantics is an immediate consequence of the First-Order-Logic translation of DLs expressions ∧ = t-norm ∆ I I = ∨ = s-norm ∆ I → [ 0 , 1 ] C I Interpretation: : ¬ = negation ∆ I × ∆ I → [ 0 , 1 ] R I : → = implication Syntax Semantics ⊤ I ( x ) C , D − → ⊤ | = 1 ⊥ I ( x ) ⊥ | = 0 A I ( x ) A | ∈ [ 0 , 1 ] ( C 1 ⊓ C 2 ) I ( x ) I ( x ) ∧ C 2 I ( x ) C ⊓ D | = C 1 Concepts: ( C 1 ⊔ C 2 ) I ( x ) I ( x ) ∨ C 2 I ( x ) C ⊔ D | = C 1 ( ¬ C ) I ( x ) ¬ C I ( x ) ¬ C | = ( ∃ R . C ) I ( x ) sup y ∈ ∆ I R I ( x , y ) ∧ C I ( y ) ∃ R . C | = ( ∀ R . C ) I ( x ) inf y ∈ ∆ I R I ( x , y ) → C I ( y ) } ∀ R . C = = � a : C , r � iff C I ( a I ) ≥ r (similarly for roles) Assertions: � a : C , r � , I | ◮ individual a is instance of concept C at least to degree r , r ∈ [ 0 , 1 ] ∩ Q Inclusion axioms: � C ⊑ D , r � , ◮ = � C ⊑ D , r � iff inf x ∈ ∆ I C I ( x ) → D I ( x ) ≥ r I |
Main Inference Problems Graded entailment: Check if DL axiom α is entailed to degree at least r ◮ KB | = � α, r � ? BED: Best Entailment Degree problem ◮ bed ( KB , α ) = sup { r | KB | = � α, r �} BSD: Best Satisfiability Degree problem = KB { C I ( a I ) } , for new individual a ◮ bsd ( KB , C ) = sup I| Top-k retrieval: Retrieve the top-k individuals that instantiate C w.r.t. best truth value bound ◮ ans k ( KB , C ) = Top k {� a , r � | r = bed ( KB , a : C ) }
Towards fuzzy OWL Lite and OWL DL ◮ Recall that OWL Lite and OWL DL relate to SHIF ( D ) and SHOIN ( D ) , respectively ◮ We need to extend the semantics of fuzzy ALC to fuzzy SHOIN ( D ) = ALCHOINR + ( D ) ◮ Additionally, we add ◮ modifiers (e.g., very ) ◮ concrete fuzzy concepts (e.g., Young ) ◮ both additions have explicit membership functions
Concrete fuzzy concepts ◮ E.g., Small , Young , High , etc . with explicit membership function ◮ Use the idea of concrete domains: ◮ D = � ∆ β , Φ β � ◮ ∆ β is an interpretation domain ◮ Φ β is the set of concrete fuzzy domain predicates d with a predefined arity n = 1 , 2 and fixed interpretation d β : ∆ n β → [ 0 , 1 ] ◮ For instance, Minor = Person ⊓ ∃ hasAge . ≤ 18 YoungPerson = Person ⊓ ∃ hasAge . Young functional ( hasAge )
Modifiers ◮ Very , moreOrLess , slightly , etc. ◮ Apply to fuzzy sets to change their membership function very ( x ) = x 2 ◮ slightly ( x ) = √ x ◮ ◮ For instance, SportsCar = Car ⊓ ∃ speed . very ( High )
Fuzzy SHOIN ( D ) Concepts: Syntax Semantics C , D − → ⊤ | ⊤ ( x ) ⊥ | ⊥ ( x ) A | A ( x ) ( C ⊓ D ) | C 1 ( x ) ∧ C 2 ( x ) ( C ⊔ D ) | C 1 ( x ) ∨ C 2 ( x ) ( ¬ C ) | ¬ C ( x ) ( ∃ R . C ) | ∃ x R ( x , y ) ∧ C ( y ) ( ∀ R . C ) | ∀ x R ( x , y ) → C ( y ) { a } | x = a ∃ y 1 , . . . , y n . V n ( ≥ n R ) | i = 1 R ( x , y i ) ∧ V 1 ≤ i < j ≤ n y i � = y j ∀ y 1 , . . . , y n + 1 . V n + 1 ( ≤ n R ) | i = 1 R ( x , y i ) → W 1 ≤ i < j ≤ n + 1 y i = y j FCC | µ FCC ( x ) M ( C ) | µ M ( C ( x )) P i w i · C i w 1 · C 1 ( x ) + · · · w n · C n ( x ) ( P i w i = 1 ) R − → P | P ( x , y ) P − | P ( y , x ) Syntax Semantics Assertions: − → � a : C , r � | r → C ( a ) α � ( a , b ) : R , r � r → R ( a , b ) Syntax Semantics − → � C ⊑ D , r � | ∀ x r → ( C ( x ) → D ( x )) , where → is r-implication τ Axioms: fun ( R ) | ∀ x ∀ y ∀ z R ( x , y ) ∧ R ( x , z ) → y = z trans ( R ) ( ∃ z R ( x , z ) ∧ R ( z , y )) → R ( x , y )
Example (Graded Entailment) audi _ tt mg ferrari _ enzo Car speed audi _ tt 243 mg ≤ 170 ferrari _ enzo ≥ 350 SportsCar = Car ⊓ ∃ hasSpeed . very ( High ) KB | = � ferrari _ enzo : SportsCar , 1 � KB | = � audi _ tt : SportsCar , 0 . 92 � KB | = � mg : ¬ SportsCar , 0 . 72 �
Example (Graded Subsumption) Minor = Person ⊓ ∃ hasAge . ≤ 18 YoungPerson = Person ⊓ ∃ hasAge . Young KB | = � Minor ⊑ YoungPerson , 0 . 6 � Note: without an explicit membership function of Young , this inference cannot be drawn
Example (Simplified Negotiation) ◮ a car seller sells an Audi TT for 31500 e , as from the catalog price. ◮ a buyer is looking for a sports-car, but wants to to pay not more than around 30000 e ◮ classical DLs: the problem relies on the crisp conditions on price ◮ more fine grained approach: to consider prices as fuzzy sets (as usual in negotiation) ◮ seller may consider optimal to sell above 31500 e , but can go down to 30500 e ◮ the buyer prefers to spend less than 30000 e , but can go up to 32000 e AudiTT = SportsCar ⊓ ∃ hasPrice . R ( x ; 30500 , 31500 ) Query = SportsCar ⊓ ∃ hasPrice . L ( x ; 30000 , 32000 ) ◮ highest degree to which the concept C = AudiTT ⊓ Query is satisfiable is 0.75 (the possibility that the Audi TT and the query matches is 0.75) ◮ the car may be sold at 31250 e
Reasoning in Fuzzy ALC , under Zadeh Semantics ◮ Applies technique based on Mixed Integer Programming (MILP) for fuzzy propositional logic to ALC calculus ◮ For each concept assertion α of the form a : C , we use variable x α , which holds the degree of truth of α ◮ It can be shown that bed ( KB , ( a , b ) : R ) = bed ( KB ∪ {� b : B , 1 �} , a : ∃ R . B ) bed ( KB , C ⊑ D ) = min x such that KB ∪ {� b : C ⊓ ¬ D , 1 − x �} satisfiable bed ( KB , a : C ) = min x such that KB ∪ {� a : ¬ C , 1 − x �} satisfiable bsd ( KB , C ) = min − x such that KB ∪ {� b : C , x �} satisfiable where b is a new individual and B is a new concept
Satisfiability Testing ◮ The notion of completion forest F is similar to the case of ALC ◮ F contains a root node a i for each individual a i occurring in A ◮ F contains an edge � a , b � for each � ( a , b ) : R , n � ∈ A ◮ for each � a : C , n � ∈ A , we add both C to L ( a ) and xa : C ≥ n to C F ◮ for each � ( a , b ) : R , n � ∈ A , we add both R to L ( � a , b � ) and x ( a , b ) : R ≥ n to C F ◮ The notion of blocking is as for crisp ALC ◮ F is then expanded by repeatedly applying the rules described below ◮ The completion-forest is complete when none of the rules are applicable ◮ Then, the bMILP problem on C F is solved
Fuzzy ALC Tableau rules with GCI’s (Zadeh semantics) Rule Description ( var ) For variable xv : C add xv : C ∈ [ 0 , 1 ] to C F . For variable x ( v , w ) : R , add x ( v , w ) : R ∈ [ 0 , 1 ] to C F (¯ A ) if ¬ A ∈ L ( v ) then add xv : A = 1 − xv : ¬ A to C F ( ⊥ ) If ⊥ ∈ L ( v ) then add xv : ⊥ = 0 to C F ( ⊤ ) If ⊤ ∈ L ( v ) then add xv : ⊤ = 1 to C F ( ⊓ ) if C 1 ⊓ C 2 ∈ L ( v ) , v is not indirectly blocked then L ( v ) → L ( v ) ∪ { C 1 , C 2 } , and add xv : C 1 ⊗ xv : C 2 ≥ xv : C 1 ⊓ C 2 to C F ( ⊔ ) if C 1 ⊔ C 2 ∈ L ( v ) , v is not indirectly blocked then L ( v ) → L ( v ) ∪ { C 1 , C 2 } , and add xv : C 1 ⊕ xv : C 2 ≥ xv : C 1 ⊔ C 2 to C F ( ∀ ) if ∀ R . C ∈ L ( v ) , v is not indirectly blocked then L ( w ) → L ( w ) ∪ { C } , and add xw : C ≥ xv : ∀ R . C ⊗ x ( v , w ) : R to C F ( ∃ ) if ∃ R . C ∈ L ( v ) , v is not blocked then create new node w with L ( � v , w � ) = { R } and L ( w ) = { C } , and add xw : C ⊗ x ( v , w ) : R ≥ xv : ∃ R . C to C F ( ⊑ ) if � C ⊑ D , n � ∈ T , v is not indirectly blocked then L ( v ) → L ( v ) ∪ { C , D } , and add xv : D ≥ xv : C ⊗ n to C F
Fuzzy Concrete Domains ◮ As fuzzy DL extensions involving ◮ concrete domains ◮ modifiers are combinations of linear functions, they can be translated into MILP equations ◮ Therefore, the algorithm can be extended to fuzzy DLs with concrete domains ◮ For a fuzzy DL system, see http://www.straccia. info/software/fuzzyDL/fuzzyDL.html
Example: Multi-Criteria Decision Making ◮ The problem is about selecting an appropriate location ◮ We have to select among two sites, A 1 , A 2 ◮ according to two criteria ( C 1 -Transportation Issues, and C 2 -Public Nuisance) ◮ and there are two experts ( E 1 , E 2 ) ◮ The decision matrix of the experts is shown below: E 1 Criteria E 2 Criteria 0 . 48 0 . 52 0 . 52 0 . 48 Alter . C 1 C 2 Alter . C 1 C 2 x 1 A 1 tri ( 0 . 6 , 0 . 7 , 0 . 8 ) tri ( 0 . 9 , 0 . 95 , 1 . 0 ) x 1 A 1 tri ( 0 . 55 , 0 . 6 , 0 . 7 ) tri ( 0 . 4 , 0 . 45 , 0 . 5 ) x 2 A 2 tri ( 0 . 6 , 0 . 7 , 0 . 8 ) tri ( 0 . 4 , 0 . 5 , 0 . 6 ) x 2 A 2 tri ( 0 . 35 , 0 . 4 , 0 . 45 ) tri ( 0 . 5 , 0 . 55 , 0 . 6 ) ◮ For each expert k = 1 , 2, for each alternative i = 1 , 2 and for each criteria j = 1 , 2, we define the concept P k ij = ∃ hasScore . a k ij ◮ Now, for each expert k and alternative i , we define the weighted concept A k i = w k 1 · P k i 1 + w k 2 · P k i 2 ◮ Finally, we combine the two experts outcome, by defining the weighted concept A i = 0 . 5 · A 1 i + 0 . 5 · A 2 i ◮ It can be verified that rv ( KB , A 1 ) = bsd ( KB , A 1 ) = 0 . 26 and rv ( KB , A 2 ) = bsd ( KB , A 2 ) = 0 . 37
Exercise ◮ Encode ◮ Matchmaking ◮ Multi-Criteria Decision Making examples of fuzzy propositional logic into fuzzy DL
Recommend
More recommend