An intelligent tutoring system for thai writing using constraint based modeling

107 358 0
An intelligent tutoring system for thai writing using constraint based modeling

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

... iteratively refine and test our student model and enhancements.     We  introduce  Thairator,  an ITS  developed  in  JESS,  which  teaches  Thai language  transcription using our new findings. The student is modeled using Constraint Based Modeling ... like a personal tutor would. Student Modeling is a sub‐branch of User Modeling and  here  we  focus  on  the  domain  of  Thai language  teaching  and  develop  a  system to  iteratively refine and test our student model and enhancements. ... student  modeling module has been produced to teach Thai or  any script based language.  1.2 Research Objectives    Our research aims to develop an enhanced Constraint Based Student Model for the 

AN INTELLIGENT TUTORING SYSTEM FOR THAI WRITING USING CONSTRAINT BASED MODELING TAN CHUAN WEI, JONATHAN (B.Eng.(Hons), NUS) A THESIS SUBMITTED FOR THE DEGREE OF MASTER OF SCIENCE SCHOOL OF COMPUTING NATIONAL UNIVERSITY OF SINGAPORE 2005 ... ACKNOWLEDGEMENTS ... All  these  people  have  been  a  brilliant  source  of  inspiration  to  me  during  the  challenging course of research.  • My dear supervisors: Dr Liou Koujuch (I2R), A/P Chionh Eng Wee (SoC), and  Dr  Titima  Suthiwan  (FASS)  for  their  absolutely  invaluable  guidance  and  support.  • A/P  Chee  Yam  San  for  his  help  and  suggestions  in  the  early  stages  of  the  project.  • My  lab  mates  in  LELS  lab.  Liu  Yi,  Yuan  Xiang,  Leilei,  Zhen  Jun,  Chaochun,  and Yu Kuo who made working in the lab an awesome experience.  • My “research assistant” Suanfong for bullet‐proof reading this thesis.  • My friends. For being friends and making life bearable.  • Family…for where would I be without them.  • God  for  blessing  me  with  each  of  the  above,  hearing  every  prayer,  and  thus  making this thesis possible. I should bold this.   ii TABLE OF CONTENTS SUMMARY .................................................................................................................. V LIST OF TABLES.................................................................................................... VII LIST OF FIGURES.................................................................................................. VII CHAPTER 1 INTRODUCTION................................................................................. 1 1.1 1.2 1.3 Intelligent Tutoring Systems and Student Modeling...................................... 1 Research Objectives ....................................................................................... 3 Thesis Structure .............................................................................................. 4 CHAPTER 2 RESEARCH BACKGROUND ............................................................ 5 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 Student Modeling ........................................................................................... 5 Overlay Model ................................................................................................ 5 Bug Libraries .................................................................................................. 6 Machine Learning........................................................................................... 6 Model Tracing ................................................................................................ 8 Constraint Based Modeling .......................................................................... 10 Evaluation of CBM....................................................................................... 13 Work Related to CBM .................................................................................. 16 CHAPTER 3 THE DOMAIN OF THAI WRITING............................................... 18 CHAPTER 4 DESIGN FRAMEWORK................................................................... 22 4.1 4.2 4.3 Student Model (SM) ..................................................................................... 23 Pedagogical Model (PM).............................................................................. 24 Communication Model (CM) ....................................................................... 24 CHAPTER 5 STUDENT MODEL............................................................................ 27 5.1 5.2 5.3 5.4 5.5 Stereotyping.................................................................................................. 27 Constraint Hierarchy..................................................................................... 28 Dynamic Hierarchical Weighted Constraints (DHWC) ............................... 31 De-contextualized Constraint-Based Questions (DCBQ) ............................ 35 Uses of Student Model ................................................................................. 38 CHAPTER 6 IMPLEMENTATION ........................................................................ 41 6.1 6.2 6.3 Knowledge Engineering ............................................................................... 41 Constraints .................................................................................................... 45 Design of Exercises and DCBQ ................................................................... 47 CHAPTER 7 EVALUATION.................................................................................... 49 7.1 7.2 7.3 7.4 7.5 Methodology................................................................................................. 49 Procedure ...................................................................................................... 53 Results .......................................................................................................... 56 Discussion..................................................................................................... 66 Summary....................................................................................................... 67 iii CHAPTER 8 CONCLUSION.................................................................................... 69 8.1 8.2 Overview and Contributions......................................................................... 69 Future work................................................................................................... 70 BIBLIOGRAPHY....................................................................................................... 74 APPENDICES............................................................................................................. 77 Appendix I: Constraints............................................................................................ 77 Appendix II: Detailed Ontology ............................................................................... 78 Appendix III: IPA characters.................................................................................... 80 Appendix IV: Thai alphabet ..................................................................................... 81 Appendix V: Pre-test and Post-test........................................................................... 82 Appendix VI : Feedback Form ................................................................................. 84 Appendix VII : Raw Student Model Variation Data ................................................ 86 Appendix VIII : Charts of Student Model Variation................................................ 96 iv SUMMARY    Student Modeling offers great potential for Intelligent Tutoring Systems (ITS) as it  allows  the  system  to  understand  the  peculiarities  of  each  individual  student,  much  like a personal tutor would. Student Modeling is a sub‐branch of User Modeling and  here  we  focus  on  the  domain  of  Thai  language  teaching  and  develop  a  system  to  iteratively refine and test our student model and enhancements.     We  introduce  Thairator,  an  ITS  developed  in  JESS,  which  teaches  Thai  language  transcription using our new findings. The student is modeled using Constraint Based  Modeling  (CBM),  with  several  novel  enhancements.  While  the  research  focus  is  student  modeling,  this  challenging  domain  is  chosen  for  implementation  to  display  the  real  world  use  of  the  proposed  techniques.  First  the  domain  is  modeled  in  the  form  of  an  ontology  with  the  help  of  a  domain  expert.  Then,  the  constraints  are  extracted and coded into the domain knowledge of the system.     One  of  the  weaknesses  of  the  CBM  technique  is  the  inability  to  describe  what  the  student actually knows. Using our enhancements, we show the ability of the system  both  to  differentiate  accidental  conformance  to  constraints  and  more  accurately  model the student’s strengths and weaknesses.     The  CBM  technique  is  enhanced  with  De‐contextualized  Constraint  Based  Questioning (DCBQ) and Dynamic Hierarchical Weighted Constraints (DHWC). The  former  is  used  to  identify  student  guesswork  by  extracting  the  relevant  concepts  of  the question that the student gets correct and posing a question that tests his higher‐ level understanding of these concepts. The latter is a structured hierarchy of weighted  v constraints  which  represent  important  concepts  in  the  domain.  These  are  adjusted  throughout  the  use  of  the  system  to  reflect  the  student’s  competency  in  the  various  concepts.     An  empirical  study  is  performed  to  evaluate  the  system.  The  subjects  were  put  through  a  pretest  and  posttest  and  the  system  log  files  studied  to  analyze  the  reliability of the Student Model and benefits that the subjects gained from the system.     Further  work  will  address  issues  regarding  granularity  of  the  student  model  and  how  to  further  enhance  it,  further  uses  of  the  model,  and  how  it  can  be  applied  to  other  areas  of  use  besides  e‐learning  and  language  teaching.  In  addition,  machine  learning techniques will be explored to see how the construction of the ontology can  be made more automated.  vi LIST OF TABLES Table 1: Levels of feedback.......................................................................................... 40 Table 2: Detailed constraint violation in pre-tests and post-tests................................. 58 Table 3: User feedback on general impression of Thairator......................................... 64 Table 4: User feedback on pedagogical flow ............................................................... 65 Table 5: User feedback on DCBQs .............................................................................. 65     LIST OF FIGURES Figure 1: 4-Component modular view of an ITS ........................................................... 1 Figure 2: System Architecture Diagram ....................................................................... 22 Figure 3: Basic Interface Layout .................................................................................. 25 Figure 4: Stereotyping dialog ....................................................................................... 28 Figure 5: Constraint Hierarchy ..................................................................................... 29 Figure 6: Feedback when student answer is wrong ...................................................... 35 Figure 7: Flowchart for DCBQ..................................................................................... 36 Figure 8: High-level transcription ontology ................................................................. 42 Figure 9: Part of detailed ontology: Clusters................................................................ 44 Figure 10: General structure of a rule [13] ................................................................... 45 Figure 11: Code for tone constraint for high consonants and long vowels .................. 46 Figure 12: Snapshot of the Thairator log...................................................................... 52 Figure 13: Flow of user study....................................................................................... 54 Figure 14: Learning Gains for each user ...................................................................... 56 Figure 15: Constraint violation in pretests and posttests.............................................. 57 Figure 16: Portion of chart comparing AT's SM at start and end of using Thairator... 60 Figure 17: Portion of chart comparing GB's SM at start and end of using Thairator... 62 Figure 18: Portion of chart comparing QB's SM at start and end of using Thairator... 63 Figure 19: Concept Schematic Graph........................................................................... 71 vii CHAPTER 1 INTRODUCTION 1.1 Intelligent Tutoring Systems and Student Modeling    Intelligent  tutoring  systems  are  judged  by  three  factors:  their  knowledge  of  the  domain to solve problems and draw inferences, their ability to deduce the student’s  ability in the domain, and the ability to implement pedagogical strategies to improve  student performance [1].     The  first  factor  requires  a  method  of  representing  the  knowledge  in  a  domain  (Expert Model), the second requires a student model while the third is closely tied to  the Pedagogical Model.     Here  we  use  a  modular  view  similar  to  Woolf’s  [2]  four  component  framework  shown  in  Figure  1.  Other  research  [3]  seperates  the  expert  model  from  the  domain  knowledge but we have seen no compelling reason to do so as these two components  can be better represented as one module. The communication model takes care of the  user interface and Human‐Computer modality issues.  Domain Knowledge (Expert Model) Student Model Pedagogical Model Communication Model Student   Figure 1: 4-Component modular view of an ITS 1    Both  the  Domain  Knowledge  and  Student  Model  are  represented  by  CBM.  The  Domain Knowledge is modeled as constraints which denote the boundaries of correct  behavior  within  the  domain,  while  the  Student  Model  in  its  most  basic  form  is  a  collection  of  violated  constraints.  Later,  we  go  into  more  detail  regarding  these  two  modules  and  describe  our  enhancements  to  the  Student  Model  that  allow  a  better  representation of the student’s ability.     One  of  the  main  weakness  of  CBM  is  that  it  does  not  accurately  reflect  what  the  student knows. Ohlsson [4] states that the relevant and satisfied constraints are only  candidates  for  understood  concepts  in  the  student’s  knowledge  as  they  could  have  been satisfied accidentally.     Here  we  enhance  the  CBM  by  using  Dynamic  Hierarchical  Weighted  Constraints  (DHWC):  a  heuristic  method  of  weighting  constraints  and  De‐contextualized  Constraint‐Based Questions (DCBQ). The former allows the constraints to accurately  reflect  the  strengths  and  weaknesses  of  the  student,  while  the  latter  helps  us  differentiate  between  students  who  satisfy  the  constraints  accidentally  from  those  who have a methodology behind their actions. Such an enhancement is significant as  the pedagogical actions for these two groups of people are very different.     Due to the interdependent nature of the modules in an ITS, it is difficult to research  the individual components in isolation. As such, Thairator, a complete ITS has been  implemented.  Our  chosen  domain  is  Thai  language transcription.  In  linguistics,  transcription is the process of matching the sounds of human speech as represented  by  International  Phonetic  Alphabet  (IPA)  [5]  (eg.  khâaw;  see  Appendix  III:  IPA  characters)  to  written  symbols  such  as  Thai  script  (eg.  ขาว;  see  Appendix  IV:  Thai  2 alphabet).  This  complex  domain  has  numerous  rules  and  exceptions  (discussed  in  CHAPTER  3)  and  to  the  best  of  our  knowledge,  no  ITS  with  a  decent  student  modeling module has been produced to teach Thai or  any script‐based language.  1.2 Research Objectives    Our research aims to develop an enhanced Constraint‐Based Student Model for the  teaching  of  Thai  writing  transcription.  The  work  is  based  on  Ohlsson’s  [4]  original  description  of  CBM  as  a  viable  alternative  technique  for  student  modeling.  Enhancements  are  made  to  the  original  technique  to  improve  its  performance  and  address  some  of  the  main  weaknesses  such  as  its  inability  to  understand  what  the  student knows and the need to store correct answers.    We  aim  to  study  the  uses  of  CBM  and  implement  it  in  the  domain  of  computer‐ aided  language  learning.  For  the  specific  domain  of  Thai  writing  transcription,  we  seek  to  develop  an  ontology  to  represent  the  hierarchy  and  relationships  between  individual  concepts.  This  is  tedious  work  but  is  invaluable  in  helping  to  gain  an  overview of the domain and model necessary constraints from it. Within the domain  of  teaching  the  transcription  of  languages,  the  higher  levels  of  this  ontology  (see  section 6.1) would be reusable.     We adopt an iterative approach in the design and implementation of our ITS, called  Thairator,  which  is  a  system  that  guides  students  in  the  transcription  of  Thai  script  into  phonetics.  Personalized  exercise  selection  and  feedback  are  provided  based  on  the  Student  Model  maintained.  A  user  study  is  then  carried  out  to  analyze  the  tangible benefits of this novel system.  3 1.3 Thesis Structure This thesis is organized into eight chapters in the following way:  Chapter  2,  Research  Background,  introduces  the  background  research  on  student  modeling, in particular reviews the existing work on CBM.  This chapter also studies  the strengths and weaknesses of this technique and other related work.  Chapter 3, Thai Writing Domain, discusses the suitability and limitations of the Thai  transcription domain for implementation.  Chapter  4,  Design  Framework,  presents  the  design  of  the  four  components  of  our  ITS. They are the Student Model (SM), Pedagogical Model (PM),  Domain Knowledge  (DK), and Communication Model (CM).   Chapter  5,  Student  Model,  talks  about  the  design  of  the  Student  Model  used  in  Thairator. It also details our enhancements and contributions and discusses how the   Student Model is utilized to customize treatment for each student.  Chapter  6,  Implementation,  begins  with  a  description  of  the  various  software  tools  used  in  creating  the  ITS.  The  methology  used  to  extract  the  constraints  and  implement  them  in  JESS  are  covered  in  detail.  The  considerations  in  designing  the  exercise content and feedback are also covered in this chapter.  Chapter 7, Evaluation, describes the evaluation methodology and presents results of  the user study performed with Thairator.  Chapter 8, Conclusion, summarizes the contributions and achievements of our thesis  and suggests some possible future work to extend our research.  4 CHAPTER 2 RESEARCH BACKGROUND 2.1 Student Modeling A Student Model is a qualitative representation that accounts for student behavior in  terms  of  existing  background  knowledge  about  a  domain  and  about  students  learning  the domain. [6]     The point of student modeling is to be able to tailor instruction for each student and  provide  information  for  the  pedagogical  model.    Many  techniques  have  been  developed thus far in the field of Student Modeling. These include the overlay model,  bug  libraries,  machine  learning,  model  tracing,  and  constraint  based  modeling.  We  focus especially on the last technique as it is the foundation for our research.  2.2 Overlay Model   The  overlay  model  [7]  is  the  most  common  student  model  in  use.  In  essence,  it  models  the  studentʹs  knowledge  as  a  subset  of  that  of  an  expert.  This  is  more  applicable when the domain content is representable as a prerequisite hierarchy. The  overlay  model  then  indicates  how  far  the  student  has  progressed  in  acquiring  the  domain knowledge with respect to that of the expert.      This  technique  is  usually  effective  at  representing  what  the  student  knows.  However, if the representation view of the expert is different from that of the student  then the overlay model may not be useful. Hence, it is very difficult to infer student  misconceptions from an overlay model. The problem of addressing misconceptions is  addressed by the following Student Modeling techniques.  5 2.3 Bug Libraries    Also  known  as  the  buggy  model,  this  technique  attempts  to  represent  the  false  knowledge of the student in terms of a set of bugs or misconceptions. To achieve this,  the  students’  errors  must  be  studied  and  a  library  of  bugs  built.  By  mapping  the  student’s  actions  to  bugs  in  the  library,  it  is  possible  to  determine  the  errors  in  the  studentʹs understanding. An inference engine is used to match error explanations to  student errors. If the bug is not found in the library, the student error is matched with  some  combination  of  existing  bugs.  This  may  lead  to  misdiagnosis  of  the  student’s  misconceptions.     A modified version of this technique is to construct bugs from a library of bug parts.  This  is  used  in  the  ACM  system  [8]  where  each  diagnosed  bug  is  created  from  a  library  of  smaller  bug  parts.  A  small  number  of  bug  parts  can  combine  in  various  ways to represent a large number of student errors.      Bug  libraries  are  often  used  to  augment  the  overlay  model  so  that  diagnosis  of  faulty knowledge is addressed. However, two things need to be noted: (1) it is often  tedious  and  sometimes not  possible  to  model  a  complete bug library,  and  (2)  research  has  revealed  that  the  effort  in  constructing  bug  libraries  may  not  be  transferable  between different student populations [9].  2.4 Machine Learning    Machine learning is the induction of new knowledge  or rearrangement  of existing  knowledge  in  an  attempt  to  improve  performance  of  a  task.  The  machine  learning  method of Student Modeling saves on the empirical analysis required by bug libraries  but is computationally very expensive as it searches the problem space for a path to  6 an  incorrect  student  answer.  Most  machine  learning  methods  used  can  be  broadly  divided  into  supervised  inductive  learning,  unsupervised  inductive  learning  and  reinforcement  learning.  These  are  discussed  below.  The  implementations  of  these  methods commonly include Bayesian networks, Neural networks, Decision trees, and  Support  Vector  Machines  [6].  The  machine  learning  algorithms  and  techniques  we  have identified are only a small sampling of the vast number available but they are  representative of the field and sufficient for the purposes of our research.  2.4.1 Supervised Inductive Learning    Also known as empirical learning or learning from examples, supervised inductive  learning is reliant on existing data (or objects) to produce general hypotheses. These  hypotheses  have  varying  degrees  of  certainty.  In  supervised  learning,  the  objects  generalized  from  are  labeled  –  that  is,  they  are  identified  manually  by  a  human  supervisor  and  fed  into  the  system.  In  the  domain  of  student  modeling,  supervised  inductive  learning  systems  are  used  to  induce  student  models  from  existing  behaviors.  However,  the  quality  of  the  induced  student  model  varies  considerably  with the degree of noise from the input behaviors [6].  2.4.2 Unsupervised Inductive Learning    In unsupervised learning, the objects used for learning are unlabelled, making it a  harder  problem  than  supervised  learning.  The  main  approach  to  generalizing  unlabeled  instances  is  conceptual  clustering  [10],  which  involves  a  search  for  ‘regularities’ in the objects presented. Although it is a technique commonly used on  7 ill‐structured  domains,  in  general,  unsupervised  inductive  learning  is  characterized  by difficulties in formulating goals and success criteria [6].  2.4.3 Reinforcement Learning    This  technique  consists  of  two  components:  the  environment  and  the  actions.  The  environment is beyond the direct control of the software agent while the actions are  selectable  by  him.  The  agent  examines  the  current  state  and  selects  an  action  to  perform.  The  environment  then  observes  the  effects  of  this  action  and  based  on  the  new resulting state, the agent is given a reward based on previous estimates of this  state’s  value.  Basically,  reinforcement  learning  (RL)  rewards  the  agent  for  good  performance  and  the  agent’s  goal  is  to  maximize  the  long‐term  rewards.  This  technique  has  been  shown  to  be  flexible  in  handling  noisy  data,  and  does  not  need  expert domain knowledge. However, it produces more variance during learning due to  the next state being used as the target value rather than the final state. The result of  this is that RL takes a longer time to converge to optimum values as compared to other  student modeling techniques [11].  2.5 Model Tracing    Model  Tracing  (MT)  [12],  developed  by  John  Anderson  at  Carnegie  Mellon  University,  is  another  technique  of  Student  Modeling.  It  models  the  cognitive  processes of the student and is used successfully in several tutoring systems such as  the mathematics tutor produced by Carnegie Learning Inc.     MT is also a popular technique in cognitive tutors like the LISP tutor which is also  based  on  the  ACT‐R  theory  of  cognition  [12].  In  essence,  the  student  is  monitored  8 while  problem‐solving  and  each  step  made  is  modeled  by  identifying  a  production  rule in the domain knowledge that could have generated it.     The model tracing algorithm requires three inputs [13]:  1. The  state  of  working  memory:  represented  by  a  group  of  working  memory  elements (WMEs)  2. A set of production rules; each representing a cognitive step performed by the  student.  3. The student input.  MT uses these inputs to attempt to find a sequence of production rules that generates  the given student input. If such a sequence is found, the resulting trace of production  rules is used to generate feedback messages.     In  MT,  there  are  two  long‐term  memory  stores:  declarative  and  procedural.  The  student acquires declarative knowledge first and this is later turned into procedural  knowledge  which  is  goal‐oriented  and  hence  more  efficient  to  use.  The  procedural  knowledge is represented as production rules around which instruction is organized.     It is useful  to compare MT with CBM as these are two popular yet  fundamentally  different Student Modeling techniques. This would shed some light on the tradeoffs  between  the  rigouous  and  detailed  MT  as  compared  to  the  more  flexible  yet  less  detailed CBM.     A major disadvantage of the MT technique is that it requires much empirical study to  model  the  domain  completely  as  production  rules.  As  much  as  200  hours  of  development  time  is  required  to  produce  one  hour  of  instruction  [13].  In  addition,  such  systems  are  shown  to  be  domain  specific,  as  without  modification,  they  do  not  9 work  very  well  once  the  user  group  is  changed.  This  is  because  students  with  different  backgrounds  may  not  use  the  same  rules  to  solve  the  same  problem.  It  is  also  difficult  to  implement  for  more  complex  and  open‐ended  domains  such  as  teaching  English  grammar  and  design  domains.  As  such,  it  is  more  suited  for  well‐ defined domains such as arithmetic and geometry.     Cognitive modeling systems, such as MT, also fare poorly at handling exploratory  behavior, and wildly incorrect behavior. Furthermore, it is intolerant of missing rules in  the domain knowledge as any such omission will render the system unable to check if  the student is correct for any path that uses that missing rule.     Cognitive  tutors  generally  also  provide  immediate  feedback  from  each  step  the  student  takes  and  this  limits  the  possibility  of  the  student  generating  a  complete  wrong answer [14].     The  Cognitive  Tutor  Authoring  Tools  (CTAT)  project  [15]  at  Carnegie  Mellon  is  a  set  of  tools  designed  to  help  in  the  development  of  ITS  using  the  Model  Tracing  technique.  The  tools  include  a  GUI  builder,  a  behaviour  recorder,  a  production  rule  editor, and a cognitive model visualizer.  2.6 Constraint Based Modeling    First  suggested  by  Ohlsson  [4]  in  the  mid  1990ʹs  as  a  technique  to  represent  the  domain knowledge and student model for an ITS, this innovative student modeling  technique has the advantages of adaptability, recognition of unanticipated but correct  answers, and facilitation of exploratory behavior in students.     Ohlsson  suggests  that  diagnostic  information  does  not  reside  in  the  sequence  of  actions  made  by  the  student  but  in  the  situation  created  after  each  action.  In  other  10 words, there exists no correct solution path which traverses a bad problem state. An  analogy  from  the  real  world  example  of  driving  would  be  teaching  someone  to  respect the direction along a one‐way road. The direction of the one‐way road is the  constraint. It does not matter how the driver ended up in the wrong direction, once  he  is  in  the  wrong  direction  on  a  one‐way  road,  he  has  violated  the  constraint  and  corrective measures need to be taken.    The  recent  use  of  this  powerful  technique  has  been  mainly  in  teaching  technical  content  such  as  SQL  [16],  data  structures  in  C  [17],  arithmetic  [18],  database  normalization  (NORMIT)  [19],  database  design  (KERMIT)  [20],  and  simple  English  punctuation (CAPIT) [21].     CBM focuses on faulty knowledge and the resulting problem states rather than the  studentʹs actions. The student is modeled in terms of equivalence classes of solutions  rather than specific solutions or strategies. The members of a particular equivalence  class  are  the  learner  states  that  require  the  same  instructional  response.  The  logic  is  that no correct solution can be arrived at by traversing a problem state that violates a  fundamental principle of the domain.     Because  the  space  of  false  knowledge  is  much  larger  than  the  space  of  correct  knowledge,  Ohlsson  suggests  the  use  of  an  abstraction  mechanism  realized  in  the  form of state constraints. A state constraint is an ordered pair (Cr, Cs), where Cr is the  relevance  condition  and  Cs  is  the  satisfaction  condition.  Cr  is  used  to  identify  the  equivalence class, or the class of problem states in which Cr is relevant. Cs identifies  the  class  of  relevant  states  in  which  Cs  is  satisfied.  Each  constraint  specifies  the  property  of  the  domain  that  is  shared  by  all  correct  paths.  In  other  words,  if  Cr  is  11 satisfied in a problem state, in order for that problem state to be a correct one, it must  also  satisfy  Cs.  Constraints  define  sets  of  equivalent  problem  states.  A  violated  constraint  signals  an  error,  which  translates  to  incomplete  and  incorrect  student  knowledge.     All problem solving steps are not equally significant for diagnostic purposes. Some  steps spring directly from the student’s conceptual understanding of the problem and  hence  contain  more  diagnostic  information  than  others.  This  implies  that  we  can  achieve abstraction by selectively focusing on certain important steps.     To  illustrate,  let  us  look  at  a  simple  example  of  fractional  addition  taken  from  [4].  Consider a child adding two simple fractions.  1/4 + 2/3 =   Suppose  the  student  proceeds  to  draw  a  fraction  bar  on  the  right  hand  side  of  the  equation.  1/4 + 2/3 = /   While  this  is  a  problem  solving  step,  its  significance  is  minimal  and  has  little  diagnostic value. However, suppose the student’s next step is to fill in the numerator  on the right hand side.   1/4 + 2/3 = 3/   Now  we  immediately  can  guess  what  the  student  is  doing.  He  is  adding  the  two  numerators  together  and  there  is  a  high  possibility  that  he  will  also  add  the  12 denominators  together  also.  Resulting  in  the  erronous  answer  of  3/7.  The  relevance  constraint in this case will be:   (n1/d1 + n2/d2 = n/d) and (n = n1 + n2)   That is, this constraint is only relevant when the student is adding fractions (eg. for  fractional  multiplication  it  is  irrelevant)  and  when  the  student  adds  the  two  numerators together. The satisfaction constraint that must be true is   d1 = d2   meaning that the two denominators must be the same.      This example shows that the diagnostic information does not reside in the sequence  of actions executed by the student but rather in the problem state he creates.  2.7 Evaluation of CBM    We take a closer look at CBM as it is the focus of our research. In this section, we  evaluate  the  strengths  and  weaknesses  of  CBM  and  point  out  which  specific  weaknesses we attempt to address.  2.7.1 Strengths of CBM    First,  it  is  robust  when  dealing  with  creative  students  who  come  up  with  correct  solutions  that  the  implementer  did  not  think  of.  This  is  related  to  the  fact  that  it  is  independent  of  the  studentʹs  problem  solving  strategy,  and  hence  able  to  monitor  unrestricted  exploration.  It  also  handles  radical  strategy  variability  [4]  well.  Radical  strategy  variability  is  when  a  student  switches  problem  solving  strategy  half‐way  13 through a question. In general, this is hard for student modeling systems to detect or  understand. CBM does not try to understand exactly what the student is trying to do  and  so  handles  such  situations  very  well.  This  flexibility  makes  it  suited  to  model  open‐ended domains such as grammar teaching and database design where there are  many alternative solutions.     There is also no need for a separate expert model, bug library nor runnable domain  module. As  such,  time consuming empirical studies to tune parameters are also not  necessary.  In  general,  modeling  the  constraint  boundaries  of  a  domain  is  a  much  easier task than modeling all the possible production rules (e.g. as in model tracing).      Furthermore,  the  system  is  not  crippled  by  incomplete  domain  constraint  knowledge.  For  example,  the  effect  of  a  missing  constraint  is  localised  and  not  catastrophic  as  the  system  is  merely  prevented  from  detecting  a  particular  type  of  error.      In addition, it is computationally inexpensive ‐ simple pattern matching is used to  determine which constraints are relevant and have been violated.      A  further  advantage  is  that  it  is  neutral  with  respect  to  pedagogy,  which  is  left  to  the  separate  pedagogical  component  to  implement.  This  is  useful  as  the  neutrality  allows  the  ITS  implementer  to  utilize  any  combination  of  pedagogical  methods  that  he deems most suitable for his target students.  2.7.2 Weaknesses of CBM    Despite  its  many  advantages,  there  are  some  disadvantages  in  CBM.  Firstly,  for  some  domains  it  might  be  difficult  or  impossible  to  identify  properties  of  problem  states which are informative with respect to the studentʹs understanding. This might  14 result in a set of constraints that provide too loose a net and allow incorrect solutions  to  slip  through.  We  address  this  by  first  building  an  ontology  of  the  domain  and  extracting the constraints from there.     Secondly,  present  implementations  of  CBM  generally  require  ideal  answers  to  be  stored  in  the  system.  These  tagged  ideal  solutions  are  then  compared  with  the  studentʹs answers. In our implementation, ideal solutions do not need to be stored as  the constraints and their bindings are sufficient to guide the student to the complete  solution.  To  achieve  this,  our  constraints  are  mainly  encoded  purely  as  pattern  matches  [22].  However,  a  difference  is  that  our  constraints  need  not  model  the  domain  completely.  In  our  case,  only  for  the  exceptional  cases  where  the  answer  is  ambiguous due to gaps in the domain knowledge do ideal answers need to be stored.  This  is  elaborated  further  in  CHAPTER  3  where  an  example  of  such  ambiguious  situations is discussed.     Thirdly,  the  student  behavior  may  be  accidental.  CBM  focuses  on  problem  states  rather than on action sequences. As such, goal hierarchies, plans, weak methods etc.  are  ignored  and  what  the  student  knows  is  not  described.  Furthermore,  there  is  no  differentiation  between  factual  errors,  errors  in  the  underlying  goals,  and  errors  in  translating the goals into actions.      In  our  research,  we  attempt  to  address  these  three  weaknesses.  De‐contextualized  Constraint‐Based  Questions  (DCBQ)  described  in  chapter  4  are  used  to  identify  student  guesswork  and  accidental  behavior.  In  addition,  we  also  have  developed  a  system of Dynamic Hierarchical Weighted Constraints (DHWC) that provides a novel  15 and  structured  heuristic  method  for  analysing  the  student’s  strengths  and  weaknesses.  2.8 Work Related to CBM   Regarding  research  pertaining  directly  to  CBM,  although  there  has  not  been  much  change in the core idea since it was introduced, several implementations, extensions  and successful evaluations have been done. We discuss the main work below.      Martin  and  Mitrovic  show  that  given  a  complete  domain  model,  and  using  an  alternative  representation  of  CBM,  it  is  possible  to  rebuild  the  solution  from  the  relevant  constraints  and  their  bindings  [22].  Their  novel  system  generates  corrected  versions  of  student  answers  for  use  as  feedback.  However,  requiring  a  complete  domain  model  requires  tedious  work  to  ensure  that  all  possible  constraints  are  included. This negates the benefit that CBM need not be fully complete and correct to  function. Furthermore, there is no guarantee that the generated solution will converge  even though experiments using SQL‐tutor have been reasonably successful.      Martin  and  Mitrovic  also  suggest  a  method  of  automatic  problem  set  generation  [23]  that  produces  problems  that  better  represent  combinations  of  constraints  with  minimal  human  effort.  Implementing  such  problem  generation  in  real‐time  would  also necessitate a natural language processing engine. Once again, the constraint set  needs to be complete or  the generated questions may contain errors.     Zhou and Evens describe their CIRCSIM conversational tutor for teaching medical  students. It uses multiple student models concurrently to support tutoring decisions  [24].  Their  student  model  includes:  a  performance  model,  a  student  reply  history,  a  16 student  solution  record  (using  CBM),  and  a  tutoring  history  using  a  hierarchical  planning mechanism.     Martin  and  Mitrovic  have  also  developed  WETA:  a  web‐based  authoring  environment  to  aid  rapid  development  of  CBM  systems  [25].  This,  unfortunately,  is  not available for public testing unlike CTAT described earlier in section 2.5.      Mayo  and  Mitrovic  experiment  using  a  probabilistic  approach  to  determine  a  problem of appropriate difficulty to next present to the student [26]. This deals with  both  the  Student  Model  and  Pedagogical  Model.  They  state  that  constraints  are  usually  not  independent  and  require  heuristics  both  for  problem  selection  and  to  determine the amount of feedback to give.     Suraweera discusses the automatic extraction of contraints from a domain ontology  [27]  which  facilitates  more  rapid  development  of  ITS.  This  yet  to  be  completed  research also looks into machine learning to acquire both procedural and declarative  knowledge.     None of the above research addresses the issue of differentiating between students  who satisfy constraints accidentally and those who know what they are doing. This  deficiency  is  addressed  in  the  following  chapter  using  a  novel  combination  of  heuristics  and  a  weighted  constraint  system  that  promises  a  more  accurate  representation of the student.  17 CHAPTER 3 THE DOMAIN OF THAI WRITING    ʺHow best to teach a language?ʺ is a classic question in applied  linguistics. In this  case  we  have  chosen  the  domain  of  Thai  transcription  from  the  broad  scope  of  Intelligent Computer‐aided Language Learning (ICALL) to show the usefulness and  applicability of our student model.     This domain has been specially selected for its difficulty, ambiguity, and presence of  a  real  world  problem:  that  of  the  shortage  of  experienced  teachers  to  help  students  make the transition from phonetics to Thai script. The difficulty and ambiguity can be  seen  in  the  complexity  of  the  various  transcription  rules  that  need  to  be  applied  in  different contexts. This is explained further below.      This  is  not  a  trivial  domain  since  the  mapping  from  phonetic  alphabets  to  Thai  script  does  not  consist  merely  of  simple  1‐to‐1  relationships.  There  are  numerous  overlapping  rules  and  exceptions,  and  the  mapping  changes  depending  on  the  context  (position  of  character  and  its  surrounding  characters)  of  the  consonant  or  vowel. In some situations, the rules are ambiguous and the pronounciation to choose  can only be learnt by practice. It is also in this unique area that we use the power of  CBM to tolerate multiple correct answers; albeit in a different way.     Let  us  take  a  closer  look  at  the  ambiguity  in  this  domain.  The  Thai  phonetics  nâa  can be mapped to two possible Thai scripts.  หนา which means face or page or season,  and  นา  which is a verb prefix. Likewise, transcribing in the other direction, the script  โหม can be mapped to either hǒom or mǒo using our domain knowledge.   18    Continuing  from  the  second  example  of  โหม,  the  CBM  engine  will  accept  both  answers  but  obviously  only  one  is  correct  depending  on  the  context.  The  second  round  of  pattern  matching  with  the  ideal  answer  (hǒom  in  this  case)  will  disambiguate the situation. Note that ideal answers are only necessary in ambiguous  situations such as that described above. In all other situations where the rules suffice,  the bindings and constraints are enough and no ideal answer needs to be stored. The  usefulness  of  this  method  is  that  it  allows  the  system  to  identify  when  the  user  has  applied all the rules correctly but obtained the wrong answer due to his ignorance of   contextual clues. Hence, more specific feedback can be given to encourage and guide  the student.     A further research contribution here is the development of both a high‐level (Figure  8 in section 6.1) and detailed ontology (Appendix II: Detailed Ontology) that aids in  the  development  of  such  systems  for  language  transcription.  Detailed  ontologies  of  the domain of language transcription are not readily available so we had to create one  ourselves. While the lower leaf nodes of the ontology are specific to the domain, the  higher  level  structure  is  applicable  to  the  understanding  of  any  language  with  a  similar linguistical structure.     Thai  script,  in  its  original  form,  has  no  word  nor  sentence  breaks.  Neither  does  it  have  any  capitalization  nor  punctuation.  This  makes  acquiring  the  syntax  and  nuances especially challenging. An example Thai phrase is shown below. Translated  it says “I like to study Thai”.   19 ผมชอบเรียนภาษาไทย     As can been seen, even word segmentation is a difficult problem in Thai that causes  many  new  learners  to  be  confused.  But  in  Thairator,  word  breaks  are  added  to  simplify things for the student as the skill of noticing word breaks can be picked up  incidentally once he has picked up sufficient vocabulary.     Unlike  hanyupinyin  for  mandarin,  there  is  no  standard  method  for  transcribing  Thai script. We use the system from J Marvin Brownʹs AUA textbooks. While it may  be slightly less intuitive to learn than other methods, it is widely used by universities,  linguists and serious students of Thai language as it is more technically accurate and  flexible.      The  system  is  designed  to  give  the  user  unlimited  guided  practice  in  the  skill  of  Thai  transcription  from  IPA  to  Thai  script.  It  is  assumed  that  the  student  has  been  taught the basic reading and writing rules before using the system.     The target student is assumed to have prior exposure to J Marvin Brown’s method  of  transcribing  Thai,  command  a  basic  Thai  vocabulary  and  know  elementary  Thai  grammatical rules. This level of proficiency is easily attained after a one semester (12  week)  course  on  conversational  Thai.  Thairator  will  help  the  student  make  the  arduous transition from being reliant on phonetic Thai to being able to comprehend  Thai  script.  This  will  open  up  endless  opportunities  for  the  student  to  practise  his  reading and writing skills.  20    The domain is deterministic just like CAPIT [21] as there is only one correct way to  transcribe a piece of Thai script. This makes it an excellent starting point to extend to  related stochastic domains such as Thai grammar, composition writing, and dialogue.      As  can  be  seen,  this  is  not  an  easy  domain  to  master.  It  normally  requires  at  least  half  a  year  of  consistent  practice  before  any  level  of  proficiency  is  attained.  In  demonstrating  our  student  modeling  technique,  we  show  that  our  technique  complements  and  improves  on  the  efficiency  and  efficacy  of  existing  classroom  methods to teach Thai writing and also on the existing CBM techniques presently in  use.  21 CHAPTER 4 DESIGN FRAMEWORK Student Modeler (maintains system of weights) Constraints database Student Model Problem Sets & Solutions Pedagogical Model Domain Knowledge Communication Model Student   Figure 2: System Architecture Diagram    Figure  2  shows  a  more  detailed  design  architecture  based  on  the  modular  ITS  structure mentioned in CHAPTER 1.     For the purposes of design and conceptualization, it is easier to think of ITS design  as  having  four  main  interdependent  components:  the  Student  Model  (SM),  Pedagogical  Model  (PM),    Domain  Knowledge  (DK),    and  Communication  Model  (CM)  [3].  Thairator  is  a  complete  ITS  involving  all  the  components  but  most  of  our  contributions lie in the SM and PM and hence we focus on these areas. In CBM, the  domain  knowledge  and  related  expert  model  are  embedded  in  the  way  the  constraints  are  defined.  It  is  also  important  to  bear  in  mind  that  the  boundaries  22 between these components may not always be clear and their main role is to identify  the major functional elements of the ITS.  4.1 Student Model (SM)    This  is  a  crucial  component  in  tailoring  instruction  for  each  user  to  maximize  his  learning  potential  and  in  emulating  1‐to‐1  human  coaching.  Here  we  do  not  aim  to  model  exact  representations  as  that  would  be  an  intractable  task.  However,  we  attempt to model a generalized version of reality using constraints.     The SM is used both in the short term and long term. In the short term SM, student  solutions  are  matched  to  the  constraints  and  ideal  solutions  and  all  violated  constraints and their respective weights are stored. In the long term, the SM provides  information for the PM, stores  customizing instructions for individual  learners such  as  learner  history  (order  and  tries  of  questions  attempted,  errors  made),  constraint  history (violation, relevance, and satisfaction), concepts the user is familiar with, and  lastly optimal student competency (OSC) which is discussed in section 5.5.1.     The attributes selected above focus on two main aspects of the student: acquistion  (how  fast)  and  retention  (recall).  They  reflect  the  learning  condition  of  the  student  and are used by the PM to assist in selecting appropriate problems, teaching strategy  and confirming diagnoses.     Although,  the  word  ʺuserʺ  is  often  used  synonymously  with  ʺstudentʺ,  it  is  important  to  highlight  that  the  difference  between  User  Modeling  and  Student  Modeling.  Student  Modeling  is  a  sub‐domain  of  User  Modeling  and  more  significantly, Student Modeling also takes into account learning theories.  23    The  SM,  being  the  heart  of  this  research,  is  given  more  detailed  treatment  in  CHAPTER 5.  4.2 Pedagogical Model (PM)    This  component  models  the  teaching  process.  It  includes  the  general  curriculum  paths  and  individual  exercises,  selects  the  next  problem  for  the  student,  and  also  chooses the appropriate response when there is an error, a request for help, or a need  to display feedback.     In  our  implementation  of  Thairator,  our  pedagogical  strategy  is  to  focus  on  the  concepts  that  the  student  is  weak  in.  Such  concepts  are  identified  by  their  higher  constraint weight. In addition to focusing on weaker concepts, the PM also selects the  next exercise based how suitable its difficulty level is (see section 5.5.1).     With regards to the PM, there are many possible designs, various psychological and  pedagogical  theories  also  come  into  play  such  as  Schankʹs  theory  of  expectation  failure, and Socratic learning by self‐explanation. As far as possible, this component  should be designed to provide the options that a human teacher can offer and this is  an avenue for further research.  4.3 Communication Model (CM)   The Thairator ITS interface is designed to be both intuitive and self‐explanatory. The  main interface layout is shown in the figure below.    24   Figure 3: Basic Interface Layout       As can be seen, the screen is split into four sections. The Problem panel presents the  question to the user in the form of Thai script for him to transcribe. The Answer panel  is for the user to input his answer. The Tutor panel is for presenting feedback to the  user. The Scaffolding panel (not fully implemented) is designed to help the student as  he  answers  the  questions.  It  reduces  his  cognitive  load  and  displays  relevant  information  that  the  student  has  not  fully  committed  to  memory.  This  panel  is  optional for the student and should only be used in the earlier stages of practice with  Thairator.  25    Input in English is via the keyboard with special onscreen “keyboard” to help input  the  IPA  symbols  and  tone  markers  needed  (ŋ,  ǝ,  ɛ,  ʉ,  ɔ,  ˆ,  ˇ,  ˊ,  ˋ).  These  special  symbols  are  supported  by  some  truetype  fonts  (eg.  Lucida  Sans  Unicode)  and  keyboard shortcuts to input them rapidly will be provided for regular users. Input in  Thai is supported using the popular kedmanee  keyboard layout [28]. However, this  requires some familiarity with the mapping and/or using a Thai keyboard overlay.     The  student  enters  his  answer  in  phonetics  or  Thai  script  depending  on  the  question.  When  he  is  done,  he  clicks  the  “Analyze  Answer”  button  which  displays  the system feedback on his answer in the Tutor panel. He can then make corrections  and re‐analyze his answer till he is satisfied.     To aid reflection, a log file of the student activity is generated for each session. At  the end of each session with Thairator, the user can print out the session log and add  personal annotations.  26 CHAPTER 5 STUDENT MODEL    In  this  section,  we  detail  the  structure  and  design  of  the  student  model  and  the  enhancements we have made to it.     The  Student  Model  should  accurately  reflect  the  studentʹs  understanding  of  the  domain.  However,  the  question  is  at  what  granularity  would  a  good  balance  be  struck between effort of construction and good effective representation. We decided  on  the  granularity  of  low‐level  concepts  where  each  concept  is  modeled  as  a  constraint and a dynamic weight is attached to it.  5.1 Stereotyping    Stereotyping  of  students  reflects  how  a  teacher  interacts  with  each  individual  student.  By  constructing  a  very  simple  and  approximate  cognitive  model,  human  teachers  pigeonhole  their  students  based  on  past  experience  [29].  We  use  a  similar  technique  to  prime  our  constraint  weights  and  set  certain  variables  to  values  more  suited to each student category. This technique operates independently of CBM and  improves the  ability of the ITS to model the student accurately.     Unlike  some  systems  which  use  complex  stereotype  hierarchies,  Thairator  uses  three  basic  categories  (Beginner,  Intermediate,  and  Advanced;  Figure  4)  to  chose  a  template to prime the constraint weights to .   27   Figure 4: Stereotyping dialog A  more  complex  hierarchy  is  not  necessary  as  the  weights  are  thereafter  updated  constantly to present an accurate reflection of the student.      The  user  chooses  one  of  the  three  categories  and  the  rationale  is  that  if  the  user  choses  the  choice  that  best  describes  him,  the  dynamic  weights  will  converge  to  represent  his  understanding  of  the  domain  much  faster.  On  the  other  hand,  if  the  student chooses the advanced category when beginner more accurately describes him,  the  weights  will  take  longer  to  converge.  Implicit  modeling  is  used  where  minimal  questions are asked of the user. Instead, user performance is analyzed and inferences  made to closely model the user as his understanding changes over time.     Some  other  attributes  besides  the  constraint  weights  are  also  affected  by  the  stereotyping  templates.  These  include  the  Optimum  Student  Competency  (OSC,  described in section 5.5.1), and the percentage increment per constraint violation.  5.2 Constraint Hierarchy    Unlike flat constraints used in other systems, in Thairator, constraints are separated  into  three  levels  (basic,  advanced,  tones  +  special).  These  constraints  represent  concepts that are deemed pedagogically important for the student to master.     28 Level 1 basic Level 2 advanced Increasing complexity Level 3 tone rules & exceptions   Figure 5: Constraint Hierarchy      Level  1  constraints  consist  of  the  basic  relationships  between  the  glyphs  and  phonetical symbols. They can operate independently of the other constraints. Level 2  constraints  mainly  cover  higher  level  concepts  such  as  alphabet  clustering,  invisible  vowels, and pseudo clusters. Level 3 constraints comprise mainly of tone rules which  govern how the word is assigned one out of the five possible tones. As a rule, level 1  concepts  are  more  general  than  level  2  and  3  concepts  which  are  usually  more  complex and sometimes deal with specific exceptions.     Thairator has 38 constraints in all: seven level 1, thirteen level 2, and eighteen level 3  constraints.  In  the  beginning,  many  possible  constraints  were  identified  from  studying the ontology. These were then narrowed down to the constraints deemed to  have the greatest pedagogical significance. The remainder was further studied to see  if any of them could be combined to reduce the number of constraints to be modeled.  All this was done in collaboration with our Thai language teaching domain expert.     In  the  later  stages  of  implementation,  it  was  discovered  that  some  combined  constraints needed to be split up as each required distinct pedagogical actions for the  student.  As  such,  we  have  learnt  that  combining  multiple  concepts  into  a  single  constraint should be done prudently. A complete listing of the constraints developed  is included in Appendix I: Constraints.  29    We shall now illustrate the constraint hierarchy with an example:  Assume the student is given a problem  แบก  which he must convert into phonetics.  First, the problem is parsed into its elements before being analyzed, both in isolation  and in context, for constraint violation.  The presence of the first element   แ  and the lack of the vowel shortener    ็ over the  บ character  is  a  level  1  relevance  constraint  (C1.6_longVowel)  which  denotes  that  a  long  vowel  has  been  detected.  The  corresponding  satisfaction  constraint  is  that  the  vowel in the answer must be “”.  The second element is   บ and being in the initial consonant position, satisfies another  level  1  relevance  constraint  (C1.1_iconsMid)  which  denotes  that  an  initial  mid  consonant  is  detected.  The  satisfaction  constraint  is  that  the  initial  consonant  in  the  answer must be “b”.  The third element is  ก and being in the final consonant position, satisfies yet another  level 1 relevance constraint (C1.5_econsStop) which denotes that a final consonant  belonging  to  the  stop  category  has  been  detected.  The  satisfaction  constraint  is  that  the final consonant in the answer must be “k”.  As such, all the relevant level 1 constraints are satisfied in the answer   bk    Next,  the  system  runs  through  the  level  2  constraints  and  discovers  that  none  are  relevant for this particular question.  30 Finally,  the  system  runs  through  the  level  3  constraints  and  only  one  relevance  constraint  is  satisfied  (C3.2_midcons2c),  denoting  that  a  combination  of  mid  consonant  (บ) +  long  vowel  (แ) +  final  stop  consonant  (ก)  has  been  detected.  The  satisfaction  constraint  is  a  set  of  tone  rules  depending  on  which  tone  marker  is  detected  by  the  parser.  In  this  case,  there  is  no  tone  marker  so  the  tone  is  low  represented by   ̀   in IPA phonetics.  Final answer: b̀k     Depending  on  which  constraints  are  violated,  the  student  model  is  updated  as  discussed in the following section.  5.3 Dynamic Hierarchical Weighted Constraints (DHWC)    The constraint weighting system allows a flexible and adaptive way of dealing with  violated  constraints.  The  weights  are  initialized  to  a  general  pedagogical  model  (as  described  in  the  previous  section)  and  from  there  adapt  to  each  student  based  on  interaction with the ITS.     During interaction with the student, the weights of each constraint increases as it is  violated and drops as it is satisfied. The heuristics used for initial weighting are:  • Dominance (or complexity within basket of constraints)  • Frequency (of occurance in the domain)  • Related  Dominance  (a  factor  of  how  other  constraints  it  is  closely  related  to  are weighted)  • Similarity (with other constraints reflecting possiblity of confusion)  31 This feature selection and the accompanying weighting was performed after studying  student data and identifying the variables that have the greatest effect on constraint  importance. Each constraint is given a weight calculated by   CW = w1 D + w2 F + w3 RD + w4 S   Initially,  all  four  weights  were  set  equally  to  0.25.  However,  when  the  resulting  constraint  weights  were  shown  to  a  domain  expert,  they  were  found  to  be  a  poor  reflection of constraint importance. Through experimentation, we decided on w1=0.5 w2=0.3 w3=0.1 w4=0.1.  This  also  agrees  with  how  we  rank  these  four  features  in  terms  of  pedagogical  significance  i.e.  Dominance  (D)  >  frequency  (F)  >  related  dominance (RD) > similarity (S).      Next,  common  misconceptions  and  important  concepts  were  identified  by  the  domain  expert.  The  initial  dominance  (D)  of  these  constraints  were  then  increased.  This increase is based on the expert’s opinion of how dominant the concept is and is a  reflection of the pedagogical importance of the constraints to the average student of  each stereotype. Only the more common misconceptions (shown  to apply to a large  majority of students) were chosen rather than those specific to a certain student group  and  dependent  on  special  prior  knowledge.  An  example  of  a  dominant  concept  in  Thai  transcription  would  be  that  students  generally  have  more  difficulty  with  dead  syllables than with live syllables (refer to Appendix II: Detailed Ontology).      When  violated,  the  constraint  weight  is  incremented  in  percentage  rather  than  absolute  figures  –  the  more  times  the  constraint  is  violated,  the  faster  its  weight  increases. This is a signal to the pedagogical module to step in and coach the student  about the relevant concept.  32    Violated  constraints  are  pushed  into  the  Error  Priority  Queue.  Here,  the  contraint  weights are used to determine priority in the Error Priority Queue. This is a filtering  mechanism when more than one constraint is violated and is to prevent the student  from being overwhelmed with error messages and choosing the most important and  relevant  message  to  him  at  the  correct  time.  Generally,  at  the  initial  stage,  level  3  constraints  are  given  priority  over  those  in  level  1  and  2  as  they  tend  to  be  more  complex  and  specific  concepts.  The  intuitive  logic  is  that  the  most  specific  and  complex  constraint  is  the  one  the  student  is  usually  having  difficulty  with.  This  is  even  more  probable  as  the  pedagogical  module  should  ensure  that  the  student  attempts  and  passes  the  more  basic  exercises  before  being  given  more  complex  exercises.     Collectively, our system of constraint weights provides a model of the student. It is  used  to  determine  how  feedback  is  presented  to  the  student  when  multiple  constraints  are  violated,  to  decide  which  exercise  is  presented  next  to  the  user  and  gauges  the  general  proficiency  of  the  student.  These  uses  of  the  Student  Model  are  detailed in section 5.5.       Let us now take a look at an example of the constraint weighting system.  Continuing from the question   แบก  assume that a beginner student gives the wrong  answer  beep  (in contrast to correct answer b̀k).  The satisfied relevance constraints for this question are   C1.1_iconsMid C1.5_econsStop C1.6_longVowel C3.2_midcons2c 33 The  first  relevance  constraint  (C1.1_iconsMid)  tells  us  that  the  question  has  an  initial  consonant  that  belongs  to  the  mid  category  of  consonants.  The  second  relevance  constraint  (C1.5_econsStop)  tells  us  that  the  final  consonant  belongs  to  the  stop  category.  The  third  relevance  constraint  (C1.6_longVowel)  tells  us  that  a  long  vowel  is  present  in  the  question,  while  the  forth  and  final  relevance  constraint  (C3.2_midcons2c)  tells  us  that  the  combination  of  initial  mid  consonant  +  long  vowel  +  stop  final  consonant  is  present.  This  combination  has  a  specific  set  of  tone  rules which need to be applied.    The subset of violated constraints for this question are  C1.5_econsStop C1.6_longVowel C3.2_midcons2   This  means  that  only  the  satisfaction  constraint  for  C1.1_iconsMid  was  satisfied.  Looking  at  the  answer,  we  can  tell  that  this  is  because  only  บ   has  been  correctly  represented as  b  in the answer.    34   Figure 6: Feedback when student answer is wrong      As  shown  above,  the  constraint  C3.2_midcons2  has  the  highest  weight  and  its  associated  feedback  is  displayed  first.  Likewise  the  feedback  for  the  violated  constraints C1.5_econsStop and C1.6_longVowel is shown in the highest level of  feedback detail above.  5.4 De-contextualized Constraint-Based Questions (DCBQ)    CBM allows us to analyze the studentʹs ability to solve a problem logically but gives  us no bearing on how he did it. This leads to the problem of differentiating between  accidental and purposeful satisfaction of constraints.    When  a  student  gets  an  exercise  correct,  the  traditional  method  of  making  sure  he  has  understood  the  underlying  concept  is  to  give  him  several  similar  exercises  in  35 sequence.  This  technique  is  not  ideal  as  it  is  possible  that  the  student  maintains  a  flawed understanding that enables him to get the exercises correct.      In contrast with the traditional technique, our novel DCBQ method confirms if the  student  understood  the  concepts  associated  with  the  constraints  relevant  to  the  problem  he  just  attempted  correctly.  We  achieve  this  by  asking  questions  that  are  specifically  designed  to  test  the  high‐level  understanding  of  particular  concept(s).  These questions are decontextualized from the context of the original exercise and the  intuitive logic is that if the student can answer such a DCBQ, he should understand  the concept behind it.     In  Thairator,  the  student  is  given  the  choice  to  answer  DCBQs  only  after  he  has  answered  an  exercise  correctly.  The  constraints  relevant  to  the  question  he  just  attempted  are  stored  in  a  priority  queue  similar  to  the  error  priority  queue.  Once  again, based on the constraint weights, the constraint with the highest weight triggers  the associated DCBQ.  Increase Constraint Weights Problem Exercise correct DCBQ some wrong all correct all wrong wrong Reduce Constraint Weights Next Problem Exercise Increase Constraint Weights Pedagogical Model - Teach concept Figure 7: Flowchart for DCBQ 36      As  seen  from  Figure  7,  getting  the  DCBQ  correct  reduces  the  weight  of  the  constraint and the associated concept will be given less pedagogical attention. Getting  a  DCBQ  wrong  will  result  in  the  weight  of  the  constraint  that  triggered  that  DCBQ  being  increased.  This  is  because  it  is  likely  that  the  student  answered  the  previous  problem  correctly  by  accident  or  some  flawed  logic.  If  he  answers  all  the  DCBQs  correctly,  then  we  can  assume  with  reasonable  confidence  that  the  student  understands  the  relevant  concepts  involved.  A  detailed  discussion  of  the  design  of  the actual DCBQ questions is in section 6.3.       The use of DCBQ can be illustrated with a simple example below.  Carrying  on  from  the  earlier  example  of  the  problem    แบก ,  and  assuming  that  the  student  gave  the  correct  answer  bk.  The  DCBQ  selected  for  the  level  3  tone  constraint (C3.2_midcons2c) and posed to the student would be    Which word(s) has the wrong tone assigned?  1) จอด : low        2) จอด : falling         3) จอด : high        4) จอด : rising       Notice that, unlike multiple choice questions, more than one option can be correct.  Furthermore,  although  the  constraint  was  used  only  in  a  specific  context  in  the  exercise, the DCBQ tends to test the more complete and general understanding of the  constraint.  37 5.5 Uses of Student Model    Now we discuss some possible uses of the data in the student model. These are also  incorporated in the design of Thairator.  5.5.1 Exercise Selection    As  the  instructor  inputs  questions  into  the  exercise  database,  these  exercises  are  analysed  for  the  number  of  constraints  which  are  relevant  and  given  a  difficulty  value.     The  difficulty  attribute  of  each  exercise  is  a  function  of  the  constraints  relevant  to  the  question  and  the  weights  of  these  constraints.  In  selecting  the  next  exercise,  several  factors  are  taken  into  account.  First,  the  exercise  must  be  of  appropriate  difficulty.  Second,  it  must  have  the  relevant  constraints  that  the  student  needs  to  focus  on,  and  third,  it  must  not  have  been  attempted  successfully  by  the  student  before. Potential candidate exercises in the database that meet these requirements are  shortlisted  and  a  differencing  function  is  then  used  to  select  the  most  appropriate  exercise for the student. If several exercises are equally suitable, a random function is  used  to  select  one  of  them.  This  ensures  that  the  presented  problems  are  both  of  optimum  difficulty  and  oriented  towards  the  concepts  that  the  student  has  a  weakness in.     Let  us  look  more  closely  at  how  we  determine  if  the  exercise  is  of  appropriate  difficulty.  The  SM  also  has  an  attribute  called  optimal  student  complexity  (OSC)  which  reflects  the  student’s  ability.  Vygotskyʹs  zone  of  proximal  development  [30]  suggests an improved level of performance is achievable when the questions posed to  the  student  are  slightly  above  his  level  of  competence.  As  such,  the  permitted  38 difficulty  of  the  questions  is  set  at  a  biased  range  that  includes  a  slight  threshold  above  the  student’s  skill  level.  This  range  is  set  between  ‐1  and  +2  of  the  student’s  OSC value. Thus, selected questions not only have to contain the relevant constraints  that the student is weak in, the difficulty level also must be appropriate.     The  student’s  OSC  should  be  a  reasonably  stable  value  to  allow  some  student  experimentation  without  fluctuating  wildly.  As  such,  it  is  only  incremented  after  a  number  of  exercises  at  a  difficulty  level  higher  than  his  OSC  are  attempted  successfully.  Likewise,  his  OSC  is  decremented  if  he  consistently  gets  the  exercises,  suitable for his present OSC level, wrong. This will allow the system to present easier  exercises  to  him.  The  OSC  value  is  decremented  by  1  if  the  student  is  unable  to  answer at least five out of the seven most recent exercises. It is incremented by 1 if he  answers at least eight out of the most recent twelve exercises correctly.     For example, a student who chooses the beginner proficiency level at the start of the  program is given an initial OSC value of 3. If the next exercise has a difficulty of say 6,  this  is  deemed  too  difficult  for  the  student  and  the  other  relevant  exercises  in  the  database  are  scanned  to  select  one  of  appropriate  difficulty.  If  he  gets  the  next  five  exercises wrong, his OSC is decremented to 2 and easier exercises are presented. If he  gets eight out of the next nine exercises correct, his OSC is increased back to 3. In this  way, the difficulty of the questions adapts to the student.  5.5.2 Feedback    Related  to  the  Error  Priority  Queue  is  the  issue  of  feedback.  Feedback  is  linked  to  each  constraint  and  categorized  into  a  hierarchy  of  four  levels  of  increasing  detail:  Boolean,  Hint,  All  errors,  and  Solution.  To  provide  scaffolding  for  the  student,  the  39 initial  level  of  feedback  is  usually  boolean  (lowest  level  of  detail).  However,  if  the  student proves to be unable to correct his answer, the level of detail is increased. In  our present implementation, feedback shown belongs to the “All Errors” category.      Feedback  Boolean  Correct or Wrong  Hint  Reminds  student  to  check  the  most  important  concept  that  was  violated  and  refocuses  him  on  short‐term goal.  All  All  constraints  violated  are  shown  in  order  of  Errors  importance  Solution  Complete or partial solution is shown  Table 1: Levels of feedback 40 CHAPTER 6 IMPLEMENTATION    The constraints and main program engine are coded using JESS (Java Expert System  Shell)  version  6.1  which  is  based  on  JDK  1.4.2.  JESS  is  a  rule‐based  system  engine  written by Ernest Friedman‐Hill at Sandia National Laboratories [31]. All constraints  are implemented as predicate rules as this has proven to be more efficient and elegant  than using a procedural language such as Java.     Sun  Javaʹs  native  support  for  Asian  scripts  such  as  Thai,  Unicode  support,  and  enhanced  Swing  interface  components  are  invoked  from  within  JESS  to  create  the  final ITS.     In this chapter, we look into the knowledge engineering process, the codification of  domain knowledge into constraints, and the pedagogical concerns behind the design  of exercises and DCBQs.  6.1 Knowledge Engineering Ontologies  are  able  to  provide  an  objective  specification  of  domain  information  by  representing  a  consensual  agreement  on  the  concepts  and  relations  characterizing  the  way knowledge in that domain is expressed. [32]      Ontologies  may  vary  not  only  in  their  content,  but  also  in  their  structure  and  implementation. As such, this is a workable definition of ontologies as we use it here  to better understand our target domain of Thai transcription.  41    The  ontology  was  created  with  the  help  of  a  Thai  language  domain  expert,  Dr  Suthiwan  from  the  Centre  for  Language  Studies  in  the  National  University  of  Singapore (NUS). The following steps were taken in its development:  1. Acquire domain knowledge  2. Organize ontology  3. Add details to ontology  4. Check ontology  5. Implement ontology  Clusters Tone Rules Initial consonants Mid Low Vowels High Long Final consonants Sonorants Short Stops Sound killers Special Vowel Forms Figure 8: High-level transcription ontology   42    The  highest  level  of  the  ontology  developed  is  shown  above.  The  dotted  arrows  show  the  dependency  of  tone  rules  on  the  initial  consonants,  vowels,  and  final  consonants,  while  the  solid  arrows  show  a  more  specific  instance  of  the  parent  concept,  e.g.  Clustering  is  a  more  specific  concept  within  initial  consonants.  The  dashed  lines  linking  the  intial  and  final  consonant  concepts  to  the  vowel  concept  reflects that they appear together.      This ontology can be applied to the construction of a detailed transcription ontology  in  almost  any  other  language.  However,  not  all  concepts  are  equally  relevant  for  every  language,  e.g.  for  English  or  Malay,  which  are  non‐tonal  languages,  the  tone  rules concept is irrelevant. Other languages may require slight changes, e.g. in Khmer  the initial consonants do not have the mid, high, and low categories and are instead  divided  into  the  first  and  second  registers.  In  general  however,  this  ontology  is  abstractable to the transcription of other languages with minimal changes.      In Thai, unlike English, clustering (having two or more consonants immediately one  after another) is only pronounced at the start of a syllable. For example, let us look at  the  english  word  “truth”  with  respect  to  the  ontology  above.  The  initial  “tr”  is  an  initial consonant cluster. “u” represents a short vowel, while the ending “th” is a final  consonant cluster. Tone rules do not apply.     The  detailed  portion  of  the  ontology  relating  to  consonant  clustering  is  shown  below while the full detailed ontology is in Appendix II: Detailed Ontology.  43 Clusters (when 2 consonants appear 1 after another at beginning) Real Clusters (11: khr khl, khw, kr, kl, kw, phr, phl, pr, pl, tr) tone governed by 1st consonant, marker written over 2nd consonant Pseudo-clusters (2 syllable words) insert /a/ inbetween cons. unless 2nd cons is i then insert // /?/ (4 words) /h/ special high cons clusters (7: , n,m,y,r,l,w) mi treated as /s/ (note: /thr/ does not exist) 1st consonant unpronounced, tone rule follows /?/ or /h/ if 2nd consonant is sonorant, 2nd syllable follows tone rules of 1st consonant Psuedo-psuedo-clusters (follows parent rule but does not have a psuedo-cluster initial) Figure 9: Part of detailed ontology: Clusters      This process of knowledge engineering constraints is a very labourious part of the  implementation  and  it  is  estimated  by  Suraweera  [27]  that  each  constraint  takes  a  domain  expert  and  knowledge  engineer  more  than  an  hour  each  to  produce.  Our  estimate for Thairator would be closer to three hours per constraint. However, it also  depends  on  the  complexity,  familiarity,  and  prior  ontological  research  done  in  the  chosen domain.    Beginning  the  process  of  knowledge  engineering  by  creating  an  ontology  has  helped greatly in the design of necessary constraints and assisting in reflection on the  structure  of  the  domain.  Much  less  time  is  spent  tweaking  the  constraints  and  correcting  design  flaws  since  a  high‐level  view  was  achieved  early  on  in  the  design  process.  44 6.2 Constraints    Constraints  are  stored  as  a  hashtable  with  the  constraint  name  as  the  key  and  the  variable weight as the value. This has been shown to be an efficient way to store the  constraints  as  they  need  to  be  accessed  frequently  for  updating.  In  addition,  from  time  to  time,  it  may  be  necessary  to  modify  the  database  of  constraints.  Using  a  hashtable expedites this updating process.      The general structure of JESS rules is shown below:    Figure 10: General structure of a rule [13]      A sample rule, in JESS code, that represents the single constraint C3.3_highcons1a  is  shown  below:  The  relevance  constraint  here  is  that  the  answer  contains  an  initial  high  consonant  followed  by  a  long  vowel  with  no  final  consonant.  The  satisfaction  45 constraint  is  a  mapping  function  of  tone  rules  depending  on  which  tone  marker  (stored in the variable ?*toneS*) is found.  ;; Rule for constraint C3.3_highcons1a (defrule MAIN::highcons1a "high + long vowel" (declare (auto-focus TRUE)) ;; checks that question was asked (MAIN::ask ?id) ;; checks that question exists in database (MAIN::thaiqn (ident ?id) (diff ?diff) (thai ?thai) (ans ?ans)) ;; checks that user answer has been captured (MAIN::uanswer (ident ?id) (text ?input)) ;; checks that user answer has been parsed (MAIN::status "inputParsed") ;; checks relevance constraint (test (and (= ?*initconsG* 2) (= ?*vowellen* 2) (= ?*eConsG* 0))) => (printout t ">>toneFired" crlf) ;; push constraint into relevance priority queue (pushRC "C3.3_highcons1a") ;; checks for satisfaction constraint (if (or (and (= ?*toneS* 0) (putTone 2)) (and (= ?*toneS* 1) (putTone 1)) (and (= ?*toneS* 2) (putTone 3))) then (printout t "tone correct!" crlf) (?*feedback* append (str-cat "Tone correct. ")) else (bind ?*correct* 0) (printout t "tone wrong!" crlf) (?*feedback* append (str-cat "*Tone wrong. should be " (nth$ (+ ?*cToneP* 1) ?*toneList*) " ")) ;; push violated constraint into error priority queue and ;; increase it’s weight (pushNupdateConstraint "C3.3_highcons1a" ?*inc*) ) (assert (status "toneDone")) ) Figure 11: Code for tone constraint for high consonants and long vowels The LHS and RHS statements of the rule are divided by the separator character “=>”.  The LHS statements are the relevance conditions that determine if the RHS of the rule  is activated. The RHS statements are the satisfaction conditions that determine if the  constraint was violated.  46 6.3 Design of Exercises and DCBQ    The  exercises  input  into  the  system  are  asserted  as  unordered  facts  in  JESS.  The  structure of these are shown below:  (deftemplate thaiqn (slot ident) ; (slot diff) ; (slot thai) ; (slot ans)) ; "main exercises" unique identifier for question difficulty the question contents answer   Each exercise in the system has a unique identifier, a difficulty value calculated from  the  number  of  relevant  constraints  and  their  associated  weights,  the  question  contents, and an answer field which is usually left blank.  An example of a exercise fact is shown below:  (thaiqn (ident 28) (diff ?*diff*) (thai เรียน) (ans .))   The unique identifier here is 28, the difficulty level is a calculated value, the question  is usually in Thai script, and the answer field is blank     The  exercises  are  designed  to  be  consistent  and  the  words  taken  from  a  corpus  of  common  Thai  usage.  An  even  distribution  between  the  various  constraints  and  exercise difficulty is also strived for.     Along a similar vein, DCBQs are asked in the form of multiple true/false questions  to  expedite  the  checking  process  and  minimize  time  required  for  the  student  (see  example  in  section  5.4).  They  strike  a  good  balance  between  ease  of  administration  and effective testing. However, some detractors say that such deterministic test forms  are  similar  to  multiple  choice  questions  and  are  generally  unreliable  and  encourage  guesswork [33]. To address this design critique, we appeal to the laws of probability.  In  Thairator,  each  DCBQ  consists  of  four  true/false  questions.  The  student  must  47 answer  all  four  correctly  for  the  DCBQ  to  be  deemed  correct.  The  probability  of  guessing  all  correctly  is  p=(0.5)4=0.0625.  Therefore,  it  is  unlikely  that  a  guessing  strategy would work.     The DCBQ is designed to test the student’s understanding of the concept. However,  the  options  are  given  a  sense  of  context  by  using  real  commonly  used  words.  This  highlights  the  fact  that  DCBQ  questions  and  options  while  decontextualized  from  context  of  the  earlier  exercise,  should  not  be  so  abstract  as  to  simply  test  rules  and  laws. Such abstraction tends to cause students to learn at very superficial levels and  results in poor retention.  48 CHAPTER 7 EVALUATION    The evaluation of a complex educational system is a difficult process. This is partly  due to the difficulty in isolating the effects of any single variable in the Student Model  on  performance.  Here  we  conduct  a  preliminary  study  on  the  performance  of  the  system.  7.1 Methodology    We  focus  on  measuring  two  things:  the  reliability  of  the  Student  Model  (i.e.  its  ability to accurately reflect the student over the duration of the experiment), and also  the educational effect of the ITS on the student’s achievement.     Regarding  statistical  tools,  the  Z‐test  is  favoured  when  the  sample  size  is  large,  which  is  not  the  case  in  this  preliminary  study.  Another  tool,  the  Student’s  t‐test,  is  often used for small sample sizes in empirical analysis. However, we chose to leave  the use of these tools and a more rigorous statistical study for future work and focus  on establishing a good foundational understanding of how Thairator works with the  student.      On one hand, this allows us to use a small sample size of 10 for the purposes and  constraints of  this  initial  evaluation.  On  the  other  hand,  it  is  our  intent  to  study  the  effectiveness of the ITS by understanding if the correct internal constraints are fired  and  comparing  the  output  to  a  human  teacher.  At  this  stage,  this  comparison  is  a  viable substitute for studying a control group of students who are taught by a human  teacher.  49    Mark  and  Greer  [34]  suggest  three  questions  that  we  aim  to  answer  with  our  evaluation.  • ʺWhat does Thairator do?ʺ  • ʺDoes Thairator fulfill the purpose for which it was designed?ʺ  • ʺDoes Thairator result in predicted outcomes?ʺ  After weighing the pros and cons of the various methods of evaluation described by  Ainsworth [35], we designed an empirical study and analyzed both the explicit user  feedback and implicit log data generated.     Ten  carefully  selected  subjects  were  individually  put  through  this  specially  designed experiment. The data (in the form of extensive log files, tests, and feedback  forms) collected was organized and thoroughly analyzed.  7.1.1 High-Level Analysis    The  data  collected  from  the  empirical  study  can  be  broadly  classified  into  explicit  and implicit interaction data. Implicit data is mainly in the form of log files collected  by the system in the background while explicit data is in the form of pre‐tests, post‐ tests, and evaluation forms where the user is directly asked for a response. High‐level  analysis deals with the explicit interaction data collected in this study and we use this  data  to  calculate  the  learning  gains  of  each  subject.  This  high‐level  analysis  of  the  subjects’ progress tells us, in a general sense, if Thairator fulfils the purpose for which  it was designed.  50 7.1.2 Detailed Log Tracing    Here  we  study  the  individual  student  log  files  (implicit  interaction  data)  and  analyze how the student model evolves as the student uses the system. This is useful  because we wish to compare our student model to how a competent human teacher  would understand the student. The rationale behind this is similar to the Turing test  [36]  which  is  a  well‐known  evaluation  technique  in  which  a  computer  system  is  judged  based  on  how  indistinguishable  its  performance  is  to  the  behaviour  of  a  human expert.      A  major  benefit  of  detailed  log  tracing  is  that  it  allows  us  to  focus  on  how  the  system  deals  with  pedagogically  significant  scenarios.  Comparing  the  results  of  log  tracing  and  our  expected  results  also  tells  us  if  the  system  is  consistent,  and  if  so  under what circumstances.    51   Figure 12: Snapshot of the Thairator log      As can be seen from the snapshot in Figure 12, the logs have a voluminous amount  of  data  which  includes  the  relevant  constraints  for  each  exercise  (Printing  relQ),  violated constraints (dequeu9 EPQ), each change of the student model (in the format  52 “key =  ? ”), what caused the change, and each  student answer, and many other system state variables not visible in the snapshot.   7.2 Procedure 7.2.1 Subject Selection    Ten  subjects  were  selected  to  participate  in  the  empirical  study.  They  were  university undergraduates ranging from 18‐25 years of age. They come from various  academic disciplines and all have completed at least one semester of basic level Thai  in NUS.      Most of the subjects have had minimal experience with ITS although all have used  the Integrated Virtual Learning Environment (IVLE) e‐learning environment used in  NUS. Other e‐learning systems they have come across include: a Thai e‐learning CD‐ ROM by Rosetta Stone, SPSS tutor (tutor for a statistical tool), SATS online self‐help  program,  and  typing  tutors.  Most  of  these  are  known  to  display  very  minimal  intelligence with regards to student modeling.     The  subjects’  computer  literacy  varies  from  novice  to  expert  but,  in  general,  even  those  who  consider  themselves  novice  are  comfortable  with  basic  computer  use.  Thairator is designed such that even the novice should have no problems using it.  7.2.2 Execution    The  user  study  was  conducted  on  an  individual  basis.  Each  subject  went  through  the  six  sections  as  detailed  below.  Each  study  takes  slightly  more  than  an  hour  per  subject.  53 Briefing Pre-test Training Use of ITS Post-test Feedback form   Figure 13: Flow of user study   1) Briefing: The  experimenter  briefed  the  subject  on  the  general  purpose  and  procedure  of  the  user  study.  Any  doubts  the  subject  had  were  cleared  and  queries answered.  2) Pre‐test: This fifteen minute test (see Appendix V: Pre‐test and Post‐test) was  developed by our domain expert to gauge the subject’s proficiency level in the  subject  matter  of  Thai  transcription.  It  was  administered  using  the  classic  paper and pen medium to ensure that subject infamiliarity with the medium  did not affect the results. It was graded not simply by the number of questions  answered  correctly,  but  by  the  relevant  concepts  answered  correctly.  Each  question  has  an  average  of  six  relevant  concepts.  One  mark  is  awarded  for  each level 1 concept answered correctly while two marks are awarded for each  level 2 or 3 concept to reflect their greater difficulty.  54 3) Training:  The  subject  was  trained  on  how  to  use  the  Thairator  ITS  interface.  The various shortcut keys and tools were also introduced.  4) Use  of  ITS:  The  subject  started  using  Thairator  and  proceeded  with  the  exercises until a minimum number of exercises have been attempted. He was  then free to stop or continue till Thairator had no suitable questions left in the  database. Usage time varies from 30 – 40 mins.  5) Post‐test: This test was of designed to be of equal duration and difficulty to the  pre‐test. Roughly equivalent coverage of the domain was ensured by studying  the  concepts  relevant  to  each  question.  This  test  was  marked  in  the  same  manner as the pre‐test and used to compare the subject’s performance after he  used Thairator.  6) Feedback form:  The  subject  was  asked  to  complete  an  evaluation  form  on  his  experience with Thairator and to give suggestions on improvement.  55 7.3 Results 7.3.1 Learning Gains    The  results  of  the  pre  and  posttests  were  collated  to  quantitatively  calculate  the  learning gains of the subjects. The tests, as mentioned earlier, were graded according  to individual concepts relevant to each question.      Learning  gains  is  represented  by  the  formula  below  [35]  and  is  normalized  by  dividing the difference by the pre‐test scores to account for high performers.  Learning gains = (posttest – pretest) / pretest   Normalized Learning Gains for each user 0.4 0.35 0.3 0.25 0.2 0.15 0.1 0.05 0 -0.05 AT XY QB KS AM GB VA JH ME SH   Figure 14: Learning Gains for each user As can be seen in  Figure 14, the learning gains is positive except for an isolated case  where it is marginally negative. The average learning gains is 15.3% with a standard  deviation of 11.6%.  56    We also take a closer look at the concepts the individual users had problems with  during the pre‐tests and post‐tests. In general, there is a drop both in the total number  of violations (Figure 15) and the number of concepts that are violated (Table 2).     Constraint Violation in Pre and Posttests 35 Number of Violations 30 25 20 Pretest Posttest 15 10 5 0 AT XY QB KS AM GB VA JH ME SH Figure 15: Constraint violation in pretests and posttests 57 1. 1 AT pre AT post XY pre XY post QB pre QB post KS pre KS post AM pre AM post GB pre GB post VA pre VA post JH pre JH post ME pre ME post SH pre SH post 1. 2 1. 3 1 1. 4 1. 5 3 2 4 1 1. 6 1. 7 5 1 2 2 2. 1 2. 2 2 2. 3 2. 4 2. 5 2 2 1 2. 6a 2. 6b 2. 6c 2. 7a 2. 7b 2. 7c 2. 8 2. 9 3. 1a 3. 1b 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 1 2 1 1 1 1 1 2 5 2 2 2 1 1 1 1 2 1 1 3 2 1 2 1 1 1 2 2 1 1 1 2 1 1 1 2 2 2 1 2 2 1 1 1 3 1 2 2 1 1 2 1 1 1 1 1 1 1 1 1 1 2 1 3. 3b 3. 3c 1 3. 4a 3. 4b 3. 4c 3. 5a 1 1 1 1 1 2 1 1 3. 5b 3. 5c 1 2 1 3. 6a 3. 6b 2 2 2 2 1 2 2 1 1 2 2 2 1 1 1 1 1 3. 7 1 1 1 1 2 1 2 1 1 1 1 3 3. 3a 1 1 1 1 1 1 2 2 3. 2c 1 1 2 2 3. 2b 1 1 1 1 1 3. 2a 1 1 3 3. 1c 1 2 1 1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 2 1 1 1 1 1 2 2 1 1 1 1 1 2 1 1 2 1 2 1 1 1 1 1 1 1 1 1 2 2 1 1 1 1 1 2 1 1 1 1 2 1 2 3 1 1 1 2 2 1 1 1 2 Table 2: Detailed constraint violation in pre-tests and post-tests 58 7.3.2 Detailed Log Tracing    From a close study of the logs produced by the subjects’ interaction with Thairator,  we  selected  two  subjects  for  closer  study.  The  initial  and  final  state  of  the  student  model,  for  each  subject,  is  shown  in  raw  numerical  form  in  Appendix  VII  :  Raw  Student  Model  Variation  Data,  and  in  graphical  form  in  Appendix  VIII  :  Charts  of  Student Model Variation.       In the case of subject AT, he had studied Thai for two semesters but stopped for the  past  eight  months.  He  chose  the  beginner  proficiency  level.  His  SM  was  initialized  and he attempted the exercises in the order of 24, 30, 18, 33, 35, 29, 14, 9, 27, 21, 17, 16,  3, 7, 36, 32. DCBQs were attempted after exercises 18, 33, 29, 14, 9, and 17. DCBQs, as  mentioned earlier, are optional and the subject can only choose to attempt them after  he  has  answered  an  exercise  correctly.  Out  of  the  seven  DCBQs  attempted,  he  answered two wrongly. After he answered exercise 21 correctly, his Optimal Student  Competency  (OSC  see  section  5.5.1)  value  was  incremented  by  1  to  allow  him  to  attempt more challenging exercises.     We  take  a  closer  look  at  how  the  DCBQs  expose  his  incomplete  understanding  of  the  concept  behind  C1.4_econsSono  (ending  sonorants).  Although  he  was  able  to  answer exercise 17, which included an ending sonorant, he was unable to answer the  DCBQ posed to him which included other ending sonorants in the context of different  words.  59 Subject: AT C 1. 1_ ic on C sM 1. id 2_ ? ic C on 1. 3_ sH i co i? C ns 1. 4_ Lo ec w ? on C sS 1. 5_ on ec o? on C 1. sS 6_ t op lo C ng ? 1. V 7_ ow sh e or l? C tV 2. 1_ ow re el al ? cl us C te 2. rs 2_ ? sh C co 2. C ns 2. 3_ 4_ sm ? ch co an ns g9 ? C vo 2. w 5_ el in s? vV C 2. ow 6a e _s lo C ? vo 2. w 6b el _s am vo ? C w 2. el 6c aw _s C ? 2. vo 7a w el _d a ip y? C ht 2. ho 7b ng _d ua C ip 2. ? ht 7c ho _d ng ip i a? C ht 2. 8_ hon gU in vV a? C ow 2. el 9 Weights 120 110 100 90 80 70 60 50 40 Start End C   Figure 16: Portion of chart comparing AT's SM at start and end of using Thairator      Looking at Figure 16 (full chart can be found in Appendix VIII : Charts of Student  Model  Variation),  we  study  the  more  significant  changes  in  the  SM.  The  dynamic  weights  assigned  to  the  constraints  of  C1.1_iconsMid,  C1.3_iconsLow,  C1.6_longVowel  have  decreased,  while  the  weights  assigned  to  C1.7_shortVowel,  C2.2_shcons,  and  C2.7a_diphthongua  have  increased.  With  the  help  of  a  domain  expert  and  studying  how  the  student  interacted  with  Thairator, both the system and domain expert concurred that those constraints whose  weights had gone down were, to a good probability, understood by the student and  those  whose  weights  had  increased  would  need  further  pedagogical  attention.  This  first  detailed  study  of  the  logs  supports  our  claim  that  the  SM  is  reliable  in  comparison with the behaviour of a human teacher.       In the case of subject GB, she studied Thai for the past three semesters. She chose  the intermediate proficiency level and attempted the exercises in the order of 24, 3, 33,  30, 22, 31, 21, 4, 24, 7, 15, 34, 8, 17, 36, 11, 2, 10, 32, 13, 19, 29. DCBQs were attempted  60 after exercises 24, 30, 22, 15, 7, 34, 17, 36, 10, 32, 13, 19. She was presented ten different  DCBQs and out of these, she got five correct. The five DCBQs she answered correctly  reflect a high‐level understanding of those five associated concepts as the DCBQ are  designed to thoroughly test conceptual understanding. Those five that she answered  wrongly reflect only partially understood concepts that she can answer correctly only  in certain contexts (as she answered the question prior to the DCBQ correctly). Here,  these  assumptions  are  verified  by  looking  at  her  pre‐test  and  post‐test  constraint  violations  in  Table  2.  All  the  concepts  with  correctly  answered  DCBQs  have  no  violated  constraints  in  the  post‐test.  One  exception  is  the  single  violation  to  c3.5_lowcons1b  but  this  can  be  safely  attributed  to  either  experimentation  or  carelessness  as  a  cross‐sectional  study  of  all  the  other  subjects  verify  that  this  is  indeed a rare case.     We  now  take  a  closer  look  at  her  interaction  with  the  system.  After  answering  exercise 15 correctly, she attempted a DCBQ. The DCBQ associated with the relevant  constraint  bearing  the  highest  weight  was  presented  (C2.4_chang9vowels).  Although exercise 15 contained a changing vowel which she answered correctly, she  was  unable  to  answer  the  DCBQ  and  so  the  system  increased  the  weight  for  c2.4_chang9vowels.   61 ? ? ? ? ? ? r? a? a? a? b? c? c? 1b 1c 2a 2c 2b 1a rth lc s1 s2 s1 s1 gU ns ns ns ns ns ns e e n n n n n t o o o o o o o o o o o s c c c c c c ow th lu hc hc h hc hc id id id id id id ig ig ig ig ig m m m m p h i nvV _sC m m h h h h _ _ _ _ _ _ di _h _ _ _ _ 1 2 2 2 1 1 _ 9 . . . . . . 4 3 3 3 4 . 8 . . . . . 3 3 3 3 3 3 2 3 3 3 3 3 2. C C C C C C C C C C C C C C a? gi Constraints Start End   Figure 17: Portion of chart comparing GB's SM at start and end of using Thairator   Looking  at  Figure  17  (full  chart  can  be  found  in  Appendix  VIII  :  Charts  of  Student  Model Variation), we again study the more significant changes in the SM at the end of  her  session  with  Thairator.  The  dynamic  weight  assigned  to  C3.2_midcons2a  has  decreased,  while  the  weights  assigned  to  C2.8_invVowelcc,  C3.1_midcons1a,  and C1.6_longVowel have increased. Again, with the help of a domain expert and  studying how GB interacted with Thairator, the system and domain expert agreed on  most  points.  However,  an  issue  surfaced  this  time  with  what  the  domain  expert  identified as careless mistakes. Mistakes that are obvious to the expert as careless are  sometimes  identified  by  the  system  as  constraint  violations  and  treated  as  a  misunderstanding  of  the  associated  concept.  The  domain  expert  remarked  that  instead of penalizing the subject, careless mistakes should be dealt with by tailoring  the  feedback  to  the  student  differently.  Besides  this  scenario,  the  findings  from  this  second detailed log study support what we discovered in the first detailed study.  62    We now study the case of QB who has slightly negative learning gains from using  Thairator.  Like AT, he studied Thai for two semesters and had little practice for the  past  eight  months.  He  also  chose  the  beginner  proficiency  level.  However  some  differences are noticed while analyzing his interaction with Thairator.     Firstly, his OSC value does not increase but remains at 3. The is because he makes  too many errors for the system to increment his OSC. In fact, the system is quite close  to decrementing his OSC value. Furthermore, out of the ten DCBQs he attempts, he  only gets one correct.   140 120 100 80 60 40 C C 1. 1_ i co ns M 1. id 2_ ? ic C on 1. 3_ sH ic i? C on 1. sL 4_ ow ec ? on C sS 1. 5_ on ec o? on C 1. sS 6_ to lo p? C ng 1. V 7_ ow sh el or ? C tV 2. ow 1_ re el al ? cl us C te 2. r s? 2_ sh C co 2. C n 2. 3_ s 4_ sm ? ch co an ns g9 ? C vo 2. w 5_ el in s? vV C 2. ow 6a el _s o C v ow ? 2. 6b el _s am vo ? C w 2. el 6c aw _s C ? 2. vo 7a w el _d a i y? ph C 2. th 7b on _d gu C ip a? 2. ht 7c ho _d ng ip ia ht C ? 2. ho 8_ ng in U vV a? C ow 2 Weights Subject: QB   Figure 18: Portion of chart comparing QB's SM at start and end of using Thairator      From Figure 18, we can see another difference from other subjects: that the changes  in  QB’s  SM  are  mainly  in  level  1  constraints.  This  is  because  harder  exercises  containing  the  more  complex  level  2  and  level  3  constraints  have  higher  difficulty  values which his low OSC does not allow him to attempt.     Many factors affect a student’s performance and we believe that in addition to what  we  captured,  it  is  possible  other  affective  attributes  such  as  motivation  and  attitude  contributed  to  his  poor  performance.  His  feedback  was  that  the  questions  were  too  63 hard  and  this  could  have  lead  him  to  feel  frustrated  which  in  turn  affected  his  learning adversely.  7.3.3 User Feedback    Here  we  study  the  feedback  obtained  from  the  subjects  at  the  end  of  each  experiment. Table 3 depicts the summarized feedback of the general user impression  of Thairator.  1 strongly disagree; 2 disagree; 3 neutral; 4 agree; 5 strongly agree z I enjoyed the experience with Thairator z My interest was piqued by Thairator z I understand some Thai writing concepts better z The interface is intuitive 1 2 3 4 5 ave 0 0 3 5 2 3.9 0 0 3 5 2 3.9 0 0 1 6 3 4.2 0 1 3 6 0 3.5 Table 3: User feedback on general impression of Thairator   The subjects enjoyed their experience using Thairator. They found it interesting to use  and  also  felt  that  they  had  learnt  more  about  the  concepts  in  the  Thai  transcription  domain.  However,  regarding  the  interface,  five  of  them  felt  that  it  could  be  more  intuitive. They suggested incorporating sound, movie clips, and other multimedia to  engage  the  user.  Another  comment  was  to  include  a  “back”  or  “history”  button  to  allow the user to recap questions that he had attempted.     Table  4  summarizes  the  user  feedback  on  how  the  exercise  questions  were  organized and presented and how system feedback was presented to them when they  answered incorrectly.    64 1 strongly disagree; 2 disagree; 3 neutral; 4 agree; 5 strongly agree z The questions were well organized z The questions were suited to my skill level z The amount of feedback was appropriate and understandable 1 2 3 4 5 ave 0 0 2 8 0 3.8 0 1 3 6 0 3.5 0 1 0 6 3 4.1 Table 4: User feedback on pedagogical flow   Eight out of ten agreed that the questions were well organized and suited to their skill  level.  Nine  also  agreed  that  the  feedback  was  appropriate  and  understandable.  However, some remarked that more detailed feedback could be given explaining why  the answer was wrong.     Table  5  summarizes  the  user  feedback  on  the  DCBQs;  their  difficulty  and  effectiveness.   1 strongly disagree; 2 disagree; 3 neutral; 4 agree; 5 strongly agree z The DCBQs were of appropriate difficulty z The DCBQs tested my understanding of the concepts well z 1 2 3 4 5 ave 0 2 1 4 3 3.8 0 0 2 6 2 4.0 0 0 0 5 5 4.5 The DCBQs exposed incomplete understanding in my concepts Table 5: User feedback on DCBQs   Most  found  the  DCBQs  difficult  although  they  agreed  that  the  DCBQs  tested  their  understanding  of  concepts  thoroughly.  Some  suggestions  included  having  explanations  when  the  DCBQs  were  answered  incorrectly.  Presently  the  system  simply informs the user if he is correct or wrong. Furthermore, unless the user gets a  65 DCBQ  correct,  the  same  DCBQ  can  be  asked  each  time  the  associated  constraint  is  triggered. The users also commented that even if a DCBQ was answered wrongly in  the  past,  a  different  DCBQ  should  be  presented  each  time  the  same  relevant  constraint  was  triggered.  This  would  require  either  a  larger  basket  of  DCBQs  with  multiple DCBQs per constraint, or a technique of generating meaningful DCBQs from  a corpus. Possible improvements to the DCBQ engine are discussed in section 8.2.1.  7.4 Discussion    Looking  at  the  results  from  the  explicit  interaction  data,  the  system  performs  to  expectations  with  the  exception  of  the  rare  anomaly  (subject  QB)  which  is  to  be  expected when dealing with human subjects.     Making  sense  out  of  the  implicit  interaction  data,  such  as  log  files,  is  a  very  painstaking process. However, a much greater understanding of the system and how  it  behaves  under  pedagogically  significant  conditions  was  achieved.  Results  of  this  part of the study show that, even for subject QB, the way the subject was modeled by  Thairator  is  consistent.  The  concepts  he  is  weak  in  indeed  have  their  weights  increased.  We  believe  that  in  his  case,  the  apparent  lack  of  learning  gains  can  be  overcome with an improved pedagogical module and the ability to infer the affective  state of the student.     However, there is a need to improve the presentation and difficulty of the DCBQs.  Presently,  unlike  the  main  exercises,  there  is  no  difficulty  rating  for  the  DCBQs.  It  would be beneficial too if there could be more than one DCBQ per constraint so that  there is less chance of repetition. Presently, this requires an expert to design and input  each DCBQ individually which is tedious and time consuming.   66    In  addition,  careless  mistakes  need  to  be  identified  and  given  differentiated  treatment from two other similar scenarios: when the student has a wrong conceptual  understanding, and when the student has a memory lapse. Presently, Thairator only  identifies  careless  mistakes  as  constraint  violations  made  after  the  student  has  correctly answered the associated DCBQ. However, this only captures a subset of the  careless  mistakes  made.  Treating  a  genuine  careless  mistake  simply  as  a  constraint  violation,  while  acceptable,  is  rather  harsh  and  accurately  identifying  these  three  groups would allow the system to model the student better.   7.5 Summary    This chapter describes our user study to evaluate the performance of Thairator and  the reliability  of its SM.   Thairator  is designed to improve  and model the student’s  understanding  of  the  concepts  of  Thai  transcription.  Most  users  had  a  favourable  impression  of  Thairator  after  the  study.  They  also  had  a  good  impression  of  the  intelligence  of  the  system.  The  learning  gains  show  that  there  is  a  general  improvement after using Thairator. Furthermore, the detailed study of the log traces  show that the student is modeled reliably.      However,  the  implementation  of  the  DCBQs  while  effective,  can  be  further  improved in response to the user feedback that they are sometimes too difficult and  lack  of  variation  in  the  DCBQs.  The  importance  of  well‐designed  DCBQs  which  thoroughly test the associated concepts cannot be overemphasized.    67    Accurate  identification  of  careless  mistakes  would  help  further  improve  the  reliability  of  the  student  model.  However,  student  cognitive  states  such  as  carelessness and forgetfulness are not easy to infer nor differentiate.     Through this user study, we have also collected a set of data that will be useful for  further improvements to the SM and ITS.     68 CHAPTER 8 CONCLUSION 8.1 Overview and Contributions    Our  research  proposed  the  study  of  enhancing  Constraint  Based  Modeling  and  implementing  it  in  an  ITS  to  teach  Thai  transcription.  We  focused  on  the  Student  Modeling aspect of the ITS and have shown that our enhancements do address some  of  the  weaknesses  of  CBM  and  enable  an  accurate  representation  of  the  target  student.  In  particular,  our  De‐contextualized  Constraint  Based  Questions  (DCBQ)  help  to  identify  when  the  student  understands  the  concepts  behind  the  question  he  has  attempted  correctly.  Dynamic  Hierarchical  Weighted  Constraints  (DHWC)  also  allow the system to better reflect the competences of the student and change along as  he interacts with the system.     A  high‐level  reusable  ontology  for  language  transcription  has  also  been  built.  The  detailed ontology for Thai transcription was created from this and used to good effect  in the design of constraints for Thairator.     Thairator  was  implemented  in  JESS  and  evaluated  to  assess  the  accuracy  of  the  Student Model and the effectiveness of the ITS as a whole. The study consisted of an  empirical study where  pretest, posttest, user feedback, and system  log file data was  collected  and  analyzed.  In  the  detailed  studies  of  the  log  data,  the  system  behavior  was compared with a human teacher and results have been encouraging. As a whole,  the  subjects  also  showed  positive  learning  gains  after  using  the  system  with  less  constraint violations and better understanding of concepts.  69 8.2 Future work   Future work can be divided into three main categories. Further uses of existing SM,  further  enhancements  to  the  SM,  and  automation  of  the  knowledge  engineering  process.  8.2.1 Further Uses of Existing Student Model DCBQ     The DCBQ system could be enhanced to store DCBQs that are relevant to multiple     constraints. Presently the system stores only constraint specific DCBQs. In the future,  a basket of constraint specific and compound DCBQs could be stored in the system.  When  DCBQs  need  to  be  asked  based  on  several  relevant  constraints,  each  of  these  constraints  could  fire  a  weighted  trigger.  A  similarity  function  could  then  be  calculated between this list of triggers and each DCBQ in the basket and the closest  one  to  three  matches  returned.  Finally,  in  this  more  complex  scenario,  the  matches  would need to be tested against a threshold before being presented to the student as  it is better not to ask anything than to ask an irrelevant DCBQ.  Enhancements to the PM     The PM is the main ITS component that uses the data from the SM. Many different  pedagogical techniques can be used in conjuction with our enhanced SM to deliver a  effective  customized  learning  experience  to  the  student.  We  suggest  one  such  technique below.     At  the  heart  of  the  PM  would  be  a  schematic  graph  (Figure  19)  of  the  concepts  which show the weighted relationships between the concepts [37].  70 Initial consonants (1) 0.7 9 0. Vowels (2) 0.7 0.8 0.8 Final consonants (4) 0.3 Tone Rules (3) Clusters (5) Karan N (6) /r/ as non-initial consonant (7)   Figure 19: Concept Schematic Graph      The numbering of the concepts shows the priority in order of introduction while the  weighted  links  determine  which  related  concepts  should  be  tested  and  taught  together. Certain concepts, such as the Karan, are deemed unrelated to the rest in the  sense that they can be introduced separately just as effectively.     We could also look into using probabilistic methods to enhance the PM to do topic  selection,  adapting  feedback,  hint  selection,  and  selective  highlighting  of  text  [26].  However, this involves studying much empirical data to tune the bayesian network.     In  addition,  exercise  generation  and  selection  could  be  improved.  Exercises  with  corresponding  difficulty  levels  could  be  generated  on  the  fly  from  text  corpra.  This  can  be  done  by  testing  the  words  or  phrases  with  the  relevant  constraints  and  71 presenting those phrases that meet the required criteria. Using such system‐generated  exercises are shown to not only save development time but also to ensure constraints  are more evenly spread within the domain [23]. These are promising areas of research  that can help utilize the SM fully.  8.2.2 Further Enhancements to Student Model    For enhancements to the SM, firstly, further study into how affective attributes such  as  anxiety,  autonomy,  and  alertness  can  be  integrated  into  the  present  framework  would  help  the  system  infer  the  cognitive  state  of  the  student.  Presently,  the  transience  of  these  higher  level  attributes  is  a  concern  due  to  their  dynamic  nature  and  difficulty  in  achieving  accurate  diagnosis.  Other  psychological  and  sociological  forms  of  data  such  as  intelligence,  learning  styles,  multiple  n  variable  learning  strategies, gender differences, etc. can also provide valuable sources of data.     Secondly, it could also be possible to allow the user to directly alter the contents of  his  student  model.  This  would  give  him  an  appreciation  of  the  systemʹs  learning  goals and allow him to assess the correctness of the model generated. It also would  aid  in  his  metacognition,  reflection  and  planning.  It  would  also  allow  experimentation with various settings presently restricted to him [38].      Lastly,  Latent  Semantic  Analysis  (LSA)  can  be  used  to  complement  the  present  domain  knowledge  and  expert  models.  LSA  is  originally  a  text  analysis  tool  which  takes  into  account  many  dimensions  of  similarity.  Zampa  discusses  its  use  to  teach  English  composition  writing  [39]  and  it  shows  great  potential  for  teaching  composition writing in any language. Its great strength is that the expert model can  be  generated  automatically  by  feeding  in  well  formed  essays.  However,  if  the  same  72 technique is also used for the SM, obtaining enough information to tune it has proven  to be more difficult.  8.2.3 Automation of Knowledge Engineering Process    As prelimiary research by Suraweera [27] has shown, this is a promising avenue of  research. He proposes a four stage semi‐automated process to infer constraints using  machine learning and a structured ontology building development interface.      The  paucity  of  research  in  this  area  points  to  many  promising  areas  of  research,  especially  since  knowledge  engineering  is  one  of  the  most  tedious  and  time  consuming areas in the development and research of intelligent tutoring systems. The  machine learning techniques discussed in section 2.4 can be further studied to apply  their potential in this area.  73 BIBLIOGRAPHY [1]  H. L. Burns and C. G. Capps, ʺFoundations of Intelligent Tutoring Systems:  An Introduction,ʺ in Foundations of Intelligent Tutoring Systems, M. C. Polson  and J. J. Richardson, Eds.: Lawrence Erlbaum Associates Publishers, 1988, pp.  1‐19.  [2]  B. Woolf, ʺAI in Education,ʺ in Encyclopedia of Artificial Intelligence: John Wiley  & Sons, 1992, pp. 434‐444.  [3]  J. Beck, M. Stern, and E. Haugsjaa, ʺApplications of AI in Education,ʺ Artificial  Intelligence ‐ Crossroads, vol. 3.1, 1996.  [4]  S. Ohlsson, ʺConstraint‐Based Student Modeling,ʺ in Student Modelling: The  Key to Individualized Knowledge‐Based Instruction, vol. 125, NATO ASI Series F, J.  E. G. a. G. I. McCalla, Ed.: Springer‐Verlag, 1994, pp. 167‐189.  [5]  I. P. Association, ʺIPA homepage,ʺ 2004.  [6]  R. Sison and M. Shimura, ʺStudent Modeling and Machine Learning,ʺ in  International Journal of Artificial Intelligence in Education, vol. 9, 1998, pp. 128‐ 158.  [7]  K. VanLehn, ʺStudent Modeling,ʺ in Foundations of Intelligent Tutoring Systems,  M. C. Polson and J. J. Richardson, Eds.: Lawrence Erlbaum Associates  Publishers, 1988, pp. 55‐78.  [8]  P. Langley and S. Ohlsson, ʺAutomated cognitive modeling,ʺ in Proceedings of  American Association of Artificial Intelligence, 1984, pp. 193‐197.  [9]  S. J. Payne and H. R. Squibb, ʺAlgebra mal‐rules and cognitive accounts of  errors,ʺ in Cognitive Science, vol. 14, 1990, pp. 445‐481.  [10]  R. Michalski and R. Stepp, ʺAutomated construction of classifications:  Conceptual clustering versus numerical taxonomy.,ʺ in IEEE Transactions on  Pattern Analysis and Machine Intelligence, vol. 5(4), 1983, pp. 396‐410.  [11]  J. Beck, ʺModeling the student with reinforcement learning.,ʺ presented at  Proceedings of the Machine Learning for User Modeling Workshop, Sixth  International Conference on User Modeling., 1997.  [12]  J. R. Anderson, Rules of the Mind: Lawrence Erlbaum Associates, 1993.  [13]  S. D. Choksey, ʺDeveloping an Affordable Authoring Tool for Intelligent  Tutoring Systems,ʺ in Computer Science: Worcester Polytechnic Institute, 2004,  pp. 60.  74 [14]  A. Mitrovic, K. Koedinger, and B. Martin, ʺA Comparative Analysis of  Cognitive Tutoring and Constraint‐Based Modelling,ʺ in Proceedings of the  Ninth International Conference on User Modeling UM 2003: Springer‐Verlag,  2003, pp. 313‐322.  [15]  N. T. Heffernan, K. R. Koedinger, and V. A. W. M. M. Aleven, ʺTools Towards  Reducing the Costs of Designing, Building, and Testing Cognitive Models,ʺ in  Conference on Behavior Representation in Modeling and Simulation, BRIMS 2003,  2003.  [16]  A. Mitrovic, ʺA Knowledge‐Based Teaching System for SQL,ʺ in Proceedings of  ED‐MEDIA/ED‐TELECOMʹ98. Freiburg, 1998, pp. 1027‐1032.  [17]  K. Warendorf and C. Tan, ʺConstraint‐Based Student Modeling ‐ a simpler  way of revising Student Errors,ʺ in Proceedings of ICICS 97, vol. 2. Singapore,  1997, pp. 1083‐1087.  [18]  S. Ohlsson and E. Rees, ʺThe Function of Conceptual Understanding in the  Learning of Arithmetic Procedures,ʺ Cognition and Instruction, vol. 8, pp. 103‐ 179, 1991.  [19]  A. Mitrovic, ʺSupporting Self‐Explanation in a Data Normalization Tutor,ʺ in  Supplementary proceedings, AIED 2003, 2003, pp. 565‐577.  [20]  P. Suraweera and A. Mitrovic, ʺKERMIT: a Constraint‐based Tutor for  Database Modeling,ʺ in Proc. 6th Int. Conf on Intelligent Tutoring Systems ITS  2002. Biarritz, France, 2002, pp. 377‐387.  [21]  M. Mayo, A. Mitrovic, and J. McKenzie, ʺCAPIT: an Intelligent Tutoring  System for Capitalization and Punctuation,ʺ in International Workshop for  Advanced Learning Technologies IWALT2000. Palmerston North, 2000, pp. 151‐ 154.  [22]  B. Martin and A. Mitrovic, ʺTailoring Feedback by Correcting Student  Answers,ʺ in Proceedings ITS 2000, 2000, pp. 383‐392.  [23]  B. Martin and A. Mitrovic, ʺAutomatic Problem Generation in Constraint‐ Based Tutors,ʺ in Proc. 6th Int. Conf on Intelligent Tutoring Systems ITS 2002.  France, 2002, pp. 388‐398.  [24]  Y. Zhou and M. W. Evens, ʺA Practical Student Model in an Intelligent  Tutoring System,ʺ in Proceedings of the 11th IEEE International Conference on  Tools with Artificial Intelligence. Chicago, IL, 1999, pp. 13‐18.  [25]  B. Martin and A. Mitrovic, ʺWETAS: A Web‐Based Authoring System for  Constraint‐Based ITS,ʺ in Proceedings of the Second International Conference on  Adaptive Hypermedia and Adaptive Web‐Based Systems. Malaga: Springer, 2002,  pp. 543‐546.  75 [26]  M. Mayo and A. Mitrovic, ʺUsing a Probabilistic Student Model to Control  Problem Difficulty,ʺ in Proceedings ITS 2000: Springer, 2000, pp. 524‐533.  [27]  P. Suraweera, ʺProgress report for Automatic Acquisition of Knowledge for  Intelligent Tutoring Systems,ʺ University of Canterbury, 2004.  [28]  D. Smyth, Thai An Essential Grammar: RoutLedge, 2002.  [29]  J. Kay, ʺStereotypes, Student Models and Scrutability,ʺ in Proceedings ITS 2000,  Intelligent Teaching Systems Conference: Springer, 2000.  [30]  L. S. Vygotsky, Mind in society: The development of higher psychological processes.  Cambridge, MA: Harvard University Press, 1978.  [31]  E. F. Hill, Jess in Action. Rule‐Based Systems in Java: Manning Publications, 2003.  [32]  M. Denny, ʺOntology Building: A Survey of Editing Tools,ʺ vol. 2004: OʹReilly  XML.com, 2002.  [33]  D. Greg, ʺUnderstanding Student Guessing Strategies Within 5‐Option  Multiple‐Choice Tests,ʺ in Proceedings of CLaSIC 2004. Singapore, 2004, pp.  223‐237.  [34]  A. Mary and J. Greer, ʺEvaluation Methodologies for Intelligent Tutoring  Systems,ʺ in Journal of Artificial Intelligence in Education, 1993.  [35]  S. Ainsworth, ʺEvaluation Methods for Learning Environments,ʺ in AIED2003  Artificial Intelligence in Education, 2003.  [36]  J. D. Parry and A. M. Hofmeister, ʺThe development and validation of an  expert system for special educators.,ʺ in Learning Disability Quarterly, vol. 9 (2),  1986, pp. 124‐132.  [37]  A. I. Cristea, T. Okamoto, and P. Cristea, ʺMyEnglishTeacher‐ An  Evolutionary, Web‐based, multi‐Agent Environment for Academic English  Teaching,ʺ in Proc. of Congress on Evolutionary Computation. San Diego, USA,  2000.  [38]  J. Kay, ʺLearner Control,ʺ User Modeling and User‐Adapted Interaction, vol. 11,  pp. 111‐127, 2001.  [39]  V. Zampa and B. Lemaire, ʺLatent Semantic Analysis for User Modeling,ʺ in  Journal of Intelligent Information Systems, vol. 18: Kluwer Academic Publishers,  2001, pp. 15‐30.  76 APPENDICES Appendix I: Constraints Level 1 Basic (7) - C1.1_iconsMid - C1.2_iconsHi - C1.3_iconsLow - C1.4_econsSono - C1.5_econsStop - C1.6_longVowel - C1.7_shortVowel ; ; ; ; ; ; ; Level 2 Advanced (13) - C2.1_realclusters ; - C2.2_shcons ; - C2.3_smcons ; - C2.4_chang9vowels ; ; - C2.5_invVowelo ; - C2.6a_svowelam ; - C2.6b_svowelaw ; - C2.6c_svowelay ; - C2.7a_diphthongua ; - C2.7b_diphthongia ; - C2.7c_diphthongUa ; - C2.8_invVowelcc ; - C2.9_sClusterthr ; mid initial consonants high initial consonants low initial consonants sonorant final consonants stop final consonants long vowels short vowels 11 real clusters combinations special high consonant clusters special mid consonant clusters vowels whose written form change with the presence of a final consonant invisible vowel ‘o’ special vowel ‘am’ special vowel ‘aw’ special vowel ‘ay’ diphthong class of vowel ‘ua’ diphthong class of vowel ‘ia’ diphthong class of vowel ‘a’ invisible vowel ‘’ special initial cluster ‘thr’ Level 3 Tone Rules and Exceptions (18) - C3.1_midcons1a ; mid + longv - C3.1_midcons1b ; mid + longv + sono - C3.1_midcons1c ; mid + shortv + sono - C3.2_midcons2a ; mid + shortv - C3.2_midcons2b ; mid + shortv + stop - C3.2_midcons2c ; mid + longv + stop - C3.3_highcons1a ; high + longv - C3.3_highcons1b ; high + longv + sono - C3.3_highcons1c ; high + shortv + sono - C3.4_highcons2a ; high + shortv - C3.4_highcons2b ; high + shortv + stop - C3.4_highcons2c ; high + longv + stop - C3.5_lowcons1a ; low + longv - C3.5_lowcons1b ; low + longv + sono - C3.5_lowcons1c ; low + shortv + sono - C3.6_lowcons2a ; low + shortv - C3.6_lowcons2b ; low + shortv + stop - C3.7_lowcons3 ; low + longv + stop 77 Appendix II: Detailed Ontology Final consonants (8 sounds, 35 chars) (7 chars not used Vowels 9 long, 9 short, 3 special vowels, 3 diphthongs Changing vowels (/o/, /a/, //, / //, /e/, /ua/, //) with ending consonant Special hidden / when ending cons is i C G z / s v V) Special Vowels (/am/, /ay/, /aw/) /r/, /ri/, or /r/ without ending consonant homonym tone mkrs & short vowels maay muan (monkey tail) 20 words p83 maay malay for all the rest tone governed by 1st consonant, marker written over 2nd consonant Puesdo-clusters (2 syllable words) insert /a/ inbetween cons. unless 2nd cons is i then insert // p104 /?/ (4 words) p88 /h/ special high cons clusters p53 (7: , n,m,y,r,l,w) k if 2nd consonant is sono, 2nd syllable immediately after initial consonant with no vowel mi treated as /s/ (note: /thr/ does not exist) p106 1st consonant unpronounced, tone rule follows /?/ or /h/ follows tone rules of 1st consonant eg. -o, (4 exceptions in table 46 Stops (25)  d-8S t f90 =:mTR w; h sV  v k 79 Appendix III: IPA characters Taken  from  http://www.arts.gla.ac.uk/IPA  (International  Phonetic  Association  website)  Note that only a subset of the full IPA alphabet is used for the transcription of Thai in  Thairator.      80 Appendix IV: Thai alphabet Taken from http://www.fedu.uec.ac.jp/ZzzThai/thailang     The 44 consonants.  The 32 vowel forms    The tone markers  Thai numerals (0‐9)  81 Appendix V: Pre-test and Post-test Thairator Pre-test Name: _______________ Just relax and just do those that you know. ๑) กาว ๒) เรียน ๓) บวม ๔) เปอย ๕) หลง ๖) นั่ง ๗) เพิ่ม ๘) กร ๙) ปราม ๑๐) เผ็ด ๑๑) ชัก ๑๒) ซึ้ง ๑๓) ทรุด ๑๔) เกง ๑๕) ขวาง ______ ______ ______ ______ ______ ______ ______ ______ ______ ______ ______ ______ ______ ______ ______ 82 Thairator Post-test Now let us try again. You should have improved. If you have not, it’s the computer’s fault. ๑) กวด ๒) เพียร ๓) เตื้อง ๔) เรื่อย ๕) ปลน ๖) ทั้ง ๗) เชิญ ๘) กล ๙) ความ ๑๐) เม็ด ๑๑) หยอง ๑๒) ซวย ๑๓) ทรัพย ๑๔) หวิว ๑๕) เบียด ______ ______ ______ ______ ______ ______ ______ ______ ______ ______ ______ ______ ______ ______ ______ 83 Appendix VI : Feedback Form Thairator™ User study Feedback Form Name : ____________________________________ Faculty / Year : ____________________________________ Age Range : 18 – 21 22 – 25 Gender : male female 26 – 30 Your computer skills can be described as: Novice 1 Expert 2 3 4 5 Your Thai language skills can be described as: Non-existent 1 Fluent 2 3 4 Have you ever used an intelligent tutoring system before? 5 Yes No If yes, please describe briefly __________________________________________________ PTO 84 Thairator Please rate your agreement or disagreement with the following statements. Strongly disagree 1 Disagree 2 Neutral 3 Agree 4 Strongly agree 5 General 1. I enjoyed the experience with Thairator 2. My interest was piqued by Thairator 3. I understand some Thai writing concepts better 4. The interface is intuitive. Main Exercises 5. The questions were well organized 6. The questions were suited to my skill level 7. The amount of feedback was appropriate and understandable DCBQs 8. The DCBQs were of appropriate difficulty 9. The DCBQs tested my understanding of the concepts well 10. The DCBQs exposed incomplete understanding in my concepts Other comments: Do you have any suggestions on how the system can be improved? ____________________________________________________________________________________________ ____________________________________________________________________________________________ -The End - 85 Appendix VII : Raw Student Model Variation Data 1) AT -------------------------------key = C2.6a_svowelam? 60 key = C3.2_midcons2c? 71 key = C3.2_midcons2b? 71 key = C3.2_midcons2a? 71 key = C2.7c_diphthongUa? 63 key = C1.3_iconsLow? 82 key = C2.6b_svowelaw? 58 key = C3.7_lowcons3? 73 key = C2.7a_diphthongua? 70 key = C1.7_shortVowel? 89 key = C2.6c_svowelay? 76 key = C1.5_econsStop? 87 key = C2.1_realclusters? 76 key = C3.3_highcons1c? 66 key = C3.3_highcons1b? 66 key = C3.3_highcons1a? 66 key = C1.6_longVowel? 82 key = C2.3_smcons? 72 key = C2.4_chang9vowels? 70 key = C2.9_sClusterthr? 52 key = C1.1_iconsMid? 82 key = C3.4_highcons2c? 65 key = C3.4_highcons2b? 65 key = C3.5_lowcons1c? 68 key = C3.5_lowcons1b? 68 key = C2.8_invVowelcc? 55 key = C3.4_highcons2a? 65 key = C3.5_lowcons1a? 68 key = C2.7b_diphthongia? 63 key = C3.6_lowcons2b? 73 key = C3.6_lowcons2a? 73 key = C1.4_econsSono? 82 key = C2.5_invVowelo? 74 key = C3.1_midcons1c? 66 key = C3.1_midcons1b? 71 key = C3.1_midcons1a? 71 key = C2.2_shcons? 70 key = C1.2_iconsHi? 82 -------------------------------- -------------------------------key = C2.6a_svowelam? 60 key = C3.2_midcons2c? 71 key = C3.2_midcons2b? 71 key = C3.2_midcons2a? 74 key = C2.7c_diphthongUa? 63 key = C1.3_iconsLow? 69 key = C2.6b_svowelaw? 58 key = C3.7_lowcons3? 76 key = C2.7a_diphthongua? 76 key = C1.7_shortVowel? 111 key = C2.6c_svowelay? 76 key = C1.5_econsStop? 87 key = C2.1_realclusters? 76 key = C3.3_highcons1c? 66 key = C3.3_highcons1b? 66 key = C3.3_highcons1a? 69 key = C1.6_longVowel? 75 key = C2.3_smcons? 72 key = C2.4_chang9vowels? 70 key = C2.9_sClusterthr? 52 key = C1.1_iconsMid? 69 key = C3.4_highcons2c? 65 key = C3.4_highcons2b? 65 key = C3.5_lowcons1c? 68 key = C3.5_lowcons1b? 74 key = C2.8_invVowelcc? 55 key = C3.4_highcons2a? 65 key = C3.5_lowcons1a? 68 key = C2.7b_diphthongia? 63 key = C3.6_lowcons2b? 73 key = C3.6_lowcons2a? 73 key = C1.4_econsSono? 79 key = C2.5_invVowelo? 74 key = C3.1_midcons1c? 66 key = C3.1_midcons1b? 74 key = C3.1_midcons1a? 75 key = C2.2_shcons? 73 key = C1.2_iconsHi? 82 -------------------------------- osc = 3 osc = 4 86 2) XY -------------------------------key = C3.2_midcons2c? 73 key = C2.6a_svowelam? 60 key = C3.2_midcons2b? 73 key = C3.2_midcons2a? 73 key = C2.7c_diphthongUa? 63 key = C1.3_iconsLow? 62 key = C2.6b_svowelaw? 58 key = C2.7a_diphthongua? 73 key = C3.7_lowcons3? 73 key = C1.7_shortVowel? 72 key = C2.6c_svowelay? 81 key = C1.5_econsStop? 72 key = C2.1_realclusters? 78 key = C3.3_highcons1c? 71 key = C3.3_highcons1b? 71 key = C3.3_highcons1a? 71 key = C1.6_longVowel? 62 key = C2.3_smcons? 72 key = C2.4_chang9vowels? 78 key = C2.9_sClusterthr? 67 key = C1.1_iconsMid? 62 key = C3.4_highcons2c? 68 key = C3.4_highcons2b? 68 key = C3.5_lowcons1c? 71 key = C3.5_lowcons1b? 71 key = C2.8_invVowelcc? 70 key = C3.4_highcons2a? 68 key = C3.5_lowcons1a? 71 key = C2.7b_diphthongia? 63 key = C3.6_lowcons2b? 73 key = C3.6_lowcons2a? 73 key = C1.4_econsSono? 62 key = C2.5_invVowelo? 79 key = C3.1_midcons1c? 71 key = C3.1_midcons1b? 71 key = C2.2_shcons? 68 key = C3.1_midcons1a? 71 key = C1.2_iconsHi? 62 -------------------------------- -------------------------------key = C3.2_midcons2c? 73 key = C2.6a_svowelam? 60 key = C3.2_midcons2b? 73 key = C3.2_midcons2a? 73 key = C2.7c_diphthongUa? 63 key = C1.3_iconsLow? 62 key = C2.6b_svowelaw? 57 key = C2.7a_diphthongua? 56 key = C3.7_lowcons3? 88 key = C1.7_shortVowel? 72 key = C2.6c_svowelay? 81 key = C1.5_econsStop? 72 key = C2.1_realclusters? 94 key = C3.3_highcons1c? 71 key = C3.3_highcons1b? 90 key = C3.3_highcons1a? 102 key = C1.6_longVowel? 55 key = C2.3_smcons? 72 key = C2.4_chang9vowels? 78 key = C2.9_sClusterthr? 67 key = C1.1_iconsMid? 62 key = C3.4_highcons2c? 68 key = C3.4_highcons2b? 68 key = C3.5_lowcons1c? 71 key = C3.5_lowcons1b? 56 key = C2.8_invVowelcc? 70 key = C3.4_highcons2a? 68 key = C3.5_lowcons1a? 85 key = C2.7b_diphthongia? 63 key = C3.6_lowcons2b? 78 key = C3.6_lowcons2a? 73 key = C1.4_econsSono? 62 key = C2.5_invVowelo? 79 key = C3.1_midcons1c? 71 key = C3.1_midcons1b? 71 key = C3.1_midcons1a? 85 key = C2.2_shcons? 72 key = C1.2_iconsHi? 62 -------------------------------- osc = 5 osc = 7 87 3) QB -------------------------------key = C2.6a_svowelam? 60 key = C3.2_midcons2c? 71 key = C3.2_midcons2b? 71 key = C3.2_midcons2a? 71 key = C2.7c_diphthongUa? 63 key = C1.3_iconsLow? 82 key = C2.6b_svowelaw? 58 key = C3.7_lowcons3? 73 key = C2.7a_diphthongua? 70 key = C1.7_shortVowel? 89 key = C2.6c_svowelay? 76 key = C1.5_econsStop? 87 key = C2.1_realclusters? 76 key = C3.3_highcons1c? 66 key = C3.3_highcons1b? 66 key = C3.3_highcons1a? 66 key = C1.6_longVowel? 82 key = C2.3_smcons? 72 key = C2.4_chang9vowels? 70 key = C2.9_sClusterthr? 52 key = C1.1_iconsMid? 82 key = C3.4_highcons2c? 65 key = C3.5_lowcons1c? 71 key = C3.4_highcons2b? 65 key = C3.5_lowcons1b? 68 key = C2.8_invVowelcc? 55 key = C3.4_highcons2a? 65 key = C3.5_lowcons1a? 68 key = C2.7b_diphthongia? 63 key = C3.6_lowcons2b? 73 key = C3.6_lowcons2a? 73 key = C1.4_econsSono? 82 key = C2.5_invVowelo? 74 key = C3.1_midcons1c? 66 key = C3.1_midcons1b? 71 key = C3.1_midcons1a? 71 key = C2.2_shcons? 70 key = C1.2_iconsHi? 82 -------------------------------- -------------------------------key = C2.6a_svowelam? 60 key = C3.2_midcons2c? 71 key = C3.2_midcons2b? 71 key = C3.2_midcons2a? 74 key = C2.7c_diphthongUa? 66 key = C1.3_iconsLow? 94 key = C2.6b_svowelaw? 59 key = C3.7_lowcons3? 73 key = C2.7a_diphthongua? 70 key = C1.7_shortVowel? 134 key = C2.6c_svowelay? 76 key = C1.5_econsStop? 87 key = C2.1_realclusters? 79 key = C3.3_highcons1c? 66 key = C3.3_highcons1b? 66 key = C3.3_highcons1a? 66 key = C1.6_longVowel? 76 key = C2.3_smcons? 61 key = C2.4_chang9vowels? 70 key = C2.9_sClusterthr? 52 key = C1.1_iconsMid? 108 key = C3.4_highcons2c? 65 key = C3.5_lowcons1c? 71 key = C3.4_highcons2b? 65 key = C3.5_lowcons1b? 71 key = C2.8_invVowelcc? 55 key = C3.4_highcons2a? 65 key = C3.5_lowcons1a? 68 key = C2.7b_diphthongia? 63 key = C3.6_lowcons2b? 73 key = C3.6_lowcons2a? 76 key = C1.4_econsSono? 79 key = C2.5_invVowelo? 74 key = C3.1_midcons1c? 66 key = C3.1_midcons1b? 71 key = C3.1_midcons1a? 71 key = C2.2_shcons? 80 key = C1.2_iconsHi? 82 -------------------------------- osc = 3 osc = 3 88 4) KS -------------------------------key = C2.6a_svowelam? 60 key = C3.2_midcons2c? 73 key = C3.2_midcons2b? 73 key = C3.2_midcons2a? 78 key = C2.7c_diphthongUa? 63 key = C1.3_iconsLow? 62 key = C2.6b_svowelaw? 58 key = C2.7a_diphthongua? 73 key = C3.7_lowcons3? 73 key = C1.7_shortVowel? 72 key = C2.6c_svowelay? 81 key = C1.5_econsStop? 72 key = C2.1_realclusters? 78 key = C3.3_highcons1c? 71 key = C3.3_highcons1b? 71 key = C3.3_highcons1a? 71 key = C1.6_longVowel? 62 key = C2.3_smcons? 72 key = C2.4_chang9vowels? 78 key = C2.9_sClusterthr? 67 key = C1.1_iconsMid? 62 key = C3.4_highcons2c? 68 key = C3.4_highcons2b? 68 key = C3.5_lowcons1c? 71 key = C3.5_lowcons1b? 71 key = C2.8_invVowelcc? 70 key = C3.4_highcons2a? 68 key = C3.5_lowcons1a? 71 key = C2.7b_diphthongia? 63 key = C3.6_lowcons2b? 73 key = C3.6_lowcons2a? 73 key = C1.4_econsSono? 62 key = C2.5_invVowelo? 79 key = C3.1_midcons1c? 71 key = C3.1_midcons1b? 71 key = C3.1_midcons1a? 71 key = C2.2_shcons? 68 key = C1.2_iconsHi? 62 -------------------------------- -------------------------------key = C2.6a_svowelam? 60 key = C3.2_midcons2c? 73 key = C3.2_midcons2b? 73 key = C3.2_midcons2a? 61 key = C2.7c_diphthongUa? 49 key = C1.3_iconsLow? 54 key = C2.6b_svowelaw? 47 key = C2.7a_diphthongua? 61 key = C3.7_lowcons3? 94 key = C1.7_shortVowel? 77 key = C2.6c_svowelay? 81 key = C1.5_econsStop? 60 key = C2.1_realclusters? 88 key = C3.3_highcons1c? 71 key = C3.3_highcons1b? 80 key = C3.3_highcons1a? 71 key = C1.6_longVowel? 9 key = C2.3_smcons? 77 key = C2.4_chang9vowels? 83 key = C2.9_sClusterthr? 52 key = C1.1_iconsMid? 17 key = C3.4_highcons2c? 68 key = C3.4_highcons2b? 68 key = C3.5_lowcons1c? 71 key = C3.5_lowcons1b? 44 key = C2.8_invVowelcc? 58 key = C3.4_highcons2a? 68 key = C3.5_lowcons1a? 67 key = C2.7b_diphthongia? 49 key = C3.6_lowcons2b? 73 key = C3.6_lowcons2a? 73 key = C1.4_econsSono? 28 key = C2.5_invVowelo? 84 key = C3.1_midcons1c? 71 key = C3.1_midcons1b? 80 key = C3.1_midcons1a? 52 key = C2.2_shcons? 68 key = C1.2_iconsHi? 66 -------------------------------- osc = 5 osc = 6 89 5) AM -------------------------------key = C3.2_midcons2c? 73 key = C2.6a_svowelam? 60 key = C3.2_midcons2b? 73 key = C3.2_midcons2a? 78 key = C2.7c_diphthongUa? 63 key = C1.3_iconsLow? 62 key = C2.6b_svowelaw? 58 key = C2.7a_diphthongua? 73 key = C3.7_lowcons3? 73 key = C1.7_shortVowel? 72 key = C2.6c_svowelay? 81 key = C1.5_econsStop? 72 key = C2.1_realclusters? 78 key = C3.3_highcons1c? 71 key = C3.3_highcons1b? 71 key = C3.3_highcons1a? 71 key = C1.6_longVowel? 62 key = C2.3_smcons? 72 key = C2.4_chang9vowels? 78 key = C2.9_sClusterthr? 67 key = C1.1_iconsMid? 62 key = C3.4_highcons2c? 68 key = C3.5_lowcons1c? 71 key = C3.4_highcons2b? 68 key = C3.5_lowcons1b? 71 key = C2.8_invVowelcc? 70 key = C3.4_highcons2a? 68 key = C3.5_lowcons1a? 71 key = C2.7b_diphthongia? 63 key = C3.6_lowcons2b? 73 key = C3.6_lowcons2a? 73 key = C1.4_econsSono? 62 key = C2.5_invVowelo? 79 key = C3.1_midcons1c? 71 key = C3.1_midcons1b? 71 key = C3.1_midcons1a? 71 key = C2.2_shcons? 68 key = C1.2_iconsHi? 62 -------------------------------- -------------------------------key = C3.2_midcons2c? 78 key = C2.6a_svowelam? 60 key = C3.2_midcons2b? 73 key = C3.2_midcons2a? 83 key = C2.7c_diphthongUa? 63 key = C1.3_iconsLow? 48 key = C2.6b_svowelaw? 58 key = C2.7a_diphthongua? 56 key = C3.7_lowcons3? 83 key = C1.7_shortVowel? 56 key = C2.6c_svowelay? 86 key = C1.5_econsStop? 72 key = C2.1_realclusters? 61 key = C3.3_highcons1c? 71 key = C3.3_highcons1b? 71 key = C3.3_highcons1a? 75 key = C1.6_longVowel? 41 key = C2.3_smcons? 72 key = C2.4_chang9vowels? 78 key = C2.9_sClusterthr? 67 key = C1.1_iconsMid? 41 key = C3.4_highcons2c? 68 key = C3.5_lowcons1c? 56 key = C3.4_highcons2b? 68 key = C3.5_lowcons1b? 63 key = C2.8_invVowelcc? 58 key = C3.4_highcons2a? 68 key = C3.5_lowcons1a? 56 key = C2.7b_diphthongia? 63 key = C3.6_lowcons2b? 73 key = C3.6_lowcons2a? 73 key = C1.4_econsSono? 55 key = C2.5_invVowelo? 79 key = C3.1_midcons1c? 71 key = C3.1_midcons1b? 71 key = C3.1_midcons1a? 47 key = C2.2_shcons? 53 key = C1.2_iconsHi? 62 -------------------------------- osc = 5 osc = 6 90 6) GB -------------------------------key = C2.6a_svowelam? 60 key = C3.2_midcons2c? 73 key = C3.2_midcons2b? 73 key = C3.2_midcons2a? 73 key = C2.7c_diphthongUa? 63 key = C1.3_iconsLow? 62 key = C2.6b_svowelaw? 58 key = C3.7_lowcons3? 73 key = C2.7a_diphthongua? 73 key = C1.7_shortVowel? 72 key = C2.6c_svowelay? 81 key = C1.5_econsStop? 72 key = C2.1_realclusters? 78 key = C3.3_highcons1c? 71 key = C3.3_highcons1b? 71 key = C3.3_highcons1a? 71 key = C1.6_longVowel? 62 key = C2.3_smcons? 72 key = C2.4_chang9vowels? 78 key = C2.9_sClusterthr? 67 key = C1.1_iconsMid? 62 key = C3.4_highcons2c? 68 key = C3.5_lowcons1c? 71 key = C3.4_highcons2b? 68 key = C3.5_lowcons1b? 71 key = C2.8_invVowelcc? 70 key = C3.4_highcons2a? 68 key = C3.5_lowcons1a? 71 key = C2.7b_diphthongia? 63 key = C3.6_lowcons2b? 73 key = C3.6_lowcons2a? 73 key = C1.4_econsSono? 62 key = C2.5_invVowelo? 79 key = C3.1_midcons1c? 71 key = C3.1_midcons1b? 71 key = C3.1_midcons1a? 71 key = C2.2_shcons? 68 key = C1.2_iconsHi? 62 -------------------------------- -------------------------------key = C2.6a_svowelam? 60 key = C3.2_midcons2c? 73 key = C3.2_midcons2b? 73 key = C3.2_midcons2a? 65 key = C2.7c_diphthongUa? 63 key = C1.3_iconsLow? 62 key = C2.6b_svowelaw? 56 key = C3.7_lowcons3? 78 key = C2.7a_diphthongua? 73 key = C1.7_shortVowel? 60 key = C2.6c_svowelay? 81 key = C1.5_econsStop? 72 key = C2.1_realclusters? 69 key = C3.3_highcons1c? 71 key = C3.3_highcons1b? 75 key = C3.3_highcons1a? 71 key = C1.6_longVowel? 79 key = C2.3_smcons? 87 key = C2.4_chang9vowels? 83 key = C2.9_sClusterthr? 67 key = C1.1_iconsMid? 62 key = C3.4_highcons2c? 68 key = C3.5_lowcons1c? 71 key = C3.4_highcons2b? 68 key = C3.5_lowcons1b? 56 key = C2.8_invVowelcc? 74 key = C3.4_highcons2a? 68 key = C3.5_lowcons1a? 56 key = C2.7b_diphthongia? 63 key = C3.6_lowcons2b? 73 key = C3.6_lowcons2a? 78 key = C1.4_econsSono? 62 key = C2.5_invVowelo? 79 key = C3.1_midcons1c? 71 key = C3.1_midcons1b? 71 key = C3.1_midcons1a? 90 key = C2.2_shcons? 77 key = C1.2_iconsHi? 62 -------------------------------- osc = 5 osc = 6 91 7) VA -------------------------------key = C2.6a_svowelam? 60 key = C3.2_midcons2c? 71 key = C3.2_midcons2b? 71 key = C3.2_midcons2a? 71 key = C2.7c_diphthongUa? 63 key = C1.3_iconsLow? 82 key = C2.6b_svowelaw? 58 key = C2.7a_diphthongua? 70 key = C3.7_lowcons3? 73 key = C1.7_shortVowel? 89 key = C2.6c_svowelay? 76 key = C1.5_econsStop? 87 key = C2.1_realclusters? 76 key = C3.3_highcons1c? 66 key = C3.3_highcons1b? 66 key = C3.3_highcons1a? 66 key = C1.6_longVowel? 82 key = C2.3_smcons? 72 key = C2.4_chang9vowels? 70 key = C2.9_sClusterthr? 52 key = C1.1_iconsMid? 82 key = C3.4_highcons2c? 65 key = C3.4_highcons2b? 65 key = C3.5_lowcons1c? 68 key = C3.5_lowcons1b? 68 key = C2.8_invVowelcc? 55 key = C3.4_highcons2a? 65 key = C3.5_lowcons1a? 68 key = C2.7b_diphthongia? 63 key = C3.6_lowcons2b? 73 key = C3.6_lowcons2a? 73 key = C1.4_econsSono? 82 key = C2.5_invVowelo? 74 key = C3.1_midcons1c? 66 key = C3.1_midcons1b? 71 key = C3.1_midcons1a? 71 key = C2.2_shcons? 70 key = C1.2_iconsHi? 82 -------------------------------- -------------------------------key = C2.6a_svowelam? 60 key = C3.2_midcons2c? 71 key = C3.2_midcons2b? 71 key = C3.2_midcons2a? 80 key = C2.7c_diphthongUa? 63 key = C1.3_iconsLow? 86 key = C2.6b_svowelaw? 59 key = C2.7a_diphthongua? 79 key = C3.7_lowcons3? 73 key = C1.7_shortVowel? 75 key = C2.6c_svowelay? 76 key = C1.5_econsStop? 87 key = C2.1_realclusters? 79 key = C3.3_highcons1c? 66 key = C3.3_highcons1b? 75 key = C3.3_highcons1a? 66 key = C1.6_longVowel? 90 key = C2.3_smcons? 72 key = C2.4_chang9vowels? 70 key = C2.9_sClusterthr? 52 key = C1.1_iconsMid? 69 key = C3.4_highcons2c? 65 key = C3.4_highcons2b? 65 key = C3.5_lowcons1c? 68 key = C3.5_lowcons1b? 68 key = C2.8_invVowelcc? 55 key = C3.4_highcons2a? 65 key = C3.5_lowcons1a? 68 key = C2.7b_diphthongia? 66 key = C3.6_lowcons2b? 73 key = C3.6_lowcons2a? 73 key = C1.4_econsSono? 90 key = C2.5_invVowelo? 74 key = C3.1_midcons1c? 66 key = C3.1_midcons1b? 71 key = C3.1_midcons1a? 69 key = C2.2_shcons? 70 key = C1.2_iconsHi? 82 -------------------------------- osc = 3 osc = 4 92 8) JH -------------------------------key = C2.6a_svowelam? 60 key = C3.2_midcons2c? 73 key = C3.2_midcons2b? 73 key = C3.2_midcons2a? 73 key = C2.7c_diphthongUa? 70 key = C1.3_iconsLow? 62 key = C2.6b_svowelaw? 58 key = C2.7a_diphthongua? 78 key = C3.7_lowcons3? 73 key = C1.7_shortVowel? 72 key = C2.6c_svowelay? 81 key = C1.5_econsStop? 72 key = C2.1_realclusters? 78 key = C3.3_highcons1c? 71 key = C3.3_highcons1b? 71 key = C3.3_highcons1a? 71 key = C1.6_longVowel? 62 key = C2.3_smcons? 72 key = C2.4_chang9vowels? 78 key = C2.9_sClusterthr? 67 key = C1.1_iconsMid? 62 key = C3.4_highcons2c? 68 key = C3.4_highcons2b? 68 key = C3.5_lowcons1c? 71 key = C3.5_lowcons1b? 71 key = C2.8_invVowelcc? 75 key = C3.4_highcons2a? 68 key = C3.5_lowcons1a? 71 key = C2.7b_diphthongia? 70 key = C3.6_lowcons2b? 73 key = C3.6_lowcons2a? 73 key = C1.4_econsSono? 62 key = C2.5_invVowelo? 79 key = C3.1_midcons1c? 71 key = C3.1_midcons1b? 71 key = C3.1_midcons1a? 71 key = C2.2_shcons? 70 key = C1.2_iconsHi? 62 -------------------------------- -------------------------------key = C2.6a_svowelam? 60 key = C3.2_midcons2c? 73 key = C3.2_midcons2b? 73 key = C3.2_midcons2a? 73 key = C2.7c_diphthongUa? 70 key = C1.3_iconsLow? 48 key = C2.6b_svowelaw? 58 key = C2.7a_diphthongua? 78 key = C3.7_lowcons3? 73 key = C1.7_shortVowel? 72 key = C2.6c_svowelay? 81 key = C1.5_econsStop? 72 key = C2.1_realclusters? 61 key = C3.3_highcons1c? 71 key = C3.3_highcons1b? 71 key = C3.3_highcons1a? 71 key = C1.6_longVowel? 51 key = C2.3_smcons? 72 key = C2.4_chang9vowels? 78 key = C2.9_sClusterthr? 67 key = C1.1_iconsMid? 62 key = C3.4_highcons2c? 68 key = C3.4_highcons2b? 68 key = C3.5_lowcons1c? 71 key = C3.5_lowcons1b? 59 key = C2.8_invVowelcc? 80 key = C3.4_highcons2a? 68 key = C3.5_lowcons1a? 56 key = C2.7b_diphthongia? 70 key = C3.6_lowcons2b? 73 key = C3.6_lowcons2a? 73 key = C1.4_econsSono? 62 key = C2.5_invVowelo? 79 key = C3.1_midcons1c? 71 key = C3.1_midcons1b? 71 key = C3.1_midcons1a? 80 key = C2.2_shcons? 70 key = C1.2_iconsHi? 62 -------------------------------- osc = 5 osc = 6 93 9) ME -------------------------------key = C2.6a_svowelam? 60 key = C3.2_midcons2c? 71 key = C3.2_midcons2b? 71 key = C3.2_midcons2a? 71 key = C2.7c_diphthongUa? 63 key = C1.3_iconsLow? 82 key = C2.6b_svowelaw? 58 key = C2.7a_diphthongua? 70 key = C3.7_lowcons3? 73 key = C1.7_shortVowel? 89 key = C2.6c_svowelay? 76 key = C1.5_econsStop? 87 key = C2.1_realclusters? 76 key = C3.3_highcons1c? 66 key = C3.3_highcons1b? 66 key = C3.3_highcons1a? 66 key = C1.6_longVowel? 82 key = C2.3_smcons? 72 key = C2.4_chang9vowels? 70 key = C2.9_sClusterthr? 52 key = C1.1_iconsMid? 82 key = C3.4_highcons2c? 65 key = C3.5_lowcons1c? 68 key = C3.4_highcons2b? 65 key = C3.5_lowcons1b? 68 key = C2.8_invVowelcc? 55 key = C3.4_highcons2a? 65 key = C3.5_lowcons1a? 68 key = C2.7b_diphthongia? 63 key = C3.6_lowcons2b? 73 key = C3.6_lowcons2a? 73 key = C1.4_econsSono? 82 key = C2.5_invVowelo? 74 key = C3.1_midcons1c? 66 key = C3.1_midcons1b? 71 key = C3.1_midcons1a? 71 key = C2.2_shcons? 70 key = C1.2_iconsHi? 82 -------------------------------- -------------------------------key = C2.6a_svowelam? 60 key = C3.2_midcons2c? 71 key = C3.2_midcons2b? 71 key = C3.2_midcons2a? 60 key = C2.7c_diphthongUa? 63 key = C1.3_iconsLow? 75 key = C2.6b_svowelaw? 59 key = C2.7a_diphthongua? 76 key = C3.7_lowcons3? 73 key = C1.7_shortVowel? 78 key = C2.6c_svowelay? 76 key = C1.5_econsStop? 87 key = C2.1_realclusters? 70 key = C3.3_highcons1c? 66 key = C3.3_highcons1b? 66 key = C3.3_highcons1a? 69 key = C1.6_longVowel? 81 key = C2.3_smcons? 75 key = C2.4_chang9vowels? 70 key = C2.9_sClusterthr? 52 key = C1.1_iconsMid? 69 key = C3.4_highcons2c? 65 key = C3.5_lowcons1c? 71 key = C3.4_highcons2b? 65 key = C3.5_lowcons1b? 68 key = C2.8_invVowelcc? 55 key = C3.4_highcons2a? 65 key = C3.5_lowcons1a? 68 key = C2.7b_diphthongia? 63 key = C3.6_lowcons2b? 73 key = C3.6_lowcons2a? 73 key = C1.4_econsSono? 69 key = C2.5_invVowelo? 74 key = C3.1_midcons1c? 66 key = C3.1_midcons1b? 74 key = C3.1_midcons1a? 60 key = C2.2_shcons? 73 key = C1.2_iconsHi? 82 -------------------------------- osc = 3 osc = 4 94 10) SH -------------------------------key = C3.2_midcons2c? 71 key = C2.6a_svowelam? 60 key = C3.2_midcons2b? 71 key = C3.2_midcons2a? 71 key = C2.7c_diphthongUa? 63 key = C1.3_iconsLow? 82 key = C2.6b_svowelaw? 58 key = C2.7a_diphthongua? 70 key = C3.7_lowcons3? 73 key = C1.7_shortVowel? 89 key = C2.6c_svowelay? 76 key = C1.5_econsStop? 87 key = C2.1_realclusters? 76 key = C3.3_highcons1c? 66 key = C3.3_highcons1b? 66 key = C3.3_highcons1a? 66 key = C1.6_longVowel? 82 key = C2.3_smcons? 72 key = C2.4_chang9vowels? 70 key = C2.9_sClusterthr? 52 key = C1.1_iconsMid? 82 key = C3.4_highcons2c? 65 key = C3.5_lowcons1c? 68 key = C3.4_highcons2b? 65 key = C3.5_lowcons1b? 68 key = C2.8_invVowelcc? 55 key = C3.4_highcons2a? 65 key = C3.5_lowcons1a? 68 key = C2.7b_diphthongia? 63 key = C3.6_lowcons2b? 73 key = C3.6_lowcons2a? 73 key = C1.4_econsSono? 82 key = C2.5_invVowelo? 74 key = C3.1_midcons1c? 66 key = C3.1_midcons1b? 71 key = C3.1_midcons1a? 71 key = C2.2_shcons? 70 key = C1.2_iconsHi? 82 -------------------------------- -------------------------------key = C3.2_midcons2c? 80 key = C2.6a_svowelam? 60 key = C3.2_midcons2b? 71 key = C3.2_midcons2a? 74 key = C2.7c_diphthongUa? 63 key = C1.3_iconsLow? 82 key = C2.6b_svowelaw? 57 key = C2.7a_diphthongua? 70 key = C3.7_lowcons3? 90 key = C1.7_shortVowel? 97 key = C2.6c_svowelay? 79 key = C1.5_econsStop? 91 key = C2.1_realclusters? 76 key = C3.3_highcons1c? 66 key = C3.3_highcons1b? 66 key = C3.3_highcons1a? 66 key = C1.6_longVowel? 86 key = C2.3_smcons? 72 key = C2.4_chang9vowels? 70 key = C2.9_sClusterthr? 54 key = C1.1_iconsMid? 69 key = C3.4_highcons2c? 65 key = C3.5_lowcons1c? 68 key = C3.4_highcons2b? 65 key = C3.5_lowcons1b? 74 key = C2.8_invVowelcc? 56 key = C3.4_highcons2a? 65 key = C3.5_lowcons1a? 71 key = C2.7b_diphthongia? 66 key = C3.6_lowcons2b? 76 key = C3.6_lowcons2a? 73 key = C1.4_econsSono? 86 key = C2.5_invVowelo? 74 key = C3.1_midcons1c? 66 key = C3.1_midcons1b? 74 key = C3.1_midcons1a? 60 key = C2.2_shcons? 73 key = C1.2_iconsHi? 82 -------------------------------- osc = 3 osc = 6 95 1. 1_ ic on C sM 1. id 2_ C i co ? 1. ns 3_ H ic i? C on 1. sL 4_ o ec w ? on C sS 1. 5_ on ec o? on C 1. sS 6_ to lo p? C ng 1. V 7_ s h owe or C l? 2. 1_ tVo w re el al ? cl us C te 2. rs 2_ ? sh C co C 2. ns 2. 3 _ 4_ ? c h sm co an ns g9 ? C vo 2. w 5_ el in s ? vV C 2. ow 6a el _s o C vo ? 2. w 6b _ s ela m vo ? C w 2. el 6c aw _s C ? 2. vo 7a w el _d ay ip C ? h 2. 7b th o ng _d C u ip a? 2. ht 7c ho _d ng ip ia C ht ? 2. 8_ hon gU in vV a? C o 2. 9_ wel cc sC ? lu C st 3. er 1_ th m r? id C co 3. ns 1_ 1a m id ? C co 3. 1_ ns 1b m i dc ? C 3. on 2_ s1 m c i ? dc C 3. on 2_ s2 m a? id C co 3. 2_ ns m 2b C id ? 3. co 3_ ns hi 2 gh c? C co 3. 3_ ns hi gh 1 a? C 3. co 3_ ns hi gh 1 b? C co 3. 4_ ns hi gh 1 c? C co 3. 4_ ns hi gh 2 a? C 3. co 4_ ns hi gh 2 b? C co 3. 5_ ns lo 2c w ? C c 3. on 5_ s1 lo a? w C c 3. 5_ o ns 1b lo w ? C co 3. ns 6_ 1c lo w ? C co 3. ns 6_ 2a lo w ? co C 3. n 7_ s2 b? lo w co ns 3? C Weights 1. 1_ ic on C sM 1. id 2_ ? ic C on 1. 3_ sH i c i ? C on 1. sL 4_ ow ec ? on C sS 1. 5_ on ec o? on C 1. s St 6_ op lo C ng ? 1. V 7_ ow sh el o ? C r tV 2. 1_ ow re el al ? cl us C te 2. rs 2_ ? sh C co 2. C ns 2. 3_ 4_ sm ? ch co an ns g9 ? C vo 2. w 5_ el in s ? vV C 2. ow 6a el _s o C ? vo 2. w 6b _ s elam vo ? C w 2. el 6c aw _s C ? 2. vo 7a w el _d ay ip C ? ht 2. ho 7b ng _d u C i a? ph 2. th 7c on _d gi ip a? C ht 2. 8_ hon gU in vV a? C ow 2. e 9_ s C lc c? lu C st 3. er 1_ th m r? i d C co 3. ns 1_ 1a m id ? C co 3. ns 1_ 1b m id ? C co 3. ns 2_ 1c m id C co ? 3. ns 2_ 2a m id ? C co 3. ns 2_ 2b m id C ? co 3. 3_ ns hi 2 c? gh C co 3. 3_ ns hi 1 a? gh C co 3. 3_ ns hi 1 b? gh C co 3. 4_ ns hi 1 c gh C co ? 3. 4_ ns hi 2 a? gh C co 3. 4_ ns hi 2b gh ? C co 3. 5_ ns lo 2c w ? C co 3. ns 5_ 1a lo w ? C co 3. ns 5_ 1b lo w ? C co 3. ns 6_ 1c lo w ? C co 3. ns 6_ 2 lo a? w co C 3. 7_ ns2 b? lo w co ns 3? C Weights Appendix VIII : Charts of Student Model Variation Subject: AT 120 110 100 90 80 70 60 50 40 Constraints Constraints End Start Subject: XY 110 100 90 80 70 60 50 40 Start End 96 C co ns M 1. id 2_ ? ic C on 1. 3_ sH i c i? C on 1. sL 4_ ow ec ? on C sS 1. 5_ on ec o? on C 1. sS 6_ to lo p? C n g 1. V 7_ o w sh el or ? C tV 2. 1_ ow re el al ? cl us C te 2. r s? 2_ sh C co 2. C ns 2. 3_ 4_ sm ? ch co an ns g9 ? C vo 2. w 5_ el in s ? vV C 2. ow 6a el _s o? C vo 2. w 6b _ s elam vo ? C w 2. el 6c aw _ C sv ? 2. ow 7a el _d a i y? ph C 2. 7b th o ng _d u C ip a? 2. ht 7c ho _d ng ip ia C ht ? 2. 8_ hon gU in vV a ? C ow 2. e 9_ s C lc c? lu C st 3. er 1_ th m r id C co ? 3. ns 1_ 1a m id ? C co 3. ns 1_ 1b m id ? C co 3. ns 2_ 1c m id C co ? 3. ns 2_ 2a m id ? C co 3. ns 2_ 2b m id C ? co 3. 3_ ns hi 2 c? gh C co 3. 3_ ns hi 1 a? gh C co 3. 3_ ns hi 1 b? gh C co 3. 4_ ns hi 1 c gh C co ? 3. 4_ ns hi 2 a? gh C co 3. 4_ ns hi 2b gh ? C co 3. 5_ ns lo 2c w ? C co 3. ns 5_ 1a lo w ? C co 3. ns 5_ 1b lo w ? C co 3. ns 6_ 1c lo w ? C co 3. ns 6_ 2 lo a? w co C 3. 7_ ns2 b? lo w co ns 3? C 1. 1_ i Weights co ns M 1. id 2_ ? ic C on 1. 3_ sH i c i? C on 1. sL 4_ ow ec ? on C sS 1. 5_ on ec o? on C 1. sS 6_ to lo p? C n g 1. V 7_ o w sh el or ? C tV 2. 1_ ow re el al ? cl us C te 2. r s? 2_ sh C co 2. C ns 2. 3_ 4_ sm ? ch co an ns g9 ? C vo 2. w 5_ el in s ? vV C 2. ow 6a el _s o? C vo 2. w 6b _ s elam vo ? C w 2. el 6c aw _ C sv ? 2. ow 7a el _d a i y? ph C 2. 7b th o ng _d u C ip a? 2. ht 7c ho _d ng ip ia C ht ? 2. 8_ hon gU in vV a ? C ow 2. e 9_ s C lc c? lu C st 3. er 1_ th m r id C co ? 3. ns 1_ 1a m id ? C co 3. ns 1_ 1b m id ? C co 3. ns 2_ 1c m id C co ? 3. ns 2_ 2a m id ? C co 3. ns 2_ 2b m id C ? co 3. 3_ ns hi 2 c? gh C co 3. 3_ ns hi 1 a? gh C co 3. 3_ ns hi 1 b? gh C co 3. 4_ ns hi 1 c gh C co ? 3. 4_ ns hi 2 a? gh C co 3. 4_ ns hi 2b gh ? C co 3. 5_ ns lo 2c w ? C co 3. ns 5_ 1a lo w ? C co 3. ns 5_ 1b lo w ? C co 3. ns 6_ 1c lo w ? C co 3. ns 6_ 2 lo a? w co C 3. 7_ ns2 b? lo w co ns 3? C C 1. 1_ i Weights Subject: QB 140 120 100 80 60 40 Constraints Constraints End Start Subject: KS 100 80 60 40 20 0 End Start 97 C co ns M 1. id 2_ ? ic C on 1. 3_ sH i c i? C on 1. sL 4_ ow ec ? on C sS 1. 5_ on ec o? on C 1. sS 6_ to lo p? C n g 1. V 7_ o w sh el or ? C tV 2. 1_ ow re el al ? cl us C te 2. r s? 2_ sh C co 2. C ns 2. 3_ 4_ sm ? ch co an ns g9 ? C vo 2. w 5_ el in s ? vV C 2. ow 6a el _s o? C vo 2. w 6b _ s elam vo ? C w 2. el 6c aw _ C sv ? 2. ow 7a el _d a i y? ph C 2. 7b th o ng _d u C ip a? 2. ht 7c ho _d ng ip ia C ht ? 2. 8_ hon gU in vV a ? C ow 2. e 9_ s C lc c? lu C st 3. er 1_ th m r id C co ? 3. ns 1_ 1a m id ? C co 3. ns 1_ 1b m id ? C co 3. ns 2_ 1c m id C co ? 3. ns 2_ 2a m id ? C co 3. ns 2_ 2b m id C ? co 3. 3_ ns hi 2 c? gh C co 3. 3_ ns hi 1 a? gh C co 3. 3_ ns hi 1 b? gh C co 3. 4_ ns hi 1 c gh C co ? 3. 4_ ns hi 2 a? gh C co 3. 4_ ns hi 2b gh ? C co 3. 5_ ns lo 2c w ? C co 3. ns 5_ 1a lo w ? C co 3. ns 5_ 1b lo w ? C co 3. ns 6_ 1c lo w ? C co 3. ns 6_ 2 lo a? w co C 3. 7_ ns2 b? lo w co ns 3? C 1. 1_ i Weights co ns M 1. id 2_ ? ic C on 1. 3_ sH i c i? C on 1. sL 4_ ow ec ? on C sS 1. 5_ on ec o? on C 1. sS 6_ to lo p? C n g 1. V 7_ o w sh el or ? C tV 2. 1_ ow re el al ? cl us C te 2. r s? 2_ sh C co 2. C ns 2. 3_ 4_ sm ? ch co an ns g9 ? C vo 2. w 5_ el in s ? vV C 2. ow 6a el _s o? C vo 2. w 6b _ s elam vo ? C w 2. el 6c aw _ C sv ? 2. ow 7a el _d a i y? ph C 2. 7b th o ng _d u C ip a? 2. ht 7c ho _d ng ip ia C ht ? 2. 8_ hon gU in vV a ? C ow 2. e 9_ s C lc c? lu C st 3. er 1_ th m r id C co ? 3. ns 1_ 1a m id ? C co 3. ns 1_ 1b m id ? C co 3. ns 2_ 1c m id C co ? 3. ns 2_ 2a m id ? C co 3. ns 2_ 2b m id C ? co 3. 3_ ns hi 2 c? gh C co 3. 3_ ns hi 1 a? gh C co 3. 3_ ns hi 1 b? gh C co 3. 4_ ns hi 1 c gh C co ? 3. 4_ ns hi 2 a? gh C co 3. 4_ ns hi 2b gh ? C co 3. 5_ ns lo 2c w ? C co 3. ns 5_ 1a lo w ? C co 3. ns 5_ 1b lo w ? C co 3. ns 6_ 1c lo w ? C co 3. ns 6_ 2 lo a? w co C 3. 7_ ns2 b? lo w co ns 3? C C 1. 1_ i Weights Subject: AM 90 80 70 60 50 40 Constraints Constraints End Start Subject: GB 100 90 80 70 60 50 40 End Start 98 C co ns M 1. id 2_ ? ic C on 1. 3_ sH i c i? C on 1. sL 4_ ow ec ? on C sS 1. 5_ on ec o? on C 1. sS 6_ to lo p? C n g 1. V 7_ o w sh el or ? C tV 2. 1_ ow re el al ? cl us C te 2. r s? 2_ sh C co 2. C ns 2. 3_ 4_ sm ? ch co an ns g9 ? C vo 2. w 5_ el in s ? vV C 2. ow 6a el _s o? C vo 2. w 6b _ s elam vo ? C w 2. el 6c aw _ C sv ? 2. ow 7a el _d a i y? ph C 2. 7b th o ng _d u C ip a? 2. ht 7c ho _d ng ip ia C ht ? 2. 8_ hon gU in vV a ? C ow 2. e 9_ s C lc c? lu C st 3. er 1_ th m r id C co ? 3. ns 1_ 1a m id ? C co 3. ns 1_ 1b m id ? C co 3. ns 2_ 1c m id C co ? 3. ns 2_ 2a m id ? C co 3. ns 2_ 2b m id C ? co 3. 3_ ns hi 2 c? gh C co 3. 3_ ns hi 1 a? gh C co 3. 3_ ns hi 1 b? gh C co 3. 4_ ns hi 1 c gh C co ? 3. 4_ ns hi 2 a? gh C co 3. 4_ ns hi 2b gh ? C co 3. 5_ ns lo 2c w ? C co 3. ns 5_ 1a lo w ? C co 3. ns 5_ 1b lo w ? C co 3. ns 6_ 1c lo w ? C co 3. ns 6_ 2 lo a? w co C 3. 7_ ns2 b? lo w co ns 3? C 1. 1_ i Weights co ns M 1. id 2_ ? ic C on 1. 3_ sH i c i? C on 1. sL 4_ ow ec ? on C sS 1. 5_ on ec o? on C 1. sS 6_ to lo p? C n g 1. V 7_ o w sh el or ? C tV 2. 1_ ow re el al ? cl us C te 2. r s? 2_ sh C co 2. C ns 2. 3_ 4_ sm ? ch co an ns g9 ? C vo 2. w 5_ el in s ? vV C 2. ow 6a el _s o? C vo 2. w 6b _ s elam vo ? C w 2. el 6c aw _ C sv ? 2. ow 7a el _d a i y? ph C 2. 7b th o ng _d u C ip a? 2. ht 7c ho _d ng ip ia C ht ? 2. 8_ hon gU in vV a ? C ow 2. e 9_ s C lc c? lu C st 3. er 1_ th m r id C co ? 3. ns 1_ 1a m id ? C co 3. ns 1_ 1b m id ? C co 3. ns 2_ 1c m id C co ? 3. ns 2_ 2a m id ? C co 3. ns 2_ 2b m id C ? co 3. 3_ ns hi 2 c? gh C co 3. 3_ ns hi 1 a? gh C co 3. 3_ ns hi 1 b? gh C co 3. 4_ ns hi 1 c gh C co ? 3. 4_ ns hi 2 a? gh C co 3. 4_ ns hi 2b gh ? C co 3. 5_ ns lo 2c w ? C co 3. ns 5_ 1a lo w ? C co 3. ns 5_ 1b lo w ? C co 3. ns 6_ 1c lo w ? C co 3. ns 6_ 2 lo a? w co C 3. 7_ ns2 b? lo w co ns 3? C C 1. 1_ i Weights Subject: VA 100 90 80 70 60 50 40 Constraints Constraints End Start Subject: JH 85 80 75 70 65 60 55 50 45 40 End Start 99 C co ns M 1. id 2_ ? ic C on 1. 3_ sH i c i? C on 1. sL 4_ ow ec ? on C sS 1. 5_ on ec o? on C 1. sS 6_ to lo p? C n g 1. V 7_ o w sh el or ? C tV 2. 1_ ow re el al ? cl us C te 2. r s? 2_ sh C co 2. C ns 2. 3_ 4_ sm ? ch co an ns g9 ? C vo 2. w 5_ el in s ? vV C 2. ow 6a el _s o? C vo 2. w 6b _ s elam vo ? C w 2. el 6c aw _ C sv ? 2. ow 7a el _d a i y? ph C 2. 7b th o ng _d u C ip a? 2. ht 7c ho _d ng ip ia C ht ? 2. 8_ hon gU in vV a ? C ow 2. e 9_ s C lc c? lu C st 3. er 1_ th m r id C co ? 3. ns 1_ 1a m id ? C co 3. ns 1_ 1b m id ? C co 3. ns 2_ 1c m id C co ? 3. ns 2_ 2a m id ? C co 3. ns 2_ 2b m id C ? co 3. 3_ ns hi 2 c? gh C co 3. 3_ ns hi 1 a? gh C co 3. 3_ ns hi 1 b? gh C co 3. 4_ ns hi 1 c gh C co ? 3. 4_ ns hi 2 a? gh C co 3. 4_ ns hi 2b gh ? C co 3. 5_ ns lo 2c w ? C co 3. ns 5_ 1a lo w ? C co 3. ns 5_ 1b lo w ? C co 3. ns 6_ 1c lo w ? C co 3. ns 6_ 2 lo a? w co C 3. 7_ ns2 b? lo w co ns 3? C 1. 1_ i Weights co ns M 1. id 2_ ? ic C on 1. 3_ sH i c i? C on 1. sL 4_ ow ec ? on C sS 1. 5_ on ec o? on C 1. sS 6_ to lo p? C n g 1. V 7_ o w sh el or ? C tV 2. 1_ ow re el al ? cl us C te 2. r s? 2_ sh C co 2. C ns 2. 3_ 4_ sm ? ch co an ns g9 ? C vo 2. w 5_ el in s ? vV C 2. ow 6a el _s o? C vo 2. w 6b _ s elam vo ? C w 2. el 6c aw _ C sv ? 2. ow 7a el _d a i y? ph C 2. 7b th o ng _d u C ip a? 2. ht 7c ho _d ng ip ia C ht ? 2. 8_ hon gU in vV a ? C ow 2. e 9_ s C lc c? lu C st 3. er 1_ th m r id C co ? 3. ns 1_ 1a m id ? C co 3. ns 1_ 1b m id ? C co 3. ns 2_ 1c m id C co ? 3. ns 2_ 2a m id ? C co 3. ns 2_ 2b m id C ? co 3. 3_ ns hi 2 c? gh C co 3. 3_ ns hi 1 a? gh C co 3. 3_ ns hi 1 b? gh C co 3. 4_ ns hi 1 c gh C co ? 3. 4_ ns hi 2 a? gh C co 3. 4_ ns hi 2b gh ? C co 3. 5_ ns lo 2c w ? C co 3. ns 5_ 1a lo w ? C co 3. ns 5_ 1b lo w ? C co 3. ns 6_ 1c lo w ? C co 3. ns 6_ 2 lo a? w co C 3. 7_ ns2 b? lo w co ns 3? C C 1. 1_ i Weights Subject: ME 100 90 80 70 60 50 40 Constraints Constraints End Start Subject: SH 100 90 80 70 60 50 40 End Start 100 [...]...     As can be seen, the screen is split into four sections. The Problem panel presents the  question to the user in the form of Thai script for him to transcribe. The Answer panel  is for the user to input his answer. The Tutor panel is for presenting feedback to the  user. The Scaffolding panel (not fully implemented) is designed to help the student as  he  answers  the  questions.  It  reduces  his  cognitive  load  and  displays  relevant  information  that  the  student  has ... guided  practice  in  the  skill  of  Thai transcription  from  IPA  to  Thai script.  It  is  assumed  that  the  student  has  been  taught the basic reading and writing rules before using the system.      The target student is assumed to have prior exposure to J Marvin Brown’s method  of  transcribing  Thai,   command  a  basic  Thai vocabulary  and  know  elementary  Thai grammatical rules. This level of proficiency is easily attained after a one semester (12 ... incidentally once he has picked up sufficient vocabulary.     Unlike  hanyupinyin  for mandarin,  there  is  no  standard  method  for transcribing  Thai script. We use the system from J Marvin Brownʹs AUA textbooks. While it may  be slightly less intuitive to learn than other methods, it is widely used by universities,  linguists and serious students of Thai language as it is more technically accurate and  flexible.      The  system is  designed ... domain  and  about  students  learning  the domain. [6]     The point of student modeling is to be able to tailor instruction for each student and  provide  information  for the  pedagogical  model.    Many  techniques  have  been  developed thus far in the field of Student Modeling.  These include the overlay model,  bug  libraries,  machine  learning,  model  tracing,  and  constraint based modeling.  ...    Zhou and Evens describe their CIRCSIM conversational tutor for teaching medical  students. It uses multiple student models concurrently to support tutoring decisions  [24].  Their  student  model  includes:  a  performance  model,  a  student  reply  history,  a  16 student  solution  record  (using CBM),  and  a  tutoring history  using a  hierarchical  planning mechanism.     Martin  and  Mitrovic ... are  matched  to  the  constraints  and  ideal  solutions  and  all  violated  constraints and their respective weights are stored. In the long term, the SM provides  information for the PM, stores  customizing instructions for individual  learners such  as  learner  history  (order  and  tries  of  questions  attempted,  errors  made),  constraint history (violation, relevance, and satisfaction), concepts the user is familiar with, and ... syntax  and  nuances especially challenging. An example Thai phrase is shown below. Translated  it says “I like to study Thai .   19 ผมชอบเรียนภาษาไทย     As can been seen, even word segmentation is a difficult problem in Thai that causes  many  new  learners  to  be  confused.  But  in  Thairator,  word  breaks  are  added  to  simplify things for the student as the skill of noticing word breaks can be picked up ... keyboard shortcuts to input them rapidly will be provided for regular users. Input in  Thai is supported using the popular kedmanee  keyboard layout [28]. However, this  requires some familiarity with the mapping and/or using a Thai keyboard overlay.     The  student  enters  his  answer  in  phonetics  or  Thai script  depending  on  the  question.  When  he  is  done,  he  clicks  the  “Analyze  Answer”  button  which  displays  the system feedback on his answer in the Tutor panel. He can then make corrections ... the system feedback on his answer in the Tutor panel. He can then make corrections  and re‐analyze his answer till he is satisfied.     To aid reflection, a log file of the student activity is generated for each session. At  the end of each session with Thairator, the user can print out the session log and add  personal annotations.  26 CHAPTER 5 STUDENT MODEL    In  this  section,  we  detail  the  structure  and  design ... described in section 5.5.1), and the percentage increment per constraint violation.  5.2 Constraint Hierarchy    Unlike flat constraints used in other systems, in Thairator, constraints are separated  into  three  levels  (basic,  advanced,  tones  +  special).  These  constraints  represent  concepts that are deemed pedagogically important for the student to master.     28 Level 1 basic Level 2 advanced Increasing

Ngày đăng: 28/09/2015, 13:38

Từ khóa liên quan

Mục lục

  • SUMMARY

  • LIST OF TABLES

  • LIST OF FIGURES

  • INTRODUCTION

    • Intelligent Tutoring Systems and Student Modeling

    • Research Objectives

    • Thesis Structure

  • RESEARCH BACKGROUND

    • Student Modeling

    • Overlay Model

    • Bug Libraries

    • Machine Learning

      • Supervised Inductive Learning

      • Unsupervised Inductive Learning

      • Reinforcement Learning

    • Model Tracing

    • Constraint Based Modeling

    • Evaluation of CBM

      • Strengths of CBM

      • Weaknesses of CBM

    • Work Related to CBM

  • THE DOMAIN OF THAI WRITING

  • DESIGN FRAMEWORK

    • Student Model (SM)

    • Pedagogical Model (PM)

    • Communication Model (CM)

  • STUDENT MODEL

    • Stereotyping

    • Constraint Hierarchy

    • Dynamic Hierarchical Weighted Constraints (DHWC)

    • De-contextualized Constraint-Based Questions (DCBQ)

    • Uses of Student Model

      • Exercise Selection

      • Feedback

  • IMPLEMENTATION

    • Knowledge Engineering

    • Constraints

    • Design of Exercises and DCBQ

  • EVALUATION

    • Methodology

      • High-Level Analysis

      • Detailed Log Tracing

    • Procedure

      • Subject Selection

      • Execution

    • Results

      • Learning Gains

      • Detailed Log Tracing

      • User Feedback

    • Discussion

    • Summary

  • CONCLUSION

    • Overview and Contributions

    • Future work

      • Further Uses of Existing Student Model

      • Further Enhancements to Student Model

      • Automation of Knowledge Engineering Process

  • BIBLIOGRAPHY

  • APPENDICES

    • Appendix I: Constraints

    • Appendix III: IPA characters

    • Appendix IV: Thai alphabet

    • Appendix V: Pre-test and Post-test

    • Appendix VI : Feedback Form

    • Appendix VII : Raw Student Model Variation Data

    • Appendix VIII : Charts of Student Model Variation

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan