CITS – C++ Intelligent Tutoring System: A Domain Independent User Centered Curriculum Approach 1 Hassan Zia, 2Qaiser S. Durrani, 3 Rana Adnan Farrakh, 4 Amir Riaz, 5Farhan Ahmed FAST Institute of Computer Science 852-B, Faisal Town, Lahore-54700, Pakistan 1 HZ_Hassan@hotmail.com, 2Durrani@fast.edu.pk, 5Raf@Truesoft.com.pk, 4 Amir_Riaz@Netsolpk.com, 5Farhan_Adil@hotmail.com Abstract Most of the existing Intelligent Tutoring Systems (ITS) teach students based on their domain knowledge. Explicit cognitive skills of the students are generally not considered before delivering any lesson. This paper discusses an application of ITS employing cognitive modeling as a main tool to understand learner and correspondingly impart teaching. Here, in addition to the domain knowledge, cognitive skills of the student (which are domain independent) are also considered before delivering the lesson. The system teaches C++ language to the students. A number of lessons were designed in C++ to see the effects of cognitive measures like verbal, mathematical, and abstract reasoning on students’ learning. The results revealed a positive feedback as far as the mapping of numerical reasoning with mathematical contents and abstract reasoning with the corresponding lesson contents in abstract categories were concerned. However, no positive results could be generated regarding mapping of user verbal reasoning with lesson contents belonging to verbal category. The graphical presentation of the lessons was found to be more effective than textual presentation, especially in case the students had corresponding graphical reasoning abilities. 1. Introduction The idea in this paper is to build such a real-life teaching environment which not only caters the domain skills but also looks into an individual’s problem solving skills, learning habits, abstract reasoning, verbal skills, and so on. We believe that these skills are part of in an individual and have developed over a long life process. These are, thus, more important to explore because they can help to solve problems in any domain than those specific skills which are simply learned to counter a particular problem. To test this idea we are proposing three hypotheses. The paper is regarding the implementation of domain independent intelligent tutoring system to test these hypotheses and see if building of such systems can improve the user interfaces and eventually improve the user learning process. The hypotheses are: H1: Students with high abstract reasoning will perform better if the lesson contents belong to an abstract category and are presented using graphical media. H2: Students with high numerical reasoning will perform better with mathematical contents of the lessons. H3: Students with high verbal reasoning will perform better if the lesson contents belong to verbal category and are presented using textual mode. 2. Background Before we get to the working of the existing system let us clarify few terms like ITS, User Modeling, Stereotypes, Domain Dependent and Domain Independent User Modeling. Intelligent Tutoring System (ITS) is a kind of tutorial system in which the contents of the lesson are taught in an intelligent way. It asks questions from the user and accordingly updates its teaching strategies for that particular user. These tutoring systems customize their presentation of knowledge to the individual needs of the student [Eliot and Park, 1995]. An intelligent tutor takes Computer Based Training (CBT) and customizes it to the needs of each individual student, just like a real human tutor would do [Chan et al., 1998]. The basic structure of an ITS is often described by modules representing knowledge of four areas as shown in Figure 1. The domain expert module (also commonly known as domain module or domain knowledge base) contains the knowledge of the subject matter to be taught. The tutoring module (or instructional module) represents the rules, strategies and processes involved to communicate with students (i.e. instructional planning). The student module contains student knowledge about the domain and is accessed by the system to ascertain the thinking and strategies of an individual student on the specific subject matter that he is learning. The communication module provides the system interface to the student [Wong et al., 1998]. A User Model is a knowledge source, which contains explicit assumptions on all aspects of the user that may be relevant to the system [Kosba and Wahlster, 1993]. All interactive systems contain one of three types of model of users (canonical, implicit, and automatic). Our primary concern in this paper is the last type, i.e. automatic or dynamic model which is built by the system on the basis of its interaction with the user [Kosba, 1993]. Traditional user modeling systems mainly utilize user’s knowledge about the application domain like user’s expertise in that area and user’s usage history with the system. The models build with such domain knowledge can be used with the Student Intelligent Tutoring System Communication Module Domain Module Tutor Module Student Module Figure 1: Basic architecture of ITS specific application only, thus called Domain Dependent User Models (DDUM) [Durrani, 1997]. The deficiency with such systems is that they do not model the cognitive attributes or processes of the user, which are involved in all sort of cognitive activities taking place in humans. A cognitive model build with such atomic level cognitive processes (processes that remain same over all domains) behaves similarly irrespective of any domain. Such models will be applicable in virtually all domains, hence called Domain Independent User Models (DIUM) [Durrani, 1997]. The problem with traditional user modeling systems is that, before the user model stabilizes, they require considerable amount of time. The system tries to tune itself with the user based on the user’s interaction and feedback. It learns the behavior and attitude of the user and adapts itself accordingly. This problem can partially be solved using stereotypes approach. User modeling systems can enhance their performance using stereotyping technique [Kay, 1994] [Kosba and Wahlster, 1993]. A Stereotype is a knowledge structure, which contains information about a group of users, i.e., a collection of attributes that often co-occur in people. Stereotypes give the system a predictive power by capturing naturally occurring regularities in human characteristics. They can play an important role in a user modeling system because they enable the system to make a large number of plausible inferences on the basis of a substantially smaller number of observations. The major advantage that stereotype based systems have over non-stereotype systems is that they can fill in missing information about a user from the stereotype the user falls in. 3. Proposed Solution C++ Intelligent Tutoring System (CITS) is an effort to develop a domain independent intelligent tutoring system that teaches C++ language depending upon the cognitive skills and knowledge level of C++ of the student. The tutor works with a student model, a teaching model and the lesson contents. The main task is to build an individual user model for each student by taking some psychological tests. We used a standard culture free psychological test called Differential Aptitude Test (DAT) [Hyde and Tricky, 1995] and a self-made test to check the C++ knowledge of the student. The result of these tests assesses students’ characteristics. Based on these assessments the system picks up one of the stereotypes from the set of stereotypes and eventually initializes a user model for the student. Based on the user model, the system starts teaching the student by presenting C++ lessons of various complexities (easy, normal and difficult). Apart from this, the system keeps track of the interaction of the student during each lesson like his attention span and memory. The system also takes feedback at the end of each lesson to observe the student behavior. Based on results of the feedback the system updates the user model and plans future schedule for the particular student. 3.1. User Modeling in CITS Our user model consists of domain independent and domain dependent attributes. The domain independent attributes that we have selected for our user model are: Verbal Reasoning Graphical Reasoning Mathematical Reasoning To measure the above-mentioned cognitive attributes of the user a sub-set of DAT psychological test [Hyde and Tricky, 1995] is used. 3.3. Lesson Designing After studying the language theories of C++ we believe that this language can be divided into verbal, abstract, and mathematical categories. The verbal category includes the topics like data types, control structures, functions, pointers, arrays etc. The abstract category includes classes, inheritance, objects etc. The mathematical category includes operators (unary, binary etc.), operator-overloading etc. Each topic of C++ has its own complexity. So before presenting any lesson we determine the media required (depending upon user model and feed back from the user) for teaching that particular lesson. For example, if a lesson lies in 1 Verbal ART 2 Abstract 2 Numerical n Figure 2: Formation of stereotypes There is only one domain dependent attribute in CITS, that is, C++ knowledge level of the student. For measuring this domain knowledge of the student C++ tests were designed. 3.2. Formation of Stereotypes Formation of stereotypes is one of the key operations of CITS. We are using ART2 Neural Networks for this purpose. These nets cluster inputs by using unsupervised learning. Each time an input pattern is presented an appropriate cluster unit is chosen [Kosko, 1995]. ART 2 clusters the students on the basis of their cognitive attributes. Three inputs (verbal reasoning, abstract reasoning & numerical reasoning) are fed to ART 2. The output we get from ART 2 is a cluster number (1, 2 or n, where n is any arbitrary number). Thus the students with similar cognitive properties are classified in the same stereotype or cluster as shown in Figure 2. Whenever a new user gets registered in the system, he/she is mapped into an already existing stereotype or a new stereotype is created (if the user does not map on any of the existing stereotypes) [Ata et al., 1998]. textual category and the student learning that particular lesson has high verbal reasoning ability, then we do not need much more media help to make him understand that lesson. But when considering the other case, that is, the student has low textual reasoning ability, then we certainly require more media help to teach him that particular lesson. The way in which a media or system interface is designed can effect performance of users in terms of two aspects: semantic distance and articulatory distance. Semantic distance depends on the relationship between what the user wants to say and the capabilities of the input language. Articulatory distance depends on the relationship between the meaning of an expression in the interface language and its form. A greater distance means that users must spend more cognitive efforts to translate from their own formulation of their behavior to the input language or from the output language into their own understanding [Hutchins., 1986]. But here we will consider the former case, as we are not dealing with the semantic distance. So if the articulatory distance is greater, then we have to spend more efforts (i.e. more media help) to make the user understand that particular lesson. For example, if a lesson lies in textual category and the user who is learning that lesson has low textual reasoning, the articulatory distance will be high. So in order to reduce the distance we require more media help to present that particular lesson. User Attributes Lesson Attributes Attributes Levels Verbal Textual Easy, Normal, Difficult Abstract Graphical Easy, Normal Numerical Mathematical Easy, Normal Figure 3: Mapping of user attributes After measuring the cognitive attributes of a user, we map them to the attributes of C++ lesson, which combines to depict the complexity of the over all lesson. The mapping is on one to one bases as shown in Figure 3. The verbal reasoning, abstract reasoning and numerical reasoning of students are mapped on the textual, graphical and mathematical contents of the presented to the user based on his/her model. After presentation of each lesson, a feedback is taken from the user about its contents. If the user gives correct feedback then he/she is moved to the next lesson. On the other hand, if the user gives incorrect answers then he/she is asked to give comments about the presentation (Text, Mathematics and Graphics) of the lesson. On the basis of the feedback of the user, the model of the user is updated and revised lesson is presented. For example, a lesson is presented to the user with textual, mathematical and graphical complexities as difficult, normal & normal respectively as shown in Figure 4. After the presentation of lesson, feedback about the contents of lesson is taken from the user. If the user gives incorrect feedback then he/she is asked to comment about the presentation of lesson. With this feed back the same lesson but with different complexity of text, mathematics and graphics is presented to the user. The lesson updation continues until the user is satisfied or system exhausts all available possibilities. We have assumed here that whenever the user gives at least three consecutive correct responses then his/her model is stable and he/she is satisfied (Text t, Math m Graphics g) Initial Lesson Attributes difficult, normal, normal Feedback normal, easy, normal Intermediate Lesson Attributes (Text t, Math m, Graphics g) Final Lesson Attributes Figure 4: Learning of the System lesson respectively. We have three versions of text (Easy, Normal and Difficult) used in the lessons. Similarly, there are two versions (Easy and Normal) of mathematical examples and graphics used in the lessons [Zia et al., 1998]. 3.4. Learning of the System For learning purposes we are using Back Propagation Neural Network. A lesson is with the presentation of lessons. When a user model gets stable, it is added in a contradiction list. When five users are added in the contradiction list and a new user comes in, with the same stereotype attributes, then the lesson presented to that user is of the complexity where the last five users got stable. In this way the system has learned from the experience of previous users and fresh experimentation is not required for the new user. verbal may be attributable to the fact that the students who were taking these tests were mostly studying in technical schools. Thus, the training and emphasis of their studies and work was mostly on the technical or numerical matters rather towards verbal or English comprehension. 4. Results and Analysis Initially 40 students volunteered to experiment and learn C++. However, during one month’s period of testing and learning only 20 students Final Graphic Initial Graphic Final Math Initial Math Final Textual Initial textual Pair 1 Pair 2 Pair 3 Mean N 5.00 4.55 5.60 6.70 4.00 3.65 20 20 20 20 20 20 Standard Deviation 1.6222 1.9595 1.1425 1.6255 1.6543 1.7852 Standard Error Mean 0.3627 0.4381 0.2555 0.3635 0.3699 0.3992 Table 1: Paired Samples Statistics completed both DAT and C++ testing. The result of students in Differential Aptitude Test is Pair 1 Pair 2 Pair 3 Table 1 shows the Paired Sample Statistics. Initial Graphic, Initial Math and Initial Textual N 20 20 20 Final Graphic & Initial Graphic Final Math & Initial Math Final Textual & Initial Textual Correlation 0.464 0.669 0.927 Sigmoid 0.040 0.001 0.000 Table 2: Paired Samples Correlation shown in Figure 5 (see on next page). The number of students are along the x-axis and score of students in scale of 1-10 in three subtests (Verbal Reasoning - VR, Abstract Mean Pair 1 Pair 2 Pair 3 Final & Graphic Final & Math Final & Textual are the initial attributes of the C++ lesson. These values are gathered from one-to-one mapping of cognitive attributes of user (from DAT test) and attributes of lesson as shown in Figure 3. Final Paired Differences Std. Std. 95% Confidence Deviation Error Interval of the Mean Difference Lower Upper 1.877 0.420 -0.428 1.323 t df Sig. 2tailed 1.072 19 0.297 Initial 0.45 Initial -1.10 1.209 0.270 -1.666 -0.534 -4.067 19 0.001 Initial 0.35 0.671 0.150 3.60E-02 0.664 2.333 19 0.031 Table 3: Paired Samples Test Reasoning – AR & Numerical Reasoning – NR) of DAT is along y-axis. The results of the DAT test shows that the students generally scored well in abstract and numerical reasoning and performed rather poorly in verbal test. The better performance in numerical and abstract reasoning as compared to Graphic, Final Math and Final Textual are the attributes of the lesson where the users learning got stable after working on the system for about one month. Initial attributes of the lesson changes after the feedback of users about the presentation of the lesson. N is the total number of students. Table 2 shows the Paired Samples Correlation. The Correlation shows how the two variables (for example, Final Graphic & Initial Graphic) high verbal reasoning ability is rejected. There may be many reasons for the rejection of this hypothesis. One major reason could be that the 12 10 8 6 S C O R SEu m 4 AR 2 NR 0 1 .0 0 VR 5 .0 0 3 .0 0 9 .0 0 7 .0 0 NO. OF STUDENTS STUD ENT 1 3 .0 0 1 1 .0 0 1 7 .0 0 1 5 .0 0 2 1 .0 0 1 9 .0 0 2 5 .0 0 2 3 .0 0 2 9 .0 0 2 7 .0 0 3 3 .0 0 3 1 .0 0 3 7 .0 0 3 5 .0 0 Figure 5: Results of DAT are correlated with each other. The calculation in Table 2 is used to calculate value of t in Table 3. Since the number of cases in consideration were less or equal to 20 we used T- Test instead of Ztest. The tabulated value of t0.05 is 1.729. The calculated value of t is 1.072, -4.4067 and 2.333 for graphical, mathematical and textual lessons respectively as shown in Table 3. Since the calculated value of t for graphics and mathematics used in the lessons is less then the tabulated value of t, so our hypotheses for graphical and mathematical contents of lessons are accepted. Also note that the calculated value of t for text used in the lessons is greater than the tabulated value of t, so our hypothesis against the textual lessons is rejected. From the above results we concluded that there is a positive feedback in the case of mathematics and Graphic attributes since they have not changed. So our hypothesis are accepted that the graphical contents and presentation of lessons would enhance the performance of users with high abstract reasoning ability and mathematical lessons would enhance the performance of users with high mathematical reasoning ability. While considering the case of textual lessons, as there is negative feedback so our hypothesis that textual contents and representation of lessons would enhance the performance of users with textual lessons could not be prepared correctly, that is, we could not handle or understand the complexity of text used in the lessons. Secondly, since most of the students had in general low verbal skills (see Figure 5) so they were unable to properly comprehend textual contents of the lessons. 5. Conclusion and Future Work CITS is a domain independent intelligent tutoring system that teaches C++ language depending upon the cognitive skills and C++ knowledge of the student. The results shows that there is a potential of building such training systems which can train users in relatively short period of time not just based on their domain skills. The training thus given should not be just based on the designers’ approach for how to learn and solve problem but should be focusing on the strengths and weaknesses of an individual trying to learn the system. So while designing systems care needs to be taken to know an individual (i.e., to capture the personal attributes of the user’s) and then generate response to suite an individual’s requirements. We have made the application domain independent by using the cognitive skills of the students (created an intelligent agent), so it can be modified for teaching some other domains like Java, English Language etc. Key benefits of CITS includes: Can easily be modified to teach some other domain. Customizes to the cognitive skills of a student. Compresses learning time. Simulates the behavior of a human tutor. References [Ata et al., 1998] M. Ata-ul-Haleem, Qaiser Shehryar Durrani, Atif Gul, Beena Zaman and Sobia Zaka. Dynamic User Modelling. Proceedings of INMIC 98, IEEE Conference, Lahore, Pakistan, Nov, 1998. [Durrani, 1997] Qaiser Shehryar Durrani. Cognitive Modeling. A Domain Independent User Modeling. IEEE International conference on System man and cybernetics, Hyatt Orlando, Orlando Florida, USA, 1997. [Eliot and Park, 1995] Chris Eliot and Beverly Park Woolf. An Adaptive Student Centered Curriculum for an Intelligent Tutoring System. User Modeling and User-Adapted Interaction, 5: 67-86, 1995. [Eliot and Park, 1994] Chris Eliot and Beverly Park Woolf. Reasoning about the User within a Simulation-based Real-time Training System. Proceedings of User Modeling’94, the Fourth International Conference on User Modeling, 1994. [Hutchins, et al., 1986] E. L. Hutchins, J. D. Hollan and D. A. Norman. User Centered System Design – New Perspectives on HumanComputer Interaction. Direct Manipulation Interfaces in D. A. Norman and S. W. Draper (Eds,), Hillsdale, NJ: Lawerence Erlbaum and Associates, pp. 87-124, 1986. [Hyde and Tricky, 1995] Gillian Hyde and Geoff Trickey. Differential Aptitude Test (DAT) for Guidance – Manual. The Psychological Corporation, 1995. [Kay, 1994] Judy Kay. Lies, damned lies and stereotypes: pragmatic approximations of users. Proceedings of User Modeling’94, the Fourth International Conference on User Modeling, 1994. [Kobsa, 1993] Alfred Kobsa. User Modeling: Recent Work, Prospects and Hazards, M. Schneider-Hufschmidt, T. Kuhme and U. Malinowski in Adaptive User Interfaces: Principles and Practice, 1993. [Kobsa and Wahlster, 1993] Alfred Kobsa and Wolfgang Wahlster. User Model in Dialog system. Springer, Berlin, Heidelberg, 1989. [Kosko, 1995] Bart Kosko. NEURAL NETWORK AND FUZZY SYSTEMS: A Dynamic System Approach to Machine Intelligence. Prentice Hall International, INC., Englewood Cliffs, First Edition and Third Printing, 1995. [Wong et al., 1998] L.H. Wong, C.Quek, and C.JK Looi. TAP :A Software architecture for a inquiry Dialog based tutoring system. IEEE transaction on System, Mans and CyberneticsPart A: Sysytem and humans, Vol. 28, No. 3 1998. [Zia et al., 1998] Hassan Zia, Iram Saadat and Amir Riaz, User Modeling: Development, Prospects and Hazards. Proceedings of FISC’98, FAST IEEE Student Conference, Lahore, Pakistan, Oct, 1998. [Zia et al., 1998] Hassan Zia, Amir Riaz, and Farhan Ahmad. CITS: Final Year Project Report, FAST Institute of computer science, Lahore, Pakistan, 1998.