A Greedy-based Algorithm in Optimizing Student’s Recommended Timetable Generator with Semester Planner

Semester planner plays an essential role in students’ society that might help students have self-discipline and determination to complete their studies. However, during the COVID-19 pandemic, they faced difficulty organizing time management and doing a manual schedule. It resulted in substantial disruptions in learning, internal assessment disturbances, and the cancellation of public evaluations. Hence, this research aims to optimize the recommended semester planner, Timetable Generator using a greedy algorithm to increase student productivity. We identified three-set control functions for each entered information: 1) validation for the inserted information to ensure valid data and no redundancy, 2) focus scale, and 3) the number of hours to finish the activity. We calculate the priority task sequence to achieve the best optimal solution. The greedy algorithm can solve the optimization problem with the best optimal solution for each situation. Then, we executed it to make a recommended semester planner. From the test conducted, the functionality shows all the features successfully passed. We validate using test accuracy for the system’s reliability by evaluating it compared to the Brute Force algorithm, and the trends increase from 60% to 100%. Keywords—Greedy algorithm; optimization; recommendation system; semester planner


I. INTRODUCTION
The COVID-19 pandemic has made a huge impact on the educational system around the world, forcing lockdown in schools, universities, and colleges. Hence, Singh and Kant [1] claimed it caused a significant disrupted student learning, internal examinations, and the termination of public exams for qualification due to inferior alternatives. Based on the research, most students are not well prepared for classes. The condensed class schedule negatively impacts their learning experiences [2]. It corresponded with low experiences and academic achievement by the student.
A survey conducted towards 126 students of Universiti Teknologi MARA Melaka Kampus Jasin. They responded that they used paper and pen to organize semester planners manually, and 84.9% of students found it challenging to organize semester planners with upcoming quizzes and tests.
Additional time to new learning content is taught to enhance their performance. However, the effect of this treatment is a slight difference throughout the distribution of student performance. While the most benefit is for high-performing students, low-performing students do not benefit. Foulkes et al. [3] highlight that the research argued that it is crucial to determine the content of additional time instruction to explain this pattern.
Besides, balancing studying with the fun stuff in life can be challenging to maintain. Unstructured academic lifestyle is one of the impacts of poor sleep quality in university life [4]. It increases mental the risk of mental illness and poor academic achievement. Panda et al. [5] mentioned that based on research on academic stress students, the stress factors include many assignments, competition with other students, failures, financial problems, poor relationships, lectures, or family matters.
Thus, planning a scheduler is an effective solution to organize and navigate students' time management [6]. A semester planner is an organized schedule where students can create outlines and awareness of the study methods and the effectiveness of their study practices for the current semester and learning goals. Students become self-discipline, deterministic, and more confident [7]. In addition, it helps them build self-regulated learning skills to succeed in various learning environments and workplaces. As a primary time management tool, a scheduler comes in a list of times when events and actions occur. Brioso et al. [8] supported that planning and controlling did not starve due to insufficient input in an intrinsically challenging task.
The primary substance of time management is reducing stress [9]. Of course, building a schedule for the current semester is a tedious task. Students need to fit all the courses into a single scheduler, which would take time and patience. The time management principle is time management on how to plan the specific tasks and work and organized. Otherwise, it can affect entire planning and work. Based on the same survey, 83.8% of the students claimed they never use revision planners' automated class timetable generator. Therefore, to overcome the problem, a recommended semester planner using optimization of the greedy-based algorithm was used quickly to find an approximate solution in the optimization prickly. This parallel with the greedy-based algorithm concept, to solve problems in getting the globally optimal solution with the choice seems best by making a locally optimal choice [10]. Moreover, the greedy allocation is compatible with a dynamic heterogeneous resource environment linked to the scheduler via a homogenous communication environment [11]. Thus, Choudhary and Peddoju [12] claimed that it is easier to assess the run with more efficient use of available resources. It allows UiTM students to identify peak study load times to ensure they have plenty of time to complete all assignments. The achievement of each target would bring in the motivation to achieve another target.

II. RELATED WORK AND TECHNIQUES
This section describes the related works in scheduling and related techniques related to the study.

A. Related Work in Scheduling
There are some related works in scheduling such as course timetables, high school timetables [13], exam timetables, and some of the other schedules used in the workplace. Although many intelligent practices have been used in recent years to solve course timetabling, there are still many areas for improvement. Wang et al. [13] claimed that to effectively solve the Greedy Algorithm and provide a high-performance initial Genetic Algorithm population, they suggested using a Greedy and Genetic Fusion Algorithm. The hybrid Cat Swarm Optimization algorithm-based application solves the school schedule problem. It is efficient, easy to use, and fast. The demonstration conducts by experiments with real-life input data to test the efficiency and performance. The test case uses the same timetable and the same description statistics. The result shows that the hybrid CSO-based algorithm performs better in less computational time than many other existing approaches.
For timetable examination, a new proposed combination of three approaches: multiple criteria, maximum independent set, and heuristic graph to solve the problem of timetable examination [14]. There is also have some related work on schedulers in the workplace, such as flight schedules. Optimization control and algorithm design have also been hot issues in China's research into unusual flights. Based on a better knowledge of the NP problem under the flight recovery model, the researcher validates the usefulness of the greedy random adaptive algorithm in the problem-solving process [15].

