A Prolog-Based Expert System with Application to University Course Scheduling
Round 1
Reviewer 1 Report
Comments and Suggestions for AuthorsThe reviewed paper preents good level of academic language with proper technical writing style. However, some minor typos are present in the body of the text, such as "gmial.com". Sometimes, the commas are misplaced, leading to ambiguity, "Prolog" should rather be "PROLOG", words get repeated or some sentences could be simplified. Some repetitions could definitely been avoided as in “soft constraints”, “hard constraints”, and some informal statements "Of course", "Basically" could be definitely replaced. The introduction and related work sections repeat similar points concerning course scheduling problems and soft computing methods.
In the paper, SWI-PROLOG-based expert system for solving university course scheduling problems is considered, in comparison to the other state-of-the-art approaches that mainly use operational research methods (MILP programming) and soft computing methods (GAs method, simulated annealing, and PSO). The paper uses PROLOG's inference engine along with Java to highlight the rule-based system design, on the basis of the data obtained form the national university in Taiwan.
The related work is clearly cided, and related to classical approaches on ILP approaches of Naderi, Wasfy & Aloul, along with proper references to soft-computing methods. The methodology of using PROLOG is well-documented in the prior worksThe shown approach combines SWI-Prolog with Java via JPL. The very concept of using an expert system in this context is not novel, but the combination of using this approach with GUI might be considered as novel. n the literature review, genetic algorithms, hybrid methods, particle swarm optimization, and integer programming approaches have been mentioned, what nables the readers to understand the readers the other available approaches, their pros and cons.
The very use of PROLOG as an expert system is traditional , its SWI-PROLOG alldifferent predicate for constraint satisfaction as well, thus no new algorithm or methodology is actually presented, but the known tools re extended to a novel case study. I cannot tell whether this contribution is sufficient. Obvously, using built-in Prolog predicates as alldifferent for constraint management simplifies implementation compared to complex heuristic or metaheuristic algorithms, but is it enough? Please support the novelty and contribution claims stronger.
The combination of SWI-Prolog with Java by the use of the JPL bridge for interactive GUI has some practical usability not often seen in purely theoretical scheduling research, but is it enough? The paper's novelty lies mostly in the particular application and integration but does not introduce fundamentally new algorithms or optimization techniques.
Please elaborate on scalability challenges when scheduling tasks grow lare. Inclde any comparison against state-of-the-art heuristic methods or commercial tools, which is important to objectively establish advantages or trade-offs.
Also consider to include any explaination how to address larger and more complex constraints, as multi-campus coordination, special event services or dynamic changes in course schedules. Would it be advantageous to use a hybrid approach and include heuristics or ML approaches?
Author Response
Response to the comments of Reviewer 1
Comment 1: The reviewed paper preents good level of academic language with proper technical writing style. However, some minor typos are present in the body of the text, such as "gmial.com". Sometimes, the commas are misplaced, leading to ambiguity, "Prolog" should rather be "PROLOG", words get repeated or some sentences could be simplified. Some repetitions could definitely been avoided as in “soft constraints”, “hard constraints”, and some informal statements "Of course", "Basically" could be definitely replaced. The introduction and related work sections repeat similar points concerning course scheduling problems and soft computing methods.
Response 1: Thanks for the comment. Yes, we have corrected them. Please see the text highlighted by yellow markers.
Comment 2: In the paper, SWI-PROLOG-based expert system for solving university course scheduling problems is considered, in comparison to the other state-of-the-art approaches that mainly use operational research methods (MILP programming) and soft computing methods (GAs method, simulated annealing, and PSO). The paper uses PROLOG's inference engine along with Java to highlight the rule-based system design, on the basis of the data obtained form the national university in Taiwan.
Response 2: Thanks for the comment. We have added one more section, (Section 6 Discussion) to discuss some possible advantages of using SWI-PROLOG. Please see Section 6 highlighted by yellow marker.
Comment 3: The related work is clearly cided, and related to classical approaches on ILP approaches of Naderi, Wasfy & Aloul, along with proper references to soft-computing methods. The methodology of using PROLOG is well-documented in the prior worksThe shown approach combines SWI-Prolog with Java via JPL. The very concept of using an expert system in this context is not novel, but the combination of using this approach with GUI might be considered as novel. n the literature review, genetic algorithms, hybrid methods, particle swarm optimization, and integer programming approaches have been mentioned, what nables the readers to understand the readers the other available approaches, their pros and cons.
Response 3: Thanks for the comment.
Comment 4: The very use of PROLOG as an expert system is traditional , its SWI-PROLOG alldifferent predicate for constraint satisfaction as well, thus no new algorithm or methodology is actually presented, but the known tools re extended to a novel case study. I cannot tell whether this contribution is sufficient. Obvously, using built-in Prolog predicates as alldifferent for constraint management simplifies implementation compared to complex heuristic or metaheuristic algorithms, but is it enough? Please support the novelty and contribution claims stronger.
Response 4: Thanks for the comment. We have added one more section, (Section 6 Discussion) to discuss some possible issues related to our system, which might indicate the advantages of using SWI-PROLOG to schedule timetables. Please see Section 6 highlighted by yellow marker.
Comment 5: The combination of SWI-Prolog with Java by the use of the JPL bridge for interactive GUI has some practical usability not often seen in purely theoretical scheduling research, but is it enough? The paper's novelty lies mostly in the particular application and integration but does not introduce fundamentally new algorithms or optimization techniques.
Response 5: Thanks for the comment. We have added one more section, (Section 6 Discussion) to discuss some possible issues (advantages of using SWI-PROLOG). Please see Section 6 highlighted by yellow marker. We have also added a sub-section (Sub-section 4.3.1) to explain the core concept of this study and to provide sample SWI-PROLOG code. This might also help readers understand the advantage of using SWI-PROLOG to schedule timetables, including easy-to-design and easy-to-maintain rule bases. Please see Sub-section 4.3.1 highlighted by yellow marker.
Comment 6: Please elaborate on scalability challenges when scheduling tasks grow lare. Inclde any comparison against state-of-the-art heuristic methods or commercial tools, which is important to objectively establish advantages or trade-offs.
Response 6: Thanks for the comment. Yes, we have added a sub-section (Sub-section 5.2) to discuss the scalability of our algorithm. Please see Sub-section 5.2 highlighted by yellow marker. At this moment, we are unable to compare our system with some other state-of-the-art methods since the period for revision is short (only 15 days). We will do this in our future study. We have mentioned this in the direction of future study in Section 7 (Conclusion). Please see the text highlighted by yellow marker in Section 7.
Comment 7: Also consider to include any explaination how to address larger and more complex constraints, as multi-campus coordination, special event services or dynamic changes in course schedules. Would it be advantageous to use a hybrid approach and include heuristics or ML approaches?
Response 7: Thanks for the comment. We have added a sub-section (Sub-section 6.1) to discuss the maintainability of rule bases. People could easily add or modify more constraints (multi-campus coordination, special event services or dynamic changes in course schedules, etc.) into rule bases to satisfy these requirements. Please see Sub-section 6.1 highlighted with yellow marker. We have also added a sub-section (Sub-section 6.2) to discuss a hybrid approach combing SWI-PROLOG and machine learning/heuristic methods. Please see Sub-Section 6.2 highlighted by yellow marker.
Author Response File: Author Response.pdf
Reviewer 2 Report
Comments and Suggestions for AuthorsIn Electronics-3902879, authors presented an SWI-Prolog rule-based expert system for university course timetabling. Java-based GUIs communicate with Prolog’s inference engine via JPL. A case study at a Taiwanese university department (11 faculty, 8 time slots, no Friday courses) showed 99 % of assigned sessions fell within lecturers’ top-five preferences, with an average execution time of 2.4 s over 30 runs. Followings are my comments for authors.
[1]. Some key numeral results can be mentioned or added in the Abstract.
[2]. Using a pure rule-based Prolog approach to avoid parameter-heavy meta-heuristics is interesting. Rule-based or CLP timetabling systems appeared as early as the 1990s. A detailed comparison with existing CLP/ILP models is missing, weakening the claimed contribution.
[3]. This paper omits formal definitions of key constraints (room capacity, curriculum compactness, combined classes, prerequisites).
[4]. It is highly recommended to supplement the description with key parts of the rule base code or pseudocode.
[5]. No comparison with state-of-the-art methods (CP-SAT, ILP, GA, ALNS) is provided to verify its superiority. This will better highlight the position and value of this research.
[6]. The dataset (11 teachers, 8 slots) is too tiny to verify the robustness of the proposed algorithm as the problem scale increases.
[7]. Software versions (Java, SWI-Prolog, JPL) and random-seed settings are missing.
[8]. It is difficult for readers to judge whether the reported 2362 ms computation time and an average priority of 3.06 are ‘good’ or ‘good enough’.
[9]. Keyword ‘auto rea-soning’ can be expressed as “auto-reasoning’.
[10]. Page 5 Line 200, ‘Prolog is a good tool to use to model...’ can be simplified as ‘Prolog is a good tool for modeling...’.
Author Response
Responses to the comments of Reviewer 2
Overall Comment: in Electronics-3902879, authors presented an SWI-Prolog rule-based expert system for university course timetabling. Java-based GUIs communicate with Prolog’s inference engine via JPL. A case study at a Taiwanese university department (11 faculty, 8 time slots, no Friday courses) showed 99 % of assigned sessions fell within lecturers’ top-five preferences, with an average execution time of 2.4 s over 30 runs. Followings are my comments for authors.
Response to overall comment: Thanks for the comment. Yes, the comment is correct.
Comment 1: Some key numeral results can be mentioned or added in the Abstract.
Response 1: Thanks for the comment. We have mentioned numeral results in the Abstract. Please see the text highlighted by yellow marker.
Comment 2: Using a pure rule-based Prolog approach to avoid parameter-heavy meta-heuristics is interesting. Rule-based or CLP timetabling systems appeared as early as the 1990s. A detailed comparison with existing CLP/ILP models is missing, weakening the claimed contribution.
Response 2: Thanks for the comment. Yes, we have added a sub-section (Sub-section 6.4) to discuss the features of existing CLP/ILP schemas. Please see Sub-section 6.4 highlighted with yellow marker.
Comment 3: This paper omits formal definitions of key constraints (room capacity, curriculum compactness, combined classes, prerequisites).
Response 3: Thanks for the comment. We have added a sub-section (Sub-section 6.1) to discuss the maintainability of rule bases. People could easily add more constraints (room capacity, curriculum compactness, combined classes, prerequisites, etc.) into rule bases to satisfy these requirements. Please see Sub-section 6.1 highlighted with yellow marker.
Comment 4: It is highly recommended to supplement the description with key parts of the rule base code or pseudocode.
Response 4: Thanks for the comment. Yes, we have added a sub-section (Sub-section 4.3.1) to explain the core concept of this study and to provide sample SWI-PROLOG code. Please see Sub-section 4.3.1 highlighted by yellow marker.
Comment 5: No comparison with state-of-the-art methods (CP-SAT, ILP, GA, ALNS) is provided to verify its superiority. This will better highlight the position and value of this research.
Response 5: Thanks for the comment. At this moment, we are unable to compare our system with some other state-of-the-art methods since the period for the revision is short (only 15 days). We will do this in our future study. We have mentioned this in the direction of future study in Section 7 (Conclusion). Please see the text highlighted by yellow marker.
Comment 6: The dataset (11 teachers, 8 slots) is too tiny to verify the robustness of the proposed algorithm as the problem scale increases.
Response 6: Thanks for the comment. Yes, we have added a sub-section (Sub-section 5-2) to discuss the scalability of our system. Please see sub-section 5-2 highlighted with yellow marker.
Comment 7: Software versions (Java, SWI-Prolog, JPL) and random-seed settings are missing.
Response 7: Thanks for the comment. Yes, we have corrected them. Please see the text highlighted with yellow marker on Page 11.
Comment 8: It is difficult for readers to judge whether the reported 2362 ms computation time and an average priority of 3.06 are ‘good’ or ‘good enough’.
Response 8: Thanks for the comment. The previous version of manuscript was based on executing the whole system, including executing GUIs’ and checking additional requirements for the department. The number shown in the revised manuscript is based on executing SWI-PROLOG only with new computer settings (more RAM, faster processor, etc.). Therefore, the computational time is significantly reduced in our revised manuscript. Besides the item of average priority has been removed from the table.
Comment 9: Keyword ‘auto rea-soning’ can be expressed as “auto-reasoning’.
Response 9: Thanks for the comment. Yes, we have corrected it. Please see the text highlighted with yellow marker in Keyword.
Comment 10: Page 5 Line 200, ‘Prolog is a good tool to use to model...’ can be simplified as ‘Prolog is a good tool for modeling...’.
Response 10: Thanks for the comment. Yes, we have corrected it. Please see the text highlighted with yellow marker on Page 5.
Author Response File: Author Response.pdf
Round 2
Reviewer 1 Report
Comments and Suggestions for AuthorsThank you for the amendments made. I believe the paper is now more self-contained and presents a nice contribution in the field. It is in its acceptable form now. I am fully satisfied with the amendments made, and with the answers of the authors. Good luck with the review process!
Reviewer 2 Report
Comments and Suggestions for AuthorsAuthors have well addressed my raised comments and thus accept is recommended