You are on page 1of 22

Chapter 1

INTRODUCTION

Background of the Study

CLASS SCHEDULING. Class scheduling is one of the designated duties that academic
heads under the supervision of the Dean’s Office of the School of Computing and
Information Sciences (SCIS) carry out every school term. The preparation of class
schedules starts at least two months before the start of the school term and is
finalized two weeks into the said school term. The two-month head start has
something to do with the difficult task of consolidating into one cohesive schedule
several factors that compete for the classroom resource. These competing factors
that must be considered in the class schedule are the following:

Competing Factors
Enrolling students
Subject offering
Duration of the class
Room assignments
Teaching staff

Each of these competing factors is defined by several attributes that the


academic head must address when making the class schedule. Although the
competing factors are always the same, their attributes may change from one
school term to the next. Thus, more than the competing factors itself, it is these
attributes which makes class scheduling difficult. Based on initial observation, there
are two primary difficulties in class scheduling and both can be traced to these
attributes.

The first difficulty in making class schedules is that a new class schedule has
to be created every school term. Any changes to one of the factor’s attributes will
render past class schedules unfit for reuse. Thus, no two sets of class schedules are
completely identical – this is true in spite of the fact that class scheduling is a
repetitive task and implementing policies, both institutional and administrative, are
set in place to provide a uniform guideline in creating them.
To illustrate this difficulty, a profile of the enrolling students will reveal that
one of the attributes that define this factor is the population attribute. As the
student population fluctuates from one school term to the next, the number of
subjects that must be offered should relatively follow suit in order to satisfy the
exact demand of the subjects that enrolling students need to take. As the student
population increases, the number of subject offering increases as well. If the
population decreases, the subject offering must also decrease. This changing trend
can be observed throughout the years that the School of Computing and
Information Sciences has been in existence and each time the population changed a
different class schedule was created.

The second difficulty in making class schedules is that each of the competing
factors stated above imposes several constraints on the class schedule. They limit
the degree of freedom of the academic head from randomly assigning subjects and
teachers to fill up the time slots in the schedule.

Depending on the circumstance, constraints can be classified as either


individualized or institutional. Individualized constraints apply only to specific
personnel in the teaching staff while institutional constraints apply to the entire
body. For instance, a look at the profile of the teaching staff will reveal that the
staff’s time of availability adds constraints to the class schedule. An individualized
constraint based on the time of availability might be requested by some teaching
personnel who have familial obligations of accompanying their primary-school
wards to and from their respective elementary schools. Subject to the approval of
the academic head, this constraint would mean that the first and last class of the
requesting personnel is constrained to coincide with their primary-school ward’s
daily classes that would allow them to fulfil such aforementioned obligations.

On the other hand, the University’s Collective Bargaining Agreement (CBA)


with the Union of Faculty and Employees of Saint Louis University (UFESLU) states
that no teaching personnel are allowed to teach for more than four consecutively
hours. As an institutional constraint based on the time of availability, it is the duty
of the academic head to implement this policy in spite of the willingness of some
teaching personnel who are available to teach for more than four consecutive
hours. Such constraint is applicable to all personnel in the teaching staff.
Thus, in a contradicting manner, individualized constraints expose the need
for some kind of flexibility in making the class schedule while institutional
constraints emphasize the need for consistency. Either way, the class schedule
must be tailored-fit to dwell within the statutes imposed by these constraints
without compromising the subject offerings that will be opened for that school term.

From a procedural perspective, the process of creating a class schedule does


not follow an algorithmic pattern in a way that a finite sequence of steps has to be
completed to reach the desired goal. Instead, the scheduling process follows a
deliberate four-step-cycle that must be done for every subject that will be added in
the schedule. This scheduling cycle is depicted on the figure below.

Step 1. Choose a subject

Step 2. Plot the subject to a slot in the


schedule

Step 3. Check for constraint violations

Step 4. Roll back the schedule