B. Related Techniques
An algorithm is a step-by-step approach to problemsolving, widely used for data processing, calculation, and other related mathematical and computer operations. Different algorithms can easily and quickly perform operations or solve problems in terms of efficiency. There are three related techniques: Evolutionary Algorithm (EA), Greedy Algorithm, and Brute Force.
The Evolutionary Algorithm (EA) development has been significant among the research and optimization techniques set in the last decade [16]. EAs are a set of modern heuristics used with great complexity in many applications. It was the engine of a field known as Evolutionary Computation (EC) that successfully solved complex problems [17]. The advantages of EC techniques derived from gaining fitness and flexibility to the goal combined with robust behavior. Nowadays, EC is considered an adaptable problem-solving concept, particularly in complex optimization problems.
A greedy-based algorithm produces a good solution to some math but not others. As mentioned by Prabhaharan et al. [18], most of the issues they are working on will have two properties; firstly, a greedy choice property is defined as the best way to make any choice to solve sub-problems that might arise later. A greedy algorithm's choice might depend on the decision but not the future or all the subproblem's solutions. It makes iteratively one greedy choice to minimize a problem into an optimal solution. Secondly, an optimal substructure is an optimal solution to solve the problem includes optimal solutions to the subproblem. Then a will problem displays optimal substructure. The problem of optimization is finding the best solution that seems all feasible [19].
Brute Force defines a straightforward problem strategy, commonly dependent on problem statement and concept definition. Definition of 'force' is a computer strategy but not intellect. Another approach to describe Brute Force is 'Just do it', and sometimes, the technique is easiest to use [20]. Exhaustive or Brute Force searches can generate and test the basic solving problem method and algorithm paradigm. Mahoor et al. [21] claimed it consists of the listed systematic potential candidate for solution and testing if each candidate meets the problem statement. Therefore, this approach is used commonly when the problem is small enough that heuristics can reduce the number of possible solutions to a manageable number. Also, identifying a solution recovery model takes more time than speed.
As a result, an evolutionary algorithm is beneficial with conceptual simplicity, while Brute Force is widely applicable and known for its simplicity. However, the greedy-based algorithm is more accessible to implement and faster than the other two. Although the Greedy-based algorithm has not always reached the optimal global solution, most of the time reaches the sub-optimal solution. Thus, greedy-based techniques are the best solution for this project in schedule recommendation of timetable generator with semester planner.

III. METHODS
This section divides research methodology into four phases: gather information, design and development and system validation.

A. Gather Information Phase
The survey was conducted on 126 respondents of students from UiTM Cawangan Melaka Kampus Jasin on their experience to understand better the real problem faced by them. Table I shows the summary of survey information. About 85.70% of respondents agreed that they have difficulties organizing their study planner, while the rest, 14.30%, voted 370 | P a g e www.ijacsa.thesai.org with no issues. Some of them never use study planners with 58.13%, followed by book or handphone planners with 24.78%, sticky notes with 14.60%, and timetable 2.49%.

B. Timetable Generator Flowchart
We use the flowchart as in Fig. 1 to design how the timetable generator operates by defining the system's module, data, and architecture to specify the system requirements. It starts with key-in details information for the user's hobby, extracurricular, and subject details for the current semester. We set the control functions for each information: 1)validation for the inserted information to ensure valid data and no redundancy, 2)focus scale, and 3) the number of hours to finish the activity. The information entered by the user can be updated or deleted before we generate the planner using the Greedy algorithm.

C. System Interface
System design or user interface design is designing an interface in software or computerized devices focusing on locks or style. This research aims to design an interface that is easy to use and understandable by the user. User interface design usually refers to graphical user interfaces. Fig. 2 shows the Greedy algorithm flowchart of the phase involved in this algorithm to achieve the best optimization result. The algorithm needs to solve scheduling problems in tasks that need to be completed, required time to complete each task, and priority of each task. Three main processes involved:

