An Automated Recommender System for Course Selection

Most of electronic commerce and knowledge management` systems use recommender systems as the underling tools for identifying a set of items that will be of interest to a certain user. Collaborative recommender systems recommend items based on similarities and dissimilarities among users’ preferences. This paper presents a collaborative recommender system that recommends university elective courses to students by exploiting courses that other similar students had taken. The proposed system employs an association rules mining algorithm as an underlying technique to discover patterns between courses. Experiments were conducted with real datasets to assess the overall performance of the proposed approach. Keywords—collaborative recommendation; association rule mining; data mining; recommender system; course selection


INTRODUCTION
In our daily life, we make our choices at most cases relying on recommendations from newspapers, people, or the Internet (e.g., book reviews, movie, restaurant rating, etc.).However, as the amount of information available on the Internet grows, searching for and making decisions about information becomes difficult.New technologies are required to assist Internet users to cope with information overload.Recommender systems [1,2,3,4,5,6,7,8] have been an important application area and the focus of considerable recent academic and commercial interests.They are widely used by many commercial and nonprofit web sites to help users to select items based on users' preferences.The goal of a recommender system is to provide recommendations that users will evaluate favorably and accept [9].
The main steps a recommender system utilizes to propose an item to a user include analyzing user data, extracting useful information, and finally predicting items to users [10].By and large, recommender systems use combinations of different kinds of user data, including item ratings [11,12,35], item features [13,14], purchase history [15,16], user demographic data [17,18], text comments [19,20], and contextual information [21,22].Ideally, a recommender system should allow users to find the preferable items quickly and to alleviate the information overload problem [24,25].Currently, a wide range of electronic commerce web sites that sell products, such as books, movies, music, vehicles, and rental apartments, employ online recommendation to fulfill customers' needs [16,26,27,28].

A. Classifications of Recommender Methods
In general, recommender methods are usually grouped into broad four categories, based on how recommendations are made [4,15]: collaborative [5,10,12,13,29,40,62,63], content-based [11,17,21,32,33,34], knowledge-based [27,65,66,67,68,69], and hybrid recommender approaches [4,17,37,46,70].An excellent survey of different recommender systems for various applications can be found in [30].Pure content-based recommender methods typically propose items to a target user based on affinity between items' contents and the user profile, ignoring data from other users.On the other hand, in pure collaborative recommender methods, items are recommended to a target user based on similarities with other users' preferences (e.g., purchase histories and user ratings), ignoring items' features.Knowledge-based recommender methods exploit inferences, often adopting techniques from artificial intelligence, to deduce a match between user and item [13].Knowledge-based methods use deep knowledge about features of items rather than users' ratings.To overcome deficiencies associated with pure recommender systems, hybrid approaches based on combining of collaborative recommender method with content-based or knowledge-based approach were proposed [46,74].

A. Content-Based Recommender Methods
Content-based recommenders propose items (e.g., articles, music, images) to a target user based on similarities between the content of the yet unseen items and the user's preferences (i.e., items that the user has liked in the past).For example, the system may try to correlate the occurrences of keywords in a web page with the user's interest [36].A profile of the user's interests is created by analyzing the content of the items that have been rated by the user.Later on, when a user interacts with the recommender system, the items proposed are similar to those items in the user's profile.A variety of techniques from approximation theory, machine learning, and various heuristics have been used for analyzing the items' content and finding regularities in this content that can serve as the basis for making recommendations.Commonly used techniques are nearest neighbor formation [33], Bayesian classifier [38,39], Neural Networks [40], and Association Rule Mining [41].Several existing content-based recommender systems have been employed in industry.Among these systems are ACR News [42], InfoFinder [43], and WebSail [44].
A pure content-based recommender system has some drawbacks.Specifically, the content feature extraction methods www.ijacsa.thesai.orgare suitable to analyze only textual data [45].On the other hand, applying content-based systems to non-textual data, say multimedia (e.g., video and audio streams), has remained a difficult task.Such data needs to be manually annotated with content information.A second problem, known as overspecialization [46], is that content-based systems can only propose items that are closely related to the user's profile; therefore, the user will only get to see items that are similar to previous items that the user has indicated interest in.However, in certain cases, the user may be interested in other potential items that are outside his usual preferences.One of the ways to overcome this problem is to filter out high-relevance items if they are too similar to the user profile [47].Another way to tackle this problem is to use the diversity, in addition to the similarity, for ranking items for recommendation [48].Finally, a new user with an empty profile has to judge an adequate number of items in order to get a reliable recommendation.This is often referred to as a new user problem, since a new user, having very few ratings, often is not able to get appropriate recommendations [21].

B. Collaborative Recommender Methods
Collaborative recommender systems recommend items to a target user based on similarity between past preferences of the target user and other similar users.Unlike content-based systems, collaborative systems predict items based on users' ratings and not machine analysis of content.Typically, users are grouped together by employing methods, like clustering [49], based on their preferences.Once the clusters are created, the clusters that have the strongest correlations with the target user are used in making recommendations for a user.Different analytical methods have been used in collaborative recommender systems to represent affinities among users' preferences.Commonly used methods are correlation-based [19], Bayesian network [56], and association rules techniques [57,58].Most recently, collaborative recommender systems have gained much attention from academia and industry.Among these systems are GroupLens [19], Ringo [45], the Bellcore Video Recommender [35], the Jester system, which recommends jokes [59], and the PHOAKS system that assists users finding relevant data on the Web [60].Some of the problems of the content-based systems described before can be fixed using collaborative systems, since collaborative systems do not depend on error-prone machine analysis of the content.The system proposes items to users based on quality of items (i.e., preferences generated by users' ratings), rather than more objective properties of the items themselves (i.e., items' content).This makes the system capable of recommending items to the user, which are very different (content-wise) from what the user has indicated liking before [45].Unlike content-based systems, a collaborative recommender system can deal with contents of variety of types (e.g.text, artwork, music, video clip); which can enhance the quality of recommendations.
Although collaborative recommender systems have been successfully utilized in both practice and research, they still suffer from some problems including the early rater problem, the sparsity problem, and the gray sheep problem.The early rater problem (also called the cold start problem [53]) refers to the case when recommendations are required for a new item that has not been yet rated or for a user that just starts to use the system.In this case, the collaborative recommender does not work well, since there is no much rating information on either the item or the user.The sparsity problem, which can also be related to the rater problem [54], occurs when available items ratings are insufficient for identifying similarities between users, leading to poor recommendation.This problem is also known as reduced coverage [26].The gray sheep problem, on the other hand, occurs when a poor recommendation may be proposed to users with odd preferences compares to the rest of the users, since there will not be any other user who has similar preferences [46].

C. Knowledge-Based Recommender Methods
Knowledge-based recommendation approaches are especially appropriate for domains where profound product knowledge is needed to recognize and justify solutions; like financial services for instance.In comparing users purchasing simple items like videos or books, with users purchasing financial services, the latter are much more in need of information and of intelligent interaction mechanisms that support appropriate solutions.Therefore, explicit representation of product, marketing, and sales knowledge is needed [12].
Knowledge-based recommender systems use inferences, often adopting techniques from AI, to infer a match between a buyer and a product based on the features of a product rather than the buyers' ratings.Knowledge-based recommender systems are receiving increasing research attention [4,5,12,22,24,39].Many knowledge-based recommender systems that are in existence are an Multimedia enhanced product recommendation [24], an integrated Natural Language Interfaces with personalized recommender system to reduce system-user interactions applied to a restaurant recommender system [39].

D. Hybrid Recommender Methods
Because of the deficiencies of pure recommender systems, several hybrid recommender systems, that combine collaborative methods with content-based or knowledge based approaches, were proposed.The main goal of a hybrid system is to improve recommendation accuracy as well as to avoid certain drawbacks (e.g., new item and new user problems) of traditional recommender approaches.In his study of hybrid recommender systems [4], Burke describes a taxonomy that consists of seven types of hybrid recommender systems: weighted, switching, mixed, feature combination, cascade, feature augmentation, and meta-level.The study pointed out that most hybrid systems involve the combination of collaborative recommendation with either a content-based or a data mining technique.This paper presents a novel recommendation methodology that recommends elective courses to a target university student based on affinity between courses taken by the target student and other students.The proposed method is based on collaborative recommender approach that employs association rule mining to discover courses' patterns in order to recommend courses.In this study, clustering is first employed to a group of students based on their courses' grades, then nearest neighborhood is applied to select the students' group www.ijacsa.thesai.org that is most similar to the target student, and finally, association rule mining is used to provide course recommendations to the target student.
The rest of the paper is organized as follows.Section 2 describes background information and related work.Section 3 describes the proposed courses recommendation system.Section 4 presents experimental results with discussion and finally in Section 5 we conclude the paper and suggests possible future work.

II. RELATED WORK
This section first presents a general formalization of collaborative filtering (CF) and its applicability to course recommendation problem.All the symbols used throughout the paper are summarized in Table 1.

A. Collaborative Recommendation
Collaborative filtering (CF) techniques have been proven to provide satisfying recommendations to users [35,45].CFbased techniques rely on the experiences of similar users, i.e., users who share the same preferences.Specifically, the CF methods recommend the target user new items that have been chosen by those users whose preferences are likely to coincide (at least to some extent) with the target user's preferences.Thus, the goal of a CF algorithm is to predict the rating of an item for a particular user, given the same item's ratings of other users.The nearest-neighbor users are those that exhibit the strongest relevance to the target user.Most of CF-based algorithms use k-nearest-neighborhood algorithm to recommend items [56].A typical nearest-neighborhood method uses the following steps in making a recommendation to a user [77].

1) Construct a profile vector PV for a target user ut by collecting his ratings of some items. PV(ut) = {R(ut, i) for some i  I} 2) Compute the pair-wise similarity S(ut, ua) between this profile PV(ut) and the profile of each other user PV(ua). The actual definition of similarity function S depends on the CF algorithm used. 3) Construct a list of target user's nearest neighbors NN(ut) sorted descending by similarity value and take the k users most similar to user ut. NN(ut) = Top(S, ut, n, k, minSim), where Top function returns the top k similarity values S(ut, ua) between user ut and any user ua such that S(ut, ua) ≥
minSim, a = 1, …, n, and a  t.

4) Use the nearest neighbor list to calculate a predication rating P(ut, i) for a new item i for user ut. If P(ut, i) ≥ minPred, then recommend item i to user ut. B. Association Rules Mining
The association rule mining (ARM) has received considerable attention over the last decade.The task of ARM is to find the correlations between items in a dataset by discovering items frequently appeared together in a transactional dataset.Formally, ARM is defined as follows [78].Confidence and support are the two fundamental quality heuristics that are used to measure the interestingness of the association rule.The confidence measures the validity of X ⇒ Y as a rule; the lesser the exceptions to the rule, the greater its validity.The support measures the efficiency of the rule.The rules that have confidence and support greater than the user specified minimum confidence and minimum support are called interesting rules.
Since the introduction of association rules problem in [78], considerable work has been devoted to design efficient algorithms for mining such rules [79, 80].These algorithms achieved significant improvements over the previous algorithm and were applicable to large databases.Recent survey of association rules mining can be found in [81].

C. Recommendations Using Association Rules Mining
This section describes briefly some collaborative recommendation systems that employ association rule mining.Mobasher et al. in [71] proposed a technique for web personalization based on association rule discovery from previous user's transaction data.In this technique, recommendations are produced based on matching the current user session against patterns discovered through association rules on user transaction data.Changchien et al. in [57] presented a method to support on-line recommendation by customers and products fragmentation.It consists of two essential modules; one is clustering based on neural networks, which groups tasks on a large amount of database records, while the other extracts association rules by employing rough set theory.
Additionally, a new personalization recommendation system that integrates both user clustering and association rules techniques was proposed in [72].The clustering method is used to cluster users' time-framed navigation sessions that are analyzed using association rules technique to establish recommendations for other similar users in the future.In addition, Wang et al. in [73] proposed a personalized recommendation system that incorporates content-based, collaborative, and association rules.Rating of the user u for the item i Predication of user u's rating for item i minimum similarity threshold value minimum prediction threshold value Liu et al. in [58] have proposed a product recommendation methodology that combines group decision-making and association rules.The system addressed the lifetime value of a customer to a firm.This system employed analytical hierarchy process to evaluate customer lifetime value (CLV) then clustering were used to group customers according to the CLV.Finally, an association rule method was implemented to provide product recommendation to each customer group.

D. Clustering Techniques
Traditional collaborative filtering techniques are often based on matching the current user profile against clusters of similar profiles obtained by the system over time from other users.Clustering is the process of grouping the data into classes or clusters so that the objects within a cluster have high similarity in comparison to one another, but are very dissimilar to objects in other clusters.Dissimilarities are assessed based on the attributes values describing the objects.Often distance measures are used.There exist a large number of clustering algorithms in the literature.The choice of clustering algorithms depends both on the type of the data available and on the particular purpose and application.k-mean clustering technique is used in this work because of its simplicity and being suitable to be used with numerical unsupervised data like student courses' grades.K-means clustering technique is one of the simplest unsupervised learning algorithms that do not rely on predefined classes to solve the clustering problem.The main idea is to define k centers, one for each cluster.The next step is to take each point belonging to a given data set and associate it to the nearest centers.At this point, we need to re-compute k new centers of the clusters resulting from the previous step.After we have these k new centers, a new binding has to be done between the same data set points and the nearest new centers.A loop has been generated.As a result of this loop, we may notice that the k centers change their location step by step until no more changes are done.In other words, centers do not move any more.Finally, this algorithm aims at minimizing a criterion function, in this case a squared error function.The criterion function J is defined by where is a chosen distance measure between a data point and the cluster center c j , is an indicator of the distance of the n data points from their respective cluster centers.

E. Similarities Techniques
Similarity is quantity that reflects the strength of relationship between two objects or two features.This quantity is usually having range of either -1 to +1 or normalized into 0 to 1.If the similarity between object i and object j is denoted by S ij , we can measure this quantity in several ways depending on the scale of measurement (or data type) that we have.Similarity distance measures are commonly used for computing the similarity of objects described by interval scaled variables.Interval scale variables are continuous measurements of roughly linear scale.Typical examples include weight, height, grade, and weather temperature.The similarity between the objects described by interval-scaled variables is typically computed based on the distance between each pair of the objects.Different measures, including Manhattan, Euclidean, and Minkowski, can be used.In this paper, we used Manhattan distance.

III. THE PROPOSED RECOMMENDATION SYSTEM
Recently, many aspects of receiving a college education have been changed.The volume of course-related information available to students is rapidly increasing.This abundance of information has created the need to help students find, organize, and use resources that match their individual goals, interests, and current knowledge.One of the concerns students have is to make decisions about which courses to take.The concern is more serious for graduate students who have more freedom to choose courses while they care more about taking courses that contribute to their progress towards career goals.To make these decisions, they use information from course catalogs and schedules, consult with their advisors, and seek guidance from their classmates, especially those with similar interests.To give better decision making support to students who wish to make relevant course choices, we have developed a course recommendation system that recommends courses to students based on other similar students.Our collaborative recommendation system tries to recommend elective courses to students based on what other similar students have taken.It recommends courses and specifies expected grades for these courses.Accordingly, the student may take a course that is recommended by the system with an acceptable grade.Typically, students have the choice to take courses from a set of elective courses and in most cases, the students take the advices from other students that took such courses.In our recommendation system, we automatically find similar students and then apply association rule mining algorithm on their courses to create courses association rules.Discovered courses association rules are used to get recommendation.
To obtain courses association rules, courses dataset is built by mapping each course either compulsory or elective to an item and each student to a transaction.For each student, a transaction is created that contains the grades of all courses taken by the student.Table 2 shows an example of courses dataset, where -1 indicates that the student does not take the corresponding course.Examples of courses association rules that can be generated are "70% of students who got A in Algo course and E in Parallel course may also get B in OS course" and "90% of students who got D in Net course may also get D in Mining course".
The system takes as an input the specified minimum support, the specified minimum confidence, and the courses www.ijacsa.thesai.orgdataset.As an output, the system generates courses association rules that satisfy the support and confidence constraints.Then the system uses these rules to generate courses recommendations.Fig. 1 illustrates our recommendation methodology.The main steps of our system are described in the following subsections.

A. Clustering Step
This step applies clustering technique on courses dataset to group similar students to the same cluster.The clustering algorithm used in this step is k-means clustering algorithm [21], where each cluster is represented by the mean value of students in the cluster.A cluster of similar students is treated as one group in this step.The similarity between the courses is typically computed based on the distance between each pair of courses.A well-known distance measure is Manhattan distance [21], which measures the distance between two p-dimensional data objects i = (x i1 , x i2 , …, x ip ) and j = ( In our case, i and j represent two students to calculate similarity between them, x i1 , x i2 , …, x ip represent the courses' grades for student i, while x j1 , x j2 , …, x jp represent the courses' grades for student j.For example, Manhattan distance between the first two students, 1000 and 1001 of Table   A, B, C, D, E, and F) are mapped to the integers (1, 2, 3, 4, 5, and 6), respectively.Here, we did not include the distance between students' grades in OS course because the first student did not take this course.

B. Finding Similar Students
In this step, the group most similar to the target student is selected by comparing his/her previous courses' grades with the courses' grades of the mean student of the n-cluster.We used n-nearest neighborhood technique [22] to select the most n similar groups generated in Step I.In this way, all of the clusters centers are represented in a p-dimensional pattern space.When given an unknown student, an n-nearest neighborhood searches the pattern space for the n clusters that are closest to the unknown student.These n clusters are the n "nearest neighbors" of the unknown sample.Closeness is defined in terms of Manhattan distance.

C. Courses Mining
Association rules mining is used to discover courses association rules.The algorithm is applied on the n similar groups created from Step II.Table 3 shows an example of the transactional courses dataset that is used in the mining step, where each transaction contains transaction Id (TID) that corresponds to student ID and set of items.Items are in the form of [course:grade] pairs.The rationale of using [course:grade] pairs is that our system tries, in addition to recommend courses, also to specify expected grades for those courses.This will help students to select elective courses with high grade expectation.An example of courses association rule is

D. Recommending courses
The courses association rules, generated in Step III, are used to recommend elective courses.This step is the core step in our recommendation system.The recommendation is done after interesting courses association rules are created.The association rules are in the form of [c 1 : where [c:g] represents a course c with its grade g.The whole recommendation strategy is described as follows:

1) If the target student has taken the courses [c 1 , …, c n ], the ones in the antecedent part of the rule, with grades [g 1 , …, g n ] respectively, then the system recommends the student to take the elective courses [c n+1 , …, c m ], the ones in the consequent part of the rule, with expected grades [g n+1 , …, g m ],
respectively.The system may also recommend courses from the consequent part of the rule if they met specified minimum grades.In this step, the student can specify a minimum grade in which the system will not recommend any course with grade that does not exceed this minimum threshold.In the following example, the system recommends courses for a student who has taken the following courses  Because the student has taken the courses in the antecedent part of rule#1, it recommends the student the Mining course with expected grade is B. in the same way rules#2 recommends the student the AI course with expected grade is B. The rule#2 does not recommend the student to take the Archit course because the expected grade D is less than the minimum threshold already specified by that student.

2) The target student might not take all the courses in the antecedent part of the rule. The rule still can be used in recommendation and a new constraint called match is used to assess the quality of rule in the recommendation. The match is defined as the number of matched courses between the target student's courses and the courses in the antecedent part of the rule to the total number of courses in the antecedent part of the rule. matchrule = rt of rule ecedent pa ses in ant total cour t of rule cedent par t and ante een studen urses betw matched co
If matchrule value is greater than a threshold value, then the rule is used for recommendation.
3) If different rules recommend the target student different courses, then the student can select the top-N courses recommended by best quality rules, i.e., rules that have the highest supports, the highest confidences, and the highest match.If there a tie between rules, the system recommends courses in this order of preferences: highest support rule, highest confidence, and highest match.
4) The recommendation system does not recommend new students since they do not have courses taken yet.
For example, consider the following four course association rules.

IV. EXPERIMENTS
We performed experiments using courses dataset taken by 2000 graduate students of Electrical Engineering.The total www.ijacsa.thesai.orgnumber of courses is 54, where five of them are compulsory, while the remaining are elective courses.Each student has a choice of selecting four elective courses.As early mentioned, k-means clustering algorithm is used, with k = 5.In the mining step, we used n = 3 as the most similar n clusters.We divided our dataset into two disjoint sets: the training set and the test set.K-fold cross validation technique is applied on the dataset, in which we run k experiments, each time setting aside different 1/k of the data to test on, and average the result.Popular values for k are 5 and 10, we use k = 5.Mining association rules algorithm is applied on training set to generate courses association rules.Then we measured the percentage of students in the test set that were correctly recommended by courses association rules.
To evaluate the performance of our recommendation system, we use two standard information retrieval measures, precision and recall [24].Precision is the percentage of the number of recommended courses taken to the total number of recommended courses, while recall is the percentage of the number of recommended courses taken to the total number of courses taken by the students.More precisely For recommendation systems, precision is more significant than recall, because we concern more on getting high quality recommendation than just recommending a large number of courses.Therefore, our goal is to achieve a high precision with reasonably high recall.The main parameters used in our experiments are minimum confidence, minimum match, minimum specified grade, and minimum support.The following sections show experiments that were performed in order to choose the appropriate values for the parameters.

A. Minimum Confidence
Both minimum support and minimum confidence are important factors that influence the performance of the whole process of recommendation system.Since minimum confidence is used during recommendation step, it would be interested to study the performance of our recommendation system using different minimum confidence values.The results are shown in Fig. 2. As shown in Fig. 2, the minimum confidence value has a significant impact on the performance, i.e., the higher the minimum confidence, the higher the precision but the lower the recall.We achieved the highest precision of 0.95 with a recall of 0.5 for the minimum confidence of 90%.Even though we think that the precision is the most important factor in recommendation systems, the best combination of precision and recall values, which occurs with minimum confidence of 80%, is also important in the sense that we can achieve higher values of both precision and recall.

B. Minimum Match
In order to select the appropriate minimum match, we performed some experiments using different minimum match values.As shown in Fig. 3, the higher the minimum match the higher precision but the lower the recall.We achieved the highest precision with minimum match 90%.When the minimum match varies, a tradeoff between precision and recall values is noticed.

C. Minimum Grade
Minimum specified grade is also an important parameter of our approach.Fig. 4 gives the performance for different minimum grades.We could see a general fact that the minimum grade has a similar influence on the performance as the minimum confidence, i.e., the higher the minimum grade, the higher the precision but the lower the recall.When the minimum grade is varied, there shows a tradeoff between the precision and the recall.

D. Minimum Support
In our experiments for courses associations, we tested the performance for different minimum supports, i.e., we only use rules above a specified minimum support for recommendation during a test.The results are shown in Fig. 5.
Form our observations, we found that when a target student's minimum support determined by the mining process is very low, it takes a very long time to mine rules for this student and at the same time the performance is bad.While, if a student's minimum support is greater than a threshold, then we get a better performance.

V. CONCLUSION AND FUTURE WORK
The main contribution of this paper is a new collaborative recommendation system that employed association rules algorithm to recommend university elective courses to a target student based on what other similar students have taken.The experiments shown that association rule is a desirable tool for making recommendation to a target student.Through our experiments, we noticed the patterns of influence of different parameters on the performance of the system.The confidence and match of a rule have a great impact on the performance, but the highest confidence or match may not be the best choice.By choosing a relatively high confidence or match, we can achieve a better performance.
Much work can be performed in the future such as doing comparison between our method and other typical methods.In addition, further experimental evaluation, joining collaborative and content-based recommendations, and applying the new recommendation system in other domains of interest is expected as future work.
be a set of transactions, where each transaction T is a set of items such that T ⊆ I.An association rule is an implication of the form X ⇒ Y, where X ⊂ I, Y ⊂ I, X ∩ Y = ∅, and X ≠ Y ≠ ∅.The rule X ⇒ Y holds in the transaction set D with confidence c if c% of transactions in D that contains X also contain Y.The rule X ⇒ Y has support s in the transaction set D if s% of transactions in D contains X ∪ Y.

2
is: d(1000, 1001) = |A -F| + |A -F| + |F -D| + |B -E| = 15 where the grades ( [Alg:A]  [OS:D]  [Parallel:C], this indicates that if the target student got A in Algo and D in OS courses, then the system recommends the student to take Parallel course with expected grade C.

Rule# 1 :
[DB:A]  [Parallel:C]  [Mining:B] Rule#2: [DB:A]  [Net:D]  [AI:B]  [Archit:D] Rule#3: [Mining:E]  [OS:C]  [IR:D] Rule#4: [Net:D]  [Parallel:C]  [Image:B] Table4shows the proposed recommendations, that are derived from the above listed four rules, for a student who took the following courses: [DB:A], [Parallel:C], [Net:D], with C as a minimum accepted grade and 50% as a match threshold value.As shown in Table 4, Rule#1 has match rule value equal to 66%, which is above the match threshold 50%.Then this rule recommends the elective course in the consequent part Mining with B as expected grade.Rule#2 has also match rule value equals to 66%.The elective courses in the consequent part of the rule are [AI:B] and [Archit:D].The rule recommends only [AI:B], but not Archit course, because the expected grade D is less than the specified minimum accepted grade C. Rule#3 is not used in recommendation because its match rule value (zero value) is less than 50%, the match threshold value.The last rule Rule#4 recommends the elective course [Image:B].

TABLE II .
AN EXAMPLE OF COURSES DATASET

TABLE IV .
THE PROPOSED RECOMMENDATIONS USING THE GIVEN FOUR COURSES ASSOCIATION RULES Table5shows the proposed recommendations, that are derived from the above listed eight rules, for a student who took the following courses: [DB:A], [Parallel:C], [Net:D], with C as a minimum accepted grade and 50% as a match threshold value.As shown in Table 5, Rule#1 has matchrule value equal to 66%, which is above the match threshold 50%.Accordingly, this rule recommends the elective course in the consequent part Mining with B as expected grade.Rule#2 has also matchrule value equals to 66%.The elective courses in the consequent part of the rule are [AI:B] and [Archit:D].The rule recommends only [AI:B], it does not recommend Archit course, because the expected grade D is less than the specified minimum accepted grade C. Rules #3, #5, #6, and #7 are not used in recommendation because their matchrule values 0%, 33%, 0%, and 25% respectively, are less than 50%, the match threshold value.[Image:B] is recommended by rule#4 that has matchrule value 100%.Two courses are recommended using rule#8, [Artchit:B] and [Image:B].