In here, the academic head first chooses a subject that needs to be added to the
schedule and then proceeds to plot that subject to an available slot (in the
schedule). Next, the academic head checks the new schedule if it violates at least
one of constraints that are imposed on the schedule. If there are none, the entire
cycle goes back to Step 1 where the next subject to be plotted will be chosen. On
the other hand, if the subject that was just plotted on the schedule caused some
constraints to be violated, one of the three options can be done to resolve the
problem:

Resolving Constraint Violations


Option #1 Go back to Step 2 and remap that subject to another slot in the
schedule
Option #2 Go back to Step 1 and choose another subject already in the
schedule that might also be contributing to the problem and then
proceed to Step 2 and remap it to another slot
Option #3 Proceed to Step 3 and perform a roll back procedure. This roll
back procedure involves the process of removing the plotted
subjects in the reverse order as they were added in the schedule
thereby restoring the schedule back to the most plausible state that
will allow the scheduling process to resume without committing any
constraint violations.

As it happens, when the constraint violation occurs, the alternative solution that will
be chosen relies on the sole discretion of the academic head. Either way, all three
will try to eliminate the constraint violation being resolved but does not guarantee
that more constraint violations will no longer be committed in succeeding iterations
in the scheduling cycle.

In practice, the execution of each step in the cycle is subjective in nature.


Deciding what subject will be plotted and where it is supposed to be plotted is
based solely on impulse. Similarly, the decision on whether the schedule will be
remapped or rolled back whenever a constraint violation has been committed is
chosen in a nondeterministic fashion. It depends on who is making the schedule
and no two academic heads create class schedules in the same way even when
both are dealing with the same requirements and the same constraints.

Furthermore, whenever a constraint is violated after a subject is plotted, the


academic head has the option to either remap or roll back the schedule. The need
to remap or roll back the schedule is a necessary refinement that must be
performed on the schedule. The frequency of refinements relatively increases as
more subjects are added. Over time, after the schedule has undergone a series of
refinements, the academic head will eventually reach the ultimate goal of having all
intended subject offerings be included in the said schedule.

EXPERT SYSTEMS. As one of the several application areas in the field of artificial
intelligence, an expert system is a computer application that attempts to duplicate
the reasoning ability of human experts by first representing the expert’s knowledge
in a computerized format and then using this computerized knowledge to solve real
world problems.
By common convention, a human expert is regarded as someone who has
undergone significant training and has obtained necessary qualifications to practice
his profession in a field of work to accomplish specialized jobs. In this field of work,
the job of the human expert is non-monotonous in the sense that the expert may be
required to spontaneously accomplish different jobs on a job-to-job basis.
Furthermore, the sequence of activities involved in accomplishing each job may not
even be routinized if binding restrictions render the usual way of accomplishing
such jobs unsuitable. If that is the case, the human expert must be able to define a
different sequence of activities that will circumvent these restrictions. As it
happens, the human expert must be able to switch seamlessly from one job to the
next without compromising the work that he is expected to accomplish. He must
also be able to adapt the sequence of activities that he needs to perform in order to
finish each job in the best way possible. Since this type of work is very dynamic,
good judgement is needed so that the expert can react in real time to different
requirements. It allows the expert to immediately decide on critical matters that
may affect the success of completing his job. In particular, good judgement is
needed to perform the activities that are involved in accomplishing one of the
following jobs presented in the listing below:

• Dissecting a problem to expose particular details about such problem,


• Formulating a solution to solve a problem,
• Implementing a solution to solve a problem, or
• (When the problem is not certain) Diagnosing an unknown problem.
Listing 1.1 Four Types of Job That Require Expertise

