liuhuanyong/ontologydrivensmartcampusadvisor — explained in plain English
Analysis updated 2026-05-18
Study a working example of rule based reasoning over a knowledge graph instead of a machine learning model.
Ask example questions like what to take next semester and watch the reasoning steps highlighted on a graph.
Use it as a teaching demo for ontology design, entities, relationships, and forward chaining rules.
Extend the eight existing rules or the sample data as a starting point for a similar advisor project.
| liuhuanyong/ontologydrivensmartcampusadvisor | 1038lab/comfyui-agnes-ai | andyuneducated/resolve-ai | |
|---|---|---|---|
| Stars | 18 | 18 | 18 |
| Language | Python | Python | Python |
| Setup difficulty | easy | easy | hard |
| Complexity | 3/5 | 2/5 | 4/5 |
| Audience | researcher | developer | developer |
Figures from each repo's GitHub metadata at analysis time.
Needs only Python 3.10+ and no external dependencies, run main.py for a CLI demo or server.py for the web interface.
This project is a demo of a smart campus advisor that recommends courses and career paths to students using a knowledge graph instead of a machine learning model. The author built it to show how ontology modeling, rule based reasoning, and natural language questions can work together, with every step of the reasoning shown visually on screen. The system stores information about departments, majors, professors, courses, skills, students, and careers, with relationships like which courses a professor teaches, which skills a course teaches, and which career a student is aiming for. On top of this graph sit eight reasoning rules that check things like whether a student has completed the prerequisites for a course, which courses to recommend next, what skills a student is missing for their target career, and which careers a student currently qualifies for based on a skill match of sixty percent or higher. When a student types a question in plain language, such as asking what to take next semester or what career suits them, the system matches the question to one of five intents using keyword matching, figures out which student, course, or career is being discussed, then runs the matching chain of rules over the graph. Each rule logs which nodes and connections it visited, and this trace is used to highlight the reasoning path on an interactive graph shown in the browser, alongside the final answer in plain language. The whole thing is written in pure Python with no third party libraries on the backend, and the small web frontend only pulls in a graph visualization library from a public CDN. It comes with sample data for six departments, eight majors, twelve professors, eighteen courses, and eight students, and ships with twenty example questions you can try after starting the local web server. The author is upfront that this is a demo rather than a production system. The language understanding is basic keyword matching rather than a real language model, all data is hardcoded with no way to save changes, the web server is single threaded, and there is no login system or automated testing. The README lists these gaps along with ideas for improving them, such as adding a real database, a proper web framework, and large language model based question understanding.
A Python demo that uses a knowledge graph and rule based reasoning, not machine learning, to recommend courses and careers to students and visually shows each reasoning step.
Mainly Python. The stack also includes Python, vis-network, http.server.
The README does not state a license, so the terms for using or redistributing this code are unclear.
Setup difficulty is rated easy, with roughly 5min to a first successful run.
Mainly researcher.
This repo across BitVibe Labs
Don't trust strangers blindly. Verify against the repo.