AIMSA2010, Sep 10th 2010
"Ontology-Based Authoring of Intelligent Math Tutors ",
D.Sklavakis & I. Refanidis 1
Ontology-Based Authoring ofIntelligent Model-Tracing Math
Tutors
Dimitrios Sklavakis and Ioannis [email protected], [email protected]
Department of Applied InformaticsUnivercity of Macedonia
ThessalonikiGREECE
AIMSA2010, Sep 10th 2010
"Ontology-Based Authoring of Intelligent Math Tutors ",
D.Sklavakis & I. Refanidis 2
Overview The MATHESIS Project
Bottom-up approach The MATHESIS Algebra Tutor
Tutor Representation in MATHESIS Ontology The OWL-S process model The Tutoring model The Authoring model The Program code model The Interface model
Further Work Discussion
AIMSA2010, Sep 10th 2010
"Ontology-Based Authoring of Intelligent Math Tutors ",
D.Sklavakis & I. Refanidis 3
The MATHESIS Project Approach:
Bottom – Up Ontological Engineering
The MATHESIS Algebra/Math Tutor(s):
Declarative and Procedural Knowledge hard-coded in HTML and JavaScript
The MATHESIS Ontology:
Declarative description of the User Interface, Domain Model, Tutoring Model, Student Model and Authoring Model( OWL and
OWL-S)
The MATHESIS Authoring Tools:
Guiding Tutor Authoring Through Searching in the Ontology and “Interpreting” the Authoring Model (OWL-S Processes)
Domain Experts’ Knowledge: Domain + Tutoring + Assessing + Programming
AIMSA2010, Sep 10th 2010
"Ontology-Based Authoring of Intelligent Math Tutors ",
D.Sklavakis & I. Refanidis 4
The MATHESIS Algebra Tutor
Web-based User Interface: HTML + JavaScript Specialized math editing applets: WebEq by Design
Science Declarative Knowledge: JavaScript variables and
Objects Procedural Knowledge: JavaScript functions Domain cognitive model
Top-level skills (20) : algebraic operations (7), identities (5) , factoring (8)
Detailed cognitive task analysis gives a total of 104 cognitive (sub)skills
Detailed hint and error messages for all of the above
AIMSA2010, Sep 10th 2010
"Ontology-Based Authoring of Intelligent Math Tutors ",
D.Sklavakis & I. Refanidis 5
MATHESIS Algebra Tutor Screenshot
Help, Hint and Error Messages Area
WebEq Input Control for the Algebraic Expression being Rewriten
WebEq Input Control for Student Answers
WebEq Input Control for Intermediate Results
AIMSA2010, Sep 10th 2010
"Ontology-Based Authoring of Intelligent Math Tutors ",
D.Sklavakis & I. Refanidis 6
The OWL-S Process Model:Ontological Representation of Procedural
Knowledge Part of the
OWL-S process model
used by the
MATHESIS
ontology
AIMSA2010, Sep 10th 2010
"Ontology-Based Authoring of Intelligent Math Tutors ", D.Sklavakis
& I. Refanidis 7
The OWL-S Process Model:Visual Representation of a Composite
Process’ StructureA composite process is a tree whose non-terminal nodes are control constructs
Leaf nodes are invocations of other processes, composite or simple (Perform constructs)
In MATHESIS Ontology, procedural knowledge is represented as composite processes
AIMSA2010, Sep 10th 2010
"Ontology-Based Authoring of Intelligent Math Tutors ",
D.Sklavakis & I. Refanidis 8
Representing the Tutoring Model:
The Model-Tracing Process(KVL variation)
Being procedural knowledge…
…the model-tracing algorithm is represented as a composite porcess…
…calling other composite processes for each tutoring task.
Representing the Authoring Model:
Part of the Composite Authoring Tasks Ontology
AIMSA2010, Sep 10th 2010
"Ontology-Based Authoring of Intelligent Math Tutors ",
D.Sklavakis & I. Refanidis 9
Representing the Authoring Model:
Part of the Atomic Authoring Statements Ontology
AIMSA2010, Sep 10th 2010
"Ontology-Based Authoring of Intelligent Math Tutors ",
D.Sklavakis & I. Refanidis 10
AIMSA2010, Sep 10th 2010
"Ontology-Based Authoring of Intelligent Math Tutors ",
D.Sklavakis & I. Refanidis 11
Representing the Authoring Model:
“Interpreting” the authoring processes
For each tutoring task…
There is a correspon-ding authoring process…
…which can be further refined.
AIMSA2010, Sep 10th 2010
"Ontology-Based Authoring of Intelligent Math Tutors ",
D.Sklavakis & I. Refanidis 12
From processes to code: monomial multiplication
var pos;var i;var vars1 = parsedMonomials[0].variables;var vars2 = parsedMonomials[1].variables.concat([]);var n1 = vars1.length;var n2 = vars2.length;var exps1 = parsedMonomials[0].exponents;var exps2 = parsedMonomials[1].exponents;for(i=0; i < n1 ; i++) {
parsedMonomials[2].variables.push(vars1[i]); pos = getVariablePosition(vars1[i],vars2); if(pos == -1) { parsedMonomials[2].exponents.push(exps1[i]); var sum = exps1[i]; } else { var sum = parseInt(exps1[i]) + parseInt(exps2[pos]); parsedMonomials[2].exponents.push(sum); vars2[pos] = ""; } for(var j=0; j < n2; j++) { if(vars2[j] != "") { parsedMonomials[2].variables.push(vars2[j]); parsedMonomials[2].exponents.push(exps2[j]); } }
Part of the model-tracing process adapted to monomial multiplication
The monomial_multiplication_execution process
Atomic processes are JavaScriptStatement individuals
JavaScript program lines are JavaScriptProgramLine
individuals
hasJavaScriptCode
hasJavaScriptStatement
AIMSA2010, Sep 10th 2010
"Ontology-Based Authoring of Intelligent Math Tutors ",
D.Sklavakis & I. Refanidis 13
The Low-Level Ontology:JavaScript Code Representation
JavaScript code is represented as a special kind of atomic process, the JavaScriptStatement
Every JavaScriptStatement has a corresponding JavaScript_ProgramLine…
…which holds the actual JavaScript code
AIMSA2010, Sep 10th 2010
"Ontology-Based Authoring of Intelligent Math Tutors ",
D.Sklavakis & I. Refanidis 14
The Low-Level Ontology:Interface Representation
Interface Representation
…which defines corresponding HTMLObject(s).
Every line of HTML code is represented as an HTML_ProgramLine…
HTMLObject(s) are connected via their hasFirstChild and hasNextSibling properties to represent the DOM
AIMSA2010, Sep 10th 2010 15
"Ontology-Based Authoring of Intelligent Math Tutors ",
D.Sklavakis & I. Refanidis
AIMSA2010, Sep 10th 2010
"Ontology-Based Authoring of Intelligent Math Tutors ",
D.Sklavakis & I. Refanidis 16
The MATHESIS OntologyFurther Work
Extend, Refine, Formalise the Ontology Represent the Algebra Tutor in the Ontology Create Authoring Tools:
Parsers HTML ↔ MATHESIS Interface model Parsers JavaScript ↔ JavaScriptStatements Interpreter (“tracer”) for the OWL-S processes Visualisation Tools for the authoring processes
and the authored tutor parts (tutoring, domain, student models, interface and program code)
AIMSA2010, Sep 10th 2010
"Ontology-Based Authoring of Intelligent Math Tutors ", D.Sklavakis
& I. Refanidis 17
The MATHESIS OntologyDiscussion
Being an Ontology, it has all known advantages and disadvantages of ontologies
New approach: ontological representation of procedural knowledge (rules) through OWL-S processes.
Both authoring and authored knowledge share the same representation and lie in the same place
Newly authored tutors become new knowledge to be used for the next ones
Maximum knowledge reuse anticipated
AIMSA2010, Sep 10th 2010
"Ontology-Based Authoring of Intelligent Math Tutors ",
D.Sklavakis & I. Refanidis 18
Thank you!You May Find More About The
MATHESIS Project at http://users.uom.gr/~dsklavakis
Interactive Event at 7pm