Generally, the activities that are associated with these jobs don’t have a
specific structure with regards to how they should be performed. The human expert
may employ different strategies judging on the general assessment that he makes
of his current predicament. With careful and deliberate analysis, the expert looks at
the available information that he is presented with and decides, on-the-fly, what he
thinks would be the best way to accomplish his job. In here, the “best way” is
based on the expert’s personal judgement. On some occasions, it may not even be
based on a general consensus that is shared among the community of experts he
belongs to. A human expert can rely on this ability because of the knowledge and
the intellectual reasoning skill that he possesses. Consequently, the ability of
human experts to represent human knowledge and exhibit reasoning skills is what
every expert system attempt to copy from such experts.

First of all, expert systems view human knowledge as a set of facts and rules
that the expert consults before any kind of activity is performed. When used in the
right context, this stored knowledge helps the expert choose the sequence of
activities that he needs to perform to guide him in accomplishing the job that he is
trying to work on.

Facts are the factual information about the different problem domains that
fall within the expert’s field of expertise. It also includes some trivial information
about the structural definition of the different sets of factual information. The
factual information is a detailed enumeration about everything that is known about
all things that are related to each problem domain in a given field of work. It
includes published definitions, facts and theories that are found in public sources
such as textbooks, technical journals and magazines. Factual information can be
decomposed into a set of smaller attributes. The collective value of these attributes
represents the value of the factual information. The human expert can draw
meaning from these attributes by examining their values either individually or
collectively. Each factual information means differently to the human expert if they
have different sets of attributes. They are also considered different even if they
have the same sets of attributes as long as the values of these attributes are
different. The values of these attributes will represent the current state of the
factual information that the expert must be able to interpret and manipulate.

Structural definition, on the other hand, is the template that specifies the
composition and organization of the factual information. The composition defined in
the structural definition defines the specific set of atomic components that together
forms the factual information. These components include a set of attributes that
represent the value of the factual information that the expert must be able to
interpret and a set of behaviours that define the how the attributes can be
manipulated. Composition is used to categorize factual information into separate
classes where each class defines a common set of components for all factual
information that are categorized under that class. This can be used to indicate the
general purpose of each class of factual information in relationship to the
information that it provides when applied to a given problem domain. It also allows
the expert to rectify missing and erroneous components in a given factual
information that violates the type of composition that is defined for it. This will
make sure that all factual information are treated consistently in both form and
meaning according on the class where they are categorized. Aside from
composition, structural definition also defines organization. The organization
defined in the structural definition indicates how the different classes of factual
information are interrelated with one another. This is used to depict whether two
classes of factual information are related to one another by virtue of inheritance,
association, aggregation or usage. Inheritance is used to organize factual
information in a hierarchical fashion that starts with a general class of factual
information on top and progressively goes down to a more specific instance of the
class above it each time inheriting the features of that class. Association indicates
the type of cardinality that shows the number of times a certain class can
participate in a given relationship whether it can appear zero or one time or more
than once. Aggregation presents a type of relationship that attaches one or more
classes of factual information to another class that makes up the different parts of
that class. Finally, usage is a relationship to show the concept of one class of
factual information using another. The organization that is defined in the structural
definition of the facts will enable the human expert to view and analyse vast sets of
factual information anywhere from a micro-level perspective up to macro-level as
he would desire. He can manipulate factual information individually or as a
complex set of related information and still make sense of it all. Overall, learning
the entire structural definition of the given facts is very important because it breeds
the type of familiarity in the human expert that will enable him to recognize
relevant circumstantial information that leads to any relevant evidence when he
encounters it. This familiarity will teach him how to construct new sets of factual
information from the gathered evidence as well as teach him how one class of
factual information is to be treated in relationship to those in the other classes. This
will be needed when the expert starts to identify the data requirements that he
needs to gather and analyse. He will be able to investigate the evidence that are
directly associated with the issues that he is trying to resolve while leaving out
irrelevant information that are considered as noise. This will spare him from
wasting time and effort in uncovering evidence that does not contribute any useful
knowledge that will help him finish his job.

