1 Introduction

Education has shown a rapid growth with the help of the technology development in computers and interconnection of computers around the world. The teaching and learning process has undergone various changes and developments in this new era of the education system. The merit of e-learning is that the content can be accessed by n number of users of all categories in any place and any time as they wish. The main objective of e-learning is to increase the learning efficiency and to replicate the teaching and learning process of classroom learning [1]. An e-learning system ideally demonstrates a real-world teaching–learning scenario while improving the efficiency of the actual teaching learning contexts. The knowledge level and the caliber of the e-learners in e-learning will differ, and the e-learners may have varying knowledge about the content that they wish to learn. Hence, the same level of instructions for all the e-learners will be highly ineffective [2]. This naked truth spotlights the need for e-learning systems which offer appropriate materials based on the corresponding knowledge level of the e-learner. Thus, the system needs to focus on the preference of each individual e-learner as well as the learning ability and to act correspondingly by offering effective personalization. This clearly depicts the fact that, for an e-learning to be successful, it should posses the abilities to analyze and consequently learn the learning abilities of an e-learner, able to update their requirements before arriving at a suitable learning material. Subsequently, the system should be able to furnish the personalized feedback to the e-learner. We have carefully modeled the relevant membership functions for the fuzzy technique in order to realize the knowledge level of the e-learners pertaining to the respective domain concepts. Then they update the e-learners knowledge level, which is related to the concept that the e-learner has learned or forgotten.

1.1 Fuzzy logic

Zadeh [3] first introduced a new computational model called fuzzy logic based on the way a human mind thinks. Fuzzy logic deals with uncertainty where the information or data is vague and ambiguous to produce the precise output. Fuzzy set is the most rudimentary concept of the fuzzy logic. It is a set of ordered pairs which consists of the member of a set x and its corresponding membership grade that lies between 0 and 1. Due to the fact that fuzzy set has soft boundaries, uncertainty or imprecise information can be dealt easily to get the precise output.

The applications of Fuzzy logic, since its innovation by Zadeh, has become very apparent since the rules for analyzing the inputs and predicting the outputs are based on real-world entities which are called as linguistic variables. For instance, the general method of constructing a rule in a fuzzy-based system is IF X THEN Y. In this case, X and Y refer to linguistic variables which are actually mathematical propositions which carry a truth value. In fuzzy logic, X is called as antecedent and Y is the consequent. Each fuzzy rule gives the corresponding output based on all the inputs reflecting the human perception of the problem, thus making the analysis intelligent. In this research work, type-2 fuzzy sets have been employed for dynamic learning in the e-learning scenario [4,5,6].

1.2 Fuzzy cognitive map

Fuzzy logic and cognitive mapping are fused together to form a new concept, namely fuzzy cognitive map (FCM) [7]. The most important concept in intelligent systems is the knowledge representation and reasoning which can be easily represented using FCM. The FCM not only depicts the integration of concepts, but also the relations which exist between the concepts. The FCM is a graphical structure where the concepts are represented as nodes, and the links between the nodes depict the causal relationship between them. Links have a weight value in the range [− 1, 1] which reflect the positive or negative relationship between the concepts based on whether the value is positive or negative. The construction of fuzzy cognitive map is explained in [8]. The FCM can be used in different fields with different types of applications as in [9,10,11].

This research work presents an adaptive system for providing individualized instruction for the domain concepts. Moreover, e-learners knowledge in all the related concepts is dynamically updated based on the knowledge categorization done using the degree of success obtained. The updation of the knowledge level in the related concepts is done using fuzzy rules with FCM relation. Finally, stereotype of the e-learner was categorized.

The rest of this research work has been organized in such a way that Sect. 2 presents the previous works done by various authors in the recent past, whereas Sect. 3 presents the architecture, construction and implementation of fuzzy rules in this proposed work. The performance analysis of the implemented fuzzy system is present in Sect. 4, and the Sect. 5 concludes this research work.

2 Related works

Siriga and Virvou [12] had proposed a system called Intelligent Computer Assisted Language Learning (ICALL) which uses the Internet to operate. Evaluation of ICALL system is done to get the learning outcome and the caliber of the system which gives preference to each individual student. Hence, a comparative study was done between the intelligent system and non-intelligent system. The experimental results show that using ICALL system the students can interact easily due to the vast knowledge of the domain when compared to the non-intelligent system.

