FREeME Phase I Kickoff

474 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
474
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
3
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

FREeME Phase I Kickoff

  1. 1. Doing More with LESS: Logic Embedded in SpreadSheets Andre Valente (KSVentures and USC/ISI) David Van Brackle (ISX) Hans Chalupsky (KSVentures and USC/ISI) Gary Edwards (ISX)
  2. 2. LESS: L ogic E mbedded in S pread S heets <ul><li>Logic Embedded in SpreadSheets (LESS) will provide the user with a system which combines the power of logic-based knowledge representation and reasoning with the familiar and easily-mastered user interface paradigm of a spreadsheet </li></ul><ul><li>LESS was developed under an SBIR contract from DARPA </li></ul><ul><ul><li>Project Manager: David Gunning </li></ul></ul>
  3. 3. Motivation <ul><li>Spreadsheets are Widespread but Error Prone [Abraham & Erwig, 2003] </li></ul><ul><ul><li>55 Million users (= programmers) of spreadsheets in 2005 </li></ul></ul><ul><ul><li>Spreadsheets contain alarming rates of errors [Erwig and Burnett 2002] </li></ul></ul><ul><li>Spreadsheets have their strengths… </li></ul><ul><ul><li>Rapid model development </li></ul></ul><ul><ul><li>Interactive “What If” feedback </li></ul></ul><ul><ul><li>Scalable application of easily defined computational logic </li></ul></ul><ul><li>… and weaknesses </li></ul><ul><ul><li>Hard to express complex logical statements </li></ul></ul><ul><ul><li>Data structure hides relationships </li></ul></ul>
  4. 4. Logic spreadsheets can <ul><li>Improve quality (less errors) </li></ul><ul><li>Increase maintainability </li></ul><ul><li>Support the construction of more explicit and complex models </li></ul><ul><li>Be a practical platform for knowledge acquisition </li></ul>
  5. 5. Key Challenges <ul><li>Basic Perspective: </li></ul><ul><ul><li>A pragmatic, scruffy, engineering approach </li></ul></ul><ul><ul><li>Start with open mind – try things out, see what works </li></ul></ul><ul><li>Usefulness – How to develop a useful tool, not just an academic exercise? </li></ul><ul><ul><li>Answer: a real hybrid </li></ul></ul><ul><ul><li>Enrich the functionality of a spreadsheet while maintaining on its core interaction paradigm </li></ul></ul><ul><ul><li>Spreadsheet should not be a GUI for knowledge bases </li></ul></ul><ul><ul><li>Logic should not be just a function library in the spreadsheet </li></ul></ul><ul><li>Usability – How to get the syntax and the human interaction right to make it usable </li></ul><ul><ul><li>Answer: four tiers </li></ul></ul><ul><ul><li>Hide as much logic as needed </li></ul></ul><ul><ul><li>Allows different trade-offs </li></ul></ul>
  6. 6. The LESS Model Tier 1: Logic functions available programmatically in formulas Tier 2: Tabular-oriented Knowledge Integrated into Spreadsheet GUI Tier 3: Full Integration of Spreadsheet and Logic System Tier 4: App Templates
  7. 7. Tier 1: Logic functions available programmatically in formulas <ul><li>PowerLoom functionality available to Spreadsheet functions as function calls </li></ul><ul><ul><li>Lifting Mappings – pushing info into the KB </li></ul></ul><ul><ul><li>Query Mappings – extracting info from the KB </li></ul></ul>ASSERT( “Age”, $A2, B2 ) IF( ASK( “Happy”, $A3 ), “Yes” ) Saab 33 Sam 4 Yes Ford 17 Joe 3 14 Fred 2 Happy? Car Age Person 1 D C B A
  8. 8. Tier 2: Tabular-oriented Knowledge Integrated into Spreadsheet GUI <ul><li>Instance Tables: A collection of instances of a given class will be represented as a special spreadsheet table </li></ul><ul><li>Creating a new Instance Table is equivalent to creating a Class in an Ontology </li></ul><ul><li>Rules are entered as text, much like Spreadsheet Functions </li></ul>
  9. 9. Tier 3: Full Integration of Spreadsheet and Logic System <ul><li>Increased usability </li></ul><ul><li>Hide away details of logic formulations </li></ul><ul><li>Develop special GUIs integrated into the spreadsheet </li></ul><ul><ul><li>Wizards </li></ul></ul><ul><ul><li>Special cell editors </li></ul></ul><ul><ul><li>TreeTable metaphors </li></ul></ul><ul><li>Requires tighter integration of logic and spreadsheet data models </li></ul>
  10. 10. Tier 4: Application Templates <ul><li>Templatize working LESS applications </li></ul><ul><li>Hide even more of logic to users </li></ul><ul><li>Better deployment, packaging mechanisms </li></ul><ul><ul><li>Domain Paks </li></ul></ul><ul><ul><li>Templates captured by experts in a given field and widely distributed </li></ul></ul><ul><li>Production tools (meta level) </li></ul><ul><li>Mechanisms for connecting to existing data (e.g. in DBMSs) </li></ul>
  11. 11. LESS Architecture
  12. 12. LESS Components <ul><li>LESS integrates: </li></ul><ul><ul><li>PowerLoom, a powerful logic KR&R system </li></ul></ul><ul><ul><li>Microsoft Excel, the most widely used spreadsheet in the world </li></ul></ul><ul><li>LESS is implemented as an extension (add-in) to Microsoft Excel </li></ul><ul><li>Status: prototype implementation to be demonstrated here </li></ul><ul><ul><li>LESS Excel add-in has 1.6Mb (includes PowerLoom libraries) </li></ul></ul><ul><ul><li>Implemented in C++ and Visual Basic </li></ul></ul>
  13. 13. Component Interactions Excel Spreadsheet PowerLoom Push Knowledge Into PowerLoom Invoke PowerLoom Functions Pull Knowledge From PowerLoom Invoke Spreadsheet Functions Push Knowledge To Spreadsheet LESS – a mapping layer between Excel and PowerLoom
  14. 14. PowerLoom <ul><li>PowerLoom is result of 20 years of research and practical use of KR&R systems at USC/ISI </li></ul><ul><li>Powerful and expressive </li></ul><ul><li>Unique “pragmatic” stance to tackle real world problems </li></ul><ul><ul><li>Usability more important than theoretical &quot;neatness&quot; </li></ul></ul><ul><ul><li>Allow trade-offs between expressivity/completeness </li></ul></ul><ul><li>A KR system for real-world applications </li></ul><ul><ul><li>Used in HPKB, CoABS, RKF, EELD, etc. </li></ul></ul>
  15. 15. PowerLoom Highlights <ul><li>Representation in fully-expressive first-order predicate logic </li></ul><ul><li>KIF syntax with many extensions to standard FOL: </li></ul><ul><ul><li>Type, set & cardinality relations (e.g., subset-of, range-cardinality) </li></ul></ul><ul><ul><li>Second-order definitions via holds </li></ul></ul><ul><ul><li>Classical negation and negation-by-failure, defaults </li></ul></ul><ul><li>Frame-style definition language as syntactic sugar </li></ul><ul><ul><li>Defconcept, defrelation, deffunction, definstance, defrule </li></ul></ul><ul><li>Incremental monotonic and non-monotonic updates </li></ul><ul><ul><li>Interleave definitions, assertions, retractions with retrieval and inference </li></ul></ul><ul><li>Context mechanism separates name and assertion spaces with inheritance </li></ul><ul><ul><li>Provides structuring mechanism, facilitates hypothetical reasoning </li></ul></ul><ul><li>Several reasoning mechanisms </li></ul><ul><ul><li>Reasoning specialists architecture for “plug-ins” (e.g., time reasoner) </li></ul></ul><ul><li>RDBMS interface based on lifting axioms </li></ul>
  16. 16. PowerLoom Status and Distribution <ul><li>Written in STELLA </li></ul><ul><ul><li>Available in Lisp, C++ and Java </li></ul></ul><ul><li>Both STELLA and PowerLoom are now Open Source </li></ul><ul><ul><li>Recent development for PowerLoom </li></ul></ul><ul><ul><li>GNU or Mozilla licenses </li></ul></ul><ul><li>Current release: PowerLoom 3.0.2.beta </li></ul><ul><ul><li>Distributed as Lisp, C++ and Java source </li></ul></ul><ul><ul><li>More recently in STELLA source </li></ul></ul><ul><ul><li>~600 downloads world-wide </li></ul></ul><ul><ul><li>~400 subscribers to the mailing lists </li></ul></ul>
  17. 17. Why Have a Logic Spreadsheet at All?
  18. 18. A Key Insight: Relational vs. Positional Referencing (1) <ul><li>Spreadsheets use positional referencing to refer to information </li></ul><ul><ul><li>G5 = relative cell reference </li></ul></ul><ul><ul><li>$G$5 = absolute cell reference </li></ul></ul><ul><ul><li>A5:D5 = range of cells {A5 B5 C5 D5} </li></ul></ul><ul><li>Positional Referencing is very intuitive in the beginning… </li></ul><ul><li>But it is highly error-prone </li></ul><ul><ul><li>More complicated than it seems at a first glance </li></ul></ul><ul><ul><li>Spreadsheets try hard do update references when changes are made (e.g., a line is inserted), but errors are frequently introduced </li></ul></ul><ul><li>Also, restricted to two dimensions </li></ul>
  19. 19. A Key Insight: Relational vs. Positional Referencing (2) <ul><li>Logic uses relational referencing to refer to information </li></ul><ul><ul><li>Meaning is conveyed by relations and assertions </li></ul></ul><ul><ul><li>Information is referenced by open variables as well as role in relations </li></ul></ul><ul><li>Example: </li></ul><ul><ul><li>Logic function (hours ?person ?month ?task) </li></ul></ul><ul><ul><li>Means the number of hours a ?person spends on a ?task in a ?month </li></ul></ul><ul><li>N-ary relations and more powerful proposition specification languages add power to spreadsheets </li></ul>
  20. 20. A Key Insight: Relational vs. Positional Referencing (3) <ul><li>Key insight of LESS is to add relational referencing to spreadsheets </li></ul><ul><li>Mixed model allies best of both worlds </li></ul><ul><li>Cells can still be used to refer to data </li></ul><ul><ul><li>Cell Variables can be bound to contents of cells </li></ul></ul><ul><li>Logic propositions express relationship between several information elements </li></ul>
  21. 21. LESS Features – Highlights
  22. 22. LESS Features – Highlights <ul><li>Explicit relationships </li></ul><ul><li>Multi-dimensional relations </li></ul><ul><li>Better, Explicit (Business) Rules </li></ul><ul><li>Powerful information querying </li></ul><ul><li>Platform for Knowledge Acquisition/Engineering </li></ul><ul><li>Platform for deploying Knowledge-Based Systems </li></ul>
  23. 23. About Our Examples <ul><li>Three main examples: </li></ul><ul><ul><li>Pilot training spreadsheet </li></ul></ul><ul><ul><li>Budget spreadsheet </li></ul></ul><ul><ul><li>Grading spreadsheet </li></ul></ul><ul><li>All examples are real-life spreadsheets </li></ul><ul><ul><li>Pilot training example based on a spreadsheet used by ANG 149th Tactical Fighter Squadron </li></ul></ul><ul><ul><li>Budget spreadsheet was used by a small business for writing cost proposals for government contracts </li></ul></ul><ul><ul><li>Grading spreadsheet was used to grade an actual course as well as an exercise for a class in spreadsheets </li></ul></ul><ul><li>Sometimes simplified for presentation purposes </li></ul><ul><ul><li>Syntax in these slides is simplified (we are still adding syntactic sugar) </li></ul></ul>
  24. 24. LESS Features – Highlights <ul><li>Explicit relationships </li></ul><ul><li>Multi-dimensional relations </li></ul><ul><li>Better, Explicit (Business) Rules </li></ul><ul><li>Powerful information querying </li></ul><ul><li>Platform for Knowledge Acquisition/Engineering </li></ul><ul><li>Platform for deploying Knowledge-Based Systems </li></ul>
  25. 25. Positional Referencing Looks Easier Than It Is (1) <ul><li>For example, B6 contains the formula =SUM(B3:B5) </li></ul><ul><li>Simple, easy… </li></ul>
  26. 26. Positional Referencing Looks Easier Than It Is (2) <ul><li>Even such a simple sheet generates errors when a new employee (line) is added! </li></ul><ul><li>Totals stayed the same but should have been updated </li></ul>
  27. 27. Positional Referencing Looks Easier Than It Is (3) <ul><li>What is the problem? </li></ul><ul><li>In positional referencing SUM(B3:B5) really means “sum the three cells above me” </li></ul><ul><ul><li>This clearly is not what is intended </li></ul></ul><ul><li>Intention of the user is “sum the Jan-05 hours for all persons in Task 1” </li></ul><ul><li>Relational referencing allows a user to say just that! </li></ul>
  28. 28. Relational Referencing in LESS Makes Relationship Explicit (1) <ul><li>With LESS, we want to express the relationships explicitly </li></ul><ul><ul><li>(hours ?person ?month ?task) </li></ul></ul><ul><ul><li>Means the number of hours a ?person spends on a ?task in a ?month </li></ul></ul><ul><li>In order to add relational information to a spreadsheet, we need to add a lifting formula </li></ul><ul><li>One way is to add a lifting formula on top of each column: </li></ul><ul><ul><li>=ASSERTMULTI(“hours”, A3:A5, B2, $A$1) </li></ul></ul><ul><ul><li>This expands into and performs a series of assertions, e.g.: </li></ul></ul><ul><ul><ul><li>(hours A3 B2 A1) = (hours “Fred” Jan-05 “Task 1”) = 12 </li></ul></ul></ul><ul><ul><ul><li>(hours A4 B2 A1) = (hours “Wilma” Jan-05 “Task 1”) = 4 </li></ul></ul></ul>
  29. 29. Relational Referencing in LESS Makes Relationship Explicit (2) <ul><li>Once the information is lifted into PowerLoom, we can easily express a cell as “sum the Jan-05 hours in Task 1 for all persons” </li></ul><ul><li>B6 contains the formula: </li></ul><ul><ul><li>=SUM (RETRIEVEALL (“hours ?person Jan-05 “Task 1”)”)) </li></ul></ul><ul><li>Notice mix of logic and spreadsheet functions </li></ul>
  30. 30. LESS Features – Highlights <ul><li>Explicit relationships </li></ul><ul><li>Multi-dimensional relations </li></ul><ul><li>Better, Explicit (Business) Rules </li></ul><ul><li>Powerful information querying </li></ul><ul><li>Platform for Knowledge Acquisition/Engineering </li></ul><ul><li>Platform for deploying Knowledge-Based Systems </li></ul>
  31. 31. Multi-dimensional relations (1) <ul><li>Problem: positional referencing only works when information has at most two dimensions (3-arity relations) </li></ul><ul><li>Intuitively easy to see: user cannot make a range with three dimensions </li></ul>
  32. 32. Multi-dimensional relations (2) <ul><li>Example: calculate totals across tables </li></ul><ul><li>Formula looks much less intuitive, e.g. B24=B3+B10+B17 </li></ul><ul><ul><li>Can’t use ranges </li></ul></ul><ul><li>Extremely hard to maintain and error prone! </li></ul><ul><ul><li>E.g., if a new task is added or there are many tasks </li></ul></ul><ul><li>What you really want to say is “sum the hours in Jan-05 for Fred in all tasks” </li></ul>
  33. 33. What happened? <ul><li>Task table can be seen as a model with two dimensions – person and monthly hours </li></ul><ul><li>BUT: Overall information model reflects indexing in three dimensions – person, month and task </li></ul><ul><li>When information needs to be aggregated across more than two dimensions, the spreadsheet model suffers </li></ul><ul><li>Pivot tables can overcome some limitations, but only for some cases </li></ul>
  34. 34. LESS Supports Multi-Dimensional Relations <ul><li>Assuming the same lifting described earlier, we can easily express “sum the hours in Jan-05 for Fred in all tasks” as: </li></ul><ul><li>=SUM (RETRIEVEALL (&quot;(hours Fred Jan-05 ?task)”)) </li></ul><ul><li>This can also easily be turned in to an Excel-like template formula by mixing cell variables: </li></ul><ul><li>=SUM (RETRIEVEALL (&quot;(hours A24 B$23 ?task)”)) </li></ul>
  35. 35. LESS Features – Highlights <ul><li>Explicit relationships </li></ul><ul><li>Multi-dimensional relations </li></ul><ul><li>Better, Explicit (Business) Rules </li></ul><ul><li>Powerful information querying </li></ul><ul><li>Platform for Knowledge Acquisition/Engineering </li></ul><ul><li>Platform for deploying Knowledge-Based Systems </li></ul>
  36. 36. LESS Provides Better, Explicit Rules <ul><li>Spreadsheets encode business rules in formulas </li></ul><ul><li>Several problems: </li></ul><ul><ul><li>Rules are hidden from view – harder to audit, opaque </li></ul></ul><ul><ul><li>Rules have to be repeated everywhere they are used – higher chance for errors, difficult to maintain </li></ul></ul><ul><li>Another problem is that spreadsheet formulas are very poor in expressing rules that are not strictly mathematical formulas </li></ul><ul><ul><li>No good mechanism for complex conditions </li></ul></ul><ul><li>LESS allows a user to model explicit (business) rules </li></ul><ul><ul><li>Better methodology (trend towards explicit business rules) </li></ul></ul><ul><ul><li>Easier to debug and maintain </li></ul></ul><ul><ul><li>Improves visibility, communication </li></ul></ul>
  37. 37. Better, Explicit Rules - Example (1) <ul><li>In the example below, the formula to calculate the grade letter (column H) requires nested conditionals: </li></ul><ul><ul><li>IF($H4<70,&quot;D&quot;, IF($H4<75,&quot;C-&quot;, IF($H4<78,&quot;C&quot;, IF($H4<80,&quot;C+&quot;, IF($H4<85,&quot;B-&quot;, IF($H4<88,&quot;B&quot;, IF($H4<90,&quot;B+&quot;, IF($H4<95,&quot;A-&quot;,&quot;A&quot;)))))))) </li></ul></ul><ul><li>Opaque, hard to read, easy to make mistakes </li></ul><ul><li>“ Rule” is repeated once per line – error prone, hard to maintain </li></ul>
  38. 38. Better, Explicit Rules – Example (2) <ul><li>In LESS we can define rules elsewhere and simply apply them </li></ul><ul><li>In the same example, the formula to calculate the grade letter (column H) is a simple query: </li></ul><ul><ul><li>RETRIEVE(&quot;1 (letter-grade &quot;, A3, &quot; ?x)&quot; ) ) </li></ul></ul><ul><li>Notice how the rules are defined once, applied several times </li></ul>
  39. 39. Better, Explicit Rules – Example (3) <ul><li>In LESS rules can be defined separately and explicitly, and reused everywhere: </li></ul>
  40. 40. Better, Explicit Rules – Example (4) <ul><li>Rules can also be parameterized on Excel data – a nice fit with Excel modeling style: </li></ul>
  41. 41. Better, Explicit Rules – Example (5) <ul><li>For ultimate elegance, we can use templates (Phase II) : </li></ul>
  42. 42. LESS Features – Highlights <ul><li>Explicit relationships </li></ul><ul><li>Multi-dimensional relations </li></ul><ul><li>Better, Explicit (Business) Rules </li></ul><ul><li>Powerful information querying </li></ul><ul><li>Platform for Knowledge Acquisition/Engineering </li></ul><ul><li>Platform for deploying Knowledge-Based Systems </li></ul>
  43. 43. Powerful Information Querying <ul><li>Spreadsheets have limitations on how to summarize information </li></ul><ul><ul><li>Particularly if the information is symbolic </li></ul></ul><ul><li>Basic problem is that it is hard to select information from other parts of the spreadsheet </li></ul><ul><ul><li>Worse if information is in multiple tables and/or has more than three dimensions </li></ul></ul><ul><li>Special wizards such as Excel pivot tables help overcome some of these deficiencies </li></ul><ul><ul><li>But they still have restricted expressivity </li></ul></ul>
  44. 44. LESS Demo – Squadron Training Examples Also – Tiers 2, 3
  45. 45. LESS Features – Highlights <ul><li>Explicit relationships </li></ul><ul><li>Multi-dimensional relations </li></ul><ul><li>Better, Explicit (Business) Rules </li></ul><ul><li>Powerful information querying </li></ul><ul><li>Platform for Knowledge Acquisition/Engineering </li></ul><ul><li>Platform for deploying Knowledge-Based Systems </li></ul>
  46. 46. New Possibilities Opened with LESS <ul><li>One way to look at logic spreadsheets is for logic to add spice to spreadsheets </li></ul><ul><ul><li>Delivers incremental improvements </li></ul></ul><ul><ul><li>(Only) user is spreadsheet user </li></ul></ul><ul><li>We found that logic spreadsheets can be good for knowledge engineers as well </li></ul><ul><li>Two types of applications: </li></ul><ul><ul><li>Template-based knowledge acquisition </li></ul></ul><ul><ul><li>Reasoning </li></ul></ul>
  47. 47. Template-based knowledge acquisition (1) <ul><li>A common problem in knowledge acquisition is to acquire knowledge about many similar objects </li></ul><ul><li>KA approaches are hard to understand for SMEs </li></ul><ul><ul><li>Require understanding of modeling decisions </li></ul></ul><ul><li>For instance, not reasonable to ask an SMEs to model (example from DARPA ARPI and JFACC Programs): </li></ul><ul><ul><li>(defconcept F-15 </li></ul></ul><ul><ul><li>:IS-PRIMITIVE Fighter-Aircraft </li></ul></ul><ul><ul><li>:IMPLIES (:AND (:FILLED-BY NICKNAME &quot;Eagle&quot;) </li></ul></ul><ul><ul><li>(:FILLED-BY MADE-BY MCDONNELL-DOUGLAS) </li></ul></ul><ul><ul><li>(:EXACTLY 2 ENGINES) </li></ul></ul><ul><ul><li>(:ALL GUN M61A1) </li></ul></ul><ul><ul><li>(:FILLED-BY IN-SERVICE 1972) </li></ul></ul><ul><ul><li>(:FILLED-BY PRIMARY-FUEL JP-4) </li></ul></ul><ul><ul><li>(:FILLED-BY ALTERNATE-FUEL JP-5 JP-8 JET-A JET-A-1 JET-B)) </li></ul></ul><ul><ul><li>:DEFAULTS (:AND (:FILLED-BY CEILING 65000ft) </li></ul></ul><ul><ul><li>(:FILLED-BY COST 15000000) </li></ul></ul><ul><ul><li>(:FILLED-BY CREW-SIZE 1))) </li></ul></ul>
  48. 48. Template-based knowledge acquisition (2) <ul><li>An approach to deal with this problem is to have “knowledge templates” </li></ul><ul><ul><li>Templates abstract the way information is used in the logic formalism </li></ul></ul><ul><ul><li>Middleware code (e.g. a Lisp macro) “routs” the information in the template to its place in the knowledge base (e.g., slot filler, type, default value) </li></ul></ul><ul><li>Example of template implemented as Lisp macro: </li></ul><ul><ul><ul><li>(def-aircraft-c F15 </li></ul></ul></ul><ul><ul><ul><li>:types fighter-attack-aircraft </li></ul></ul></ul><ul><ul><ul><li>:nickname &quot;Eagle&quot; </li></ul></ul></ul><ul><ul><ul><li>:made-by McDonnell-Douglas </li></ul></ul></ul><ul><ul><ul><li>:engine-count 2 </li></ul></ul></ul><ul><ul><ul><li>:primary-fuel JP-4 </li></ul></ul></ul><ul><ul><ul><li>:alternate-fuel (JP-5 JP-8 Jet-A Jet-A-1 Jet-B)) </li></ul></ul></ul><ul><li>Ideal division of labor: </li></ul><ul><ul><li>SME enters information easily </li></ul></ul><ul><ul><li>Knowledge engineer designs templates to map into a KB </li></ul></ul>
  49. 49. Template-based knowledge acquisition (3) <ul><li>Logic Spreadsheets are great for implementing knowledge templates </li></ul><ul><ul><li>Table format is natural for most SMEs </li></ul></ul><ul><ul><li>Spreadsheet is widely used (info may already be in a spreadsheet!) </li></ul></ul><ul><ul><li>Information also available for other uses </li></ul></ul><ul><li>Example: </li></ul>
  50. 50. LESS Features – Highlights <ul><li>Explicit relationships </li></ul><ul><li>Multi-dimensional relations </li></ul><ul><li>Better, Explicit (Business) Rules </li></ul><ul><li>Powerful information querying </li></ul><ul><li>Platform for Knowledge Acquisition/Engineering </li></ul><ul><li>Platform for deploying Knowledge-Based Systems </li></ul>
  51. 51. Reasoning <ul><li>Spreadsheets can contain full-blown knowledge-based systems </li></ul><ul><ul><li>Plays on availability of information already in spreadsheets </li></ul></ul><ul><li>For instance, we can re-implement PROSPECT [Valente and Schacchi, 2002] in LESS </li></ul><ul><ul><li>Input was a list of (instances of) business process models </li></ul></ul><ul><ul><li>KB has knowledge about critiquing process models </li></ul></ul><ul><ul><li>Output is agenda of problems to evaluate </li></ul></ul><ul><ul><li>Applied to critique accounting processes in large corporation </li></ul></ul><ul><li>LESS implementation would: </li></ul><ul><ul><li>Use tables and templates to express input process models </li></ul></ul><ul><ul><li>KB can be provided explicitly or as a domain pak </li></ul></ul><ul><ul><li>Output agenda of problems in the process models can be implemented as an instance table </li></ul></ul>
  52. 52. Tier 2 Example
  53. 53. Create instance table
  54. 54. Creating instances

×