Aside from the facts that comprise one of the components of knowledge,
there are also the rules. Rules are the set of underlying principles that govern the
application of various concepts that can be applied to each problem domain that fall
within the expert’s field of expertise. They provide the necessary logic why certain
activities are performed. Rules are similar to the if-then statement in computer
programming where the then-clause can only be implemented upon satisfying the
condition specified in the if-clause. Thus, expert systems view rules in this form:

if <antecedent>
then <consequent>

In here, the if-clause contains an antecedent that asserts a set of facts that the
expert attempts to verify by means of looking for an existing evidence that can
collaborate that fact. Verifying an asserted fact indicates that that fact holds true to
the current job that the expert is working on. If the asserted fact can be verified
then the antecedent is satisfied. As for the then-clause, this contains a consequent
that states an activity that the expert performs. The activity specifies a set of
conclusions and/or actions that the expert has to implement. An activity that
implements a conclusion requires the expert’s mental skill in verifying other related
facts that can be derived from the rule’s antecedent. On the other hand, if the
activity implements an action, it requires the expert to physically manipulate the
tools and materials that he uses in his work to perform that activity. Eventually, a
rule is said to be executed when its antecedent is satisfied and its consequent is
implemented. A rule can be triggered for execution when the asserted fact in its if-
clause is successfully verified. Technically, rules map facts to corresponding
activities. It tells the expert what to do when faced with a particular situation. The
activity specified in the rule’s consequent is performed as a direct reaction to the
situation that is implied by a verified fact. As far as human knowledge is concerned,
there may be as many rules as there are facts and, to the human expert, all of
these must be kept inside his head ready for retrieval whenever they are needed.

Before the expert can use this knowledge, both the facts and the rules must
first be acquired. In terms of knowledge acquisition, the human expert initially
learns the facts and the rules by intensive training and are further refined through
hands-on experience in the workplace. Over the course of time, these facts and
rules may evolve; new ones can be added and existing ones may be modified.
Essentially, the amount of knowledge that the human expert has amassed
represent the current extent of knowledge that the expert knows about his field of
specialization. Expertise presumably increases as the amount of knowledge also
increases. To the human expert, having a high degree of expertise is important
because it is directly correlated with the level of confidence that the expert puts in
his work. This confidence is a relative measurement of the expert’s personal belief
that the series of activities that he performed to accomplish the job is the right one.
This level of confidence will later on have a significant role in the reasoning process
that the expert has to commit to.

The second component that an expert system should have is the skill of
intellectual reasoning. After realizing how knowledge can be represented, an expert
system should also have the mechanism to utilize this knowledge to accomplish the
same job that human experts equipped with the same knowledge are capable to
accomplishing. The means to do this is by mimicking the human expert’s skill in
exhibiting the process of intellectual reasoning. The following paragraphs will
discuss the process on how human experts use their knowledge and conclude in the
end how reasoning plays its part in this process.

The facts and rules that comprise human knowledge are fairly passive. They
by themselves do not initiate the expert into performing some random activity.
While the human expert is working on a job, he retrieves pieces of what he knows
only at the precise moment when he is at the point of choosing the next activity
that he needs to perform. It must be taken into account that when the human
expert does his job, he is fully aware of what he is supposed to accomplish and his
ultimate goal is to reach a state of mind when he can conclude that the job is
already finished. He is also aware that this goal can only be achieved by performing
a series of activities. Right before he starts working on a job, he needs to assume
an initial plan of activities which by his judgement will lead him towards that goal.
Unfortunately, due to uncertainties about particular details regarding that job, the
entire plan does not always guarantee that the desired goal will be reached.
Sometimes the expert’s initial plan will accomplish the job to its completion and at
some other time this plan will fail somewhere along the way. To the human expert,
the activities he includes in his initial plan merely indicates the set the activities
that he intends to perform with the understanding that he is not obliged to actually
perform all these activities. He decides whether or not to perform the activities in
his plan depending on the supporting evidence that he can gather from the job that
he is working on. Typically, the human expert considers any existing circumstantial
information that he can observe as supporting evidence and, in some instances,
also includes circumstantial information that do not exist as valid evidence as well.
Either way, the expert must be able to react to this evidence by performing an
appropriate activity that corresponds to what that evidence is saying. Depending
on how the expert interprets the evidence, he can decide to go for or against the
planned activity that he intended to perform. If the planned activity is an
appropriate reaction that will corroborate what the evidence is suggesting then he
goes for it, otherwise, if the planned activity will contradict the evidence then he
decides against it. If the expert decides against it then he must be able to
spontaneously revise his plan by coming up with an alternative activity that will suit
the evidence. In the end, the entire plan will be shaped incrementally according to
the evidence that the expert finds as he progresses along the job. The expert must
be aware that the need to revise the plan may happen at any stage of a given job
whenever the planned activity does not match the given evidence..