According to Kavčič [13], the personal needs and the preferences of each learner can be easily captured through intelligent tutoring techniques. The e-learners profile information which includes the e-learners knowledge is collected from the e-learner. This e-learners knowledge information is uncertain and not clear. To understand the uncertainty in the e-learners knowledge, fuzzy model is proposed. The e-learners knowledge is represented using fuzzy set membership function, and the fuzzy rules are used for updating the e-learner model.

Kumar [10] proposed a rule-based mechanism for adaptive generation of problems in intelligent tutors. This work focuses on the rule-based adaptation algorithm with respect to the programming instructors, domain model and student model. The result shows that rule-based adaptation algorithm helps the learner’s with fewer practice problems compared to the non-adaptive instructors.

Alves et al. [14] proposed a case-based reasoning approach for adaptive web-based educational systems using fuzzy logic. The e-learning system can be improved by adapting the learning contents based on the needs of each learner, which in turn supports learner personalization. Case-based reasoning can be adapted in e-learning so that the learner with similar learning characteristics can use the other learner’s learning experience. Hence, the learning content is delivered to the learner with respect to his/her learning style and preferences. Xu et al. [15] developed tourism demand forecasting algorithm that uses fuzzy Takagi–Sugeno rule extraction from the support vector machine (SVM). The tourism demand data are trained using SVM. The output of SVM is used to generate the fuzzy Takagi–Sugeno rules, and these rules enhance the proposed algorithm accuracy.

Bhattacharya et al. [16] proposed confidence-based e-learning system, and this system uses the artificial neural network to find the cognitive state of the e-learner based on the performance in the test. Acampora et al. [17] developed an architecture for adaptive e-learning based on computational intelligence methodologies which delivers the e-learning contents to the e-learner based on the specific needs and preferences of each individual e- learner.

Wang et al. [18] focused on artificial psychology and artificial emotion which served as the basis to elaborate the human thinking, cognitive reasoning and the personal psychology. The psychology of a person plays a vital role in performing any activity. Jegatha Deborah et al. [19] used Felder–Silverman learning style as the basis model for predicting the e-learners learning style. Moreover, to address the uncertainty in the learning style prediction, fuzzy rules was used.

Chrysafiadi and Virvou [7] use FCM to represent the dependencies among the domain concepts. The e-learning system uses the FCM to guide the learner regarding which concept to learn first based on the learner’s performance on other related domain concepts. Since FCM is complex and tedious to explore the information from the cognitive map, it is converted into matrix form for easier analysis of the knowledge dependencies among the concepts.

Akbulut and Cardak [2] focused on the content analysis of publications for a period of 12 years on adaptive educational hypermedia (AEH). Among all the publications, seventy were selected for document analysis. Most of the works focused on the adaptivity of the content based on the learner’s while some of them insisted on the learning style-based AEH. The main objective of AEH is to focus on the learning styles of the learner’s in an e-learning platform. The learning style-based system has the advantage of increased success ratio and high level student satisfaction.

Hence, most of the works done by the researchers gives a detailed insight about how to provide the adaptive instruction and dependencies between the subject topics, but not about how the knowledge level of present topic cause changes according to prerequisites topics. So the proposed intelligent e-learning system provides adaptive instructions, updates the knowledge level in the related topics and evaluates the true knowledge of the e-learners. Thus, this research work in particular focuses on the following major aspects of e-learning in order to enhance the learning ability of the e-learners.

  1. 1.

    To carefully analyze the e-learners based on their input and to appropriately set up the system which recognizes the important characteristics of an e-learner such as the necessity to undertake the course, the e-learner’s aptitude toward learning the course and the individual choices and preferences made by each e-learner in the e-learning context, thereby suggesting the relevant learning material.

  2. 2.

    To model and propose a novel e-learning system which intelligently adapts itself for each e-learner in the context of e-learning.

  3. 3.

    To precisely categorize the e-learners based on their domain knowledge.

  4. 4.

    To analyze the e-learners accurately based on their true knowledge.

3 Proposed framework

The architecture of the proposed system is shown in Fig. 1. The e-learners caliber and knowledge level varies in addition to different kinds of preferences for each e-learner. Hence, the main focus is the necessity to develop an intelligent e-learning system that provides the dynamic adaptation to all learners in this system individually. Since the e-learners have diversified preferences and mental caliber of the e-learners differ from one person to the other in an e-learning environment, it is not advisable to follow the same instruction model for all e-learners. Hence, the learning content or the topic and the sequence of the content must not be same for all e-learners. This is due to the fact that the e-learners who are familiar with a subject topic need not learn it, whereas the others who are new to the topic must learn the content. Moreover, the main component of intelligent e-learning system uses the e-learner model to accomplish this task. The e-learner model depicts the e-learners characteristics which include the knowledge level and their personal behavior in order to provide adaptive learning content based on it.