1) Step 1: Initialization:
The algorithm initializes all user variables and sorts the list with the greedy approach. The data will be classified into three lists: name, focus scale, and complete time.
2) Step 2: Sort list: Sort the tasks based on decreasing order of priority. However, in some cases, the priorities of different tasks are the same. This algorithm recommends the list of tasks that require a higher focus scale and the shortest time completed the task to minimize the problem. The algorithm would give preference to a higher focus scale and tasks that take less time to complete so that the higher focus scale will lead to a higher score, and more time needed will reduce the score. After being classified into a list, this phase has created another list of pairs [key, value] as shown below. Each of the list pairs is a combination of hobby, extracurricular, and subject. Then, the system would proceed with the sorting process for each list in decreasing the order of "key". After all the variables have been sorted, the algorithm will assign lists in a directory with a specific condition.

3)
Step 3: Optimal scheduler: Assume that task in priority sequence is n, set priority = {(8, ICT662), (7, Badminton), …n} and tasks use the same resources from of hobby, extracurricular and subject task, with priority score for each task. The algorithm use planner set to store the selected task. The task chosen is ICT662, and Monday is initialized "ICT662". Then the algorithm will go through 14 weeks to check whether the task has an assignment, quiz, or test week. For example, ICT662 has a quiz on week five, then Monday on week five is initialized "Quiz 1 ICT662". An algorithm will proceed initialized in planner set with next day and weeks until all the task in the priority list is empty.

E. System Validation
Lastly, we proceed with system validation to test the functionality and reliability of the system. A functionality test runs to test whether the system's function is running smoothly or not. If there are bugs when running the functionality test, we need to correct the function to ensure it meets the requirements. Functionality testing tests and identifies which function is performed with or without error. If an error occurs in this phase, we need to fix the error before the implementation. For the reliability test, we compare the result of the Timetable Generator with the Brute Force algorithm to check the result's accuracy. We tested this testing phase with developers, lectures, and UiTM Jasin students to know whether this project is performing well or not.

A. Functionality Testing
We have to test and check the core's function application, input, button, table, and more during this phase. To test the system's functionality, Table II describes consideration of features criterion where we test it accordingly and fill up the result. There are six features involved: registration and login, subject, hobby and extracurricular, updating user's details, a sequence of the focus scale, complete time and priority, planner and print planner.
The output of Timetable Generator, as in Fig. 3, display the sorted list based on the focus scale, complete time and priority in the list box. These list boxes show the pair between focus scale and complete time with all user tasks. The sorted priority list box is the greedy algorithm result sequence with the score and name of each task. Finally, Fig. 4 shows the output result of the Timetable Generator or the semester planner with an optimal scheduler. We successfully passed all the features, and finally, users can print a semester planner in pdf form as the last feature development.

B. Reliability Testing
We validate the reliability testing based on the system's accuracy in this phase and use ten tests to run the validation. The system's response might have a different condition with different sequences of priority and Brute Force result on the hobby, extracurricular, and subject enrol. Table III shows the output from the system prototype and Brute Force algorithm result by manual calculation. We test the accuracy testing based on these two rules: First, give preference to higher priorities, leading to a higher score. Second, give preference to tasks that take less time to complete, so tasks that take more time will reduce the score. Next, we calculate the accuracy based on the similarity result sequence of Brute Force and Timetable Generator. Table IV shows the summary comparison on the research accuracy result, p between Brute Force and our proposed study. Only attempt 1 has a slight difference out of five; only three items have similar according to the result sequence. The rest outcome gained is similar for both reliability tests.
We constructed the visualization of an accuracy graph from the result of 10 output. Fig. 5 shows the 2-axes graph, increasing from 0.60 (60%) to 1.0 (100%). It proves that the Timetable Generator system is accurate and can be used for the student to overcome the problem.

Features Details Status
Registration and login The system can register a new account with an encrypted password and allow users to login into the system with the correct combination of attributes needed. Passed Subject, hobby and extracurricular The system can store the user's subject, hobby, and extracurricular details in the database. Before storing the details, the system will check whether all of the data are inserted or not. The incomplete information would not allow being stored in the database.

Passed
Updating user's details The system retrieved all user details from the database and displayed them in a grid view. Users can update some data and store it back in the database. Passed A sequence of complete time, focus scale and priority The system can list decreasing order of complete time, focus scale and priority. Passed

Planner
The system prescribes a schedule of semester planners that is the best based on the priority sequence. The schedule will be displayed in the form of a table that contains seven days and 14 weeks of a semester. Thus, the system will display the subject details based on assignment week, quiz week and test week.

Passed
Print planner Print the planner in the form of a PDF. Passed 372 | P a g e www.ijacsa.thesai.org     We presented a recommended semester planner using the optimization technique greedy optimization. Optimization is done to suggest a semester planner according to the user's preferences and at the same time recommend the planner with scheduling all user's activities, including study, hobby and extracurricular for a semester. We managed to validate the Timetable Generator using a reliability test by testing the system's accuracy with the Brute Force algorithm with the achievement of 100% accuracy. Future work is recommended to enhance the system's security. We need to hold the private and confidential data and propose using progressive web applications for a better view and suitable for handphones.