Due to the nature of how the expert accomplishes each of his jobs, the ability
to gather the right evidence and choose the right activity thereafter is very
important. The ability to do this is directly dependent on the amount of knowledge
that the expert possesses. It can be recalled that facts and rules form what is
known as the human knowledge. In particular, rules map asserted facts to
corresponding activities. The asserted facts are specified in the rule’s antecedent
while the activities are specified in the rule’s consequent. Rules are used to
indicate a specific activity that the expert should perform in reaction to the asserted
facts that can be verified by the matching evidence that the expert collected. The
human expert makes his initial plan of activities based on the rules that he is aware
of and revises it as needed. Using this plan as his guide, the expert chooses the
best activity to perform next in the following manner:

Step 1: Gather the relevant evidence that needs to be collected


Step 2: Formulate new facts that are implied by the gathered evidence
to be added to the working facts
Step 3: Choose a rule to execute whose antecedent can be satisfied by
the set of gathered evidence
Step 4: Execute the rule that was chosen

Listing 1.2 Steps in choosing an activity

This is what the expert does in each of the four steps:

STEP 1. GATHER THE RELEVANT EVIDENCE THAT NEEDS TO BE COLLECTED. In here, the
human expert will pick an activity in his plan and tries to obtain the
circumstantial information that leads to the relevant evidence that he
must be establish before the planned activity can be performed.
Incidentally, every activity in the plan will point at a specific evidence
that the expert will try to look for. This eliminates the tedious process
of searching aimlessly for evidence at random until one that interests
the expert is found. Instead, the sequence of activities that the expert
has in his plan will provide the general direction with regards to how
the chain of related evidence will be gathered. This is the reason why
the expert should devise an initial plan even if that plan does not fully
guarantee that it will succeed. The expert will later use whatever
evidence that he gathers in this step in deciding whether to push
through or abandon the activity that he is planning to perform.

STEP 2. FORMULATE NEW FACTS THAT ARE IMPLIED BY THE GATHERED EVIDENCE TO BE
ADDED TO THE WORKING FACTS. In here, the expert places into context
what the evidence means in relationship to the job that he is trying to
accomplish. He does this by formulating the closest facts that dissects
the evidence into meaningful pieces of data that he can manipulate.
He then mentally adds these new facts to a library of working facts
where everything he knows about this job is kept. Collectively, these
facts supplement the expert’s awareness about the current state of his
work so that he can determine what activity he needs to perform next.

This step is straight forward if the gathered evidence is based on


a complete set of circumstantial information that can sufficiently
match that fact’s structural definition. He just formulates new facts
about the job by filling-in all necessary information that can be derived
from the evidence. On the other hand, some complexities in
formulating new facts from the evidence may arise if the evidence was
based on circumstantial information that is missing, incomplete or
inconclusive. In case this happens the expert must expertly make an
educated guess and formulate whatever facts that he can derive from
this vague evidence. This means that some or all entries in the facts
that the expert will formulate are based on mere speculation. This
implies that there is a chance the he may have guessed incorrectly so
these facts may be subject to future refinement as new evidence is
uncovered by the expert. Because of this, the formulated facts may
not be a very reliable measure of representing the true state of the
expert’s job as opposed to the first case when the set of circumstantial
information is complete. Nevertheless, this will be added just the
same to the set of working facts that the expert is maintaining.