Fig. 1
figure 1

Architecture of the proposed system

3.1 Registration and login

A new e-learner enters into the system, registers his/her information with the knowledge level of the selected domain and then logs into the system; all the e-learners information can be stored on an e-learners profile database. The profile information is used to identify and analyze the current knowledge of the e-learner and to provide adaptivity of each e-learner to interact with the system. The login module is used to enter into the system based on their registered information. When the e-learner wants to interact with the system, he/she will give the authenticated ID. If the e-learner ID is not valid, then the system will not allow the e-learner to log in. After logging into the system, the new e-learner will interact with the system. Later he/she takes the pretest for the particular subject topic. The pretest can be used to identify and analyze the current knowledge and provides adaptivity to the e-learner.

3.2 Learning and testing

After the pretest, the e-learner selects and retrieves the learning material from the database for learning purpose. All the learning resources are stored in a common database. If the e-learner needs any learning material, then it is retrieved from database. Once the learning process is completed by the e-learner, the system has to conduct the test for the domain concept learned by the e-learner. Whenever the e-learner interacts with the system, a test is conducted to evaluate the e-learner knowledge.

3.3 Knowledge evaluation

Fuzzy rules are used to classify the knowledge level of the e-learners. The process of classifying the concepts as known, unknown, etc., from the perspective of each e-learner is a tedious process. For example, if the subject chosen by the e-learner is C language, then the degree of success obtained from the learning and testing module for a particular topic, namely “while statement” is in the form of “while statement is 86% known by e-learner A”. But the information obtained from that module is uncertain. So, to handle the vague and ambiguous data, fuzzy sets are used. Fuzzy set represents an e-learners knowledge level of the subject topic and updates the e-learners knowledge level of related topic as well.

The following five different fuzzy sets are used to represent the e-learners knowledge

  • Novice (Un) the degree of success is from 0 to 45%.

  • Insufficiently known (Ink) the degree of success is from 35 to 60%.

  • Competent (K) the degree of success is from 50 to 70%.

  • Well known (L) the degree of success is from 65 to 80%.

  • Expert (A) the degree of success is from 75 to 100%.

The membership functions of the fuzzy set with five membership functions are defined as follows (d denotes the e-learners degree of success)

$$ \begin{aligned} \mu_{\text{Un}} = \left\{ {\begin{array}{*{20}l} {1,} \hfill & {\quad d \le 35} \hfill \\ {1 - \frac{d - 35}{10}, } \hfill & {\quad 35 < d < 45} \hfill \\ {0, } \hfill & {\quad d \ge 45} \hfill \\ \end{array} } \right\} \hfill \\ \hfill \\ \end{aligned} $$
$$ \mu_{\text{Ink}} = \left\{ {\begin{array}{*{20}l} {\frac{d - 35}{10},} \hfill & {\quad 35 < d < 45} \hfill \\ {1, } \hfill & {\quad 45 \le d \le 50} \hfill \\ {1 - \frac{d - 60}{10},} \hfill & {\quad 50 < d < 60} \hfill \\ {0,} \hfill & {\quad d \le 35 \;\;or\;\; d \ge 60} \hfill \\ \end{array} } \right\} $$
$$ \begin{aligned} \mu_{K} = \left\{ {\begin{array}{*{20}l} {\frac{d - 50}{10},} \hfill & {\quad 50 < d < 60} \hfill \\ {1, } \hfill & {\quad 60 \le d \le 65} \hfill \\ {1 - \frac{d - 75}{5},} \hfill & { \quad 65 < d < 70} \hfill \\ {0,} \hfill & {\quad d \le 50 \;\;or\;\; d \ge 70} \hfill \\ \end{array} } \right\} \hfill \\ \hfill \\ \end{aligned} $$
$$ \begin{aligned} \mu_{L} = \left\{ {\begin{array}{*{20}l} {\frac{d - 65}{10},} \hfill & { \quad 65 < d < 70} \hfill \\ {1,} \hfill & {\quad 70 \le d \le 75} \hfill \\ {1 - \frac{d - 75}{5},} \hfill & {\quad 75 < d < 80} \hfill \\ {0,} \hfill & {\quad d \le 65 \;\;or\;\; d \ge 80} \hfill \\ \end{array} } \right\} \hfill \\ \hfill \\ \end{aligned} $$
$$ \begin{aligned} \mu_{A} = \left\{ {\begin{array}{*{20}l} {\frac{d - 75}{10}, } \hfill & {\quad 75 < d < 80} \hfill \\ {1,} \hfill & {\quad 80 \le d \le 85} \hfill \\ {0, } \hfill & {\quad d \le 80} \hfill \\ \end{array} } \right\} \hfill \\ \hfill \\ \end{aligned} $$

The membership functions shown above are symmetric which provides a clear and easily interpretable way of representation. For example, let x = 78 is the degree of success of the e-learner A in the topic “conditional statement”. Now, after applying this value to the formula for the membership function, we get the result as follows: µUn = 0, µInk = 0, µK = 0, µL = 0.6 and µA = 0.4. So the conclusion is that the topic “conditional statement” in the subject “C language” is 60% competent and 40% expert for e-learner A. The summation of all five membership values is equal to 1 (µUn + µInk + µK + µL + µA = 1). Therefore, a fuzzy set with five membership values (µUn, µInk, µK, µL, µA) will clearly differentiate the knowledge level of the e-learner for a particular concept (Fig. 2).

Fig. 2
figure 2

Membership function

3.4 Knowledge categorization

In the real-time scenario, if the knowledge level of a concept in a particular domain is dependent on the knowledge level of another concept in a different domain then the knowledge level of one concept can have impacts on the knowledge level of another concept. Here, the knowledge level is denoted as α and the domain concept is denoted as β. Here the following cases are examined:

  1. a.

    Knowledge level of a concept in a particular domain βj is maximized or minimized with respect to the knowledge level of relevant concept βi based on the performance of the e-learner in βi. Let us consider the following scenario as an example. If an e-learner A has learned “If statement” and “If-Else” now and he/she is familiar with the following concept of “While statement”, then the knowledge level for “While statement” will set to Learned for e-learner A. Let β2.3—“ While statement” and β2.2—“If-else” if he/she makes a mistake in its previous concept β2.2 then the knowledge level of β2.3 will be minimized.

  2. b.

    On the other hand, the knowledge level of the concept in a particular domain βi can be either maximized or minimized based on the knowledge level of the next concept βj. In this case, if an e-learner knows 75% of a particular concept “Factorial using while loop” and he/she takes test in the concept “Factorial using for loop” and the marks obtained by the e-learner is 85%, then it reveals that the e-learners knowledge level of a concept “Factorial using while loop” will get maximized. Let us assume that domain concept β3.4—“For loop” is known for e-learner A and now he/she is being evaluated in the domain concepts β4.6—“Matrix addition using for loop” and making 50% error. This concludes that β3.4 will become Insufficiently known.

In this research work, if two domain concepts have knowledge dependencies, then γ refers to the respective dependencies. The notation µγ (βi, βj) represents the influence of βi on βj and the notation µγ (βj, βi) represents the influence of βj on βi. In FCM, the nodes denote the domain concepts and the link between two nodes have a weight associated with it. This weight value is represented as µγ (βi, βj) and µγ (βj, βi) which denotes the positive or negative impact of one concept with the other. FCM values are generated by the experts in C programming language as follows. Experts on C programming language who have greater than ten years of teaching experience were given the assignment of identifying the main domain concepts and the hierarchical structure of studying the concepts. They worked out the dependencies among the concepts and gave the positive or negative impact between each pair of concepts. The values given by all the experts were collected, and finally the average of all estimated values is calculated for every pair of concepts. Let us assume the FCM values of domain concept dependencies as given in Table 1 for fuzzy-based interpretation of those values.

Table 1 FCM values

Let us consider the domain concepts βi and βj where βi is taught before βj. Fuzzy rules are constructed based on the five membership function and they greatly influence the knowledge level of the e-learners. The learning material for a domain concept given to the e-learner may change based on the learning rate inferred for each e-learner using these fuzzy rules. Learning rate clearly shows whether an e-learner learns properly or forgets the domain concepts. The different scenarios of whether an e-learner learns or forgets the domain concepts are explained below. The e-learning system concludes that

  • the e-learner has not studied a particular concept properly if α (βj) is minimized.

  • the e-learner has forgotten some of the concepts if α (βi) is minimized.

  • the e-learner has learned a particular concept correctly if α (βi) is maximized.

  • the e-learner understands and grasps the learning material progressively if α (βik) is maximized perpetually. Moreover, the system infers that the e-learner understands and grasps the learning material in a progressive manner.

