task based adaptive learning system · task based adaptive learning system m.tech project report...

47
TASK BASED ADAPTIVE LEARNING SYSTEM M.Tech Project Report Submitted in partial fulfillment of the requirements for the degree of Master of Technology by Naveen Bansal Roll No: 11305R010 Under the guidance of Prof. Deepak B. Phatak 16 th June, 2014 Department of Computer Science and Engineering Indian Institute of Technology, Bombay

Upload: truongtuyen

Post on 20-Apr-2018

218 views

Category:

Documents


1 download

TRANSCRIPT

  • TASK BASED ADAPTIVELEARNING SYSTEM

    M.Tech Project ReportSubmitted in partial fulfillment of the requirements

    for the degree ofMaster of Technology

    by

    Naveen BansalRoll No: 11305R010

    Under the guidance ofProf. Deepak B. Phatak

    16th June, 2014

    Department of Computer Science and EngineeringIndian Institute of Technology, Bombay

  • Dissertation Approval Certificate

    Indian Institute of Technology, Bombay

    The dissertation titledTask based Adaptive learning system

    submitted by

    Naveen Bansal

    (Roll No. 11305R010)

    is approved for the degree of

    Master of Technology in Computer Science and Engineering

    Prof. Deepak B. PhatakDept. of CSE, IIT BombaySupervisor Internal Examiner

    External Examiner Chairperson

    Date: 16th June, 2014Place: IIT Bombay, Mumbai

    i

  • Declaration

    I declare that this written submission presents my ideas in my own wordsand where others ideas or words have been included, I have appropriatelycited and referenced the original sources. I declare that I have properly andaccurately acknowledged all sources used in the production of this thesis.

    I also declare that I have adhered to all principles of academic hon-esty and integrity and have not misrepresented or fabricated or falsified anyidea/data/fact/source in my submission. I understand that any violation ofthe above will be cause for disciplinary action by the Institute and can alsoevoke penal action from the sources which have thus not been properly citedor from whom proper permission has not been taken when needed.

    Date: 16th June, 2014 Naveen BansalPlace: Indian Institute of Technology Bombay 11305R010

    ii

  • Acknowledgment

    I would like to express my deep gratitude to Prof. D.B.Phatak, whohas always been making things simple to understand. Without his deepinsight into this domain and his valuable time for this project, it would nothave been possible for me to move ahead properly. I would also like to thankMr. Raj Agrawal for his help in implemention, without his help, it wouldnot have been implemented on time, and Mr. Bhairavnath for his support indesign. They have been remarkable in their attempt to keep me motivatedin this project and has always tried to improve me with proper feedback.

    iii

  • Abstract

    MOOC (Massive Open Online Course) provides a new way of learn-ing, which is open, participatory, distributed and lifelong. Various premieruniversities of the world are now offering courses in the form of MOOC.Providing personalized feedbacks and recommendations to the participantsis a challenge, as the number of participants is very large, which makes itdifficult to monitor each participant. Presently, recommendations and feed-backs are static and do not matches with the participants needs. There isa need of an automatic system, which can give personalized feedbacks andrecommendations, to the participants, as per their needs. This work is anattempt to develop a system, which can give feedbacks in the form of taskswhich should be personalized to the participants need.

    In this work, we developed an improvised adaptive system, in whichadaptation is achieved by modeling the learners/participants, as per theirknowledge levels. Learners modeling requires to represent the domain in aspecific way, we used a combination of hierarchical and network based ap-proaches to represent the domain. A basic programming course is consideredfor demonstration of the system.

  • Contents

    1 Introduction 21.1 Adaptive Learning System . . . . . . . . . . . . . . . . . . . 3

    1.1.1 Adaptive Hypermedia . . . . . . . . . . . . . . . . . 41.1.2 What can be adapted? . . . . . . . . . . . . . . . . . 41.1.3 How to represent knowledge? . . . . . . . . . . . . . 51.1.4 Adaptive System Components . . . . . . . . . . . . . 5

    1.2 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

    2 Literature Survey 72.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 72.2 Role of User Model in Intelligent Tutoring Systems (ITS) . . 72.3 Information stored in User Model . . . . . . . . . . . . . . . 92.4 Techniques for user modeling . . . . . . . . . . . . . . . . . 9

    2.4.1 Bayseian Belief Network . . . . . . . . . . . . . . . . 102.4.2 Machine Learning Methods . . . . . . . . . . . . . . 102.4.3 Fuzzy Logic based technique . . . . . . . . . . . . . 112.4.4 Neural network based technique . . . . . . . . . . . . 112.4.5 Fuzzy clustering based techniques . . . . . . . . . . . 122.4.6 Neuro-Fuzzy techniques . . . . . . . . . . . . . . . . 12

    2.5 Comparative analysis of UM techniques techniques for differ-ent applications . . . . . . . . . . . . . . . . . . . . . . . . . 12

    2.6 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

    3 Proposed System: A Task Based Learning System 153.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . 153.2 4-layered architecture of the system . . . . . . . . . . . . . . 153.3 Knowledge Representation . . . . . . . . . . . . . . . . . . . 15

    3.3.1 Example . . . . . . . . . . . . . . . . . . . . . . . . . 163.3.2 Rules for Recommendation . . . . . . . . . . . . . . . 17

    3.4 Modeling Learner . . . . . . . . . . . . . . . . . . . . . . . . 183.4.1 Example Scenario . . . . . . . . . . . . . . . . . . . . 20

    3.5 Low Level System Architecture . . . . . . . . . . . . . . . . 213.5.1 System Initialization . . . . . . . . . . . . . . . . . . 21

    i

  • 3.5.2 Update the knowledge levels of related concepts . . . 213.5.3 Prioritization of Concepts . . . . . . . . . . . . . . . 22

    3.6 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

    4 Implementation Details 244.1 Systems requirements . . . . . . . . . . . . . . . . . . . . . 24

    4.1.1 Instructors requirement . . . . . . . . . . . . . . . . 244.1.2 Students requirements . . . . . . . . . . . . . . . . . 254.1.3 Other requirements . . . . . . . . . . . . . . . . . . . 25

    4.2 System Implementation . . . . . . . . . . . . . . . . . . . . . 254.2.1 Use case Diagram . . . . . . . . . . . . . . . . . . . . 254.2.2 Database Design . . . . . . . . . . . . . . . . . . . . 254.2.3 User Interfaces . . . . . . . . . . . . . . . . . . . . . 274.2.4 Installation steps . . . . . . . . . . . . . . . . . . . . 324.2.5 Summary . . . . . . . . . . . . . . . . . . . . . . . . 34

    5 Conclusion and Future Work 355.1 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 355.2 Future work . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

    Appendix A 36A.1 Installation Steps: . . . . . . . . . . . . . . . . . . . . . . . . 36

    ii

  • List of Figures

    1.1 Learning workflow in MOOC system . . . . . . . . . . . . . 31.2 Methods and Techniques for adaptive hypermedia . . . . . . 41.3 Components of an Adaptive System . . . . . . . . . . . . . . 5

    2.1 Modules in ITS [1] . . . . . . . . . . . . . . . . . . . . . . . 82.2 Classification of user models . . . . . . . . . . . . . . . . . . 92.3 Information stored in user model . . . . . . . . . . . . . . . 9

    3.1 4-layered architecture of the system . . . . . . . . . . . . . . 163.2 State diagram of objectives . . . . . . . . . . . . . . . . . . . 173.3 Relationships among objectives . . . . . . . . . . . . . . . . 183.4 knowledge representation . . . . . . . . . . . . . . . . . . . . 203.5 Initialization of concept nodes . . . . . . . . . . . . . . . . . 22

    4.1 Use case Diagram . . . . . . . . . . . . . . . . . . . . . . . . 264.2 Database Design . . . . . . . . . . . . . . . . . . . . . . . . 264.3 Home page . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284.4 Registration page . . . . . . . . . . . . . . . . . . . . . . . . 284.5 User course selection page . . . . . . . . . . . . . . . . . . . 294.6 User task selection page . . . . . . . . . . . . . . . . . . . . 304.7 Attempt task page . . . . . . . . . . . . . . . . . . . . . . . 304.8 Attempt quiz page . . . . . . . . . . . . . . . . . . . . . . . 314.9 Course display page . . . . . . . . . . . . . . . . . . . . . . . 314.10 Course details page . . . . . . . . . . . . . . . . . . . . . . . 324.11 Objective details page . . . . . . . . . . . . . . . . . . . . . 334.12 Interface to add questions . . . . . . . . . . . . . . . . . . . 334.13 Interface to add task . . . . . . . . . . . . . . . . . . . . . . 34

    1

  • Chapter 1

    Introduction

    Internet enabled learning gives a freedom of an effective navigation across thelearning domain [2]. As compared to a conventional classroom, where stu-dents have the limitation on the number of times to listen a lecture finitely,Internet based learning gives the infinite access to the learning material withbetter navigation. Apart from better navigation and infinite access to learn-ing material, there is a great opportunity of research to enhance Internetbased learning. In the developing countries e.g. India, the magnificent in-crease in the number of engineering students is the aftermath of increasednumber of engineering institutes [3]. As a result of this increase in a shortperiod of time, there is a lack of efficient infrastructure and very low fac-ulty to student ratio [3]. Various premier institutes e.g. Indian Institute ofTechnology Bombay, have started various projects like Ekalavya for trainingfaculties and students across the country [4].

    MOOC (Massive Open Online Courses) is an emerging area of researchwhich potentially can bridge the gap between good infrastructure and stu-dents. MOOC is an online course targeted for a very large scale participationof students and faculties. MOOC also provides an interactive discussion fo-rum for interaction among participants. The number of participants in acourse offered by a MOOC system, may vary from few thousands to mil-lions. Unlike a conventional class-room, where number of students is verysmall, it is easy to monitor the individual performance, and give a personal-ized feedback to the students, lectures at such large scale, where the numberof participants is diverse in terms of knowledge levels, culture, learning stylesetc., it is very difficult to monitor each student and give feedback which ispersonalized to an individual.

    Figure 1.1 shows the typical learning work flow in the MOOC environ-ment. The course material consist of lecture videos, exercises, assignmentsetc., which is divided weekly (generally). At the start of the week, all thestudy material for the current week opens for the learner. Learner watchvideo lectures, attempts exercises, discuss in discussion forum provided, com-

    2

  • Figure 1.1: Learning workflow in MOOC system

    plete assignments etc., after the deadline gets over, assignments of the learn-ers undergo evaluation procedure. Evaluation procedure is mostly peer eval-uation. The same procedure is repeated for the next week till the course isnot completed.

    In this implementation of MOOC system, Learner gets feedback onlyafter the deadline is over, and based on the assignment evaluation. In thiscase, significance of the feedbacks is very less, as the learner is busy in doingthe next weeks assignments and lectures. This feedback is also dependson the performance in assignments therefore not completely personalized tohis/her learning.

    1.1 Adaptive Learning System

    Considering the above limitation in the MOOC system, there is a need of asystem that can give the recommendation/feedback, and the feedback shouldbe the recommendation of some tasks to complete based on his/her learning.To achieve this kind of adaptation, system needs to understand the usersneed and knowledge levels.

    3

  • Figure 1.2: Methods and Techniques for adaptive hypermedia

    1.1.1 Adaptive Hypermedia

    Adaptive Hypermedia is the collection of all techniques which can be used toenable adaptation in a web based application. Figure 1.2 shows the methodsand techniques in adaptive hypermedia.

    We aim to construct a system with the following goals in mind.

    The system should have information e.g. learner preferences, knowl-edge levels, etc., of all the students.

    After the lecture, system should present the most relevant concepts tothe learner, that s/he may be lacking and should prepare before thebeginning of the next week/session.

    The system should give a liberty to the students, to over-rule the rec-ommendations from the system and study according to there individualgoals.

    1.1.2 What can be adapted?

    Adaptation decisions are based on various characteristics of the users in-teracting with the system [5]. These characteristics together construct auser model in the system. These characteristics includes user interests, userindividual traits, user performance etc. Using all the data about the user,system should construct a learner model(user model), which represents aparticular learner in the system. This model has to be updated during thecourse of interaction between the learner and the system. In chapter 2, wereviewed the existing techniques to construct user models in the learningenvironment. Chapter 2 also presents the type of information that shouldbe stored in the user model in order to achieve adaptation.

    4

  • Figure 1.3: Components of an Adaptive System

    1.1.3 How to represent knowledge?

    Knowledge representation is also called Domain representation. Adaptationis largely depends on How the domain knowledge is represented in thesystem. Representation of the knowledge is specific to the learners modeli.e. each learner modeling technique may have different way to representknowledge. Chapter 3 focused on a review of various domain representationtechniques for different types of learner models. Chapter 3 also gives themathematical formulation of domain (knowledge) representation which isused to construct our system.

    1.1.4 Adaptive System Components

    Figure 1.3 represents the components of a typical adaptive system. In the fig-ure, it should be noted that, Decision making engine is taking the data fromUser models and Hypermedia DB. Decision making engine is responsible formaking decisions about an individual learner. This tells the importance ofmodeling user and designing the database. Chapter 2 is focussed on two im-portant components of adaptive system i.e. UM generator and HypermediaDB. Following list gives a brief introduction about various components ofadaptive system.

    Learner refers to the user who attend the live lectures and interactswith the application for learning process. Learner may be in close orremote location e.g. teachers, students etc.

    5

  • Designer refers to the faculty or the individual who design the learningmaterial for the domain.

    UM generator refers to the module which is responsible making modelof a particular user based on their preferences and knowledge levels.

    Hypermedia DB is a database of all the learning material of a particulardomain under consideration.

    User models are the users impression in the system based on individualtraits such as knowledge level.

    1.2 Summary

    In this chapter, a brief introduction to MOOC system is presented. Thepossible enhancement to a MOOC system is proposed. The enhanced ver-sion of MOOC system requires an adaptive feedback system integration, forwhich high level requirements are presented. This chapter also presents thecomponents of an adaptive system used in a learning environment. Thereare two important components namely UM generator and HypermediaDBthat needs to be elaborated more. In the next chapters, the detailed archi-tecture of adaptive application and its components are presented. Chapter2, gives an overview of various existing efforts to model a learner in adaptivesystems. The aim of Chapter 2 , is to review various efforts in the directionof adaptation, in adaptive hypermedia.

    6

  • Chapter 2

    Literature Survey

    2.1 Introduction

    Adaptive systems keeps two types of information related to each user namelyUser profile/Learner profile and User model/Learner model. The two termsare apparently same but, in practical both are significantly different. [6] Thedifference is in the amount of information that they possess. User Profiletypically possesses the personal information about the user. Personal infor-mation contains preferences, the style of learning, intellectual abilities. Userprofile can be adjusted by the user. User model is the system generatedmodel for each user based on some criteria. User profile serves as a precur-sor for User model. User profile helps the system to make User model byproviding personal details about the user.

    User model directly related to the adaptation property in the adaptivehypermedia systems. The adaptation is achieved by a three step process,1. Capturing information about the user, 2. Processing the information tocreate or update user model and, 3. provide adaptation by using user model.

    2.2 Role of User Model in Intelligent Tutor-

    ing Systems (ITS)

    An Intelligent Tutoring System usually represented by four componentsnamely 1. Student Module, 2. Tutoring Module, 3. Expertise Module,and 4. Interface Module. Out of these four components, first three compo-nents consist of specific type of user model. Figure 2.1 represents the fourdifferent modules of an ITS [1]. Expertise Module provides all the necessaryknowledge about the domain e.g. answers to the problems etc. ExpertiseModule is the most important component to enable adaptive feedback. Stu-dent Module consists of the measurement of the users knowledge about the

    7

  • Figure 2.1: Modules in ITS [1]

    domain, users preferences and characteristics. Tutoring Module representsthe rules which gives the adaptive system, a human tutor like perception [1].Tutoring Module have the following functions in ITS.

    Domain Knowledge representation.

    Diagnosis of users Knowledge.

    Prediction of future actions.

    Knowledge development

    The purpose of the user model is the Knowledge development of the user.Knowledge development is achieved in four stages namely what to teach, howto teach, and implementation of teaching actions [7] .

    What to teach: To meet this purpose, tutoring module takes the cur-rent knowledge level about the user from the student module. Withthe help of knowledge level, tutoring module can decide the learn-ing sequence of the domain for a particular user. Learning sequenceconsists of different tasks and related knowledge modules containingconcepts, exercises, quizzes etc. This learning sequence helps the userto find proper and efficient path as per the users knowledge about thedomain. This learning sequence can be of two types namely low levelsequencing and high level sequencing. Low level sequencing dependsonly on user model whereas high level sequencing depends on domainknowledge along with user model [8].

    How to teach: To achieve this purpose, student model provides learn-ing style and preferences to the tutoring module. With the help ofthis information, tutoring module modifies the tasks such as level ofexplanations, type of examples etc [8].

    Implementation of Teaching Actions: This purpose also meet after aknowledge transfer from the student model to the tutoring module. Atthis stage, tutoring agent may modifies some teaching actions accord-ing to the user model [8].

    8

  • Figure 2.2: Classification of user models

    Figure 2.3: Information stored in user model

    2.3 Information stored in User Model

    There are broadly two types of information stored in user model namely Do-main specific information and Domain independent information [1]. Figure2.3 shows the types of information stored in user model.

    Domain specific information contains knowledge state of user for the do-main. There are different types of user models, domain specific informationvaries with the type of user model adopted. Domain specific informationvaries as the user interact with the system. Domain independent informa-tion contains all the information which is not dependent on a particulardomain e.g. learning style, goals, preferences, background and experienceetc [7].

    2.4 Techniques for user modeling

    A typical adaptive system is divided into two parts namely server side andclient side [9]. The server side part is responsible for generating user modelbased on the user interaction and other information stored in the systeme.g. user preferences. Decision Making and Personalization Engine takesthe information from user model and makes the decision about adaptation.UM(user model) generation module is responsible for generating user modelfrom the system [9]. Figure 1.3 represents the different components of adap-

    9

  • tive system.Focus of the literature survey is to find out the different methods adopted

    in the past for user modeling. Given below are some types of user modelingtechniques in adaptive systems.

    2.4.1 Bayseian Belief Network

    Efforts have been made to use Bayseian Belief Network (BBN) to gener-ate learning paths [10] in a particular domain. In [10], a method to selectan optimal learning path among various candidate paths, is described. ABayseian Belief Network is a directed graph in which each node representsan uncertain variable of interest and edges are causal or influential inks be-tween the variables. Each node is associated with a probability table. Thisprobability table is a set of conditional probability values that models theuncertain relationship between the node and its parents together [10]. [11]also attempts to use BBN to sequence the learning material for the learner.The knowledge material is divided into set of learning objectives. The ac-tions corresponding to each learner can be of three types namely passivei.e. for which student do not require to use his/her knowledge (reading),Individual active i.e. for which student is required to use his/her knowledge,and collective actions i.e. actions related to group activities (discussions,projects etc.). The Utilities for each action can be calculated as:U = w1.E1 + w2.E2 + w3.E3 + w4.E4........+ wn.Enwhere wi is the weight associated with each evidence.

    2.4.2 Machine Learning Methods

    In most of the user modeling techniques listed in the next subsections, mea-surement of the users knowledge level can be done efficiently but they missthe assumptions about the interaction preferences or behavior pattern of theuser. A user always leaves some pattern while interacting with the hyper-media system. Machine learning techniques can be applied to analyze theregularities in these patterns and these regularities can later be integratedwith user model [9]. Such a system becomes gradually more effective asit learns the users interests, habits and preferences [12]. Machine learningis used to construct the behavior oriented user models. Various efforts aremade to use machine learning techniques to create user models that can beused in learning e.g. [12] presents a unique modeling technique called featurebased modeling technique that can be used in learning in tutoring systems.

    Various other sophisticated methods, which uses machine learning con-cepts, also employed in adaptive systems e.g. [13] attempts to use graphbased induction to process pre-defined domain knowledge and observations

    10

  • and find out some specific patterns. It is also seen that machine learningcan be used for user classification [14] and plan recognition [15].

    Limitations

    The limitation of machine learning is the need of large amount of data [9] e.g.click streams and search logs etc. The purpose of this study is to make anintegrated system for adaptation with MOOC, where this type of dataset isnot available. System is provided with a user profile and some assumptionsof the users knowledge. In this case machine learning is not feasible toapply.

    2.4.3 Fuzzy Logic based technique

    The limitation of the traditional machine learning approach for user mod-eling can be overcome by using soft computing techniques. Fuzzy logic isan example of soft computing technique aimed to capture the ambiguitypresent in real information [9]. [16] gives the introduction to the fuzzy logic.Fuzzy logic is used in vast variety of applications e.g. [17] It is observedthat fuzzy logic is used in recommendation system to recommend productsin e-commerce sites. A fuzzy logic based user modeling typically models astereotype that characterizes users, with the help of membership functionsand recommendation is achieved using fuzzy AND operator. It is also notedthat, fuzzy logic can also be used for filtering tasks [18]. The machine learn-ing techniques are designed to make rules and inferences from the availabledata. But, in our case, the data is not available. So, rules have to beexplicitly specified in the system.

    Limitations

    System cannot learn by applying fuzzy logic alone. Fuzzy logic along withmachine learning should be used if the system needs to learn about the usersbehavior. In our case, there is no explicit need to learn about the users.The system can adapt by specifying the rules explicitly.

    2.4.4 Neural network based technique

    Neural network can also infer a meaningful pattern form the set of large andimprecise data. [19] Gives a brief introduction to the neural networks baseduser modeling. For modeling human behavior neural networks proved to bethe most efficient techniques [19]. For classification and recommendationtasks, neural networks systems found useful e.g. classification of user nav-igation paths [20], models student behavior in intelligent tutoring systems[21] [22].

    11

  • Limitations

    In [22], neural networks and machine learning techniques are used to con-struct students model in an intelligent tutoring system. In this paper, usermodel is generated by a two phase learning algorithm where in the firstphase, training is done by exploiting the data from all the students inter-acting with the system. In the second phase learning about the users, isachieved. One need is common to most of the neural network technique i.e.learning [21] [22]. This learning requires a huge amount of data set. Con-sidering the motivation behind this work, this technique is also not suitablefor our system.

    2.4.5 Fuzzy clustering based techniques

    Clustering is the classification of a data point into different stereotypic clus-ters. There are two types of techniques for this type of classification, namelyhard clustering (non-fuzzy clustering) and soft clustering (fuzzy clustering).In the hard clustering, a data point can belong to only one cluster at a time.There is very well defined boundaries of each cluster. A point can be insidethe cluster or outside (binary classification) for each cluster whereas, in softclustering (Fuzzy clustering), data points can be a part of more then onecluster at a given amount of time. A membership function is associatedwith every data point which specifies the degree of belonging of a particulardata point to a given cluster. Fuzzy clustering can be used in measuring theknowledge level of the learner for a particular concept module, where it isvery difficult to categorize the learner based on the score in the examina-tion. Fuzzy classification technique fuzzifies the classification of learners into different classes.

    2.4.6 Neuro-Fuzzy techniques

    It is the combination of neural networks and fuzzy logic for user modelingtasks. Like machine learning and neural networks technique, this techniquealso needs large amount of data to learn about the users.

    2.5 Comparative analysis of UM techniques

    techniques for different applications

    Selecting a technique for the desired application is always been a challengesince every application of adaptive hypermedia is different in terms of thelevel of adaptation, rules for adaptation, training data available. [9] presents

    12

  • some guidelines to select the technique as per the need. The dimensions forcomparison that are taken into considerations are listed below:

    Computational complexity refers to the time elapsed in off line pro-cessing.

    Dynamic modeling refers to the ability of the technique to alter theuser model while the application is running.

    Labeled/Unlabeled refers to the type of data the given technique needsi.e. labeled data or unlabeled data.

    Size of training data refers to the amount of data the technique needsfor adaptation purpose.

    Uncertainty refers to the ability of the technique to handle uncertain-ties.

    Noisy data refers to the fact that whether noisy data will affect usermodel that is produced by the technique.

    It is also noticed that machine learning techniques are not suitable be-cause in the case of first for dimensions it under-performs compared to thetechniques listed in previous section [15]. Machine learning algorithm needsa large amount of off line processing in training to create user models [15],once the models are created it is very difficult to change on the fly [15],size of the data needed is also huge [15] and machine learning algorithm alsoneeds labeled data for learning [15]. Table 2.1 compares many user modelingtechniques [9]. Table 2.2 provides the recommendations for the selection oftechniques based on the type of adaptive application.

    Table 2.3 are some of the adaptive systems based on learner characteris-tics.

    2.6 Summary

    In this chapter, an overview of different user modeling techniques is given.User can be modeled by machine learning techniques but, in our case ofMOOC implementation, pattern data of the users is not available. So, inthis case, it become implicit to construct the rules for the system insteadof learning by machine learning techniques. Table 2.2 clearly shows that,Fuzzy logic is best suited for the task of recommendations. The knowledgerepresentation for the fuzzy logic technique needs to be reviewed. In thechapter 3, a review of various knowledge representation techniques, is given.

    13

  • Technique Comp-lex-ity

    Dynamicmodel-ing

    Labeled/Unla-beled

    Size oftrain-ingdata

    Uncer-tan-ity

    Noisydata

    FuzzyLogic

    Med Yes N/A N/A Yes Yes

    NeuralNetworks

    High Yes Both High Yes Yes

    Fuzzy clus-tering

    High/Med

    No Both Med/High Yes Yes

    Neuro-Fuzzy

    High Yes Labeled Med/High Yes Yes

    Table 2.1: Characteristics of different techniques for user modeling [9]

    Task Needed Not NeededPrediction NeuroFuzzy Neural NetworksRecommendation NeuroFuzzy

    Fuzzy LogicNeural Net-works, Fuzzyclustering

    Classification Neuro Fuzzy Neural Net-works FuzzyClustering

    Filtering Fuzzy Logic Neural Networks

    Table 2.2: Techniques recommended for adaptation tasks [9]

    Adaptive Sys-tem

    based onknowledge

    based on pref-erences

    ELM-ART YES -AHA! YES -Hyperadapter YES YESNetcoach YES YESInterbook YES -

    Table 2.3: Adaptive systems based on learners characteristics [23]

    14

  • Chapter 3

    Proposed System: A TaskBased Learning System

    3.1 Introduction

    We are aimed to design a Task based system. Task is a small component ofa larger learning objective, which cosists of, learning material in the form ofvideo and text description, examples, and quiz. The system should adaptthe needs of the users dynamically and update itself during the operation.In the context of user modeling, we surveyed out that, fuzzy logic is the bestsuited technique for our application because of the absence of training data(please refer chapter 2 for more details).

    3.2 4-layered architecture of the system

    Figure 3.1 shows the architecture of the system.The proposed Task basedlearning system consist of four layers. The layer 1 includes all the coursesregistered in the system. Layer 2 represents the objectives of each courseregistered. Layer 3 stores all the tasks (hierarchically arranged) and theirrelationships and the learning material i.e. theory, exercises, quizzes etc isstored in layer 4.

    3.3 Knowledge Representation

    We have surveyed out various techniques for knowledge representation inchapter 2. It is found out that, fuzzy cognitive maps are the most suitedtechnique for knowledge representation. The technique is adopted from theexisting systems in the field of intelligent tutoring system (ITS) of the samekind [24].

    15

  • Figure 3.1: 4-layered architecture of the system

    We divide the whole course in the smaller components called objectivesand then to further smaller subcomponents called Tasks. An objective is acombination of certain number of tasks. The tasks with in the objective arehirarchically arranged on the basis of complexity (decided by the instructor).Various objectives are also related due to the relationships among the tasksof different objectives.

    Each task consists of knowledge material that is stored in the database.Theknowledge material is in the form of Theoratical description about the task,video lacture about the task, Example of the task and the quiz to evaluatethe progress in the task.

    3.3.1 Example

    We are considering a basic programming course for our study. In this course,we considered four objectives and 4-5 tasks with in each objective.

    The example tasks related to the given objectives are shown in Table3.2. The first column specifies the objective ID, second column specifiestask ID and third column specifies Task description. taskp represents theprerequisite task that needs to be achieved in order to unlock the objective.Note that all the tasks of a particular objective are hierarchically arrangedon the basis of difficulty level. There is a relationship between the tasksof two different objectives for example - if a learner knows (O2,task3) thenhe/she must know about (O1,task3) (although its not guaranteed), so we canskip (O1,task3) in our recommendation. In this way, the recommendationscan be achieved which is personalized to the learner. We need to declare therules for recommendation.

    16

  • Figure 3.2: State diagram of objectives

    3.3.2 Rules for Recommendation

    In order to achieve the personalized task recommendations, we need to ex-ploit the relationship among the tasks of the objectives. Figure 3.3 showsthe relationships among the objectives of the concepts. There are two typesof relationships namely, hierarchical relationship and non-hierarchal rela-tionship. Solid arrows shows the hierarchal relationship whereas dashedarrows shows non-hierarchal relationship. hierarchical relationship is therelationship among the tasks of a given objective whereas, hierarchical rela-tionship is the relationship among the tasks of different objectives. A taskis considered to be achieved, if a learner fulfills two conditions:

    viewed the video related to that task.

    attempted all the exercises and quizzes and score a minimum thresholdmarks.

    Given below are the rules that needs to be implemented in order toachieve adaptive task recommendation.

    Rule 1: If a learner achieves a particular task, then all the tasks fromroot to this task in hierarchical ordering, are considered to be achieved.

    Rule 2: If the learner achieves a task, then all the tasks related to itin a non-hierarchical relationship should be considered to be in readystate.

    Rule 3: If a particular objective has to be recommended to the userthen the last task that is in ready state should be shown to the learner.

    Rule 4: If a student achieves a task which was in ready state thenRule 1 should be applied.

    Figure 3.2 shows the state diagram of a particular Task. In addition tothe above rules, two objectives are related if atleast one task between twoobjectives are related by a non-hierarchical relationship. There is an arrow

    17

  • Figure 3.3: Relationships among objectives

    Module id ConceptO1 Building blocksO2 Decision makingO3 learn to repeat (iteration)O4 Learn to store the data

    Table 3.1: An example lecture

    in the graphical representation of concepts (Oi, Oj), if atleast one task of Oiis related to Oj.

    There can be more then one relationship graphs possible for a givencourse module. Figure shows a possible relationship graph for our exampletable.

    3.4 Modeling Learner

    Learner modeling is the systems assumption about the learner. In ourapplication this assumption is largely focused on the measurement of thelearners knowledge for a particular objective. Learners knowledge can berepresented by four tuples for a particular concept module given by:

    (Un,Uk,K, L)

    Elaboration for above four parameters are given below:

    Unknown(Un): the knowledge level associated with each objectiveis from 0% to 60%.

    Unsatisfactory known(Uk): knowledge level is 55% to 75%.

    Known (K) : knowledge level is 70% to 90%

    18

  • Concept id Objective id DescriptionO1 Taskp Say Hello to the worldO1 Task1 Understanding Constants and variablesO1 Task2 Know the basic operatorsO1 Task3 C-ExpressionsO2 Taskp Do this task to learn about decision

    makingO2 Task1 Determine a number is Even/OddO2 Task2 check a given number is even or oddO2 Task3 Find out the greater of three numbersO2 Task4 Shortcut to if-else (switching)O3 Taskp Do this task to learn how to iterate over

    a block of codeO3 Task1 Find the sum of first 100 integers

    (for+while)O3 Task2 Find out the average of Even numbers

    between 1 to 100O3 Task3 Find out all the prime numbers be-

    tween 1 to 100O4 Taskp Do this task to learn how to store the

    dataO4 Task1 Take the user input and store them in

    ArrayO4 Task2 Find out the largest integer in the arrayO4 Task3 Find the sum of integers stored in arrayO4 Task4 Find the alternate elements stored in

    Array

    Table 3.2: An example of concept to objective table

    19

  • Figure 3.4: knowledge representation

    Learned(L): knowledge level is 85% to 100%

    These four parameters are four fuzzy sets based on the knowledge levelfor a particular concept. Let the knowledge level for a given objective is x.The membership function for the above four fuzzy sets are given by:

    Un(x) =

    1, x 551 (x 55)/5, 55 < x < 600, x 60

    UK(x) =

    (x 55)/5, 55 < x < 601, 60 x 701 (x 70)/5, 70 < x < 750, x < 55

    0, x 75

    K(x) =

    (x 70)/5, 70 < x < 751, 75 x 851 (x 85)/5, 85 < x < 900, x 700, x 90

    L(x) =

    (x 85)/5, 85 < x < 901, 90 x 1000, x 85

    3.4.1 Example Scenario

    If the learners knowledge level x is calculated as 89% for a particular conceptmodule the the values of all the four membership is given as:

    20

  • (Un, UK , K , L) = (0, 0, 0.2, 0.8)

    The above equation represents that, the particular objective is 20%known and 80% learned. The knowledge level of the learner is calculatedwith the help of quizzes and exercises.

    3.5 Low Level System Architecture

    There are three steps that needs to be followed in order to achieve adaptivetask recommendation for the learner.

    System Initialization.

    Update the systems assumptions about the learner.

    Prioritize the concept modules that needs to be recommended.

    3.5.1 System Initialization

    Initialization of the system refers to capturing initial data about the user e.g.user preferences, learning style, knowledge level about all the concept taughtin the week. The initial parameter that we are focused on is knowledge levelof all the concepts taught. This knowledge level can be captured by usingexercises and quizzes of the week. The structure of the quizzes and exercisesshould be pre-defined and the structure is such that each question must bemapped to to a given task of a given objective. The number of objectivesare also finite for a given course.

    There is a hierarchical relationship among the tasks. So, if a learnermeets the lower level task, the upper level task will be treated as completed.After the tasks of a particular objective is achieved, the the knowledge levelof the objective is calculated as:

    Knowledge level(Oi) =Number of Tasks achieved for Oi

    Total number of Tasks in Oi

    3.5.2 Update the knowledge levels of related concepts

    Figure 3.5 shows the state of each objective after the first step. A objectivemay be related to other objectives of the domain. If a task of a particularconcept is achieved, then it will also affect the knowledge levels of otherobjectives of the domain. After the achievement of an objective, the relatedtasks of the other concept module becomes ready.

    In this way, for a particular objective, all the related objectives tasksbecomes ready, if they are in a non-hierarchical relationship with the tasksof the given objective.

    21

  • Figure 3.5: Initialization of concept nodes

    3.5.3 Prioritization of Concepts

    After the objective nodes are initialized, we get the quadruple values of allthe concepts related to a particular lecture. Now we need to recommendthe tasks that needs to be achieved. The need of the system is such that,the learner should able to cover all the objectives in minimum amount oftime. There can be many approaches to prioritize the objective module forthe learner. Some of the approaches are given below:

    Approach 1: After the completion of an objective, all the relatedobjectives have some tasks in the ready state. We can select the nextobjective on the basis of the distance of the task in the ready state fromthe last task of that objective. The objective having the minimumdistance between the last task and the the task having ready statewill be chosen for recommendation. The advantage of this approach isthat, the chosen recommended objective have a few tasks to be coveredin order to complete the concept module.Limitation: In this case we are not considering knowledge level oflearner. If according to the membership function, the knowledge levelis learned and this objective have the minimum distance then it willbe chosen over the objectives which are in the known state.

    Approach 2: After the completion of an objective, the next objectiveis selected such that the selected module have the maximum number oftasks that can make others task to ready state. The advantage of thisapproach is that, every time we select the objective that affects otherobjectives largely. This makes the faster completion of objectives.

    22

  • Approach 3: In both of the above techniques, Learners knowledgelevel is not taken into consideration. After the first step, four tuples areassociated with each objective. We should try to make all objectivesfrom unknown to unsatisfactory known then to known progressively.If all objectives are known then try to make all objectives as learned.

    Approach 4: In approach 3, we select all the objective having maxi-mum unknown level for a particular concept. We can select the objec-tive that are in known level and then proceed to unsatisfactory knownand progressively to unknown. In this case, known and unsatisfactoryknown can make the objective that are in unknown state, more easilyunderstandable if there is a relation among the objectives.

    3.6 Summary

    In this chapter, we presented the low level architecture of the system. Knowl-edge representation/domain representation is covered by considering a caseof basic programming course. Fuzzy logic rules are presented for measur-ing the knowledge level of learner for a particular concept module. Adap-tive recommendations can be achieved in three steps namely, initialization,updation and prioritization. There can be various approaches for conceptprioritization, three of which are introduced in the chapter. The systemssuccess depends on the selection of the prioritization approach of conceptswhich is domain dependent.

    23

  • Chapter 4

    Implementation Details

    In this chapter, implementation details of the system are provided. Furthersections includes requirement specifications, Database design, User interfacesand the test plan.

    4.1 Systems requirements

    There are two types of users interact with the system i.e. Instructor and theStudent. Both users have different sets of requirements.

    4.1.1 Instructors requirement

    Listed below are requirements associated with the Instructor:

    Instructor should see the list of courses offered by him/her.

    Instructor should see all the objectives associated with a particularcourse. Additional requiments includes:

    S/He must have an interface to add/delete/update a given objec-tive.

    Instructor should be able to view tasks of all the objectives. Additionalrequirements includes:

    S/He must have an interface to add/delete/update task.

    Instructor must be able to add questions in the pool of a course. Ad-ditional requirements includes:

    S/He can see all the questions present in the pool

    Instructor must be able to create a quiz with available questions for aparticular task.

    24

  • 4.1.2 Students requirements

    Listed below are the requirements associated with student.

    Student should be able to register for a course.

    Student can view all the courses in which s/he is enrolled.

    Student should be able to view all the pending tasks for objectives

    Student can attempt a task. Additional requirements includes:

    S/he should be able to see video related a particular task.

    S/he should see the task description with examples submitted byinstructor

    Student should be able to attempt quiz related to a particular task.

    4.1.3 Other requirements

    Both types of users must be authenticated before interacting with thesystem.

    There should be three types of tasks, namely, Locked tasks, Readytasks and Achieved tasks.

    All the tasks should be visible and re attempt-able.

    4.2 System Implementation

    This section includes Database design, and the interfaces of the end system.

    4.2.1 Use case Diagram

    There are two types of actors interacting with the system. Fig 4.1 representsthe use case diagram of the system. Various functionalities of both actorsare captured and implemented in the database design presented in the nextsubsection.

    4.2.2 Database Design

    Fig 4.2 represents the Database design of the system. The important entitiesare explained below :

    Users relation records the information about the users (instructors andstudents) for authentication.

    25

  • Figure 4.1: Use case Diagram

    Figure 4.2: Database Design

    26

  • TaskDetails relation have all the information about the tasks as wellas the mapping to the objectives with objective Ids.

    ObjectiveDetails relation contains the information about all the objec-tives in the system.

    StudentToObjective contains the scores of each student for a particularobjective. There is another important parameter named as distancewhich is useful in selecting the next best objective to be presented tothe student.

    StudentToTask is a mapping from student to task. It also stores thestate of each task for each student.

    QuizToTask stores the mapping from quiz to a particular task.

    QuizDetails stores the mapping from a quiz to all the questions relatedto this quiz.

    QuestionDetails contains all the questions of all the courses in thesystem.

    TaskState relation stores three types of states for each task.

    Roles relation stores the different roles of the users. In our case wehave student and instructor as roles.

    UsersToCourse relation records the mapping between the users(students)and course.

    TaskDependency relation stores the information about task depen-dency. It stores two task Ids Ti and Tj where Ti influences Tj.

    4.2.3 User Interfaces

    There are three types of user interfaces, namely, student side interfaces,instructor side interfaces, and common interfaces.

    Students side interfaces

    Fig 4.3 represents Login page, which gives an interface for authentica-tion of users. This interface is common to both, student and instructor.Users are expected to provide username and password.

    Students registration page gives a student, a platform to register inthe course. Fig 4.4 represents student registration page, this interfaceallows a student to choose a course to register. User also asked toprovide a password for logging into the system.

    27

  • Figure 4.3: Home page

    Figure 4.4: Registration page

    28

  • Figure 4.5: User course selection page

    Fig 4.5 represents Student course selection page. If a student is regis-tered in more then one course, then this page gives a window to selecta course to proceed.

    Fig 4.6 represents Student Task selection page. In this page, the stu-dent is presented with three types of tasks present in the system. Stu-dent can click on attempt task to view the details of the selectedtask.

    Fig 4.7 represents Attempt task page: This page displays an actualtask selected by student. Student is able to see video related to thistask, description about this task and the examples associated with thistask. Student can download this video by clicking on download thisvideo in the left panel of the window. Student can also attempt quizby clicking on attempt quiz button.

    Fig 4.8 represents Attempt quiz page. This page gives a quiz in theform of multiple choice questions. Student can submit the quiz byclicking on submit button.

    Instructors side interfaces

    Fig 4.9 represents courseDisplay page, it presents all the courses offeredby the instructor. Instructor may choose one of the courses to see allthe objectives related to it. Instructor may add new course by clickingon add course button.

    29

  • Figure 4.6: User task selection page

    Figure 4.7: Attempt task page

    30

  • Figure 4.8: Attempt quiz page

    Figure 4.9: Course display page

    31

  • Figure 4.10: Course details page

    Fig 4.10 represents courseDetails page, which gives the list of all theobjectives in a particular course. Instructor have to option to add anew objective. S/He may also delete the existing objective.

    Fig 4.11 represents ObjectiveDetails page, which lists all the tasks ofa particular objective. Instructor have to option to delete/update aparticular task. S/He also have an option to create quiz for a particulartask.

    Fig 4.12 representsaddQuestion page, which gives the interface to addquestions to the pool of questions of a course. Instructor is supposeto write a question and provide four options, checkboxes are providedto mark the correct option. There may be multiple possible correctoptions.

    Fig 4.13 represents addTask page, which provides an interface to addnew task of a particular objective. In this interface the instructor isexpected to write the name of the task along with the description anddependency on other tasks.

    4.2.4 Installation steps

    The installation steps includes to install python (as this system is con-structed using Django framework), edx. The detailed explanation aboutinstallation can be found in Appendix A.

    32

  • Figure 4.11: Objective details page

    Figure 4.12: Interface to add questions

    33

  • Figure 4.13: Interface to add task

    4.2.5 Summary

    In this chapter, the details related to implementation is presented. Keepingthe integration of this system in mind, the implementation is carried out inDjango framework as the existing MOOC system is in the same. Implemen-tation details includes all the user interfaces, database design and use casediagram.

    34

  • Chapter 5

    Conclusion and Future Work

    5.1 Conclusion

    In this report, the existing efforts in the direction of adaptive learning arepresented. We build a Task based learning system, in which, the domainis segregated in small objectives and tasks. The system exploits the rela-tionships among the tasks to learn about the users understanding abouta particular concept (or objective). With this learning, a faster and per-sonalized mode of tutoring can be achieved. Unlike other approaches, thissystem does not need any expert to fix the dependency values which makesit domain independent and easy to implement.

    5.2 Future work

    There are many possible enhancement in the current version of this system,for example, at the instructors side, the input is taken in the HTML format,it can be made more efficient by giving a platform to automatically converta given text into its HTML equivalent and it needs to be integrated with thecurrent Edx platform. This system is tested on a limited number of users(5-10), there is a need to test this system by larger number of participantsto identify and correct (if any) loopholes.

    35

  • Appendix A

    Python (Django framework) is the underlying programming language usedto develop this system. Data is stored in MySQL database server. Listedbelow are the installation steps to run this project.

    A.1 Installation Steps:

    1. Install python (if not installed already).

    sudo apt-get install python

    2. Install Django version 1.6 if not already install in your system. Tocheck your django version use the following command.

    python -c "import django; print(django.get_version())"

    To install Django in your machine follow the instruction in the follow-ing link: Install Django

    3. Next install the MySQL database server and MySQL database adapterfor django, if not already installed. Use the following command.

    sudo apt-get install mysql-server

    sudo apt-get install python-mysqldb

    4. Now as the installation is complete, create the new Django projectusing the following command.

    django-admin.py startproject

    5. Change the following attributes of the DATABASES variable in set-tings.py

    36

    https://docs.djangoproject.com/en/dev/topics/install/#installing-official-release

  • USER: Username of your MySQL server database

    PASSWORD: Password of your MySQL server database

    HOST: Enter the IP of the machine where your database serveris residing.(localhost if server is in the local machine)

    If you want to use any other database server, follow the instruction inthe following url, to configure your django project accordingly.

    http://www.djangobook.com/en/2.0/chapter05.html

    6. In the next step unzip the downloaded source file and copy the three di-rectories from ARS directory namely templates, participants, staticto your project directory.

    7. Add instructor to INSTALLED APPS variable in settings.py file.

    8. Next go to your project directory, and run the following command tostart the server, and run project.

    python manage.py runserver 0.0.0.0:8000

    9. Next open the following url in your borwser to open the run the project.You will be redirected to login page.

    http://:8000/

    37

    http://www.djangobook.com/en/2.0/chapter05.htmlhttp://:8000/

  • Bibliography

    [1] P. Brusilovsky, The construction and application of student models inintelligent tutoring systems., Computer and System Sciences Interna-tional, vol. 32, pp. 7089, July 1994.

    [2] J. Vassileva and R. Deters, Dynamic courseware generation on thewww, British Journal of Educational Technology, vol. 29, no. 1, pp. 514, 1998.

    [3] V. P. M. Rangan Banerjee, Engineering education in india, ObserverResearch Foundation.

    [4] Ekalavya project. http://www.http://ekalavya.it.iitb.ac.in/ekalavyaHome.do{@IITBombay,mumbai}, 2013 [accessed on 12-09-2013].

    [5] P. Brusilovsky, Adaptive hypermedia, User Modeling and User-Adapted Interaction, vol. 11, pp. 87110, Mar. 2001.

    [6] N. P. de Koch, Software engineering for adaptive hypermedia systems.PhD thesis, PhD Thesis, Verlag Uni-Druck, Munich, 2001.

    [7] P. Brusilovsky, Student modelling and adaptivity in web based learningsystems, Computer and System Sciences International, vol. 32, p. 7089,July 1994.

    [8] P. Brusilovsky, Adaptive educational systems on the world-wide-web:A review of available technologies, Computer and System Sciences In-ternational, 1994.

    [9] E. Fras-Martnez, G. Magoulas, S. Chen, and R. Macredie, Recentsoft computing approaches to user modeling in adaptive hyperme-dia, in Adaptive Hypermedia and Adaptive Web-Based Systems (P. Braand W. Nejdl, eds.), vol. 3137 of Lecture Notes in Computer Science,pp. 104114, Springer Berlin Heidelberg, 2004.

    38

    http://www.http://ekalavya.it.iitb.ac.in/ekalavyaHome.do {@IIT Bombay, mumbai}http://www.http://ekalavya.it.iitb.ac.in/ekalavyaHome.do {@IIT Bombay, mumbai}

  • [10] V. A. Nguyen, Constructing a bayesian belief network to generatelearning path in adaptive hypermedia system, Computer Science andCybernetics, vol. 24, no. 1, pp. 1219, 2008.

    [11] S. Gutierrez-Santos, J. Mayor-Berzal, C. Fernandez-Panadero, andC. D. Kloos, Authoring of probabilistic sequencing in adaptive hy-permedia with bayesian networks, vol. 16, pp. 28012820, oct 2010.

    [12] P. Maes, Agents that reduce work and information overload, Com-mun. ACM, vol. 37, pp. 3040, July 1994.

    [13] K. Yoshida and H. Motoda, Automated user modeling for intelli-gent interface, International Journal of Human-Computer Interaction,vol. 8, no. 3, pp. 237258, 1996.

    [14] M. Bauer, Machine learning for user modeling and plan recognition,in Proc. ICML96 Workshop "Machine Learning meets HumanComputer Interaction" 516, pp. 516, 1996.

    [15] J. Finlay, Machine learning: a tool to support improved usability?,in Proc. ICML96 Workshop "Machine Learning meets Human-Computer Interaction, pp. 1728, 1996.

    [16] G. J. Klir and B. Yuan, Fuzzy sets and fuzzy logic: theory and applica-tions. Upper Saddle River, NJ, USA: Prentice-Hall, Inc., 1995.

    [17] C. Schmitt, D. Dengler, and M. Bauer, Multivariate preference modelsand decision making with the maut machine, in User Modeling 2003(P. Brusilovsky, A. Corbett, and F. Rosis, eds.), vol. 2702 of LectureNotes in Computer Science, pp. 297302, Springer Berlin Heidelberg,2003.

    [18] S. Vrettos and A. Stafylopatis, A fuzzy rule-based agent for webretrieval-filtering, in Web Intelligence: Research and Development(N. Zhong, Y. Yao, J. Liu, and S. Ohsuga, eds.), vol. 2198 of LectureNotes in Computer Science, pp. 448453, Springer Berlin Heidelberg,2001.

    [19] L. Fausett, Fundamentals of Neural Networks: Arquitectures, Algo-rithms, and Applications. Pearson Education India, 2006.

    [20] S. Bidel, L. Lemoine, F. Piat, T. Artieres, and P. Gallinari, Statisticalmachine learning for tracking hypermedia user behavior., in UM03 -9th International Conference on User Modeling: Workshop on MachineLearning, Information Retrieval and User Modeling., 2003.

    39

  • [21] J. E. Beck, P. Jia, J. Sison, and J. Mostow, Predicting student help-request behavior in an intelligent tutor for reading, in Proceedings ofthe 9th International Conference on User Modeling, pp. 303 312, June2003.

    [22] J. Beck and B. Woolf, Using a learning agent with a student model,in Intelligent Tutoring Systems (B. Goettl, H. Halff, C. Redfield, andV. Shute, eds.), vol. 1452 of Lecture Notes in Computer Science, pp. 615, Springer Berlin Heidelberg, 1998.

    [23] M. Ghazal, M. Yusof, and N. Zin, Adaptive educational hypermediasystem using cognitive style approach: Challenges and opportunities,in Electrical Engineering and Informatics (ICEEI), 2011 InternationalConference on, pp. 16, 2011.

    [24] K. Chrysafiadi and M. Virvou, Modeling students knowledge on pro-gramming using fuzzy techniques, in Intelligent Interactive Multi-media Systems and Services (G. Tsihrintzis, E. Damiani, M. Virvou,R. Howlett, and L. Jain, eds.), vol. 6 of Smart Innovation, Systems andTechnologies, pp. 2332, Springer Berlin Heidelberg, 2010.

    40

    IntroductionAdaptive Learning SystemAdaptive HypermediaWhat can be adapted?How to represent knowledge?Adaptive System Components

    Summary

    Literature SurveyIntroductionRole of User Model in Intelligent Tutoring Systems (ITS)Information stored in User ModelTechniques for user modelingBayseian Belief NetworkMachine Learning MethodsFuzzy Logic based technique Neural network based techniqueFuzzy clustering based techniquesNeuro-Fuzzy techniques

    Comparative analysis of UM techniques techniques for different applicationsSummary

    Proposed System: A Task Based Learning SystemIntroduction4-layered architecture of the systemKnowledge RepresentationExampleRules for Recommendation

    Modeling LearnerExample Scenario

    Low Level System Architecture System InitializationUpdate the knowledge levels of related conceptsPrioritization of Concepts

    Summary

    Implementation DetailsSystem's requirementsInstructor's requirementStudent's requirementsOther requirements

    System ImplementationUse case DiagramDatabase Design User InterfacesInstallation stepsSummary

    Conclusion and Future WorkConclusionFuture work

    Appendix Installation Steps: