the scienceomatic 7b environment for scientific representation, reasoning and discovery joseph...

43
The Scienceomatic 7b Environment for Scientific Representation, Reasoning and Discovery Joseph Phillips [email protected] 2008 November

Post on 22-Dec-2015

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: The Scienceomatic 7b Environment for Scientific Representation, Reasoning and Discovery Joseph Phillips jphillips@cdm.depaul.edu 2008 November

The Scienceomatic 7bEnvironment for Scientific Representation, Reasoning

and Discovery

Joseph [email protected]

2008 November

Page 2: The Scienceomatic 7b Environment for Scientific Representation, Reasoning and Discovery Joseph Phillips jphillips@cdm.depaul.edu 2008 November

Overview

Motivation Computational Scientific Discovery System Overview SciRep and Scienceomatic 7b details Applications Conclusion

Page 3: The Scienceomatic 7b Environment for Scientific Representation, Reasoning and Discovery Joseph Phillips jphillips@cdm.depaul.edu 2008 November

Computers need tounderstand science!

Little problem ==>Big consequence

Mars Climate Orbiter NASA asked for thrust

in Newton-seconds Lockeed Martin gave

thrust in pound-seconds Spacecraft burned up in

Mars' atmosphere $327.6 million wasted

Page 4: The Scienceomatic 7b Environment for Scientific Representation, Reasoning and Discovery Joseph Phillips jphillips@cdm.depaul.edu 2008 November

Computers need tounderstand science! (2)

Big problem ==> Big consequenceUnderstanding mortgage-backed securities mess

Page 5: The Scienceomatic 7b Environment for Scientific Representation, Reasoning and Discovery Joseph Phillips jphillips@cdm.depaul.edu 2008 November

Computational Scientific Discovery

Computational Scientific Discovery combines: Artificial Intelligence (Machine Learning, Knowledge

Representation and Reasoning, KDD) Science Philosophy of Science

Q: Why not use conventional Artificial Intelligence and Machine Learning techniques?

A: Because AI and ML see the world differently than science.

Page 6: The Scienceomatic 7b Environment for Scientific Representation, Reasoning and Discovery Joseph Phillips jphillips@cdm.depaul.edu 2008 November

AI vs. CSD

Artificial Intelligence (and logicians) like nice consistent knowledge bases

Science is happily inconsistent: Relativity:

Newton “p = mv”Einstein “p = mv/sqrt(1-v2/c2)”

Quantum mechanics:Rumford, Coriolis, Poncelet, Mohr, et al“The energy of a particle varies with velocity and

potential”Niels Bohr:“The energy of an electron varies with velocity and

potential . . . and it is quantized”

Page 7: The Scienceomatic 7b Environment for Scientific Representation, Reasoning and Discovery Joseph Phillips jphillips@cdm.depaul.edu 2008 November

ML vs CSD

ML emphasizes the data:

CSD emphasizes the bias:

Q: ML folks consider this cheating, why do it?A: Because that's what scientists do!

BiasData + => Model

BiasData + => Model

Page 8: The Scienceomatic 7b Environment for Scientific Representation, Reasoning and Discovery Joseph Phillips jphillips@cdm.depaul.edu 2008 November

Our Approach

The Scienceomatic 7b Designed to answer question “What is object What is object OO's 's

value for attribute value for attribute AA given context given context CC??” Knowledge bases written in SciRep Compiled to Lisp Supports deductive, stochastic reasoning Queries return justification objects that trace

reasoning and contextualize it in a story. Open architecture, future modules can support:

Inductive, abductive, and analogical reasoning Scientific visualization Model modification Model comparison

Page 9: The Scienceomatic 7b Environment for Scientific Representation, Reasoning and Discovery Joseph Phillips jphillips@cdm.depaul.edu 2008 November

System Overview Diagram

Page 10: The Scienceomatic 7b Environment for Scientific Representation, Reasoning and Discovery Joseph Phillips jphillips@cdm.depaul.edu 2008 November

Implement Lisp in Java (?)

Page 11: The Scienceomatic 7b Environment for Scientific Representation, Reasoning and Discovery Joseph Phillips jphillips@cdm.depaul.edu 2008 November

Autonomous and Distributed

Page 12: The Scienceomatic 7b Environment for Scientific Representation, Reasoning and Discovery Joseph Phillips jphillips@cdm.depaul.edu 2008 November

Extendable Open Architecture

Page 13: The Scienceomatic 7b Environment for Scientific Representation, Reasoning and Discovery Joseph Phillips jphillips@cdm.depaul.edu 2008 November

