Recommendation System for Student Self-Development Resources using Knowledge Graphs and Fuzzy Conditional Probability
Abstract — This paper is based on a case study of challenges in the student development program at Petra Christian University. The university leverages various campus activities and resources to cultivate students' soft skills, aiming to shape them into Global Socio Leaders. However, current practices have not yet fully succeeded in realizing this objective. Students often overlook their personal interests when selecting events, while organizers frequently design programs based on past experiences and apply them uniformly to all students, rather than considering the individual needs of each student. Consequently, the university is unable to effectively monitor the development of students’ soft skills. In collaboration with the Center for Christian Leadership at Petra Christian University, this study proposes two solutions. The first is a recommendation system for personal development opportunities that considers both competency needs and student interests; this system employs knowledge graphs, fuzzy conditional probability, and semantic similarity to calculate recommendation scores. The second solution is a reporting dashboard designed to track resource support and student competency requirements.
Keywords — Recommendation System, Knowledge Graph, Fuzzy Conditional Probability, Semantic Similarity, University
I. Introduction
Petra Christian University defines its graduate profile, the “Global Socio Leader,” through its Graduate Learning Outcomes (GLO). One of the ways the university cultivates this profile is by providing students with opportunities to develop their soft skills through campus-based personal development initiatives, such as extracurricular activities.
However, there is currently no reliable mechanism to measure which GLO aspects are supported by specific activities. As a result, students often struggle to identify the most appropriate activities to address their competency gaps and may end up participating in programs that do not align with their actual needs. Furthermore, interviews with the Head of the Christian Leadership Center at Petra Christian University revealed that event organizers tend to design programs based on established routines rather than on the actual needs of students. Additionally, upon graduation, it often remains uncertain whether students have fully attained the intended graduate profile. As a result, the university lacks a data-driven basis for evaluating the effectiveness of its student activities.
To address these issues, in collaboration with the university’s Center for Christian Leadership, a recommendation system has been designed for student activities and other personal development programs, enabling students to more effectively achieve the “Global Socio Leader” profile. The system’s design and implementation employ knowledge graphs [1], fuzzy conditional probability [2], and semantic similarity [3] to calculate recommendation scores.
Beyond need-based recommendations, the system will also suggest personal development programs that align with students' interests; individual student interest in the learning process is known to positively influence student engagement [4]. Finally, the system will feature a reporting dashboard to monitor the alignment between available resources and student competency needs.
II. Literature Review
A. Knowledge Graph
A knowledge graph is a form of data representation that models entities and the relationships between them, organized within a graph structure. Knowledge graphs enable the definition of classes and relations among entities, allowing associations even between entities that are not directly connected. They encompass a wide range of domains [5]. Their ability to integrate heterogeneous data sources and capture semantic relationships makes them particularly valuable in contexts where complex interconnections must be understood and leveraged. For example, in educational settings, knowledge graphs can be used to represent curricula, competencies, and learning resources, thereby enabling more personalized and adaptive learning pathways. By structuring information in a way that mirrors human reasoning, knowledge graphs serve as a bridge between raw data and meaningful insights, supporting both machine-driven inference and human decision-making. In this paper, the knowledge graph referred to is the one used to define the ontology of the Global Socio Leader curriculum.
B. Fuzzy Conditional Probability
In real-world applications, data often exhibits varying degrees of certainty or uncertainty. This degree of certainty can be represented using a fuzzy set. Fuzzy sets allow uncertain data to be modeled by assigning a membership value ranging from 0 to 1. Rather than relying on binary logic (“0” or “1”), fuzzy sets employ fuzzy logic, in which membership degrees reflect the extent to which an element belongs to a set, thereby capturing multiple possibilities of value [2]. This flexibility makes fuzzy sets particularly useful in domains where crisp boundaries are unrealistic, such as decision-making, pattern recognition, and recommendation systems. For instance, a student’s level of interest in an activity may not be strictly “interested” or “not interested,” but rather expressed along a continuum. By incorporating fuzzy sets, systems can better accommodate ambiguity and partial truths, ultimately producing more nuanced and human-like reasoning.
Let X and Y be two membership functions over a domain D, representing labels X and Y in a universe U. A fuzzy conditional probability relation is defined as a mapping R:U×U→0,1, as shown in (1).
C. Past Works
Obeid [6] addressed university/major selection for high school students using a hybrid recommender combining case-based reasoning (a Knowledge-Based Recommender System [7]) with Collaborative Filtering [8]. Unlike this study’s ontology-based semantic similarity derived from shared concepts, the present paper integrates fuzzy conditional probability with semantic similarity.
da Silva Júnior et al. [9] addressed academic collaboration matching using Content-based [10] and Collaborative Filtering [8] recommendation methods. While that study derives recommendations exclusively from text similarity for academic activities, the present paper targets non-academic, student-related activities and combines semantic similarity with domain knowledge.
III. Methodology
A. Data Collection
The Global Socio Leader curriculum data is structured around a primary component, Graduate Learning Outcomes (GLO), which is further detailed into smaller, specific aspects: Sub-Graduate Learning Outcomes (Sub-GLO), qualities, indicators, and questions. To measure students’ competencies in these areas, this paper utilized survey questions from the Center for Christian Leadership where responses are on an integer scale from 1 to 10, where 1 represents a stance such as “strongly disagree” and 10 represents, for instance, “strongly agree”. There are reverse-coded questions that invert the numerical values of survey items and are phrased negatively, such that a value of 10 becomes 1, a value of 9 becomes 2, and so on. The data collected are in tabular format consisting of curriculum data, survey answer data, student demographic, and major to faculty hierarchy data.
B. Survey Reliability Test
Before analyzing student responses from the survey, a reliability test was conducted to determine whether specific questions measured the same underlying quality. Cronbach’s alpha was used for this reliability assessment. The results indicated that, with the exception of one, all qualities yielded a Cronbach’s alpha value greater than 0.6. A survey instrument is considered reliable if the Cronbach’s alpha score exceeds 0.6 [11]. One quality which is “Critical Thinking Analysis” recorded a Cronbach’s alpha value below 0.6 (specifically, 0.44). Upon further examination, the authors identified a potential cause: a reverse-coded question. In such questions, numerical values are inverted by converting a 10 to a 1, a 9 to a 2, and so forth to reflect a negative orientation. Excluding this reverse-coded question raised the Cronbach’s alpha value to 0.68.
Reverse-coded questions are designed to encourage students to pay closer attention to question wording and to mitigate acquiescence bias (the tendency of survey respondents to agree with a statement) [12]. One hypothesis suggests that reverse-coded questions may lead respondents to misinterpret statements, resulting in answers that are inconsistent with positively worded questions. However, upon re-examination, specifically after applying a filtering technique to exclude students who failed to answer reverse-coded questions correctly (i.e., dropping students with a standard deviation of zero for responses in the “Critical Thinking Analysis” category), the Cronbach’s alpha value remained low (0.44) and did not improve. Consequently, to address this low value, the authors decided to remove these questions. This removal is to be carried out during the data preprocessing stage.
C. Data Preprocessing
Data preprocessing is performed to convert data into a format ready for migration to a graph database. The preprocessing utilizes the Pandas library to handle data as DataFrames and Google OAuth2 to automatically read data from Google Sheets. All final data is stored in Parquet format to preserve the data schema. Preprocessing steps include converting numbers to appropriate data types, joining tables, dropping a question that fails the reliability test, and reversing the answer for reverse-coded questions.
D. Exploratory Data Analysis
The EDA revealed that 525 students from the class of 2025 completed the survey. Additionally, it was found that student proficiency in certain competencies remained low (score < 7); therefore, implementing a recommendation system is relevant to assist students in achieving the necessary competencies.
E. System Features
The recommendation system and dashboard were implemented in a web-based platform, featuring two types of roles: students and administrators, as shown in Fig. 1.
F. Graph Database Structure
The graph database structure (Fig. 2) is divided into five main groups. The first is the curriculum, formed by a chain of one-to-many relationships: CurriculumVersion Node → Glo Node → SubGlo Node → Quality Node → Indicator Node → Question Node. The exception is the SubGlo → Quality relationship, which is many-to-many and carries a weight property (0, 1] indicating the quality level within the Sub-GLO. The second group is the topic, consisting of only the Topic Node, which contains keywords related to student interests.
The third group consists of student profile. For academic demographic data, the Student Node connects to the Major, Batch, and StudyLevel (current level of study) Nodes. It also links to the four levels of curriculum competence, storing fuzzy mastery scores (0, 1], where 1 indicates perfect mastery. The Indicator relationship is used for recommendation calculations, while the Quality, SubGlo, and Glo relationships feed dashboard reports. Additionally, the Student Node connects to the Topic Node to map student interests and to the ScoreTransaction Node to store transactional data and score increments from activity attendance.
The fourth group is the resource layer, covering four resource types: activities, books, videos, and articles. Similar to the Student Node, the UniResource Node connects to the Indicator, Quality, SubGlo, and Glo Nodes, using the Indicator relationship for recommendation calculations and the Quality, SubGlo, and Glo relationships for dashboard reporting. It also connects to the Topic Node to specify the topic a resource covers, and to the StudyLevel Node to ensure resources are recommended only to students meeting the required study level.
The fifth group is the system configuration layer, storing editable variables related to recommendation algorithms.
G. Calculation of Support Weight of Self-Development Resources to Curriculum Competencies
The support of resources to curriculum competencies is represented by the weight, or degree of support, between Resource nodes and Indicator, Quality, Sub-GLO, and GLO nodes, labeled SUPPORTS. The support of a Resource node to an Indicator node takes a value of 0 or 1, where 1 declares that the resource supports an indicator and 0 indicates no support. Whether or not the resource supports the indicator is defined by the administrator in the system. Meanwhile, the relations between resource and quality, Sub-GLO, and GLO are calculated as below.
The weight of the edge between a UniResource node and a Quality node is the ratio between the number of indicators supported by a resource and all indicators within that quality.
The weight of the edge between a UniResource node and a Sub-GLO node is the weighted average of the weight between resource SUPPORTS quality, across qualities within the Sub-GLO. The weight in this calculation comes from the weight of the relation between Sub-GLO and qualities defined in the curriculum.
The weight of the edge between a UniResource node and a GLO node is calculated by taking the average weight of the relation of resource SUPPORTS Sub-GLO.
H. Calculation of Mastery Weight of Students in Curriculum Competencies
Students’ mastery in curriculum competencies is represented by the weight, or degree of support, between Student nodes and Indicator, Quality, Sub-GLO, and GLO nodes, labeled HAS. The weight of relationships between those nodes are calculated as below.
The weight of the edge between a Student node and an Indicator node is the average of all students’ answers within that indicator, converted from range [1, 10] to [0, 1].
The weight of the edge between a Student node and a Quality node is the average of the weight between Student node and all Indicator nodes in that quality.
The weight of the edge between a Student node and a Sub-GLO node is the weighted average of the weight between student HAS quality, across qualities within the Sub-GLO.
The weight of the edge between a Student node and a GLO node is calculated by taking the average weight of the relation of student HAS GLO.
I. Resource Recommendation Algorithm for Students
Recommendations for student self-development resources are calculated based on aspects of student needs and student interests. The student needs aspect is calculated using a fuzzy conditional probability relation, whereas the student interests aspect is calculated using a fuzzy conditional probability relation and semantic similarity.
Needs Aspect: Calculated using a fuzzy conditional probability relation with fuzzy membership degrees in the indicator domain.
The students' membership degrees in the indicator domain are taken from (2).
1) Interests Aspect
Calculated using a fuzzy conditional probability relation involving fuzzy membership degrees within the Topic domain and semantic similarity. Both student and resource membership degrees within the topic domain are binary, determined by the presence (1) or absence (0) of a relationship to the topic. The semantic similarity approach converts students’ interest text and resource text into 384-dimensional vector embeddings, such that texts with similar meaning are close in the multidimensional space. Since students’ text is much shorter than resource text, this study utilized asymmetric semantic similarity search [3] with a model specialized for Indonesian, LazarusNLP/all-indo-e5-small-v4 [13], [14]. Similarity between vectors is calculated using cosine similarity and transformed from the [-1, 1] range into [0, 1] as outlined in (3).
2) Resource’s Internal Weight
A resource has an internal weight that determines the quality of said resource. The higher the weight, the better the quality of the resource. This internal weight falls within the range of (0, 1] and is determined by the administrator when inputting a resource. For flexibility, a resource's internal quality can be assessed by several aspects. For example, an event's quality can be determined by duration, speaker quality, and so on. Administrators can determine the importance of each aspect as well. This importance lies within the range (0, 1], with all importance weights summing to 1.
The final recommendation score is calculated by combining the needs aspect, interests aspect, and resource's internal weight, according to (4), (5), and (6).
J. Indicator Recommendation Algorithm For Resource
To make the resource-inputting process easier for administrators, the system can recommend indicators for a resource based on other similar resources. The similarity of resources is calculated using the semantic similarity between the title and description of the resource being looked up and the resources stored in the system. This calculation is done using the same formula outlined for semantic similarity between student and resource, but the output of the calculation is left within the range [-1, 1]. The system then picks the most similar resource to the one being looked up, in order to recommend the indicators of the most similar resource to the administrator. To ensure recommendation relevancy, the system sets a minimum similarity threshold of 0.6.
K. Student Score Addition Calculation
When students have already finished an event, the system automatically adds a mastery score to the students, based on the indicators supported by the event, using the formula outlined in (7).
L. Dashboard
The dashboard was made with the goal of giving reports to administrators and other stakeholders to monitor the support of university resources for competencies, as well as students' competency needs.
IV. Discussion
Fig. 3 illustrates activity recommendations provided to the third student, demonstrating that the system suggests activities aligned with the student’s interests. Interests in social sciences are addressed by “ASTOR”; technology by “Digital Leadership Project”; graphic design by “Bharatika”; and science, indirectly, by “Healthy Home,” which intersects with technology and sustainable housing construction.
The dashboard displays student data and self-development resource information, comprising 20 administrator-entered activities. Fig. 4 shows the gap between resource support and student needs, with each scatter point representing an indicator; several indicators required by students currently have no supporting activities.
Fig. 5 displays a dashboard showing support for Sub-Graduate Learning Outcome (Sub-GLO) by activity organizer, with darker colors indicating more intensive support for specific Sub-GLOs. The dashboard reveals distinct trends linking activity organizers to the Sub-GLOs they support. For the “Student Executive Board” organizer, Sub-GLO 3.4 and Sub-GLO 3.2 receive intensive support. Meanwhile, “Petra Synergy Team” focuses on Sub-GLO 1.1. For other activity organizers, clear support trends are not yet apparent, as the number of activities recorded for them remains limited.
Fig. 6 presents a dashboard characterizing self-development activities, where the x-axis represents the number of supported Sub-GLOs and the y-axis represents the average intensity of support across all supported Sub-GLOs. The dashboard reveals a trend wherein the depth of Sub-GLO support for the included activities tends to be proportional to the number of Sub-GLOs supported. Fig. 6 illustrates the “Basic Servant Leadership Training” activity as an example of a “broad-scope” activity, one that supports numerous Sub-GLOs but offers limited depth of support.
Fig. 7 displays the student performance dashboard regarding curriculum competencies. The dashboard reveals that students have not yet met all competency mastery targets set by administrators, specifically, a score of 0.7 across all competency aspects. The figure also indicates that, with the exception of Sub-GLOs 1.2 and 1.6, nearly all Sub-GLOs have failed to meet the minimum competency achievement target. Finally, the figure shows that GLO 1 exhibits the highest performance.
Fig. 8 presents a dashboard comparing the competency profiles of students who participated in activities based on system recommendations versus those who did not. Given the absence of real-world student participation data, the authors conducted a simulation involving 300 students randomly assigned to the “Digital Leadership Project” activity, applying a score increment constant of 0.2. Of the 300 students simulated, 56.7% followed the recommendations, while 43.3% did not. Students who participated in activities aligned with the recommendations achieved higher overall competency scores across both Sub-GLOs and GLOs compared to those who participated without following the recommendations. This indicates that participating in activities based on the provided recommendations leads to more optimal competency performance than random activity participation.
V. Conclusion
Overall, this paper shows that self-development resource recommendations for university students based on needs and interests can be beneficial for two things. First, the recommended resources address a student’s individual areas of growth. Second, the recommended resources are aligned with students’ interests, making them more likely to participate in those resources. The knowledge graph has been shown to be useful to this case study, which utilizes a hierarchy of curriculum competencies. This structure allows the recommendation system to identify connections between a student’s current competency level and higher-level or related competencies. Fuzzy conditional probability has been shown to be useful for the recommendation algorithm, as it allows the system to model the degree of relevance between a student’s needs and interests rather than treating them as strict binary matches. Semantic similarity has been shown to be useful for cases where interests do not entirely match, providing room for student exploration.
While the current system provides a functional foundation for resource recommendation, several directions remain for future improvement. First, additional factors such as activity schedule preferences, personality types, and activity formats could be incorporated into the recommendation algorithm to help students select the most optimal resources. Second, the system could incorporate a chatbot to enable more flexible, conversation-based recommendations. Third, since the current indicator recommendation relies only on similarity to past resources, future work could improve accuracy by scanning an activity's proposal to generate indicator recommendations. Collectively, these improvements could make the recommendation system more accurate and transparent.