Presentation is loading. Please wait.

Presentation is loading. Please wait.

Combining Numeric and Symbolic Reasoning in SNePS Stuart C. Shapiro Department of Computer Science & Engineering Center for MultiSource Information.

Similar presentations


Presentation on theme: "Combining Numeric and Symbolic Reasoning in SNePS Stuart C. Shapiro Department of Computer Science & Engineering Center for MultiSource Information."— Presentation transcript:

1 cse@buffalo Combining Numeric and Symbolic Reasoning in SNePS Stuart C. Shapiro Department of Computer Science & Engineering Center for MultiSource Information Fusion Center for Cognitive Science University at Buffalo, The State University of New York

2 cse@buffalo IF Workshop 2006S. C. Shapiro2 SNePS SNePS is a Logic-Based Frame-Based Network-Based knowledge representation, reasoning, and acting system.

3 cse@buffalo IF Workshop 2006S. C. Shapiro3 This Talk The logic-based view of SNePS The SNePSLOG user interface. The recently added procedural attachment to combine numeric with symbolic reasoning.

4 cse@buffalo IF Workshop 2006S. C. Shapiro4 Some SNePSLOG Syntax P(a,b) The proposition that P is true of a and b. P({a1, …, an}, {b1, …, bm}) The proposition that P is true of each ai and bj. andor(i,j){P1, …, Pn} The proposition that at least i and at most j of the Pi are true. andor(1,1){P1, …, Pn} The proposition that exactly 1 of the Pi are true. andor(0,0){P1, …, Pn} The proposition that none of the Pi are true. ~P The proposition that P is false, abbreviation of andor(0,0){P}. all(x,y,)(P(x,y) => Q(x,y)) The proposition that for every x and y, if P(x,y) then Q(x,y). all(x,y,)(P(x,y) => {Q1(x,y), … Qn(x,y)}) The proposition that for every x and y, if P(x,y) then Qi(x,y), for each i. {P1, …, Pn} &=> Q The conjunction of the Pi (solved in parallel) implies Q. P1 => (… (Pn => Q)…) The conjunction of the Pi (solved in serial) implies Q.

5 cse@buffalo IF Workshop 2006S. C. Shapiro5 Procedural Attachment A predicate (proposition-forming function) symbol may be attached to a procedure so instances may be computed in the underlying programming language.

6 cse@buffalo IF Workshop 2006S. C. Shapiro6 Example of Procedural Attachment : Diff(7,3,?x)? wff24!: Diff(7,3,4) : Diff(10,?x,7)? wff25!: Diff(10,3,7) : Diff(?x,5,7)? wff26!: Diff(12,5,7) : Diff(15,8,7)? wff314!: Diff(15,8,7) : Diff(15,8,9)? wff316!: ~Diff(15,8,9)

7 cse@buffalo IF Workshop 2006S. C. Shapiro7 Illustration Implementing a Bayesian Network in SNePS using combined symbolic and numeric reasoning

8 cse@buffalo IF Workshop 2006S. C. Shapiro8 Some Facts of Bayesian Probability in SNePSLOG P(x,p): The prior probability of x is p. Bel(x,p); The posterior probability of x is p. calculatedBel(x,p):The calculated posterior probability of x is p. all(x,p)(P(x,p) => Bel(x,p)). all(x,p)(Bel(~x,p) => all(q)(Diff(1,p,q) => Bel(x,q))). all(x,y)(andor(1,1){x,y} => all(p)(Bel(x,p) => all(q)(Diff(1,p,q) => Bel(y,q)))). all(x,p)(calculatedBel(x,p) => Bel(x,p)).

9 cse@buffalo IF Workshop 2006S. C. Shapiro9 An Example Bayesian Network P(P=L) 0.90 CP(X=pos|C) T0.90 F0.20 Pollution Smoker Cancer XRay Dyspnoea From: Kevin B. Korb & Ann E. Nicholson, Bayesian Artificial Intelligence, Chapman & Hall/CRC, 2004, p. 31 ff. P(S=T) Joe: 0.30 Jane: 0.50 CP(D=T|C) T0.65 F0.30 P SP(C=T|P,S) H T0.05 H F0.02 L T0.03 L F0.001