In response to how these facts are formulated, the expert


mentally attaches to each formulated fact a level of confidence to
show the degree of belief and doubt regarding the veracity of such
fact. This level of confidence is subjective in nature and cannot be
scientifically measured in definite terms. The expert perceives the
level of confidence to be stratified across a range of logical values that
borders somewhere between a high and a low level of confidence. In
here, a high level of confidence represents the expert’s strong belief in
thinking that the fact he formulated is most probably right with little or
no chance of being erroneous. And on the extreme end, a low level of
confidence conveys the expert’s doubt in expressing some
reservations against the correctness of the formulated fact. It is a way
of indicating that the fact has a slight chance that it is correct and is
most likely erroneous. It is worth noting that the expert will never
formulate a fact that he knows to be entirely erroneous. A fact with a
low level of confidence still holds a grain of truth about the evidence
that it is trying to represent and may still be used by the expert as a
last resort when all other facts have been exhausted. This level of
confidence will later serve its purpose of enforcing an order of
relevance among the different formulated facts in lieu of the activity
that the expert will perform in the succeeding steps.

STEP 3. CHOOSE A RULE TO EXECUTE WHOSE ANTECEDENT CAN BE SATISFIED BY THE


WORKING FACTS. What the expert does in this step is to select the rule
that will specify the activity that he will perform next. He does this by
determining all the rules whose antecedent can be satisfied by any of
the existing facts in the library of working facts that represents the set
of evidences he has gathered so far. As it turns out, the rule’s
antecedent asserts a set of facts that the expert tries to matched
against these working facts. This is to consider all possible
alternatives that are available based purely on existing facts. This is
done without considering the activity that is mapped to the rule’s
consequent that might cloud the expert’s judgement and cause his
decision to be subjective instead of objective. The expert then chooses
the rule that uses the set of existing facts whose aggregate level of
confidence is the highest. Although it is not always guaranteed, this
increases the chance that the rule that the expert ends up choosing is
the best among the given alternatives.

Incidentally, the expert also attaches a level of confidence to the


rule he decides to choose. The fact’s level of confidence indicates the
extent by which these facts correctly interpret what the evidence
means. On the other hand, the rule’s level of confidence indicates the
appropriateness of the rule that gets triggered by the existing facts. It
addresses the question about whether or not the fact was properly
interpreted to match the underlying principle behind the situation or
event that satisfies the rule’s antecedent. A high level of confidence
suggests that the working fact fits all the requirements to satisfy the
rule’s antecedent that further tells the expert that this rule will most
likely provide the right activity that he has to perform. In contrast, the
expert may decide to give the rule that he chose a low level of
confidence if the expert is convinced that the working facts do not
have the sufficient details that can be compared to the rule’s
antecedent to draw a cohesive match. The expert decides to choose
this rule anyway when the expert is left with no better alternative and
is forced to take his chances with this rule.

STEP 4. EXECUTE THE RULE THAT WAS CHOSEN. The fourth and last step is for the
expert to trigger the rule that he chose for execution. Executing a rule
requires the expert to work on the rule’s antecedent and consequent.
He acknowledges that the asserted facts in the rule’s antecedent is
true and mentally takes note of the working facts that were used to
match the antecedent so as not to use the same set of working facts
on the same rule in the future. He then proceeds to implement the
action or conclusion that is specified by the activity in the rule’s
consequent. This activity will either assert more related facts that are
logically implied by the rule’s antecedent or implement some actions in
response or a combination of both.

Consequently, the level of confidence of both the fact and the


rule can be factored together to express the expert’s confidence that
the activity that will be implemented by the rule is the proper response
to the evidence that is represented by the fact.

