Machine Vision
Machine Vision
Machine Vision
The traditional goals of AI research include reasoning, knowledge representation, planning, learning, natural
language processing, perception and the ability to move and manipulate objects. General intelligence (the ability to
solve an arbitrary problem) is among the field's long-term goals.
What to Represent:
Following are the kind of knowledge which needs to be represented in AI systems:
•Object: All the facts about objects in our world domain. E.g., Guitars contains strings, trumpets are brass instruments.
•Events: Events are the actions which occur in our world.
•Performance: It describe behavior which involves knowledge about how to do things.
•Meta-knowledge: It is knowledge about what we know.
•Facts: Facts are the truths about the real world and what we represent.
•Knowledge-Base: The central component of the knowledge-based agents is the knowledge base. It is represented as KB. The
Knowledgebase is a group of the Sentences (Here, sentences are used as a technical term and not identical with the English
language).
Knowledge: Knowledge is awareness or familiarity gained by experiences of facts, data, and situations. Following are the types of
knowledge in artificial intelligence:
Types of knowledge
Following are the various types of knowledge:
1. Declarative Knowledge:
•Declarative knowledge is to know about something.
•It includes concepts, facts, and objects.
•It is also called descriptive knowledge and expressed in declarativesentences.
•It is simpler than procedural language.
2. Procedural Knowledge
•It is also known as imperative knowledge.
•Procedural knowledge is a type of knowledge which is responsible for knowing how to do something.
•It can be directly applied to any task.
•It includes rules, strategies, procedures, agendas, etc.
•Procedural knowledge depends on the task on which it can be applied.
3. Meta-knowledge:
•Knowledge about the other types of knowledge is called Meta-knowledge.
4. Heuristic knowledge:
•Heuristic knowledge is representing knowledge of some experts in a filed or subject.
•Heuristic knowledge is rules of thumb based on previous experiences, awareness of approaches, and which are good to work but
not guaranteed.
5. Structural knowledge:
•Structural knowledge is basic knowledge to problem-solving.
•It describes relationships between various concepts such as kind of, part of, and grouping of something.
•It describes the relationship that exists between concepts or objects.
The relation between knowledge and intelligence:
Knowledge of real-worlds plays a vital role in intelligence and same for creating artificial intelligence. Knowledge plays an
important role in demonstrating intelligent behavior in AI agents. An agent is only able to accurately act on some input when he
has some knowledge or experience about that input.
Let's suppose if you met some person who is speaking in a language which you don't know, then how you will able to act on that.
The same thing applies to the intelligent behavior of the agents.
As we can see in below diagram, there is one decision maker which act by sensing the environment and using knowledge. But if
the knowledge part will not present then, it cannot display intelligent behavior.
The knowledge pyramid can be used to explain why AI is different from IT. Here is how.
The fundamental difference is that AI works with knowledge, not data, and the significant differences between
knowledge and data are essential. It is much more than just words.
Information as a Hiraki
A way to understand the difference between AI and IT is to look at how they work with information as a Hiraki. The
concept can be illustrated as a pyramid, also known as the knowledge pyramid. The pyramid shows different levels of
enriched knowledge.
It is shaped like a pyramid because the upper layers are based on the lower ones. Meaning, for each step you go up,
more knowledge is added, and it is assumed that you master the lower layers before an upper layer can be realized.
Thus, the lowest level of the pyramid of knowledge is data, and the highest is wisdom. The definitions of the four levels
are:
• Data: A collection of facts in raw or in unorganized form.
• Information: Organized and structured data that has been cleared of errors. It can, therefore, be measured,
analyzed, and visualized.
• Knowledge: Learning is the central component of the knowledgeable part. Here you learn on the basis of
insights and understanding of data and information.
• Wisdom: The last level is wisdom. Here, Reflection is the central component, as well as being an action-
oriented stage.
• 5 Things AI Does Better Than Humans in 2019
UPDATED JUNE 22, 2020 WIREDELTA
Artificial Intelligence (AI) does better than humans in many areas. It is getting more advanced each day. Examples range from
Boston Dynamics demos backflipping robots to the likes of AI is dominating advertising. But it doesn’t stop there so let’s get a
better sense of what AI can do better than humans
1. AI Does Better In Gaming
When AI beat the reigning ‘Go’ champion Lee Sedol in 2016, researchers rejoiced. Furthermore, in 2017, a new neural network –
‘AlphaGo Zero’ beat the old ‘Alpha Go’ 100 times in a row. Moreover, it also taught itself how to play using only the basic rules
of the game. Even though ‘Go’ is far from the only game humans play, there are new AI’s in town playing all kinds of games.
Both Google’s AutoML and Microsoft’s DeepCoder hold an unprecedented capacity to build the next generation of AI. DeepCoder
does not simply copy the building blocks of code as researchers have given it to it. The algorithm looks at how the codes fit
together, how they function and it learns and recognizes other codes.
The video below, shows Google’s CEO telling his team “we have to go deeper”, describing AutoML. This is also a nod to the
movie ‘Inception’.
3. AI Does Better At Providing More Accurate Medical Diagnosis
Ever since the achievements of AI has been the talk out of town, a major focus area for their use has been in medical
diagnosis. For example in the field of oncology and diagnosis of cancer, it is challenging for humans to have an absolutely
accurate diagnosis. According to research by University Hospitals Birmingham. The delivery of results by AI systems correctly
detected a disease state 87% of the time – compared with 86% for healthcare professionals – and correctly gave the all-clear 93%
of the time, compared with 91% for human experts.
More recently, IBM has used Watson’s ability to absorb huge volumes of information. That will help them with diagnosing rare
illnesses. Some of which most doctors may only see within a few cases in their lifetime. It will help doctors at the Centre for
Undiagnosed and Rare Diseases at the University Hospital Marburg, Germany, deal with the thousands of patients referred to them
yearly. As well as with the thousands of pages of medical records that are supplied by the patients to be analyzed.
• Problem Representation in AI
Before a solution can be found, the prime condition is that the problem must be very precisely defined. By defining it
properly, one converts the abstract problem into real workable states that are really understood.
At that time high-level computer languages such as FORTRAN, LISP, or COBOL were invented. And the enthusiasm for AI was
very high at that time.
The golden years-Early enthusiasm (1956-1974)
•Year 1966: The researchers emphasized developing algorithms which can solve mathematical problems. Joseph Weizenbaum
created the first chatbot in 1966, which was named as ELIZA.
•Year 1972: The first intelligent humanoid robot was built in Japan which was named as WABOT-1.
The first AI winter (1974-1980)
•The duration between years 1974 to 1980 was the first AI winter duration. AI winter refers to the time period where computer
scientist dealt with a severe shortage of funding from government for AI researches.
•During AI winters, an interest of publicity on artificial intelligence was decreased.
A boom of AI (1980-1987)
•Year 1980: After AI winter duration, AI came back with "Expert System". Expert systems were programmed that emulate the
decision-making ability of a human expert.
•In the Year 1980, the first national conference of the American Association of Artificial Intelligence was held at Stanford
University.
The second AI winter (1987-1993)
•The duration between the years 1987 to 1993 was the second AI Winter duration.
•Again Investors and government stopped in funding for AI research as due to high cost but not efficient result. The expert system
such as XCON was very cost effective.
The emergence of intelligent agents (1993-2011)
•Year 1997: In the year 1997, IBM Deep Blue beats world chess champion, Gary Kasparov, and became the first computer to beat
a world chess champion.
•Year 2002: for the first time, AI entered the home in the form of Roomba, a vacuum cleaner.
•Year 2006: AI came in the Business world till the year 2006. Companies like Facebook, Twitter, and Netflix also started using AI.
Deep learning, big data and artificial general intelligence (2011-present)
•Year 2011: In the year 2011, IBM's Watson won jeopardy, a quiz show, where it had to solve the complex questions as well as
riddles. Watson had proved that it could understand natural language and can solve tricky questions quickly.
•Year 2012: Google has launched an Android app feature "Google now", which was able to provide information to the user as a
prediction.
•Year 2014: In the year 2014, Chatbot "Eugene Goostman" won a competition in the infamous "Turing test."
•Year 2018: The "Project Debater" from IBM debated on complex topics with two master debaters and also performed extremely
well.
•Google has demonstrated an AI program "Duplex" which was a virtual assistant and which had taken hairdresser appointment on
call, and lady on other side didn't notice that she was talking with the machine.
Now AI has developed to a remarkable level. The concept of Deep learning, big data, and data science are now trending like a
boom. Nowadays companies like Google, Facebook, IBM, and Amazon are working with AI and creating amazing devices. The
future of Artificial Intelligence is inspiring and will come with high intelligence.
Alternatives to Turing Tests were later developed because many see the Turing test to be flawed. These alternatives include tests
such as:
•The Marcus Test -- in which a program that can 'watch' a television show is tested by being asked meaningful questions about
the show's content.
•The Lovelace Test 2.0 -- which is a test made to detect AI through examining its ability to create art.
•Winograd Schema Challenge -- which is a test that asks multiple-choice questions in a specific format.
Why is the Turing Test important?
"The Turing Test is a vital tool for combatting that threat. It is important to understand more fully how online, real-time
communication of this type can influence an individual human in such a way that they are fooled into believing something is true
when in fact it is not."
What is the significance of the Turing Test in AI?
The Turing Test is a method of inquiry in artificial intelligence (AI) for determining whether or not a computer is capable of
thinking like a human being. The test is named after Alan Turing, the founder of the Turing Test and an English computer
scientist, cryptanalyst, mathematician and theoretical biologist.
What is the Turing Test?
In 1950, Alan Turing published a seminal paper titled “Computing Machinery and Intelligence” in Mind magazine. In this detailed
paper the question “Can Machines Think?” was proposed. The paper suggested abandoning the quest to define if a machine can
think, to instead test the machine with the ‘imitation game’. This simple game is played with three people:
•a man (A)
•a woman (B),
•and an interrogator (C) who may be of either sex.
The concept of the game is that the interrogator stays in a room that is separate from both the man (A) and the woman (B), the
goal is for the interrogator to identify who the man is, and who the woman is. In this instance the goal of the man (A) is to
deceive the interrogator, meanwhile the woman (B) can attempt to help the interrogator (C). To make this fair, no verbal cues can
be used, instead only typewritten questions and answers are sent back and forth. The question then becomes: How does the
interrogator know who to trust?
The interrogator only knows them by the labels X and Y, and at the end of the game he simply states either ‘X is A and Y is B’ or ‘X
is B and Y is A’.
The question then becomes, if we remove the man (A) or the woman (B), and replace that person with an intelligent machine,
can the machine use its AI system to trick the interrogator (C) into believing that it’s a man or a woman? This is in essence the
nature of the Turing Test.
Turing Test in Artificial Intelligence
• The Turing test was developed by Alan Turing(Computer scientist) in 1950. He proposed that the
“Turing test is used to determine whether or not a computer(machine) can think intelligently like
humans”?
• Imagine a game of three players having two humans and one computer, an interrogator(as a
human) is isolated from the other two players. The interrogator’s job is to try and figure out
which one is human and which one is a computer by asking questions from both of them. To
make things a harder computer is trying to make the interrogator guess wrongly. In other words,
computers would try to be indistinguishable from humans as much as possible.
The “standard interpretation” of the Turing Test, in which player C, the interrogator, is given the task of trying
to determine which player – A or B – is a computer and which is a human. The interrogator is limited to using
the responses to written questions to make the determination
The conversation between interrogator and computer would be like this:
C(Interrogator): Are you a computer?
A(Computer): No
C: Multiply one large number to another, 158745887 * 56755647
A: After a long pause, an incorrect answer!
C: Add 5478012, 4563145
A: (Pause about 20 seconds and then give as answer)10041157
If the interrogator wouldn’t be able to distinguish the answers provided by both humans and computers then the
computer passes the test and the machine(computer) is considered as intelligent as a human. In other words, a
computer would be considered intelligent if its conversation couldn’t be easily distinguished from a human’s. The whole
conversation would be limited to a text-only channel such as a computer keyboard and screen.
He also proposed that by the year 2000 a computer “would be able to play the imitation game so well that an average
interrogator will not have more than a 70-percent chance of making the right identification (machine or human) after
five minutes of questioning.” No computer has come close to this standard.
But in the year 1980, Mr John Searle proposed the “Chinese room argument“. He argued that the Turing test could
not be used to determine “whether or not a machine is considered as intelligent like humans”. He argued that any
machine like ELIZA and PARRY could easily pass the Turing Test simply by manipulating symbols of which they had
no understanding. Without understanding, they could not be described as “thinking” in the same sense people do. We
will discuss more this in the next article.
UNIT=2
Expert System
An expert system generally consists of four components: a knowledge base, the search or inference system, a knowledge
acquisition system, and the user interface or communication system.
Expert systems in Artificial Intelligence are a prominent domain for research in AI. It was initially introduced by researchers at
Stanford University and were developed to solve complex problems in a particular domain. The following topics will be covered
through this blog on Expert Systems in Artificial Intelligence.
Introduction to Expert Systems in Artificial Intelligence
An Expert system is a domain in which Artificial Intelligence stimulates the behavior and judgement of a human or an
organization containing experts. It acquires relevant knowledge from its knowledge base, and interprets it as per the user’s
problem. The data in the knowledge base is essentially added by humans who are experts in a particular domain. However, the
software is used by non-experts to gain information. It is used in various areas of medical diagnosis, accounting, coding, gaming
and more.
Breaking down an expert system, essentially is an AI software that uses knowledge stored in a knowledge base to solve problems.
This usually requires a human expert, and thus, it aims at preserving human expert knowledge in its knowledge base. Hence,
expert systems are computer applications developed to solve complex problems in a particular domain, at an extraordinary level
of human intelligence and expertise.
History of Expert Systems in AI
Expert Systems were first presented by Stanford University specialists during the 1970s, in spite of the fact that it has been on PC
researchers’ psyches since the mid-1940s and 1950s.
Edward Feigenbaum and Joshua Lederberg, who were key individuals from the Stanford Heuristic Programming Project, built up
the principal master framework in 1965. The analysts needed to make a specific framework instead of a universally useful one.
One of the gadget’s initial applications included synthetic examination (DENDRAL) and clinical diagnostics (MYCIN). MYCIN, an
irresistible infection diagnostics device, makes findings through reverse affixing.
Master frameworks have clarification offices that let clients ask them how they arrived at a specific resolution or why they
couldn’t. All things considered, its equipped for legitimizing its thinking and yield.
Examples of AI Expert Systems
1. MYCIN
MYCIN is amongst the oldest expert systems. It was designed upon the fundamental of backward chaining and was capable to
identify infection-causing bacteria.
MYCIN treats certain bacterial infections and controls acne, additionally to other acne treatments. It prevents infections in people
with a history of rheumatic disease, congenital heart condition or other acquired valvular heart condition and who are allergic to
penicillin antibiotics.
2. DENDRAL
An expert system designed to determine the structure of the chemical using its spectrographic data. Its primary aim was to
review hypothesis formation and discovery in science.
The software program DENDRAL is said to be the primary expert system because it automated the decision-making process and
problem-solving behavior of organic chemists.
3. R1/XCON
An Expert System that had the ability to select the best-suited software to perform a particular task assigned by the user.
A system that ensured the customer was furnished with all the components and software that was needed to form up the
required computing system that that they had ordered.
4. PXDES
Pneumoconiosis X-Ray Diagnosis Expert System (PXDES) is an expert system which is used to diagnose in which stage a patient of
lung cancer. The shadow is employed to work out the sort and degree of carcinoma .
5. DXplain
This was an expert system that was capable of diagnosing a number of diseases in a patient based on the input provided.
DXplain provides information and supplies clinical manifestations, if any, for diseases that are unusual or atypical.
Components/ Architecture of Expert Systems
There are 5 Components of expert systems:
•Knowledge Base
•Inference Engine
•Knowledge acquisition and learning module
•User Interface
•Explanation module
1.)Knowledge base: The knowledge base in an expert system represents facts and rules. It contains knowledge in specific
domains along with rules in order to solve problems, and form procedures that are relevant to the domain. It is where data
contributed by specialists from the required domains is put away. Think about an information base as a book or an article.
To make entries from a book sound, you need to refer to data from specialists to make it more credible. It contains both factual
and heuristic knowledge.
Components of Knowledge Base
a. Factual Knowledge
As the name suggests, factual knowledge is based upon facts. Information in the form of facts are proven and widely accepted by
one and all.
b. Heuristic Knowledge
While Factual Knowledge is about facts, heuristic knowledge is unorganized in nature and relies on one’s own evaluation.
2.)Inference engine: The most basic function of the inference engine is to acquire relevant data from the knowledge base,
interpret it, and to find a solution as per the user’s problem. Inference engines also have explanationatory and debugging
abilities. Inference Engine is the mind behind the UI. It contains a predefined set of rules to tackle a particular issue and alludes to
the information from the Knowledge Base.
It chooses realities and rules to apply when attempting to answer the client’s inquiry. Inference Engine gives thinking about the
data in the information base.
It likewise helps in deducting the issue to discover the arrangement. This part is additionally useful for detailing ends.
The two basic strategies used in inference engines are:
a. Forward Chaining
This strategy used to determine the probable outcome in the future. With the given inputs and conditions, this strategy
utilizes expert systems to find out the probable outcome. This helps to extract data till a particular goal is reached.
b. Backward Chaining
This strategy used to determine why would a particular event take happen with the current circumstances provided. It is utilized
in automated theorem provers, inference engines, proof assistants, and other AI applications
3.)Knowledge acquisition and learning module: This component functions to allow the expert systems to acquire more data
from various sources and store it in the knowledge base.
4.)User interface: This component is essential for a non-expert user to interact with the expert system and find solutions.
Explanation module: As the name suggests, this module helps in providing the user with an explanation of the achieved
conclusion. With the assistance of a UI, the master framework communicates with the client, accepts inquiries as a contribution
to a clear arrangement, and passes it to the deduction motor.
In the wake of getting the reaction from the deduction motor, it shows the yield to the client. As it were, it is an interface that
helps a non-master client to speak with the master framework to discover an answer.
It takes the client’s inquiry in a coherent structure and forwards it to the inference engine. From that point onward, it shows the
outcomes to the client, as such, it’s an interface that enables the client to speak with the master framework.
The (UI) is the space that encourages correspondence between the framework and its clients. It’s synonymous with your PC work
area or cell phone home screen.
Applications of Expert Systems
•Expert systems are being used in designing and manufacturing domain for the production of vehicles and gadgets like cameras.
•In the knowledge domain, Expert Systems are used for delivering the required knowledge to the client. The knowledge can be
legal advice, tax advice, or something other than that.
•In the banking and finance sector, expert systems are widely used for the detection of frauds.
•Expert Systems can also use in the diagnosis and troubleshooting of medical equipment.
•Apart from this, Expert Systems can also have use cases in Planning and Scheduling tasks.
Advantages of Expert Systems
•Expert Systems are easily available as they are not so difficult to develop and are thus easier to reproduce.
•Increased accuracy is a prominent advantage of Expert Systems.
•They can be of use at workstations where there is a risk to human lives.
•They can be made to work 24×7 without the need for any human intervention.
•Expert Systems offer a very speedy decision-making process which in most cases is error-free.
Limitations of Expert Systems
•Its judgment is based solely on the information being stored in the knowledge base. Any discrepancy in the information can lead
to flawed decision making.
•Unlike humans, it is not capable of providing an out of the box solution for problems
•The cost required for the maintenance of these systems is quite hefty.
• Expert System Life Cycle,
Topics covered are the following:
problem identification phase, feasibility study phase, project planning phase, knowledge acquisition phase, knowledge
representation phase, knowledge implementation phase, verification and validation, installation/transition/ training,
operation/evaluation/maintenance.
The term “expert system” could be applied to any computer program which is able to draw conclusions and make decisions,
based on knowledge, represented as a database, it has. An expert system doesn’t have to be a replacement for a human expert.
Such systems are often used as a support when a human can not collect all vital information due to theirs amount or complexity.
That is why there is a need for systems that work in real-time and perform theirs functions faster and better then a human is able
to do. There is also another reason, computer programs are much more cheaper then human experts (not in terms of their value,
which may not be compared, but maintenance: costs of educations, salaries etc.).
Stages in the Development of an Expert System:
The essential principles:
get a prototype – a small, preliminary version of the final system – up & running at an early stage;
present this to the domain expert, for criticism;
proceed to refine this prototype with repeated debugging & knowledge accretion stages;
Continue with this cycle until the knowledgebase is finished.
Expert System Development Life Cycle:
Problem Identification Phase:
Identifying the problem and opportunity where the organization can obtain benefits from expert system, and establishing the
Expert system general goals.
Feasibility Study Phase:
Assessing the feasibility of the expert system development in terms of its technical operational and economical feasibility.
Project Planning Phase:
Planning for the expert system project, including development team members, working environment, project schedule, and
budget.
Knowledge Acquisition Phase:
Extracting domain knowledge from domain experts and determining the system’s requirements.
Knowledge Representation Phase:
Representing key concepts from domain and inter relationships between these concepts using formal representation methods.
Knowledge Implementation Phase:
Coding the formalized knowledge in to a working prototype.
Verification and Validation:
Verifying and validating working prototype against the system requirements, and revising it necessary according to domain
expert’s feedback.
Installation and Training:
Installing the final prototype in an operating environment, training the users and developing documentation and user manual.
Operation/ Evolution / Maintenance:
Running the system in an operating environment, evaluating its performance and benefits and maintaining system.
What are rule-based expert systems?
A rule-based expert system is the simplest form of artificial intelligence and uses prescribed knowledge-based rules to solve a
problem 1. ... The aim of the expert system is to take knowledge from a human expert and convert this into a number of
hardcoded rules to apply to the input data.
Rule-based systems (also known as production systems or expert systems) are the simplest form of artificial intelligence. A rule
based system uses rules as the knowledge representation for knowledge coded into the system. The definitions of rule-based
system depend almost entirely on expert systems, which are system that mimic the reasoning of human expert in solving a
knowledge intensive problem. Instead of representing knowledge in a declarative, static way as a set of things which are true,
rule-based system represent kn
owledge in terms of a set of rules that tells what to do or what to conclude in different situations.
A rule-based expert system is the simplest form of artificial intelligence and uses prescribed knowledge-based rules to solve a
problem 1. The aim of the expert system is to take knowledge from a human expert and convert this into a number of hardcoded
rules to apply to the input data.
What is knowledge expert system?
Expert systems have specific knowledge to one problem domain, e.g., medicine, science, engineering, etc. The expert's
knowledge is called a knowledge base, and it contains accumulated experience that has been loaded and tested in the system.
What is the role of knowledge in expert system?
A Knowledge-based expert system use human knowledge to solve problems that normally would require human intelligence.
Expert systems are designed to carry the intelligence and information found in the intellect of experts and provide this knowledge
to other members of the organization for problem solving purposes.
Applications of Expert Systems
Applications Role
Design Domain Camera lens designAutomobile design
Diagnosis Systems to deduce the cause of
Medical Domain disease from observed dataConduction
medical operations on humans.
Monitoring systems Comparing data continuously with observed
systems
Controlling physical processes based on
Process Control Systems monitoring.
Knowledge Domain Finding faults in vehicles or computers.
Detection of possible fraud Suspicious
Commerce transactions Stock market trading Airline
scheduling, Cargo scheduling.
Advantages of Expert Systems
•Availability − They are easily available due to mass production of software.
•Less Production Cost − Production costs of expert systems are extremely reasonable and affordable.
•Speed − They offer great speed and reduce the amount of work.
•Less Error Rate − Error rate is much lower as opposed to human errors.
•Low Risks − They are capable of working in environments that are dangerous to humans.
•Steady response − They avoid motions, tensions and fatigues.
Limitations of Expert Systems
It is evident that no technology is entirely perfect to offer easy and complete solutions. Larger systems are not only expensive but
also require a significant amount of development time and computer resources. Limitations of Es include:
In artificial intelligence, an expert system is a computer system that emulates the decision-making ability of a human expert.
Expert systems are designed to solve complex problems by reasoning through bodies of knowledge, represented mainly as if-
then rules rather than through conventional procedural code.
How do you develop an expert system?
Here is a six-step formula for building your core expert systems.
1.Step One: Define All Deliverables. ...
2.Step Two: Lay Out the Process. ...
3.Step Three: Determine the Optimal Level of Expertise for Each Step. ...
4.Step Four: Control for Consistency. ...
5.Step Five: Map Out the Key Components of Your Expert System to Refine First.
What are the stages in the development of expert system?
Waterman [11] provided five phases/stages approach in the development of Expert System: Identification , Conceptualization,
Formalization, Implementation, and Testing.
What is the main purpose of expert system development?
Expert systems are aimed at rebuilding human reasoning on the expertise obtained from experts, stores knowledge, establishes
links between knowledge, have the knowledge and ability to perform human intellectual activities.
The following points highlight the five main stages to develop an expert system.The stages are: 1. Identification 2.
Conceptualisation 3. Formalisation (Designing) 4. Implementation 5. Testing (Validation, Verification and Maintenance).
A knowledge engineer is an AI specialist, perhaps a computer scientist or programmer, who is skilled in the ‘Art’ of
developing expert systems, unlike other engineering disciplines, there are no generally accepted criteria to determine
exactly who is knowledge engineer; the field is much too new. You don’t need a degree in “knowledge engineering” to
call yourself a knowledge engineer; infact, nearly everyone who has ever contributed to the technical side of the expert
system development process could be considered a knowledge engineer.
A domain expert is an individual who has significant expertise in the domain of the expert system being developed. It is
not critical that the domain expert understand AI or expert systems; that is one of the functions of the knowledge
engineer.
ADVERTISEMENTS:
The knowledge engineer and the domain expert usually work very closely together for long periods of time throughout
the several stages of the development process.
An expert system is developed and refined over a period of several years since it is typically a computer-based soft
ware. Fig. 12.8 divides the process of expert system development into five distinct stages since an expert system is
typically a computer based system.
In practice, it may not be possibl
e to break down the expert system development cycle precisely. However, an examination of these five stages may ser
ve to provide us with some insight into the ways in which expert systems are developed.
Stage # 1. Identification:
Before we can begin to develop an expert system, it is important to describe, with as much precision as possible, the problem
which the system is intended to solve. It is not enough simply to feel that an expert system would be helpful in a certain situation;
we must determine the exact nature of the problem and state the precise goals which indicate exactly how the expert system is
expected to contribute to the solution.
To begin, the knowledge engineer, who may be unfamiliar with this particular domain, consults manuals and training guides to
gain some familiarity with the subject. Then the domain expert describes several typical problem states. The knowledge engineer
attempts to extract fundamental concepts from the similar cases in order to develop a more general idea of the purpose of the
expert system.
After the domain expert describes several cases, the knowledge engineer develops a ‘first-pass’ problem description. Typically,
the domain expert may feel that the description does not entirely represent the problem. The domain expert then suggests
changes to the description and provides the knowledge engineer with additional examples to illustrate further the problem’s fine
points.
Next, the knowledge engineer revises the description, and the domain expert suggests further changes. This process is repeated
until the domain expert is satisfied that the knowledge engineer understands the problems and until both are satisfied that the
description adequately portrays the problem which the expert system is expected to solve.
This ‘iterative’ procedure (Fig. 12.9) is typical of the entire expert-system development process. The results are evaluated at each
stage of the process and compared to the expectations. If the results do not meet the expectations, adjustments are made to
that stage of the process, and the new results are evaluated. The process continues until satisfactory results are achieved.
Stage # 2. Conceptualisation:
Once it has been identified for the problem an expert system is to solve, the next stage involves analysing the problem further to
ensure that its specifics, as well as generalities, are understood.
In the conceptualisation stage, the knowledge engineer frequently creates a diagram of the problem to depict graphically the
relationships between the objects and processes in the problem domain. It is often helpful at this stage to divide the problem
into a series of sub-problems and to diagram both the relationships among the pieces of each sub-problem and the relationships
among the various sub-problems.
As in the identification stage, the conceptualisation stage involves a circular procedure of iteration and reiteration between the
knowledge engineer and the domain expert. When both agree that the key concepts-and the relationships among them-have
been adequately conceptualised, this stage is complete.
Not only is each stage in the expert system development process circular, the relationships among the stages may be circular as
well. Since each stage of the development process adds a level of detail to the previous stage, any stage may expose a weakness
in a previous stage.
Stage # 3. Formalisation (Designing):
In the preceding stages, no effort has been made to relate the domain problem to the artificial intelligence technology which may
solve it. During the identification and formalization stages, the focus is entirely on understanding the problem. Now, during the
formalization stage, the problem is connected to its proposed solution, an expert system is supplied by analyzing the relationships
depicted in the conceptualization stage. The knowledge engineer begins to select the techniques which are appropriate for
developing this particular expert system.
During formalization, it is important that the knowledge engineer be familiar with the following:
1. The various techniques of knowledge representation and intelligent search techniques used in expert systems.
2. The expert system tools which can greatly expedite the development process.
3. Other expert systems which may solve similar problems and
thus may be adaptable to problem at hand.
Stage # 4. Implementation:
During the implementation stage the formalized concepts are programmed into the computer which has been chosen for system
development, using the predetermined techniques and tools to implement a ‘first-pass’ (prototype) of the expert system.
Theoretically, if the methods of the previous stages have been followed with diligence and care, the implementation of the
prototype should proceed smoothly. In practice, the development of an expert system may be as much an art as it is a science,
because following all the rules does not guarantee that the system will work the first time it is implemented. In fact, experience
suggests the opposite. Many scientists actually consider the prototype to be a ‘throw-away’ system, useful for evaluating
progress but hardly a usable expert system.
If the prototype works at all, the knowledge engineer may be able to determine if the techniques chosen to implement the
expert system were the appropriate ones. On the other hand, the knowledge engineer may discover that the chosen techniques
simply cannot be implemented. It may not be possible, for example, to integrate the knowledge representation techniques
The chance of prototype expert system executing flawlessly the first time it is tested are so slim as to be virtually non-existent. A
knowledge engineer does not expect the testing process to verify that the system has been constructed entirely correctly. Rather,
testing provides an opportunity to identify the weaknesses in the structure and implementation of the system and to make the
appropriate corrections.
Depending on the types of problems encountered, the testing procedure may indicate that the system was implemented
incorrectly, or perhaps that the rules were implemented correctly but were poorly or incompletely formulated. Results from the
tests are used as ‘feedback’ to return to a previous stage and adjust the performance of the system.
Once the system has proven to be capable of correctly solving straight-forward problems, the domain expert suggests complex
problems which typically would require a great deal of human expertise. These more demanding tests should uncover more
serious flaws and provide ample opportunity to ‘fine tune’ the system even further.
Applications of Expert Systems
Some popular Application of Expert System:
•Information management
•Hospitals and medical facilities
•Help desks management
•Employee performance evaluation
•Loan analysis
•Virus detection
•Useful for repair and maintenance projects
•Warehouse optimization
•Planning and scheduling
•The configuration of manufactured objects
•Financial decision making Knowledge publishing
•Process monitoring and control
•Supervise the operation of the plant and controller
•Stock market trading
•Airline scheduling & cargo schedules
Applications of Expert Systems
Applications Role
Design Domain Camera lens designAutomobile design
Diagnosis Systems to deduce the cause of disease
Medical Domain from observed dataConduction medical operations on
humans.
Monitoring systems Comparing data continuously with observed systems
Process Control Systems Controlling physical processes based on monitoring.
Knowledge Domain Finding faults in vehicles or computers.
Detection of possible fraud Suspicious
Commerce transactions Stock market trading Airline scheduling,
Cargo scheduling.