The fuzzy rules generated are based on [13], which clearly depicts that the e-learners performance will be improved only if the e-learner clearly understands or learns the basic concepts of the particular domain. But the main drawback of Kavčič’s work is that, it considers only whether the e-learners learning progresses. In addition to that, she did not focus on the case of when the e-learner forgets the previously learned concepts which will eventually decrease the knowledge level of the e-learner. Here, we present the rules which consider the five membership sets which represents the knowledge level of an e-learner in a particular domain concept. α (βi) denotes the “knowledge level of the concept βi”. The membership functions can have only two active values at a time and both are complementary to 1. From the two active values, the higher value is used to represent the knowledge level of corresponding concept. For example, if the five fuzzy sets have active values for “Un” and “Ink” levels with the value of “Un” set to high, then the value of “Un” level represents the knowledge level of corresponding concepts, instead of “Ink”. The fuzzy rules which depicts about how does a variation in the knowledge level of concept βi influences the knowledge level of next concept βj and the rules which depict how a variation in the knowledge level of concept βj influences the knowledge level of the previous concept βi is given in the “Appendix”.

3.5 Stereotype categorization

Intelligent e-learning system is accessed by many e-learners who have different preferences and caliber to learn as well as the varying levels of knowledge regarding a particular domain concept. Moreover, the role of an instructor is not present in an e-learning system. Hence, the e-learning system must react according to the e-learners preferences. The system can be made adaptive since knowledge categorization using fuzzy set membership function is done based on the knowledge level of the e-learner on a particular domain concept.

Initially, in an e-learning system the e-learner is new to the domain concept and his/her level of knowledge regarding the concept is completely unknown. But when the interaction continues for the next time, he/she might have learned some of the concepts which modifies the knowledge level of the e-learner. Whenever the e-learner completes a particular concept before allowing to proceed with the next concept, the system conducts a practice test to evaluate the knowledge level of the e-learner. Based on the performance in the practice test, knowledge level and stereotype categorization change. The outcome of the test will have an impact on the knowledge level of all other related domain concepts. Once the knowledge level of the e-learner reaches 100%, the test is conducted to evaluate the e-learner for all related domain concepts. Based on the result, the e-learner will be given adaptive instruction on whether to proceed with the next domain concept or to learn the previous concept again. Later, the stereotype of the e-learner will be updated based on the following rules [20].

  1. 1.

    If α(β1.1β1.8) < 100% L, then stereotype = 1.

  2. 2.

    If α(β1.1β1.8) = 100% L, and α(β2.1β2.4) < 100% L, then stereotype = 2.

  3. 3.

    If α(β1.1β2.4) = 100% L, and α(β3.1β3.5) < 100% L, then stereotype = 3.

  4. 4.

    If α(β1.1β3.5) = 100% L, and α(β4.1β4.6) < 100% L, then stereotype = 4.

  5. 5.

    If α(β1.1β4.6) = 100% L, and α(β5.1β5.3) < 100% L, then stereotype = 5.

  6. 6.

    If α(β1.1β5.3) = 100% L, and α(β6.1β6.4) < 100% L, then stereotype = 6.

  7. 7.

    If α(β1.1C6.4) = 100% L, and α(β7.1β7.8) < 100% L, then stereotype = 7.

  8. 8.

    If α(β1.1β7.8) = 100% L, then stereotype = 8.

The knowledge level of the e-learners is estimated by using the above given rules. Here, we follow different testing strategies like multiple choice questions, Fill in the blanks, True or False pattern. The values of the five membership function will be derived from the error percentage of the e-learner in the test. Moreover, the values represent the e-learners knowledge level in the domain concept. Since the FCM generated by the experts represent the dependencies between the concepts in a particular domain, the intelligent e-learning system updates the e-learners knowledge level of all related to this concept.

4 Performance analysis