From the given process, it is worth noting that everything starts with the
planned activity that points to the relevant evidence that the expert will try to
collect and ends with the expert choosing a rule that specifies the activity that the
expert will actually perform. There may be a disconnection between the planned
and the actual activities performed if the evidence found in the first step is
incomplete or inconclusive. When the second step is done, it might turn out that
the asserted fact that best represents such evidence deviates from what the expert
was originally expecting. And by the time the expert gets to the third and fourth
step, there is a significant probability that the rule that gets triggered will require
the expert to actually perform an activity that differs from the one that was initially
planned.

Given that the asserted fact is a faithful representation of the actual situation
or event that the expert observed in the particular job he is working on and the
activity specified in the rule is the best possible reaction to that situation or event.
The selection process in individually identifying the evidences, facts and rules
that the human expert elects to use requires the skill of reasoning. Reasoning helps
the expert in every decision that he makes in relationship to this selection process.
To an expert system, reasoning is the logical process of justifying how the expert
decides how certain tasks should be done. It also provides the means for
presenting the needed explanations that will support the justifications that the
expert took into account. By taking into context the type of job that the expert is
presently trying to accomplish, the human expert must be able to assess the
current stage where he finds himself in before the job can be completed and from
there decide what activity will lead to this goal.

Cumulatively, the entire collection of evidences, facts and rules that the
expert elected to use can be used to justify the reasoning that was involved at that
time when that expert was contemplating on his alternative options. In here, the
sequence of rules that were triggered for execution represents the expert’s chain-
of-thought that lead him to decide how that job had to be resolved and the set of
evidences and matching facts that triggered each rule serves as the explanation
why such decisions were made. This is what makes one expert’s solution unique
from another expert’s solution. Using different sets of evidences and facts and
different sequence of rules leads to different alternative solutions. The only
challenge for the expert is to ascertain that the solution found is the best one
available.

In as far as the implementation of expert systems is concerned, facts and


rules are kept in a knowledge base and the intellectual reasoning process is
performed by an inference engine. Together, the knowledge base and the inference
engine will be the main components of the expert system in simulating the
intellectual capability of the human expert.

The collection of evidence and the application of facts and rules have to be
done repeatedly and for every evidence that is discovered and for every fact and
rule that are established, the human expert moves one step closer to reaching his
ultimate goal of accomplishing his designated job. After
always choose the right fact that matches the collected evidence and then,
based on the established facts, choose the best rule that moves the expert one step
closer to achieving his goal of accomplishing the job that has to be done.
Eventually, by repeatedly establishing the existence of known facts and correctly
applying the rules that they trigger, the expert can string together the set of facts
and set of rules that will represent the solution that accomplishes the job that has to
be done. The sequence of rules that the expert decided to use represents his
current chain of thought at that time when the decision was made. This explains
that in reality, experts can resolve a single task using different chains of thought.
Categorically speaking, the human expert performs a series of intelligent guesses in
choosing the fact and the rule that he thinks will lead to the highest probability of
achieving his goal. To an expert system, the component that is responsible for
intelligently guessing the next fact and next rule that will be used is referred to as
the inference engine.

Depending on how the expert will interconnect one rule to the other, it
enables that expert to string a sequence of decisions that leads to some judgement
that he will eventually make. Somehow, an expert system should be able to
represent these facts and rules in a form that it can manipulate.

Furthermore, the human expert should have the intellectual ability to


manipulate these facts and rules when dealt with problems that needs to be
resolved. Typical, the problems that the human expert deals with are those that
require a more logical solution rather than mathematical ones.

The human expert performs a series of inductive, deductive or even


abductive reasoning to come up with his judgement that hopefully will prove to be
the correct decision.

Based on existing or known facts,


Given only minimal facts to initially work with, the human expert tries to
answer a series of questions that will eventually lead to a generally accepted
answer that would yield the highest probability of possibly solving a given problem.
The manner with regards to how the