System Features (1)

Object oriented architecture into scientific and meta-scientific entities

Page 14: The Scienceomatic 7b Environment for Scientific Representation, Reasoning and Discovery Joseph Phillips jphillips@cdm.depaul.edu 2008 November

System Features (2)

Justification Traces: Trace through knowledge base of path taken to

answer question Gives you:

An explanation of the answer (if one is found) A Lisp program that computes an answer (may be

stochastic)

Justification Stories: For comparison among justification traces To argue why one trace is better than others

Page 15: The Scienceomatic 7b Environment for Scientific Representation, Reasoning and Discovery Joseph Phillips jphillips@cdm.depaul.edu 2008 November

System Features (3)

Automatic conversion and unification of units and dimensions

100 cm + 1 meter = 2 meters(100 cm == 1 meter) = true(101 cm == 1 meter) = false

100 cm + 1 second = Error!(100 cm == 1 second) = Error!

Page 16: The Scienceomatic 7b Environment for Scientific Representation, Reasoning and Discovery Joseph Phillips jphillips@cdm.depaul.edu 2008 November

System Features (4)

Values as distributions

object.length = {3.97, 3.99, 4.00, 4.00, 4.01} cm

Integers, ratios, floats and symbols are represented as bags:

Like sets they are unordered Like lists they may contain the same item more than once By convention, distribution members are listed in ascending

order Two unsampled, analytical distributions exist:

Normal( <mean>, <twice_std_dev> ) Uniform( <low>, <high> )

Page 17: The Scienceomatic 7b Environment for Scientific Representation, Reasoning and Discovery Joseph Phillips jphillips@cdm.depaul.edu 2008 November

System Features (5)

Stochastic Computation

Can take 3 paths:(1) Case p(A) < p(B)(2) Case p(A) = p(B)(3) Case p(A) > p(B)

3 different justification traces

Decision is memorized in context for consistency

Page 18: The Scienceomatic 7b Environment for Scientific Representation, Reasoning and Discovery Joseph Phillips jphillips@cdm.depaul.edu 2008 November

System Features (6)

Preference for symbolic computation over comparison computation

Box.chocolateSet.setSizeAttr <= Box.binSet.setSizeAttr

(“The number of chocolates in a box is less than or equal to the number of bins in the same box”)

No need to compute with number of chocolates or number of bins

Page 19: The Scienceomatic 7b Environment for Scientific Representation, Reasoning and Discovery Joseph Phillips jphillips@cdm.depaul.edu 2008 November

How to the Scienceomatic computes

Issue #1:

There is There is more than one waymore than one way to to compute something.compute something.

Example: “What is the weight of Joe Phillips?”

Empirical scientist: “Weigh him!”

Theoretical scientist: “Apply the proper formula to get ab initio value”

(particles p in JoePhillips) mass(p)*gravitationalAcceleration

Page 20: The Scienceomatic 7b Environment for Scientific Representation, Reasoning and Discovery Joseph Phillips jphillips@cdm.depaul.edu 2008 November

Dealing with Issue #1

First, label knowledge by type: define: For cultural definitions:

There are 100 cm in 1 meter. expect: Like define, but for we only expect:

As a biologist, I believe H. sapiens is one of many species. data: For measurements.

Tycho Brahe's astronomical observations. generalize: Generalized data explained by theory:

Kepler's Laws theory: Explains generalizations

Newton's Laws of Motion and Gravitation analytical: True by mathematics.

Pythagorean theorem.

Page 21: The Scienceomatic 7b Environment for Scientific Representation, Reasoning and Discovery Joseph Phillips jphillips@cdm.depaul.edu 2008 November

Dealing with Issue #1, cont'd

Second, search by knowledge type:

abInitio: define/expect, theory, analyticreadData: define/expect, data, analytictheorize: define/expect, theory, generalize,

data, analyticempiricize:define/expect, data, generalize,

theory, analyticgiven: define/expect, analytic

define/expect always first: consistency w/cultureanalytical always last: recast problem

Page 22: The Scienceomatic 7b Environment for Scientific Representation, Reasoning and Discovery Joseph Phillips jphillips@cdm.depaul.edu 2008 November

How to the Scienceomatic computes (2)

Issue #2:

There are multiple sources of knowledge:

Example: “What is the weight of Joe Phillips?”

We can answer base on . . . what Joe Phillips is undergoing Joe Phillips' environment's by virtue of who and what Joe Phillips is

Page 23: The Scienceomatic 7b Environment for Scientific Representation, Reasoning and Discovery Joseph Phillips jphillips@cdm.depaul.edu 2008 November