An e-learning system in this digital world deluged with data cannot be considered efficient if it furnishes the relevant materials to an e-learner. Instead, the e-learning system can be considered efficient and appropriate if it can adapt itself to the changing needs of the individual e-learners characteristics. Thus, an intelligent e-learning system is one which delivers domain concepts to each of the individual e-learner in terms of individualized instructions to each e-learner in which the e-learning system is based on fuzzy logic. The system should also posses the ability of ascertaining whether an e-learner progresses or not by analyzing the learning abilities of the e-learner. Such an intelligent e-learning system would be useful to the e-learners to keep track of cognitive predictions of e-learners based on their performance in the learning environment and shall allow each e-learner to progress at his own pace, provides materials according to the learning ability and provides guidelines about the necessity of revisions and others. The performance analysis is done for knowledge categorization of each e-learner evaluated using the five membership function which precisely categorizes the e-learner based on the knowledge level. Moreover, knowledge evaluation is done by calculating the true knowledge of the e-learner. For the experimental analysis, the first year students of University College of Engineering Tindivanam who study the programming subject in their first semester were taken for knowledge categorization and evaluation.

4.1 Knowledge categorization

Chrysafiadi and Virvou [20] categorized the knowledge into four membership values based on membership function, namely Unknown, Insufficiently known, Known and Learned with their corresponding membership values. The marks can be represented by the membership values. The four membership values show that, for some marks, the membership value is consistent and it does not change. For example, from Fig. 3, we know that the marks that range from 10 to 55 are categorized as “Novice”. Hence, the e-learners with varying progress in their learning are retained in same state consistently. Hence, the knowledge level of the e-learner does not change in the above case and it cannot be precisely categorized.

Fig. 3
figure 3

Four membership function

To overcome this problem, our proposed work has five membership values, namely Novice, Insufficiently known, Competent, Well known and Expert to precisely categorize the knowledge level of the e-learner. For example, the e-learners who have got 48 and 55 are precisely categorized as “Novice” and “Insufficiently Known”. So, the knowledge level of the e-learner can be precisely categorized using the five membership sets as shown in Fig. 4. This in turn leads to provide adaptive instructions for e-learners to learn the concepts based on their knowledge categorization.

Fig. 4
figure 4

Five membership Function

4.2 Knowledge evaluation

Knowledge evaluation is usually done only based on the performance of the e-learners in their test. In the previous works, marks were chosen as the main criteria to categorize the e-learners performance as well as their knowledge level. But the marks obtained by the e-learner does not reveal the actual knowledge that he/she got. Because in some cases, the e-learner may give answers randomly to multiple choice questions or True/False questions. Eventually, the system cannot correctly predict the true knowledge of the e-learner. Here, in our proposed work, we consider the error percentage of the e-learners performance along with the number of times required by an e-learner to read that domain concept to analyze the e-learners precisely based on the true knowledge. The reading time spent by an e-learner will have a great impact in evaluating the true knowledge of the e-learner. The e-learners true knowledge can be evaluated by using the following equation

$$ P \, = {\text{ Error}} + RT*n $$
(1)
$$ {\text{True }}\;\;{\text{Knowledge }} = \, 100 \, {-} \, P $$
(2)

where Error = failure percentage of the e-learner. RT = Number of times, the e-learner reads the concept. n = Number of membership functions.

For example, the e-learner evaluation is done for e-learners A, B, C,…, J as shown in Table 2. The e- learners A, B and C, have secured 80 marks based on the performance on the test conducted for the domain concept. But actually, according to the true knowledge evaluation, the value differs for all the three e-learners based on the reading time spent by them. The e-learner B read the domain concept only once, and hence, he/she has got the true knowledge of 75 when compared to A who has read 3 times and C who read 2 times.

Table 2 True knowledge

This shows that the true knowledge analyzes the knowledge level accurately, and it is used to provide adaptivity in choosing the learning content based on the true knowledge of each e-learner. The marks obtained by the e-learners and their actual true knowledge are depicted in Fig. 5.

Fig. 5
figure 5

True knowledge evaluation

5 Conclusion

The main objective of this work is to provide an intelligent based e-learning system using the fuzzy set theory. The intelligent system is used to identify the e-learners knowledge level dynamically. The FCM represents the dependencies among the domain concepts, and it is used by the e-learning system. This system monitors the e-learners performance in the domain concepts and provides adaptive instructions to e-learners. Moreover, it helps to identify the already learned concepts and thus save time during the learning process. The system also shows the ability to assess whether a student has a mental state of forgetting the previously learned e-learning contents and thus adapting itself in order to present the appropriate learning materials. The true knowledge of the e-learner is estimated, and adaptive instructions are given to the e-learner based on the true knowledge. This proposed work does not consider the scalability, and moreover, it focuses only for the programming subject. The future work can be extended by considering knowledge evaluation for the mathematical and analytical subjects.