My Intelligent

  • View

  • Download

Embed Size (px)




The following gives an in-depth definition of what an expert system is. It was approved by a committee of expert system specialists from the British Computer Society. The definition perfectly captures the basic principles and likely capabilities of an expert system.An expert system is regarded as the embodiment within a computer of a knowledge-based component from an expert skill in such a form that the system can offer intelligent advice or take an intelligent decision about a processing function. A desirable additional characteristic, which many would consider fundamental, is the capability of the system, on demand, to justify its own line of reasoning in a manner directly intelligible to the enquirer. The style adopted to attain these characteristics is ruled based programming [C. Naylor, 1983].This report will attempt to explain an expert system which was written in 4D running on the penny shell. Basically, the penny shell bases its principles on production rules and Markov Algorithm, thus its execution methods ensures that rules always run in strict rule number order. This strict rule order number can be interrupted if a go to rule function is used. It is important to note that these execution methods could also be known as Inference methods.

For a system to be known as a working expert system, it has to first at least at the lowest form demonstrate some form of Intelligence. If you stop any individual on the street and ask him or her, Please kindly define what you mean by Intelligence. Two out of three times, it is guaranteed that you would get the following definitions 1. Someones intelligence is their ability to understand and learn things.2. Intelligence is the ability to think and understand instead of doing things by instinct or automaticallyIf you have taken note, you would notice that both definitions are very different. The first definition relates it to human beings; the second definition has no such prejudice. The second definition could be related to even inorganic things. And also, the second definition also shows a relationship between intelligence and the ability to think.Thinking as defined by the essential English dictionary is the activity of using your brain to consider a problem or to create an idea to solve a problem. Another interesting concept that gives a deeper understanding of Intelligence is that it is the ability to learn and understand, to solve problems and to make decisionsSince humans have this in built ability to use a thought pattern in an intelligent way, can this ability be given to an ordinary machine. Giving an ordinary machine the ability to use a thought pattern in an intelligent way is Artificial Intelligence (AI).The idea of giving machines AI didnt really become popular amongst computer scientist until the late 1940s. In summary, the goal of AI as a computer science is to make machines do things that would require intelligence if done by humans (Boden 1977).Amongst the various questions that came about because of AI, one question has always remained at the forefront. And that question is Can Machines think?. And as usual a straight forward yes answer couldnt be given. But, rather a very fuzzy yes answer would be given.The reason for the very fuzzy yes is simple. Because not every humans abilities are equal, it would be the same as machines not every machine would be able to think as smartly as humans.One man who gave credibility to the ability of machines thinking for themselves is Alan Turing. Turing asked questions which are basically variations of Can machines think? These questions include Is there thought without experience? Is there mind without communication? Is there language without living? Is there intelligence without life?Turing didnt provide answers to these questions; he just simply set about inventing the turing imitation game. This is also known as the turing test. The turing imitation game is designed so as to deceive an interrogator. If a machine can pass the game/test, it could be defined as intelligent. And also, if it passes It could define the intelligent behaviour of a computer as the ability to achieve the human level performance in cognitive tasks [1]The turing test was made up of two phases. In phase 1, shown in the figure 1 below, the interrogator, a man and a woman are each placed in separate rooms and can communicate only via a neutral medium such as a remote terminal. The interrogators objective is to work out who is the man and who is the woman by questioning them. The rules of the game are that the man should attempt to deceive the interrogator that he is the woman, while the woman has to convince the interrogator that she is the woman [1].

Figure 1: Turing test, phase 1

In phase 2, shown in the figure 2 below, the man is replaced by a computer programmed to deceive the interrogator as the man did. It would even be programmed to make mistakes and provide fuzzy answers in the way a human would. If the computer can fool the interrogator as often as the man did, we may say this computer has passed the intelligent behaviour test [1].

Figure 2: Turing Test, phase 2

The main principle behind the turing test is easy to understand, it states that a computer passes the test if an interrogator cannot distinguish a machines response from a humans response. The interrogator does not see, touch or hear the computer and is therefore not influenced by its appearance [1].

However, the interrogator is allowed to ask any questions, even provocative ones in order to aid him distinguish between a human response and a computer response [1]. Since the turing test has been proposed (Alan Turing proposed the test in his paper Computing Machinery and Intelligence in 1950), there have been two reasons why it has stood the test of time and these reasons are The communication medium between a human and a machine is through terminals. This method of communication eliminates any advantages that are in favour of humans. The test is independent of how it will be carried out. This independence includes the interrogator asking questions from any field he or she feels is the best suited for the test.

Artificial Intelligence was founded by three generations of researchers. These researchers are The first work was presented by Warren McCulloch and Walter Pitts in 1943. McCullochs research on the central nervous system resulted in the creation of the model of neurons of the brain. Both also proposed that a model of artificial neural networks in which each neuron was postulated as being in binary state [1].

But their proposal was debunked and disproven; experiments demonstrated that the binary model of neurons was not correct.

The second was presented by Claude Shannon. In 1950, he published a paper. In it, he wrote about chess playing machines, he pointed out that a typical chess game involved about 10 ^ 120 possible moves. Even if a new computer at the time could examine one move per microsecond, it would have taken 3 x 10 ^ 106 years to make its first move. Claude Shannon, with this, was able to demonstrate the need to use heuristics in the search for the solution [1]. The third work was presented by two graduate students, from the Princeton Mathematics Department, Marvin Minsky and Dean Edmonds. Their work was the worlds first neural network computer, which was created in 1951.

Since natural intelligence is a product of evolution, it would only be logical to simulate biological evolution. A surprise which could arise from this idea is the discovery of how living creatures (e.g. babies) are propelled towards a high level of intelligence [1].

An Evolutionary Computational approach to AI is based on the computational models of natural selection and genetics. Evolutionary Computation combines three main techniques genetic algorithms, evolutionary strategies and genetic programming [1].

Genetic Algorithms: The algorithm is used for manipulating artificial Chromosomes i.e. strings of binary digits, using such genetic operations as selection, crossover and mutation. This algorithm is based on a solid theoretical foundation of the schema theorem [1]. Evolutionary Strategies: These were designed specifically for solving parameter optimisation problems in engineering [1]. Genetic Programming: This represents an application of the genetic model of learning to programming. Its aim is to evolve not a coded representation of some problem, but rather a computer code that solves the problem. That is genetic programming generates computer programs as the solution [1].It is important to note that both Genetic Algorithms and Evolutionary Strategies can solve a wide range of problems. They provide robust and reliable solutions for highly complex, non linear search and optimisation problems that previously could not be solved at all [1].

Neural networks enable an expert system to learn, adapt to changes in a problems environment, establish patterns in situations where rules are not known and deal with fuzzy or incomplete information.

However, the disadvantage of neural networks is that these networks lack explanation facilities. And also, training neural networks with current technologies is slow and frequent retraining can cause serious difficulties. For an expert system to deal with vague, imprecise and uncertain knowledge and data, the technology which aids this expert system is Fuzzy Logic [1].

Fuzzy logic is concerned with the use of fuzzy values that capture the meaning of words, human reasoning and decision making. These fuzzy values simply equate human knowledge in a form that accurately reflects an experts understanding of a difficult situation or any bottlenecks [1].

At the heart of a fuzzy logic lies the concept of a linguis