Dealing with Issue #2

For each search-by-knowledge type: search in this order:

Processes: Returns an dynamic answer Based on what Joe Phillips is undergoing

Stases: Returns a static answer Based on Joe Phillips' environment

Object: Returns a identity answer Based on who and what Joe Phillips is

Page 24: The Scienceomatic 7b Environment for Scientific Representation, Reasoning and Discovery Joseph Phillips jphillips@cdm.depaul.edu 2008 November

Application 1: Reasoning

Query:“What's Joe Phillips' weight on 28 Sept 2008?”1) Any active processes? No process specified.2) Any active stases? Yes, assume on Earth3) Search type? Empiricize: (favor weighing him over

computing the mass of all of his particles)

Full query:“What's Joe Phillips' weight on 28 Sept 2008?”Context = (search_type=empiricize, stasis_set =

{contemporaryEarthSurfaceGravitation})

Page 25: The Scienceomatic 7b Environment for Scientific Representation, Reasoning and Discovery Joseph Phillips jphillips@cdm.depaul.edu 2008 November

Application 1 (1)

Page 26: The Scienceomatic 7b Environment for Scientific Representation, Reasoning and Discovery Joseph Phillips jphillips@cdm.depaul.edu 2008 November

Application 1 (2)

Page 27: The Scienceomatic 7b Environment for Scientific Representation, Reasoning and Discovery Joseph Phillips jphillips@cdm.depaul.edu 2008 November

Application 1 (3)

Page 28: The Scienceomatic 7b Environment for Scientific Representation, Reasoning and Discovery Joseph Phillips jphillips@cdm.depaul.edu 2008 November

Application 1 (4)

Page 29: The Scienceomatic 7b Environment for Scientific Representation, Reasoning and Discovery Joseph Phillips jphillips@cdm.depaul.edu 2008 November

Application 1: justification trace

Page 30: The Scienceomatic 7b Environment for Scientific Representation, Reasoning and Discovery Joseph Phillips jphillips@cdm.depaul.edu 2008 November

Application 2: Explanation Documentation

Why is the Sky Blue?Why is the Sky Blue?Traditional computational approach

1. Measure solar output above Earth's atmosphere (e.g. by satellite or very high-altitude balloon)

2. Measure composition of Earth's atmosphere (molecules, particles, etc.)

3. Measure interactions of photons by wavelength on molecules, particles (refraction, scatter, absorption)

4. Do a simulationGives you everything . . .

Blue skyBlue sky and . . . Clouds, fog, smog, rainbows, yellow sunsets/rises

Page 31: The Scienceomatic 7b Environment for Scientific Representation, Reasoning and Discovery Joseph Phillips jphillips@cdm.depaul.edu 2008 November

Application 2: Explanation Documentation

Why is the Sky Blue?Why is the Sky Blue?But it's not how humans explain it to each other!

We want An approach that mirrors how humans explain to

each other An approach that can be expanded to the fuller

computational approach An approach that can support multiple explanation

approaches

Page 32: The Scienceomatic 7b Environment for Scientific Representation, Reasoning and Discovery Joseph Phillips jphillips@cdm.depaul.edu 2008 November

Application 2: Explanation Documentation

Why is the Sky Blue?Why is the Sky Blue?How humans explain this to other humans:

Philips Gibbs, 1997 http://math.ucr.edu/home/baez/physics/General/BlueSky/blue_sky.html

1. Sunlight has (among other things) the colors: red+orange+yellow+green+blue+violet

2. The shorter the wavelength, the higher the probability of scatter upon hitting air molecule:

p(red)<p(orange)<p(yellow)<p(green)<p(blue)<p(violet)3. Photons scattered by object determine its color

Page 33: The Scienceomatic 7b Environment for Scientific Representation, Reasoning and Discovery Joseph Phillips jphillips@cdm.depaul.edu 2008 November

Application 2: Explanation Documentation

Why is the Sky Blue?Why is the Sky Blue?

HOWEVER, the sky is not violet because:a) There are less violet photons than blue onesb) Violet photons are absorbed more than blue onesc) Our eyes are more sensitive to blue than violet

Overall justification story . . .1. “Both blue and violet scatter more than red, orange,

yellow, and green”2. “Violet scatters more than blue, but violet is less

prevalent because violet is absorbed, less numerous, and we're less sensitive”

3. “The sky appears blue”

Page 34: The Scienceomatic 7b Environment for Scientific Representation, Reasoning and Discovery Joseph Phillips jphillips@cdm.depaul.edu 2008 November

Tracing Explanations for Humans

One notation to cover it all:

<howExplainPred>(<whatExplained>,[predArgs],<author>)

<howExplainPred> Tells which explanatory approach was used

<whatExplained> Assertion that was explained

[<predArgs>] List of arguments need by <howExplainPred>

to compute <whatExplained> <authorship> (optional)

Who gave us the raw data? Who said to use the reasoning approach? When? Why?

Page 35: The Scienceomatic 7b Environment for Scientific Representation, Reasoning and Discovery Joseph Phillips jphillips@cdm.depaul.edu 2008 November

Tracing Explanations for Humans

Why is the Sky Blue?Why is the Sky Blue?

I.e.: (sky.color == blue)

ifThen (sky.color == blue, [<ifObjScattersColoredPhotonsThenIsThatColor>, <dominantScatteredPhotonColorOfSkyIsBlue>] )

Page 36: The Scienceomatic 7b Environment for Scientific Representation, Reasoning and Discovery Joseph Phillips jphillips@cdm.depaul.edu 2008 November

Tracing Explanations for Humans

Why is the dominant scattered photon Why is the dominant scattered photon color of the sky Blue?color of the sky Blue?

I.e. <dominantScatteredPhotonColorOfSkyIsBlue>

thisButThatTherefore* (<dominantScatteredPhotonColorOfSkyIsBlue>, [<violetAndBlueScattersMoreThanRedOrangeEtc>, <violetLessPrevalent>] )

* (No, I am not happy with this predicate's name)

Page 37: The Scienceomatic 7b Environment for Scientific Representation, Reasoning and Discovery Joseph Phillips jphillips@cdm.depaul.edu 2008 November

Tracing Explanations for Humans

Why do blue and violet photons scatter Why do blue and violet photons scatter more than red, orange, more than red, orange, etcetc.?.?

I.e. <violetAndBlueScattersMoreThanRedOrangeEtc>

ifThen (<violetAndBlueScattersMoreThanRedOrangeEtc>, [<ifWavelengthIsSmallerThenHigherProbOfScatter>, <violetAndBluePhotonsHaveSmallerWavelengths>] )

Page 38: The Scienceomatic 7b Environment for Scientific Representation, Reasoning and Discovery Joseph Phillips jphillips@cdm.depaul.edu 2008 November

Tracing Explanations for Humans

Why do blue and violet photons have Why do blue and violet photons have smaller wavelengths than other colors?smaller wavelengths than other colors?

stated (bluePhoton.wavelen<redPhoton.wavelen AND bluePhoton.wavelen<orangePhoton.wavelen AND . . ., [ ] )

All proper explanations have stated() predicates at leaves

Page 39: The Scienceomatic 7b Environment for Scientific Representation, Reasoning and Discovery Joseph Phillips jphillips@cdm.depaul.edu 2008 November

Grounding explanation in computation

For most people one can stop at the assertion

<ifWavelengthIsSmallerThenHigherProbOfScatter>

Physicists might want an explanation of this too!

SciRep can either: Represent the assertion as stated() (from

the generalizations) Further explain it in terms of theory, like:

Lorenz-Mie-Debye theoryRayleigh and Raman scattering

Plug wavelens and particle sizes in the eqns

Page 40: The Scienceomatic 7b Environment for Scientific Representation, Reasoning and Discovery Joseph Phillips jphillips@cdm.depaul.edu 2008 November

Supporting other reasoning approaches

There are several ways of explaining . . . Logic Schematic (e.g. Structure mapping engine) Bayesian Networks Neural networks

Page 41: The Scienceomatic 7b Environment for Scientific Representation, Reasoning and Discovery Joseph Phillips jphillips@cdm.depaul.edu 2008 November

Example: Logic

Resolution Proof Resolution Outlined in SciRep

Page 42: The Scienceomatic 7b Environment for Scientific Representation, Reasoning and Discovery Joseph Phillips jphillips@cdm.depaul.edu 2008 November

Example: Neural Nets

Page 43: The Scienceomatic 7b Environment for Scientific Representation, Reasoning and Discovery Joseph Phillips jphillips@cdm.depaul.edu 2008 November

Conclusion

The Scienceomatic 7b is . . . Designed for scientific models through support for:

dimension and units unification and conversion explicit, normal or uniform distributions

Deterministic and stochastic Prefers symbolic computation over numeric Extendable, open architecture Supportive of different types of queries

Ab-initio, empirical, theoretical, etc. Supportive multiple reasoning approaches Able to represent . . .

Models Explanations of answers Stories about which justifications are preferred