2) Discuss about the main components that make up an Expert system.
There are 8 main components in and Expert system. These components are, knowledge acquisition sub system, knowledge base, inference engine, work place, user interface, explanation subsystem, knowledge refining subsystem and people.
a) A knowledge acquisition sub system is used to gain or acquire knowledge from different sources to develop and or upgrade the knowledge base. The knowledge acquisition subsystem could be an individual who will increase the knowledge base (he is then called the knowledge Engineer) and or a special computer aided software Engineer who will accomplish the same. A knowledge Engineer has to posses a few key qualities which are High level of tolerance, a logical mind and high level of commitment. The reasons for these key qualities are obvious as the Engineer has to work in a tedious environment where all progress booked are going to be slow. b) The knowledge base of an expert system is exactly what it says it is namely the storage of all facts and rules within the domain of the problem. A declarative program we be called a knowledge base by itself. c) The Inference engine is the part of the Expert system that shall search the knowledge base to then display the solution. This engine normally consists out of three subparts namely an interpreter that will convert the code into machine language, a scheduler which will search and reason the knowledge base and a consistency enforcer that is used to display the answer. d) The workspace is in general the working memory that is assigned to handle the problem and store the decision. The workspace is storing three types of decision which are a strategy to search the knowledgebase, a problem to search the knowledge base and the solution. e) The user interface of the expert system is a way for the user to interact with the Expert system. The interface is used in the form of queries to a specific problem. The interface play an obvious important role in any Expert system. f) The explanation subsystem is used to recommend a solution or explain the logic behind the solution. g) The Knowledge refining sub system will try to update the knowledge in the knowledge base each time it went over a query. This can be called a digital human interface as it almost work as a human where it learns from its mistakes. This sub is considered a neural network and not considered for commercial applications. h) Last but not least People which come in three categories, the Expert, the knowledge engineer and the users. Each one is playing a very important role in the creation maintaining and usage of the Expert system.
3) Discuss what programming languages are used to develop Expert systems and briefly explain how these languages differ from procedural languages.
Procedural programming also known as imperative programming, specify steps a program is taking to reach a wanted state. Imperative programming will give the programmer the means to define a step by step task to be performed
4) Provide a real life example of an expert system and discuss about the main characteristics, features and type of knowledge used in the relevant Expert system you mentioned.
Mycin is an Expert system that was created in the 1970's to help nurses, doctors and medical practitioners prescribe or administer anti-microbial drugs.
Mycin is a good example of early artificial intelligence where a basic approach was used to assist in complicated possible life threatening situations. A series of questions is asked to eliminate variables to come to a single conclusion. The good thing about Mycin is that it would in case of advising a treatment using multiple medication also warn for the dangers surrounding using combined prescribed medication(s) and propose alternative how to administer these multiple medications. Mycin is a good system to avoid mistakes as some doctors would prescribe medication as per Habit. Using Mycin each individual gets questions describing symptoms until matching symptoms would suggest a treatment.
Rules would be stored as premises, premises are then conjunctions and disjunctions of conditions, conditions will either be true or false based on the evidence provided which will then result in a new certainty factor which in turn will trigger an action that will then become either a conclusion or instruction.
5) The benefits or reasons for using artificial intelligence.
Many people have different approaches on the reasons and benefits of artificial intelligence or the lack there of. Some problems require the elimination of Human interference and provide a solution without prejudice. Decisions sometimes taken have to be taken without sentiment and an A.I. system is exactly capable of doing such. An A.I. system will always provide the same solution for a given problem depending the variables. Another advantage of an A.I. system is the extensive amount of knowledge that can be build into it that could give simple answer to complicated questions. An A.I. system can in most cases safe time as it is ultimately build to give an answer following a logical structure which might not necessarily be followed by a human being. The A.I. system is set out to bring a higher quality and more productivity.
6) Discuss why including artificial intelligence (AI) in information systems has proven to be difficult and expensive.
The expenses and difficulty in including an artificial intelligence system in an information system is mainly time. Including AI is in almost all cases tremendously labor intensive. An A.I. system is always about eliminating variables. A simple example would be, question1: is it green answer: no. Is it red, answer no. conclusion it is a banana. Now one does not need a lot of imagination that only the subject of concluding if something is a banana knows so many variables that listing only these variables for a single problem is going to take a long time. When implementing A.I. it has to go through a test phase and even a test phase alone is time consuming and expensive as users have to ensure that conclusions drawn by an A.I. system always match the correct outcome. In a secluded environment and surrounding without progress an A.I. system can function perfectly well for a long time without maintenance and upgrades but the reality is that these environments hardly exist. Any surrounding is evolving whether slow or rapidly this in the end means that the A.I. in the information system has to grow with these developments and hence has to be updated on regular bases. Depending on how dynamic the environment is that the I.A. was developed for this could again make it a labor intensive system. In the end can A.I. not be implemented in every situation as it is simply not economical to do so.