Professional Documents
Culture Documents
By:
June 2023
COLLEGE OF ENGINEERING ii
TABLE OF CONTENTS
Preliminaries
Chapter 1 INTRODUCTION
Introduction ………………………. 1
Background of the Study ………………………. 3
Statement of the Problem ………………………. 4
Conceptual Framework ………………………. 5
Assumptions ………………………. 7
Significance of the Study ………………………. 9
Scope and Limitations ………………………. 10
Definition of Terms ………………………. 15
LIST OF TABLES
LIST OF FIGURES
Chapter 1
INTRODUCTION
Class schedule is one of the crucial tasks for every university and academic
classrooms, and time slots that will be followed by the institution for the entire
semester. Aside from being time-consuming, the traditional way of class scheduling is
difficult and error-prone. Thus, making multiple inefficient outputs consumes more
time for revision. As a result, this problem requires an efficient and automated system
that can produce a schedule that caters the conditions and constraints that the
institution considers. The traditional method of class scheduling involves the use of
software and paper-based forms like spreadsheet and manual data entry and
way of class scheduling is not a practical choice anymore. Considering the constraints
and conditions that every institution has, this likely led the institutions to seek
solution for automatic generation of class schedules. Expert systems are computer
optimal solutions while considering various constraints set by the user. Expert systems
have been widely used in various fields such as medicine, finance, and engineering.
[2]
schedule processing and automatic generation. [3] The approach that has been
utilized also varies from rule-based, constraint-based, genetic algorithm, and neural
preferences. However, there is still a need for further research and expansion to
scheduler on a hard and soft constraint approach. The proposed scheduler will
especially those who are irregular. We will evaluate the system by comparing it to the
traditional way that the university is using. The results of this study will contribute to
the improvement of an effective scheduling system that will improve the quality and
schedules.
COLLEGE OF ENGINEERING 3
consuming and error prone, leading to inefficiencies and decreased productivity. This
study focused on maximizing rooms and facilities utilization, this intended to output an
research area for the study. The research study respondent is Engr. Aldrin Soriano
implementing class schedules for the school semester, these are: room conflicts, part
time professor availability, number of teachers available to teach the course, and
student time vacancy. The use of computer office software tools as an aid in
COLLEGE OF ENGINEERING 4
generating class schedules is presently utilized. There is no other alternative
Mr. Luigi Kim Flora, the present Director of PNC-MISD, there is no algorithm in the
systems based on computers and information systems have improved. This study
to reduce the amount of time and effort required to create a class schedule and ensure
teaching and class schedules based on the data of the user. Moreover, the following
1. How does the proposed system generate automated schedules based on expert
system techniques?
2. How does the expert systems algorithm perform to optimize the scheduling system?
COLLEGE OF ENGINEERING 5
3. How the proposed system generates the following reports:
3.1 Class schedule per section, per program, and year level.
4. What are the assessments and evaluations of all end users on the proposed
4.1 Functionality;
4.2 Reliability;
4.3 Content;
4.4 Availability;
4.6 Marketability;
Conceptual Framework
This study aims to explore the conceptual framework of an automatic generated class
Generation of Scheduling System based on the Expert System and can be broken
down into three main components: input, process, and output. The input consists of
COLLEGE OF ENGINEERING 7
various elements, including Instructors, Meeting Rooms, Meeting Time, Course
Scheduling System that maximizes the use of available rooms and facilities while
taking into account the constraints and preferences of course offerings, time and day
Assumptions
executed:
1. The expert system will be designed to optimize the scheduling of classes based
simple and intuitive interface that allows users to input data that is needed such
4. The system will secure and protect sensitive information such as student and
faculty data.
5. The expert system will be able to generate optimized schedules based on pre-
6. The expert system will be evaluated for its accuracy and reliability in generating
schedules.
7. The expert system will be designed with a feedback mechanism that allows
The present study conducted by the proponents assumes that the implementation
of an expert system in a class scheduling system will improve the reliability and
accuracy of the scheduling process by utilizing expert knowledge in the field, reducing
beneficiaries:
Academic Institutions are still manually creating their schedule. Thus, this study will
highly benefit the institution as the integration of this technology will increase their
chairperson of every department as the system will only require them to enter the data
needed to generate a schedule. Thus, consuming less time to manually create one.
professors as it will generate schedules based on their preferred time and assure that
Students. The proposed design project highly benefits the students, as this
system will help them in a way that they would not need to wait longer to attend their
next class since our system will be designed to be more considerate on the time gaps
The scope and limitations listed below by the researchers specify what the
Scope
department, which includes course details such as course name, course code,
4. The system can manage the faculty schedules, including their availability,
6. The expert system will automate the scheduling process and reduce the need
Constraints are a set of guidelines that govern how an output is to be accepted. There
on an expert system in maximizing rooms and facilities utilizations. This helps to check
Functional:
1. User Management: The system shall allow users (program head and
faculty) to create and manage their profiles, login and access the system
2. Course Management: The system shall allow program head to manage the
courses offered by the institution including course names, credits, and other
relevant information.
3. Resource Management: The system shall allow program head to assign the
facilities.
the scheduling process, taking into account factors such as the availability
Non-functional:
1. Reliability: The system shall be highly reliable, with a minimal risk of system
to protect user data, prevent unauthorized access, and ensure data privacy.
Limitations
1. The system will rely heavily on the accuracy and completeness of the input
2. The system may not be able to consider external factors that may impact the
unexpected events.
3. The system is limited by the fact that it cannot replace human expertise entirely.
preferences.
4. The system requires access to personal data such as student and faculty
schedules, which may raise privacy concerns. Therefore, proper data security
protected.
COLLEGE OF ENGINEERING 15
Definition of Terms
educational institution department. The following lists of terms are conceptually and
technically defined for better comprehension. These are the terminologies used in this
study:
individuals to create new offspring with a combination of traits from both parents.
Crossover population was used in the study in terms of selecting pairs of individuals
Evolve. The process by which living organisms change over time, adapting to their
environment through natural selection. In the study, it refers to the iterative process of
Evaluated based on an objective function or a set of criteria that capture the desired
Genes. The basic units of heredity and are segments of DNA that contain the
solution.
population.
Mutation Rate. It represents the likelihood of a gene or genetic element being subject
solutions to a problem and serves as the basis for generating new populations through
genetic operators.
Population Size. A number of inhabitants found in the particular location. The number
genetic algorithm.
individuals from a population to become parents for producing offspring in the next
Chapter 2
Presented in this chapter are the review of literature and studies that are
Conceptual Literature
Class scheduling is a common task in the education sector. It plays a vital role
Act of 1994, also known as Republic Act No. 7722, was passed on May 18, 1994, and
it was this act that established the Commission on Higher Education (CHED). An
chairman and four commissioners, each of whom has a four-year tenure in office. The
policies, and strategies for higher education and the management of CHED. Also,
COLLEGE OF ENGINEERING 19
there is an order called CHED Memorandum Order (CMO) that specifies all the
requirements that are to be followed by HEIs in the Philippines for each degree
program. [47]
vital role in solving specific problems that arise in different fields that are encountered
mimics the judgment skills of a human expert. Expert systems are designed to tackle
science, or medicine. An expert has loaded and tested a knowledge base, which is a
collection of learned experience, into the system. Like other artificial intelligence
systems, expert systems may have their knowledge expanded by adding to their rule
set or knowledge base. The performance of the expert system will improve as more
Programming languages such as Python, Java, C# and C++ are more likely to
be used to develop Expert Systems. Using this system, we can make a project that
can automate the traditional method of scheduling and error checking in a matter of
seconds with the computing power of today’s computers. Python programming offers
easy to understand code which is very helpful for project implementations. Python is
COLLEGE OF ENGINEERING 20
frequently used for creating websites and applications, automating repetitive tasks,
and analyzing and displaying data. Python has been used by many non-programmers,
lecturer, “writing programs is a really creative and fulfilling endeavor.” You can build
programs for a variety of purposes, such as earning a job, solving a challenging data
[49]
Foreign Literature
effectively to produce the desired results within the time allotted. However, the pen-
appointments for a workgroup. In this model, the individuals whose time is being
reserved must check in frequently to learn about their schedule and to inform the
secretary of any times when they will not be accessible. This technique can easily
COLLEGE OF ENGINEERING 21
become unworkable in large workgroups or with extremely packed schedules. [4]
scheduling data from numerous sources and manually enter the information, which
mistakes hinder students’ ability to advance in their academic courses. [5] The
necessity of scheduling is just one of the numerous similarities between schools and
universities. Scheduling for events, classes, and other things. But ineffective
utilization of rooms and resources. [6] The inevitable conflicts in scheduling due to
human error is the reason why people begin to think of a new way to handle this kind
of tedious task.
fields given its potential to surpass humans in terms of efficiency. We often hear about
the term “Programming Language”, but what does this term really mean? A
to create software, scripts, and other types of sets of instructions that are intended to
be executed by computers. Each language has its unique syntax, despite the fact that
COLLEGE OF ENGINEERING 22
many of them have commonalities. A programmer uses a text editor or integrated
development environment (IDE) to write the source code after learning the language’s
rules, grammar, and structure. After that, the programmer frequently converts the code
into a form that a computer can comprehend. [7] However, some Higher Education
programming and points out key issues that must be addressed in a research strategy
education. These are the research questions they used to assess the possible cause
1) What previous skills and background knowledge are key for a novice student
to learn programming?
programming? [8]
COLLEGE OF ENGINEERING 23
Given that there are challenges in teaching and learning even though it is
popular. It is the second most popular language after C according to the TIOBE Index
for June 2021, and its use is on the rise. You may benefit from the vibrant learning
and development community as well as the career chances that come with
typically takes two to six months. But you may quickly pick up enough knowledge to
develop your first brief program. [9] These programming languages are one of the
tools used to develop useful computer programs as well as websites with different
purposes.
This paper will develop a web application which is easily accessed by the end
user using different devices. The common tool to create a website is the Hyper-Text
Markup Language (HTML) or HTML. Using HTML components, such as tags and
links. [50] The usability and interactivity offered by web apps now compete with those
COLLEGE OF ENGINEERING 24
of native programs because of the rapid evolution of the technology. Building
specialized solutions that are this proficient requires a lot of the technology and
knowledge. A web app framework is one of the things that, thankfully, makes
the creation of online applications, including web services, web resources, and web
frameworks” are. Web frameworks are, to put it simply, a piece of software that
provides a mechanism to build and operate online applications. As a result, you are
spared the necessity to code independently and search for any errors and flaws. Web
frameworks were first introduced in the early days of online app development as a
way to stop hand-coding apps, where only the creator of a certain app could update
it. It was a long time ago; today, we have web-specific languages, and the introduction
experiencing any problems. You may now pick one web framework that meets all of
benefits of automated scheduling start from reduced error and time consumed for
COLLEGE OF ENGINEERING 25
revisions. It also allows institutions to be organized for their implementation of
requests). Thus, reducing the time allotment for the process, which is in contrast to
the traditional approach. [11] It also satisfies client’s expectation, although it is the
same with traditional approach, time wise, automated scheduling is much more
Despite the good features that it offers, we cannot disregard the fact there is
no perfect system and that comes with disadvantages. One of the downsides of
problems encountered during the data processing. [12] Automated systems exceed
expectations through efficiency, but they lack flexibility. This is mainly because
to-case basis situation. [13] Complexity is also a problem that is entailed to automated
scheduling systems. There are variations of this system that are too complex and hard
to use. Thus, making it hard to be operated solely by respondents who are not familiar
with using this kind of system. [14]. Given that automated scheduling showcases
COLLEGE OF ENGINEERING 26
potential and downside at the same time, developers and investors still lay an eye to
use case of automated scheduling varies from a wide spectrum of application and
field.
autonomous manufacturing system that requires less human intervention where the
approach where it uses a quick solution to solve an existing problem [16]. Automatic
companies, while they use a Building Information Modelling (BIM} as their framework.
[17] The use cases vary from one field to another, and so the possible framework and
algorithm that you can use in developing this automated scheduling system. One of
Expert system is a computer program that uses Artificial Intelligence (AI) and
one of the leading techniques in automated scheduling systems, along with fuzzy
in which the system acts as a human that considers given constraints. Constraint-
based approach in an expert system is the easiest and fittest one in an automated
scheduling system as it considers constraints that are set to make the output more
accurate and aligned to client’s satisfaction. Although the expert system that is meant
there are still options for other use cases. Aside from the constraint-based approach,
there are also other approaches like the rule-based, frame-based, Neural, Fuzzy and
Both traditional and automated scheduling systems have their own advantages
and disadvantages. Manual approach is time consuming, given that it doesn’t involve
an algorithm to process and create the schedule itself. On the other hand, the process
is faster when it comes to automated scheduling with the help of software to aid in the
processing of the data. Thus, giving it a significant advantage in terms of time allotted
and efficiency. [21] In terms of flexibility, manual scheduling has an advantage over
changes in the client’s preferences as they can directly change the necessary
predefined constraints and parameters making it hard for the system to cope up with
changes in the schedule where the system can be utilized on whether to accept or
deny it. [22] Uniformity is also considered in creating an efficient schedule as it needs
over its manual counterpart. Errors are less likely to appear in an automated approach
because of the existence of predefined parameters and constraints that are set to be
the rule and basis on how the system will generate the schedule. While on the manual
result. It is also because there is no existing algorithm and constraints that will
Local Literature
courses, and 12 units of mathematics. On the other hand, the non-major courses the
general education courses, which are divided into 24 units of general education
(PE), and 6 units of the National Service Training Program in accordance with CMO
20 series of 2013 – The New General Education Curriculum (NSTP). The commission
also stated all full-time faculty members instructing professional courses in the BSCpE
must hold a Master’s degree in CpE or a related field, and preferably a doctoral degree
and teachers holding professional certificates that call for industry certification must
Guidelines for BSCpE, has been effective since 2018. This applies across the HEI’s
Considering the proponents will be receiving the data provided by the research
respondent, we take precautions to ensure that it is not misused the Republic Act
10173-Data Privacy Act of 2012 specifies that monitoring for security infringement and
taking preventative, corrective, and lightening steps against security occurrences that
COLLEGE OF ENGINEERING 30
can lead to a security breach are required. The personal information holder must also
ensure that the mediators or third parties processing the personal information on its
behalf meet the security rules outlined in the clause. Accessing information without
the owner’s permission will result in a prison sentence of one to five years and a fine
of 500,000 to one million pesos. The researchers came up with the idea to safeguard
and have tighter protection for the information of the students by creating a scheduler
that can guarantee the students data privacy, according to the article. [25]
Research Literature
It is necessary to get to know the potential solutions for the problem, as this
can reveal shared traits that may lead to a breakthrough in finding a better solution.
Foreign Literature
The Case of the Knapsack Problem: How Humans Solve Complex Problems
optimization problem that involves selecting a subset of items with the highest value
from a set of items with given weight and value, subject to a weight constraint. The
COLLEGE OF ENGINEERING 31
research on how humans solve complex problems [27] found that people typically use
a greedy algorithm during the early to middle phase of solving the knapsack problem,
researchers found that the average number of full knapsack configurations was 1,381,
and the chance of getting the most optimal solution was only 0.7%. However, humans
were able to perform exceptionally well on this problem, with a median score of 97.4%
It is important to note, however, that while humans can solve the knapsack
problem with optimal solutions, this may not be the case for scheduling problems.
Scheduling problems involve additional factors and constraints that may make them
more complex than the knapsack problem. As such, solutions to scheduling problems
may require more sophisticated algorithms or techniques than those used for the
knapsack problem. Nonetheless, the study’s findings shed light on how humans’
approach complex problems and may inform future research on optimizing scheduling
algorithms.
that falls under the category of optimization problems in operational research. The
problem is considered one of the most difficult issues faced by universities and
level and may have limitations in terms of constraints they can handle, objectives to
tabu search, simulated annealing, particle swarm optimization, and genetic algorithm,
such as a hybrid approach that uses greedy and genetic algorithms. In this approach,
the population may depend on the individuals generated by the greedy algorithm.
Algorithms are the building blocks of artificial intelligence and machine learning, and
they are used to create intelligent systems capable of tasks like image recognition,
natural language processing, and decision-making [31], here are the set of instructions
constraints and conflicts included in the scheduler. There are several algorithms that
conflict when compared generating schedules manually which may contain errors and
considers various factors such as the quantity of students in each class, class time,
class size, time availability in each class, and lecturer who is in charge of the classes
[32], it considers various factors such as the capacity of the audience, complete
facilities, lecturing time, etc., to find the optimal solution. The study finds that the
proposed algorithm can reduce conflicts and optimize fitness, thus improving the
utilization of available classroom space for a given time table of courses at the
university.
Algorithm), are compared in respect of timetabling problems, which resulted in the use
of a smart adaptive mutation scheme and problem specific chromosome format helps
to speed up convergence and improve the quality of the output. This method may not
The theory of schedules, the genetic algorithm, takes into account the specifics
of each university. The development and implementation of an algorithm that can form
an optimal university class schedule based on the genetic algorithm, the use of a
genetic algorithm for class scheduling can lead to an optimal schedule that takes into
account the specific needs of each university. This acknowledges that the solution to
COLLEGE OF ENGINEERING 34
the problem of class scheduling heavily depends on the specifics of each university,
and there may be limitations in the applicability of the genetic algorithm to all
universities. [34]
clash of schedules. [35] The approach uses the process of scheduling using genetic
problem was complex, with numerous restrictions, and required repetitive experiments
and adjustments if the number of courses scheduled was large. Manpower scheduling
was unable to meet the needs of educational administration due to the complicated
workforce and large data volume. However, a research team investigated the mutation
system and found that it was an efficient and accurate method of scheduling courses.
The algorithm was able to generate schedules quickly, providing strong support to the
educational administration staff in solving the tedious scheduling work. The study
leading the way for further investigations into machine learning and artificial
have become increasingly complex and diverse, making traditional genetic algorithms
been able to improve the traditional genetic algorithm and establish a new adaptive
genetic algorithm. [37] They achieved this by introducing adaptive operators and
optimization problem of course scheduling. With the new algorithm, they established
showed that the proposed algorithm has significantly improved convergence speed
and the global optimal solution, providing new ideas and methods for intelligent class
performance, exploring the use of hybrid optimization techniques and evaluating its
The researchers found that conventional, generic genetic algorithms (Gas) performed
poorly in this context and suggested that they should be enhanced with domain-
specific knowledge to improve their results. When simple Gas was employed, they
often generated illegal timetables that violated various constraints. To overcome this
compared Gas that evaluated individuals within a population using either a hardness-
theory was found to have limited effectiveness for the timetabling problem due to the
concept was implemented in the initialization, crossover, and mutation operators, with
the introduction of a “check-and-repair” routine to keep the solutions within the feasible
region. The results obtained were promising but the algorithm’s performance and
The study conducted by Lukas, Aribowo & Muchri (2009) also used a GA
combined with heuristic search to solve the UCTP. However, the proposed method
had many limitations, such as being able to schedule a course only one segment at a
time. [40]
(GGA) combined with powerful constructive heuristics. GGAs are genetic algorithms
that specialize in solving grouping problems. The experimental results showed that
the recombination drives the search towards fitter individuals and higher quality
improved genetic algorithm for the scheduling problem. The team aimed to enhance
crossover rate and variation rate and enhancing the fitness function. They developed
COLLEGE OF ENGINEERING 38
a gene coding method that used decimal coding with standardized information
approach, the team tested the traditional and improved algorithms and found that the
latter outperformed the former in terms of efficiency and accuracy. The team
concluded that their new gene coding method and self-adapting rates make the
algorithm more effective in finding the global maximum. Despite some limitations, the
research team recommended further studies to address the limitations and explore
authors. Each row in the table represents an author and the algorithm they have
referenced in their work. The algorithms listed include Genetic Algorithms, Hybrid
provide a quick overview of the algorithms used by different authors and their
respective publications.
Several researchers opt for genetic algorithms above other optimization methods
because of their ability to handle complex and nonlinear problems efficiently. The
genetic algorithm is based on the idea of natural selection and involves the formation
generate new and improved solutions. This iterative process enables genetic
COLLEGE OF ENGINEERING 40
algorithms to converge towards the global optimum solution, even in problems with
changing surroundings and factors, such as crossover and mutation rates, makes it
suited for dynamic and uncertain challenges. These characteristics make genetic
reliably.
the genetic algorithm is closely related to the ability of various biological systems to
adapt to their environment and survive. In the field of modern cytology and genetics
research, it has been established that the material basis of heredity and variation in
Modern molecular biology has revealed that DNA is responsible for the genetic effects
of gene fragments, and genetic information is stored in the genes, which regulate
protein synthesis and biological traits. Organisms operate through gene duplication
and trait selection, as well as recombinant genetic variation to produce a wide range
stable biological species, while biological variability is necessary for health and
survival.
COLLEGE OF ENGINEERING 41
The research into genetic algorithms began in the late 1960s to early 1970s,
initiated by Professor John Holland and his colleagues and students at the University
research progress have been achieved, especially with the recent boom in
The First International Conference on Genetic Algorithms was held at Carnegie Mellon
with high iteration. In order to utilize genetic algorithms and generate test data, the
genes. The solution to the problem is to combine genes into a string and generate
chromosomes. The use of random binary strings is one of the most popular
initialization techniques. Identify the test data variables based on the given path and
COLLEGE OF ENGINEERING 42
create a random string of 0s and 1s for each variable according to coding principles.
• For each individual p ∈ P, initialize the binary string with random values
from {0, 1}
individuals. Individuals are evaluated based on their fitness function in each iteration.
Each individual receives a fitness score from the fitness function. This score also
determines the likelihood of being chosen for reproduction. The higher the fitness
score, the more likely it is that the individual will be selected for reproduction.
fitness function
COLLEGE OF ENGINEERING 43
Step 3: Selection – The selection step includes the selection of individuals for
variable into a binary number to generate the test data. These individuals then pass
• Tournament selection
process. The genetic algorithm employs two variation operators that are applied to the
parent population in this step. The two operators involved in the reproduction phase
Crossover: The crossover plays a critical role in the reproduction phase of the
genetic algorithm. During this process, a crossover point within the genes is chosen
at random. The crossover operator then swaps the genetic information of two parents
from the current generation to create a new individual representing the offspring.
COLLEGE OF ENGINEERING 44
Parents’ genes are exchanged among themselves until the crossover point is
reached. These newly produced offspring are incorporated into the population. This
• Two-point crossover
• Livery crossover
random genes into the offspring (new child). It is possible to accomplish this by flipping
o Gaussian mutation
o Exchange/Swap mutation
• Let C (p1, p2) be the crossover function that generates a new individual
individual p
generation
to determine termination. After reaching the threshold fitness solution, the algorithm
terminates. It will identify the final solution as the best solution in the population.
COLLEGE OF ENGINEERING 47
students have varied opinions regarding a new scheduling rule implemented by their
university. This rule involves earlier classes with 15-minute breaks between each
institutions often come up with their own scheduling schemes to address their
in the Philippines [41] reveals that many schools still lack the resources needed to
accommodate students, such as classrooms and teachers. Private schools also face
the challenges students face in creating a comfortable schedule due to limited subject
openings and conflicts. Such challenges are common among institutions that cannot
scheduling templates and determines the functionality and usability of the scheduling
process. Results showed the scheduling system had a high level of functionality and
usability based on the ISO 9126 Standard. Also, it was found that the scheduling
process was more accurate and reliable, and it minimized time conflicts and time
consumption. However, the study did not include individual schedules for both regular
and irregular students and campus extension integration thus reformulating the fitness
schedules for both regular and irregular students and campus extension integration
of the academic year. The University of Immaculate Conception uses the Genetic
Algorithm to find the best class schedule generator. The theory of genetic algorithms
operators. It is observed that the Genetic Algorithm has the potential to be enhanced
alternative class scheduling system that yielded optimal schedules and optimized the
use of each classroom with respect to time, space, and constraints. [45]
In recent years, the demand for reliable and automated systems has increased
across various industries, including education. With the increasing number of students
and courses, class scheduling has become a complex and time-consuming task for
educational institutions. To address this challenge, several studies have explored the
using genetic algorithms that can efficiently and accurately generate a class schedule
improve the scheduling process and enhance educational institutions’ efficiency aligns
with the current trend towards automation and optimization in various fields.
COLLEGE OF ENGINEERING
Chapter 3
RESEARCH METHODOLOGY
and techniques used. This also represents how design products are critically planned
to be relevant as a whole.
Project/Research Design
that can automatically create schedules based on the given constraints and conditions
and students’ vacant time intervals. The developed system will be evaluated by
comparing its performance with the traditional scheduling method used by the
For the development process of the prototype, proponents formed plans to help
achieve building the design project. This project involves the development of a
provide an interactive platform for the collection and analysis of data. The prototype
model will allow for the rapid development and testing of the software, allowing for
The prototype model will also enable the researchers to quickly identify any
areas where the software is not functioning as expected and make any necessary
adjustments. The software prototype will be designed with the user in mind, taking into
account the needs and preferences of the user in order to create a satisfying and
useful experience.
of data and analysis techniques, allowing for the researchers to be able to conduct
Following the principles and approach of agile software development life cycle, the
development of the system shall undergo through the stages of the model.
Development 1: During this phase, the development team focuses on creating the
Proponents work collaboratively to design and implement the necessary features and
COLLEGE OF ENGINEERING 54
functionalities, following agile principles such as iterative development and continuous
improvement.
integrates the developed components and modules to ensure they work together
seamlessly. They conduct thorough testing to identify any bugs or issues that may
have arisen during the integration process. This phase aims to validate the
Development 2: In this phase, the development team continues to enhance the auto-
generate scheduling system by adding new features or improving existing ones. They
Integration & Test 2: Similar to Integration & Test 1, the team integrates the newly
developed features with the existing system and performs comprehensive testing.
This phase helps identify any integration issues, assess the overall system
performance, and ensure the new functionalities align with the system requirements.
stakeholders to gather feedback and refine the system accordingly. This iterative
COLLEGE OF ENGINEERING 55
development approach allows for flexibility and adaptability to changing needs or
emerging requirements.
Integration & Test 3: Once Development 3 is completed, the team integrates the final
set of features and conducts comprehensive testing to ensure the system is stable
and functions as expected. This phase focuses on identifying any remaining bugs or
Release: Upon successful completion of the integration and testing phases, the auto-
generate scheduling system is ready for release. The development team packages
and delivers the software to the end-users or clients, making it available for
Feedback Review: After the release, the development team collects feedback from
the users or clients regarding their experience with the auto-generate scheduling
system. They review the feedback to identify areas for improvement and gather
Accept? If yes: Based on the feedback review, if the feedback is positive and the
system meets the desired expectations, the team proceeds to the next steps.
COLLEGE OF ENGINEERING 56
Test: The team conducts further testing based on the feedback received, addressing
any reported issues or bugs. This phase ensures that the software remains reliable
Implement: After successfully testing and resolving any identified issues, the team
implements the necessary changes, improvements, or bug fixes to enhance the auto-
generate scheduling system. This phase incorporates the user feedback and ensures
If no: If the feedback review reveals significant issues or concerns, the team moves
Record & Integrate Changes: The team records the feedback and suggested
Adjust & Track: In this phase, the team makes adjustments to the auto-generate
scheduling system based on the recorded feedback and integrated changes. They
track the progress of these adjustments and ensure that the system meets the desired
brainstorming the approach that they will utilize on developing the specific system.
This is also the phase where the researcher gathers information needed to start
conceptualizing solution for the given problem. This is the phase of selecting which
utilized for the system to function. At this phase, the researchers came up with Visual
for the front-end designing software. In terms of algorithm, the researchers utilized the
front-end layer, back-end layer, and genetic algorithm as main scheduling algorithm.
The system architecture allows the end user to access the Autosched System by
accessing the link address that allow them to redirect in the front-end layer, in which
the end user has the capability to create schedule input, read the schedule generated,
sections, and programs). Once done, the Django controller handles the logic for
processing user inputs, managing data flow, and making decisions based on inputs.
Once the data are handled, it will be stored into the database. The database is the
storage for the web application's data. Once the raw data is stored in the database,
the data processing follows. The major part of data processing is based on the expert
system and genetic algorithm. The expert system is the knowledge-based system that
knowledge base.
Once done, the Django controller handles the logic for processing user inputs,
managing data flow, and making decisions based on inputs. Once the data are
handled, it will be stored into the database. The database is the storage for the web
application's data. Once the raw data is stored in the database, the data processing
follows. The major part of data processing is based on the expert system and genetic
algorithm. The expert system is the knowledge-based system that provides expert
COLLEGE OF ENGINEERING 60
advice or decision-making capabilities based on a set of rules or knowledge base. The
parameters.
the expert system will align the schedule by considering the soft and hard constraints
set in the system. The generated schedule will then convert into output that will reflect
In this use case diagram, there are two actors which are the user (Program
Head) and the Administrator. The user can access the features of the dashboard
which is input information, and display the schedule. The Administrator (Management
Information System) can manage the users and database management system.
The use case diagram is a powerful tool in software engineering and system
actors and the system itself. It offers a high-level view of the system’s functionality,
emphasizing the actions that can be performed by various actors or users. Let’s
Actors:
- User: The primary actor in the system, representing individuals who interact with
responsibilities compared to regular users. They have the authority to manage the
Use Cases:
COLLEGE OF ENGINEERING 62
- Managing the Database: The Administrator can perform actions related to
managing the database. This can include tasks such as adding, modifying, or deleting
events according to their specific requirements. This may involve creating, editing, or
defining constraints.
- Displaying Schedules: Both users and administrators can view schedules based
on their roles and permissions. This use case allows users to access and visualize
their schedules, filter or search for specific events, and navigate through different
views (e.g., daily, weekly, monthly). Administrators might have additional capabilities
In the use case diagram, each use case is typically represented as an oval or
specific roles, as well as the various tasks or actions they can perform. It serves as a
manner. Additionally, the diagram can serve as a basis for further analysis, such as
development efforts.
System is in the middle and interacts with these two actors. On the user – system
side, the user can input information into the system, while the system can display the
automated schedule to the user. On the admin – system side, the system can give
access to the administrator, and the administrator can override the schedule from the
system.
interactions with the actors and helps to identify the inputs and outputs of the system.
It also shows the relationships and dependencies between the actors and the system.
Dashboard, Input Information, and Display Schedule. There are also two data stores:
The first entity is the user, and it passes the data flow “User info” into the login
process. This sends the data “login credentials” to the Dashboard process, then it will
ask for the user’s input and will store it into the constraint, and will go to the process
Display Schedule before it can send the Auto-generated Schedule into the user.
then proceed on visualizing the approach they will utilize in the development of the
system. This also include the visualization of the system’s design through sketching
which includes functionality of the web application and assessing if it satisfies the
solution needed to meet the objective of the system. In this phase, the researcher
application first in Canva Design in which the researchers will use as basis for the
through the use of Canva Design. The initial design includes the dashboard that
includes the step-by-step process needed before generating a schedule. It also has a
notification tab that notifies the user once the generation of schedule is done. The
initial system also has a setting button that enables the user to personalize the web
application to their interest and liking. The initial design also indicates a directory at
the upper left part of the content card of the selected tab. It also offers a CRUD
the researcher started on the development of the system. In this phase, the
researchers will start on building the front-end and backend of the system, as well as
setting up the framework and the backend of the system. In this phase, the
researchers used Visual Studio Code on the development of the system’s front and
back-end. The task on the development of the system was divided into two parts: the
researchers are assigned. The remaining 2 researcher was assigned to do the back-
end development.
COLLEGE OF ENGINEERING 68
During the front-end development, the researcher used Bootstrap 5 and Font
Awesome to enhance the quality and presentation of the system. The researcher used
Bootstrap for the CSS aspect of the system in terms of the card and columns feature.
It was also use for the templates, accordions, and drop-down buttons in the front-end.
The researcher also utilized Bootstrap 5 for the color effect in which the system
uses linear gradient. Overall, the Bootstrap 5 made the front-end development easy
embedded icons imported from Font Awesome. Aside from the dashboard, Font
Awesome was also use to give representation for the real time data counter on the
upper part of each template where cards like meeting room, time, instructors, and
course offerings are located. Font awesome was also use to import the default font
family of the system which is Montserrat. The researchers integrated the fonts and
In terms of the color schemes of the system’s user interface, the researcher
utilized Tailwind CSS Color Generator. The system utilizes a linear gradient of dark
COLLEGE OF ENGINEERING 71
blue green and light blue green. The colors used on dashboard, cards, fonts, icons,
and frames are all imported and provided by Tailwind CSS Color Generator.
This study will utilize Django, a high-level Python web framework called Django
enables the quick creation of safe and dependable websites. Django, which was
created by seasoned programmers, handles a lot of the pain associated with web
recreate the wheel. It is open source and free, has a strong community, excellent
URLs: While it is possible to process requests from every single URL via a single
function, it is much more maintainable to write a separate view function to handle each
resource. A URL mapper is used to redirect HTTP requests to the appropriate view
based on the request URL. The URL mapper can also match particular patterns of
strings or digits that appear in a URL and pass these to a view function as data.
View: A view is a request handler function, which receives HTTP requests and returns
HTTP responses. Views access the data needed to satisfy requests via models, and
Models: Models are Python objects that define the structure of an application’s data,
and provide mechanisms to manage (add, modify, delete) and query records in the
COLLEGE OF ENGINEERING 73
database. The researchers created models such as meeting time, room, instructors,
Forms: The researchers added form class, it is the heart of Django's form handling
system. It specifies the fields in the form, their layout, display widgets, labels, initial
values, valid values, and (once validated) the error messages associated with invalid
fields. The class also provides methods for rendering itself in templates using
predefined formats (tables, lists, etc.) or for getting the value of any element (enabling
Templates: A template is a text file defining the structure or layout of a file (such as
an HTML page), with placeholders used to represent actual content. A view can
dynamically create an HTML page using an HTML template, populating it with data
from a model. A template can be used to define the structure of any type of file; it
the input data and the constraints set in the expert system using Genetic algorithm.
The schedules will be displayed on the system dashboard and will include all
depends on the number of Classes to schedule, and the computational time it takes
The figure above shows the sample chromosome and population of genetic
algorithm in class scheduling. Chromosome is referring to one specific class while the
population refers to the overall classes inside the department. The figure above also
shows that if the POPULATION SIZE is equal to two (2), the algorithm will initialize
schedules for all the classes inside the department twice. The POPULATION SIZE is
fitness of an individual. This is the most important part to the Genetic algorithm, if this
function is flawed, the algorithm will not produce results. The evaluation function
COLLEGE OF ENGINEERING 76
should not return a Boolean(true/false) value, it has to be a comparable result. If
function. For evaluating class schedules the system identifies each conflict and adds
to the overall number of conflicts that will be used to determine the fitness value of
each automated schedule created. For a classifier the system returns this formula
Step 3: Randomly choose the fittest class schedule(s). We will choose the
parents for mating during selection. Every youngster in the new population is subject
Selection are the three types of parent selection techniques, in our case we use
generation.
COLLEGE OF ENGINEERING 77
Figure 14. In this phase, we select a random schedule from the population based on
the number of selections that we set in the system. In this case we can only set the
number of selections to two (2) maxima because the number of populations is only
two (2). Since we set the selection number to 2 there are 4 different combinations that
Once the system identifies the fittest schedule on the randomly selected
schedules from the population it will become the parents, we need to mix and match
crossover. For each member of the population, a new parent will be chosen using
with every class in the population of schedules. Two DNA arrays can be crossed in
three different ways. Crossovers at 1 point, 2 points, and at random are all acceptable
but in our case, we use a new method to crossover called uniform crossover, wherein
the offspring has equal chances of getting traits from its parents.
COLLEGE OF ENGINEERING 79
able to seek previously uncharted territory in the search space for better answers.
Each DNA element (classes) in the array has a 1-5% chance of being randomly
triggered.
COLLEGE OF ENGINEERING 80
The figure shows the actual random mutation in class scheduling. We first initialize
a new population that will be used by the system to mutate or change each class in
the offspring. As stated above, each class has 1 to 5% chance of being mutated, this
is the last part of evolution. After this, we go back to the evaluation step; while the
fitness score of the evolved schedules does not meet the stop criteria of 1.0 fitness
Recalling the formula to get the fitness of the schedule from step number 2,
COLLEGE OF ENGINEERING 81
[1/(1*NumberOfConflicts + 1)], if we substitute 0 in number of conflicts we get
System Overview
In the system development, Django was utilized as a layer of security for the
system, as well as the database. In this dashboard, the admin that operates the
backend can see the data input of the user on the dashboard. Similar to the functions
in the front end, the admin can also perform CRUD operation at the backend. The
COLLEGE OF ENGINEERING 82
admin can also check the data per tab that is being inserted through the front-end by
the user.
After the development of front and back-end of the system, the researchers
then proceed on connecting the backend and the front-end. The process started
where researchers integrated login system before the user can access the front-end
of the web application. After setting up, the researchers then proceed on coding the
commands that will give functions to the buttons in the front-end. The buttons are then
subjected for functionality test to see if all the buttons are working and performing
based on their given function. After the buttons, the forms and the responsiveness of
the UI to different screen size is tested. After all the test, the system is now ready for
finalization. Once finalized, the system is now subject for dry run.
At this stage of development, the system will be tested through running it into
a command prompt terminal that is a built-in feature of Visual Studio Code. After being
run on the terminal, the IDE will then provide a localhost server that can be access by
The figure above is the actual interface of the user login page. This is where
authorized users are authenticated, if the system determines that the user does not
exist in the system it will only redirect to the same page with a warning message that
This page is for administrator of the system, anything that is inputted from the
forms in the front end will reflect in the admin dashboard and admins can create
multiple accounts for users and give them limited permissions to the web application.
COLLEGE OF ENGINEERING 85
This is the actual looks of the user interface after the user login to the website.
In the homepage there is a complete user manual how to use the system.
Update and Delete on all available data in the list. Also, there are cards at the top of
the list where the user can check the recent counters of all the inputted data. The rest
of the pages in the navigation bar such as, Instructors, Rooms, Course Offerings,
In this page the user can view the developers of the system with their contact
information and social media accounts, so that if they need a support from the expert,
and testing of the system’s capacity to generate by categorizing testing phase into five
testing procedures.
assessed the system for its functionality and effectiveness. On this phase, the
researchers utilized various instruments and criteria for the review and assessment of
the system. The researcher also set responds that they believe should assess the
system as they are the ones who will benefit the most in this study. The researcher
scheduling a system, both current and previous. These respondents are Deans,
the Secretaries of the above-mentioned individuals as they are also responsible for
conceptualizing schedules.
COLLEGE OF ENGINEERING 88
Operation/Testing Procedure
System Based on Expert System study involves several steps to ensure that the
developed software meets its objectives and goals. The following steps can be taken
to test the functionality and performance of the system. The testing procedure are as
follows:
Test Procedure 1. During this testing phase, the researchers use the default
parameters and considered all the constraints in generating scheduling for this testing
procedure.
Population Size 9
At the earlier stage of the testing procedure, the researchers utilized the
experimental default parameters that they come up with upon the development of the
affects the time generation and the accuracy of the generated schedule. With that
being said, the researchers proceed on testing using the above-stated parameter and
by considering both soft and hard constraints given when scheduling a system. Lastly,
this testing procedure only cover the first year of BSCpE Program with 2 Sections
default experimental parameters that the researchers used. The difference is that in
this procedure, the second year is included with two sections as well.
included the third year of BSCpE Program. Thus, making it a three section and a total
of 6 sections in which there is a two section per year level. In this same testing
Population Size 9 50
Tournament Selection
3 15
Size
the increasing number of population and data. One of the factors that affects the
COLLEGE OF ENGINEERING 91
generation time is the complexity of the output being generated, one of the things that
makes a schedule more complex is the number of year levels and the increasing count
Test Procedure 4. This testing procedure includes first to third year with 2
considers all of the constraints (soft and hard), while testing procedure 4 does not
not consider soft constraints when generating schedule too. The only difference it has
to testing procedure 4 is that it includes all year levels starting from first to fourth year,
time in seconds and generation count. The researchers documented all the data
through google spreadsheet and google drive for the pdf copy of the generated
schedule.
Evaluation Procedure
system for its functionality and effectiveness. The following procedures were followed:
Instrument
Based on the related literature and studies reviewed, the researcher prepared
distributed to the respondents. The evaluation tool includes 5 design project metrics
(Excellent, Very Good, Good, Fair and Poor) and considers the first three metrics were
satisfactory and the fourth and fifth were unsatisfactory. The proponents consider
“Very Good” as the acceptable and satisfactory rating. The researcher utilized RMSE
Performance Metrics to assess the output of the system in comparison to the previous
class schedules.
COLLEGE OF ENGINEERING 94
Respondents
of certain types will be included in the sample. Purposive sampling targets a particular
group of people. This method of sampling is selected when the desired population for
the study is rare or very difficult to locate and recruit for a study (i.e., engineering and
technology experts).
s. improvem improvem .
Imposes ent s ents
no
improve
ments.
This section is used by the researchers to provide gathered information for the
develop deeper knowledge and understanding about class scheduling through the use
of open questions.
Flowchart, tables, and diagrams. The researchers provide flowcharts, data flow
diagrams, and block diagrams that helps to fully comprehend the procedures that must
Library Research. The researchers were able to obtain the material they need from
numerous reputable educational websites that provide studies that are beneficial for
the current investigation and are related to those studies. Studies and publications in
COLLEGE OF ENGINEERING 98
the topic came from a variety of online sources as well. The data mentioned above is
Gantt chart. The researchers used Gantt charts to set an expected progress in the
study every week, as well as to help the researchers to work on the paper in an
organized manner.
COLLEGE OF ENGINEERING
REFERENCES
[2] Asemi, A., Ko, A., & Nowkarizi, M. (2020). Intelligent libraries: a review on
expert systems, artificial intelligence, and robot. Library Hi Tech, 39(2), 412–434.
doi:10.1108/lht-02-2020-0038
[3] Martinez-Pabon, M., Eveleigh, T., & Tanju, B. (2018). Optimizing residential
energy management using an autonomous scheduler system. Expert Systems with
Applications, 96, 373–387. doi:10.1016/j.eswa.2017.12.017
[9] www.coursera.com, “How long does it take to learn python? (+ tips for
learning),” Coursera, 13-Jul-
COLLEGE OF ENGINEERING 119
2022.[Online].Available:https://www.coursera.org/articles/how-long-does-it-take-to-
learn-python-tips-for-learning.
[10] “The benefits of automated scheduling,” Synerion North America Inc. Blog.
[Online]. Available: https://blog.synerion.com/the-benefits-of-automated-scheduling.
[Accessed: 21-Mar-2023].
[11] Bartek W., “How automated scheduling benefits the mobile workforce,”
Deskless Productivity and Mobile Workforce Management, 13-Oct-2022. [Online].
Available: https://www.skedulo.com/resources/blog/how-automated-scheduling-
benefits-the-mobile-workforce.
[13] Perelstein, E., Rose, A., Hong, Y.-C., Cohn, A., & Long, M. T. (2016).
Automation Improves Schedule Quality and Increases Scheduling Efficiency for
Residents. Journal of Graduate Medical Education, 8(1), 45–49. doi:10.4300/jgme-d-
15-00154.1
[18] S. Rougas, “What is an expert system and what is used for?,” Expertise Finder,
01-Mar-2021. [Online].Available:https://expertisefinder.com/expert-
systems/#:~:text=An%20Expert%20System%20is%20a,t%20necessarily%20require
%20technical%20wizardry.
[20] “What are expert systems in AI: A complete guide,” Simplilearn.com, 13-Feb-
2023. [Online]. Available: https://www.simplilearn.com/tutorials/artificial-intelligence-
tutorial/what-are-expert-systems-in-ai.
[22] B. Biafore, “The difference between auto and manual scheduling - Microsoft
Project 2019 ,” LinkedIn,24-Sep-
2018.[Online].Available:https://www.linkedin.com/learning/microsoft-project-2019-
and-project-online-desktop-essential-training/the-difference-between-auto-and-
manual-scheduling?autoplay=true.
[28] Ahmed Wasfy and Fadi A. Aloul, “Solving the University ClassScheduling
Problem Using Advanced ILPTechniques”. Retrieved from
http://citeseerx.ist.psu.edu/viewdoc/download;jsessionid=83CF2A3380EB4E45C5B2
241036C7FAE2?doi=10.1.1.140.3740&rep=rep1&type=pdf
[29] Ellis Cohen and Jarurat Ousingsawat, “An Introduction to Algorithms for
Solving Schedule-Related Problems”, January 2015. Retrieved from
http://www.project.net/introduction-algorithms-solving-schedule-related-problems
[30] J Zhou, P E D Love, X Wang, K L Teo and Z Irani, “A review of methods and
algorithms for optimizing construction scheduling”,March 2013. Retrieved from
https://link.springer.com/article/10.1057/jors.2012.174
[36] X. Chen, X. G. Yue, R. Y. Man Li, A. Zhumadillayeva, and R. Liu, “Design and
Application of an Improved Genetic Algorithm to a Class Scheduling System,”
International Journal of Emerging Technologies in Learning, vol. 16, no. 1, pp. 44–59,
2020, doi: 10.3991/IJET.V16I01.18225.
[40] S. Lukas, A. Aribowo, and Milyandreana Muchri, “Genetic algorithm and heuristic
search for solving timetable problem case study: Universitas Pelita Harapan
timetable,” International Conference on Applications of Digital Information and Web
Technologies, Oct. 2009, doi: https://doi.org/10.1109/icadiwt.2009.5273979.
[42] P. Wang, X. Xu, and C. Liu, “An improved adaptive genetic algorithm and its
application in intelligent course scheduling system,” in Proceedings - 2019 6th
International Conference on Information Science and Control Engineering, ICISCE
2019, Dec. 2019, pp. 121–125. doi: 10.1109/ICISCE48695.2019.00034.
COLLEGE OF ENGINEERING 123
[43] G. Sun and Y. Li, “Research and analysis of course arrangement based on
genetic algorithm,” in Journal of Physics: Conference Series, Oct. 2020, vol. 1650, no.
3. doi: 10.1088/1742-6596/1650/3/032050
[44] J. Ni and N.-N. Yang, “Genetic Algorithm and its Application in Scheduling
System,” TELKOMNIKA, vol. 11, no. 4, pp. 1934–1939, 2013.
[45] Althea Gonzales and Jessy Go, “Earlier classes, longer breaks draw mixed
reactions”, June 2014.Retrievedfromhttp://thelasallian.com/2014/06/10/earlier-
classes-longer-breaks-draw-mixed-reactions/
[46] Anne Marxze Umil, “New school year, same old problems: K to 12, shortages
in classrooms,
teachers”,June2017.Retrieved:http://bulatlat.com/main/2017/06/06/new-school-year-
old-problems-k-12-shortages-classrooms-teachers/
[47] Anne Marxze Umil, “New school year, same old problems: K to 12,shortages
in classrooms,
teachers”,June2017.Retrievedfromhttp://bulatlat.com/main/2017/06/06/new-school-
year-old-problems-k-12-shortages-classrooms-teachers/
[48] Paulyn Navarrete and Illiana Tan, “Persistent issues faced duringenlistment”,
January 2015. Retrievedfromhttp://thelasallian.com/2015/01/29/in-review-persistent-
issues-faced-during-enlistment/
[51] S. Aslan and C. Aci, “Solving University Course Timetabling Problem Using Ant
Colony Optimization: An Example of Mersin University Engineering Faculty,”
International Conference on Advanced Technologies, Computer Engineering and
Science (ICATCES’18), May 2018.
COLLEGE OF ENGINEERING 124
[52] ched.gov.ph, “Ched - the official website of commission on higher education,”
About the Commission, 18-May-1994. [Online]. Available:
https://ched.gov.ph/contact-us/.
[55] A. S., “What is HTML? hypertext markup language basics explained,” Hostinger
Tutorials, 16-Feb-2023. [Online]. Available: https://www.hostinger.ph/tutorials/what-
is-html.
[56] mdn web docs, “Django Introduction - Learn Web Development: MDN,” Learn
web development | MDN, 24-Feb-2023. [Online]. Available:
https://developer.mozilla.org/en-US/docs/Learn/Server-side/Django/Introduction.