10 cse@buffalo IF Workshop 2006S. C. Shapiro10 The Patient-Independent CPTs CP(x,y,p): The conditional probability of x given y is p. JCP(x,y,z,p):The conditional probability of x given y and z is p. ExposedTo(x,v,f): x has been exposed to a v level of factor f. Does(x,a):x engages in the activity a. Has(x,d): x has the disease d. Positive(x): The procedure x gave a positive result all(x)(andor(1,1){ExposedTo(x,low,pollution), ExposedTo(x,high,pollution)}). all(x)(Patient(x) => {JCP(Has(x,cancer), ExposedTo(x,high,pollution), Does(x,smoke), 0.05), JCP(Has(x,cancer), ExposedTo(x,high,pollution), ~Does(x,smoke), 0.02), JCP(Has(x,cancer), ExposedTo(x,low,pollution), Does(x,smoke), 0.03), JCP(Has(x,cancer), ExposedTo(x,low,pollution), ~Does(x,smoke), 0.001), CP(Positive(X-ray(x)), Has(x,cancer), 0.90), CP(Positive(X-ray(x)), ~Has(x,cancer), 0.20), CP(Has(x,dyspnoea), Has(x,cancer), 0.65), CP(Has(x,dyspnoea), ~Has(x,cancer), 0.30)}).

11 cse@buffalo IF Workshop 2006S. C. Shapiro11 Algorithm for calculatedBel Given an X, To find the p such that calculatedBel(X,p): Infer from the KB all Ei, pi s.t. CP(X,Ei,pi). Infer from the KB the qi s.t. Bel(Ei,qi). Set pcp to Σ i (pi * qi). Infer from the KB all E1i, E2i, pi s.t. JCP(X,E1i,E2i,pi). Infer from the KB the q1i s.t. Bel(E1i,q1i). and the q2i s.t. Bel(E2i,q2i). Set pjcp to Σ i (pi * q1i * q2i). Set p to pcp + pjcp.

12 cse@buffalo IF Workshop 2006S. C. Shapiro12 The Patients and Their Priors Patient(x):x is a patient. Patient({Joe,Jane}). P(ExposedTo(Joe,low,pollution), 0.90). P(Does(Joe,smoke), 0.30). P(ExposedTo(Jane,low,pollution), 0.90). P(Does(Jane,smoke), 0.50).

13 cse@buffalo IF Workshop 2006S. C. Shapiro13 Inferring Posteriors : Bel(ExposedTo(Joe,low,pollution), ?p)?; should be 0.9 wff12!: Bel(ExposedTo(Joe,low,pollution),0.9) : Bel(~Does(Joe,smoke), ?p)?; should be 0.7 wff32!: Bel(~Does(Joe,smoke),0.7) : Bel(ExposedTo(Joe,high,pollution), ?p)?; should be 0.1 wff46!: Bel(ExposedTo(Joe,high,pollution),0.1) : Bel(Has(Joe,cancer), ?p)?; should be 0.011 wff90!: Bel(Has(Joe,cancer),0.011) : Bel(Positive(X-ray(Joe)), ?p)?; should be 0.208 wff104!: Bel(Positive(X-ray(Joe)),0.208) : Bel(Has(Joe, dyspnoea), ?p)?; should be 0.304 wff126!: Bel(Has(Joe,dyspnoea),0.304) : Bel(Has(Jane,cancer), ?p)?; should be 0.017 wff280!: Bel(Has(Jane,cancer),0.017) : Bel(Positive(X-ray(Jane)), ?p)? ; should be 0.212 wff294!: Bel(Positive(X-ray(Jane)),0.212) : Bel(Has(Jane, dyspnoea), ?p)?; should be 0.306 wff377!: Bel(Has(Jane,dyspnoea),0.306)

14 cse@buffalo IF Workshop 2006S. C. Shapiro14 Conclusions SNePS uses procedural attachment to combine numeric with symbolic reasoning. –New attached procedures may be added by the KE. Strengths of symbolic reasoning: –Representation of, and reasoning about general cases. –Instantiating multiple specific cases. –Clarity of declarative statements. Strengths of numerical reasoning: –Complicated numerical calculations. –Especially sums and products of series. –Sometimes faster than logical deduction.


Download ppt "Combining Numeric and Symbolic Reasoning in SNePS Stuart C. Shapiro Department of Computer Science & Engineering Center for MultiSource Information."

Similar presentations


Ads by Google