For example, doctors in the medical profession are the human experts in the
field of diagnosing and treating medical problems. When medical patients consult a
doctor, they are actually seeking the advice from a human expert to possibly
explain the cause of their discomfort. Using the doctor’s extensive knowledge in a
chosen field of specialization, the doctor first assumes the ailment that a patient
might be diagnosed with based on the initial information gathered. To make sure
that it is the correct assumption, the doctor can interview the patient by asking a
series of related questions that will fortify the certainty of this assumption. During
the interview, there is a possibility that the doctor might change his opinion about
the patient’s illness if other facts provided by the patient contradict his initial
assumption and reveal other symptoms that is related to some other illness. If,
after the interview, the doctor is still unable to ascertain his diagnosis, he can
request the patient to undergo some laboratory tests to substantiate his decision.
After all necessary data about the patient has been collected, the doctor can finally
come up with his final diagnosis about his patient with regards to what ailment
might be causing the discomfort. Afterwards, the doctor can then prescribe the
needed treatment to counter the ailment in order to either alleviate or cure the
patient’s discomfort.

Several important aspects related to the scenario stated in the previous


paragraph can be made. First, when dealt with some problem to solve, the initial
facts that the doctor is provided may be incomplete or inaccurate; regardless of
such

The expert must study vast amount of be information that relates to his field
of study by understanding the
For an expert system only the initial facts about the problem and goal that
should be achieved must be identified during problem analysis. By using the
existing facts and existing rules that exists within the expertise of the

can be applied to these initial facts the

Similar to human experts, an expert system must be able to deal with initial
facts that may be incomplete or inaccurate. By working essentially selects a
collection of known rules and facts to perform a series of decisions where each
decision that it makes moves the expert system one step closer to achieving its
goal.

Similar to human experts, an expert system must be able to deal with initial
facts that may be incomplete or inaccurate. And working on these available
information, the expert must be able to use existing knowledge about the initial
facts in order to decide the most appropriate step forward towards the intended
goal.

This is accomplished by extracting the knowledge of the human expert and


representing that knowledge in a format that can be manipulated by a computer.
Expert systems are meant to solve real world problems with unstructured solutions.

END OF TEXT
Things To Do:
• explain that EXPERT SYSTEMS are RULES-BASED SYSTEMS --- and must tie up
with SCHEDULING PROCESS which also follows a RULES BASED approach
• explain that EXPERT SYSTEMS rely on the KNOWLEDGE of the EXPERT to be
captured by the EXPERT SYSTEM --- and in the case of the proposed study the
EXPERT is the ACADEMIC HEAD who makes the schedule
• explain the INFERENCE CYCLE used in EXPERT SYSTEM
Knowledg Working
e Base Memory

Matching

On Cycle
(optional)
Conflict
Resolutio
n

Execution
(Firing)

The Inference Cycle

• proposed Paradigm – Conceptual Framework


o INPUT: (via interview with SCIS Dean’s Office + Department Heads)
 study the complete PROFILE of the “competing factors” and the
CONSTRAINTS these profiles impose on the schedule
 collect the rules used by Dept Heads + Dean’s Office in making
the schedule --- in line with the “FOUR-STEP SCHEDULING
CYCLE”

o PROCESS:
 Knowledge Representation: represent the following in a
format that can be manipulated by the computer
• represent FACTS (e.g. COMPETING FACTORS + PROFILE)
as JAVA CLASSES/OBJECTS
• represent RULES used in STEP 1, 2 and 4 of FOUR-STEP
SCHEDULING CYCLE as JAVA CODE
• also represent CONSTRAINTS as RULES/FACTS
• etc…

 Inference Engine - design


• assign SCORING SYSTEM for PRIORITIZATION in the
MATCHING cycle
• represent RULES used in STEP 3 for CONFLICT
RESOLUTION
• etc…

o OUTPUT:
 Class Scheduling Expert System (Framework? or System? – to be
decided)

You might also like