Download docx - My Intelligent

Transcript

INTELLIGENT INFORMATION SYSTEMS – PARTY PLANNER 2011

1 BY PATRICK CHUDE, PARTY CHOOSEN – HALLOWEEN AND CHRISTMAS PARTIES

INTELLIGENT INFORMATION SYSTEMS – PARTY PLANNER 2011

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. Someone’s 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 automatically

If 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.

2 BY PATRICK CHUDE, PARTY CHOOSEN – HALLOWEEN AND CHRISTMAS PARTIES

INTELLIGENT INFORMATION SYSTEMS – PARTY PLANNER 2011

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 decisions

Since 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 didn’t 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 couldn’t be given. But, rather a “very fuzzy yes” answer would be given.

The reason for the very fuzzy “yes” is simple. Because not every human’s 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 didn’t 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 interrogator’s 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].

3 BY PATRICK CHUDE, PARTY CHOOSEN – HALLOWEEN AND CHRISTMAS PARTIES

INTELLIGENT INFORMATION SYSTEMS – PARTY PLANNER 2011

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 machine’s response from a human’s 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.

4 BY PATRICK CHUDE, PARTY CHOOSEN – HALLOWEEN AND CHRISTMAS PARTIES

INTELLIGENT INFORMATION SYSTEMS – PARTY PLANNER 2011

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. McCulloch’s 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 world’s 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].

5 BY PATRICK CHUDE, PARTY CHOOSEN – HALLOWEEN AND CHRISTMAS PARTIES

INTELLIGENT INFORMATION SYSTEMS – PARTY PLANNER 2011

Neural networks enable an expert system to learn, adapt to changes in a problem’s 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 linguistic variable [1]. These linguistic variables are words similar to an expert system, a fuzzy system makes use of IF – THEN Rules to try to incorporate human knowledge, but these rules are fuzzy such as

IF speed is high THEN stopping distance is long.IF speed is low THEN stopping distance is short.

Benefits derived from a fuzzy logic model in a knowledge – based and decision – support system are:

Improved computational power : Fuzzy rule-based systems perform faster than conventional expert systems and require fewer rules. A fuzzy expert system merges the rules, making them more powerful. Computer Scientist Lotfi Zadeh believes that in a few years most expert systems will use fuzzy logic to solve highly non-linear and computationally difficult problems [1].

Improved cognitive modelling : Fuzzy systems allow the encoding of knowledge in a form that reflects the way experts think about a complex problem. They usually think in such imprecise terms as high and low, fast and slow, heavy and light, and they also use such terms as very often and almost never usually and hardly ever, frequently and occasionally. In order to build conventional rules, we need to define the crisp boundaries for these terms, thus breaking down the expertise into fragments [1].

However, this fragmentation leads to the poor performance of conventional expert systems when they deal with highly complex problems. In contrast, fuzzy expert systems model imprecise information, capturing expertise much more closely to the way it is represented in the expert mind, and thus improve cognitive modelling of the problem [1].

The ability to represent multiple experts : Conventional expert systems are built for a very narrow domain with clearly defined expertise. It makes the system’s performance fully dependent on the right choice of experts. Although a common strategy is to find just one expert, when a more complex expert system is being built or when expertise is not well defined, multiple experts might be needed.

6 BY PATRICK CHUDE, PARTY CHOOSEN – HALLOWEEN AND CHRISTMAS PARTIES

INTELLIGENT INFORMATION SYSTEMS – PARTY PLANNER 2011

Multiple experts can expand the domain, synthesise expertise and eliminate the need for a world-class expert, who is likely to be both very expensive and hard to access. However, multiple experts seldom reach close agreements; there are often differences in opinions and even conflicts. This is especially true in areas such as business and management where no simple solution exists and conflicting views should be taken into account. Fuzzy expert systems can help to represent the expertise of multiple experts when they have opposing views.

Where is all of this engineering, knowledge based at its core, leading to?. Expert, neural and fuzzy systems have now matured and have been applied to a broad range of different problems, mainly in engineering, medicine, finance, business and management [1]. Each technology handles the uncertainty and ambiguity of human knowledge differently, and each technology has found its place in knowledge engineering [1].

They no longer compete; rather they complement each other [1]. A synergy of expert systems with fuzzy logic and neural computing improves adaptability, robustness, fault-tolerance and speed of knowledge-based systems. Besides, computing with words makes them more ‘human’. It is now common practice to build intelligent systems using existing theories rather than to propose new ones, and to apply these systems to real world problems rather than to ‘toy’ problems [1].

Before moving on to the next section, it is important to know the lessons learnt from all of the explanations given above. And these lessons include –

A machine is thought intelligent if it can achieve human-level performance in some cognitive task. To build an intelligent machine, we have to capture, organise and use human expert knowledge in some problem area [1].

The realisation that the problem domain for intelligent machines had to be sufficiently restricted marked a major ‘paradigm shift’ in AI from general purpose, knowledge-sparse, weak methods to domain-specific, and knowledge intensive methods [1].

This led to the development of expert systems – computer programs capable of performing at a human-expert level in a narrow problem area. Expert systems use human knowledge and expertise in the form of specific rules, and are distinguished by the clean separation of the knowledge and the reasoning mechanism. They can also explain their reasoning procedures [1].

These expert systems make up the largest section of Artificial Intelligence applications and these expert systems, which are primarily rule based systems, are able to perform various thought processing tasks through various execution methods. Over a long period of time, the technological field or computer science

7 BY PATRICK CHUDE, PARTY CHOOSEN – HALLOWEEN AND CHRISTMAS PARTIES

INTELLIGENT INFORMATION SYSTEMS – PARTY PLANNER 2011

field dealing with Artificial Intelligence (AI) has grown from an obscure one to an omnipresent one.

And over this period of time, there hasn’t been an agreed upon definition of what AI is. But, a widely accepted definition is –

“Artificial Intelligence is the science of making a computer system behave or respond in a manner that appears to exhibit ‘intelligence’ ” [Miller 84]

In the definition above, you can see the term Intelligence prominently placed or used to evoke a feeling. This feeling could mean if the computer could think like a human.

You could say that the definition above of AI (given in 1984 by Miller) is fair assessment of the subject area – AI. But, I personally think that for a computer to demonstrate that it is intelligent, its demonstrable intelligence should be classified into Association and Cognition. This point is further asserted by the works of Arthur Jensen [1969, 1970 and 1987].

Jensen describes association as conceptual learning i.e. the ability to manipulate and transform inputs (this roughly means the ability to solve a set problem). And also, he defines cognition as the ability to reason and solve problems [A. Jensen 1998].These levels of Intelligence (i.e. both Association and Cognition) have easily been attained by Computers of this generation. Technological advancements like MYCIN, IBM’s Cell Processor and Deep Blue.

Even with the numerous capabilities that Expert Systems have, their underlying principles are, in essence, simple. Principles such as the Markov Algorithm (used as a method of execution in the penny shell), classic production rules – combined with a semantic network (a production rule system is a good forward chaining inference engine), combined with a structured method of representing knowledge allows a computer to simulate trivial human thought patterns.

This report will attempt to show the knowledge acquired during the entirety of the course to design a party planner expert system. This system will try to help individuals adequately plan whatever type of party. This expert system is meant to serve as an aid to help individuals adequately plan for different types of parties. It is important to note that this system is only to be used when planning for a Western Type Party.

8 BY PATRICK CHUDE, PARTY CHOOSEN – HALLOWEEN AND CHRISTMAS PARTIES

INTELLIGENT INFORMATION SYSTEMS – PARTY PLANNER 2011

The area on which this system is based upon is the Party Planning scene. It was chosen because a few members of the team demonstrated interests in the area. This in turn made them domain experts, which also meant that the mining of knowledge or data would be both easy and comprehensive (i.e. there won’t be any collection of redundant data. If there is, it would be very little).

If implemented correctly, the expert system could be very useful in the party planning section of the recreational industry. Deborah Meaden, who has appeared several times on the BBC Two programme Dragon’s Den is known to have become a Multi-Millionaire from the recreational industry. [http://www.bbc.co.uk/dragonsden/dragons/deborahmeaden.shtml] [http://business.timesonline.co.uk/tol/business/specials/rich_list/article3820977.ece]

The aim of the expert system is simply to aid individuals on organising western type parties. To achieve this goal, the following objectives had to be met –

Choosing adequate types of questions to put into the system. These questions have a direct correlation to the rule set that will be used in the penny shell.

Before choosing adequate types of questions, questionnaires were used to get a general understanding of what a particular demographic might do or go through when organising a party. The demographic used were the University of Surrey students. Their ages ranged from 18 and above.

Some of the questions asked were open – ended questions. And also, some even asked what kind of questions would be appropriate for a party planning system.

Determining the average budget for preparing a particular type of party.

Deciding on the criteria to classify the information gotten from the questionnaires.

A template of data was our method of data collection. The template of data will be touch upon in Section 1.31.

Representing the acquired knowledge, based on the agreed upon criteria, in the facts section of our expert system.

Creating our rule sets based on the production rules format.

And finally, testing, debugging and evaluating the built expert system.

9 BY PATRICK CHUDE, PARTY CHOOSEN – HALLOWEEN AND CHRISTMAS PARTIES

INTELLIGENT INFORMATION SYSTEMS – PARTY PLANNER 2011

Part of the strategy for completing this coursework was to divide it into convenient individual parts (i.e. parts that people easily understood). For me, the parties I was allocated were Halloween and Christmas Parties.

Who are the Users?

o Existing: Users of other party planning systems in the market.

o Potential: What would attract potential users, will they easily understand the system.

What are its uses?

o Scale: Will the system be scaleable. And also, will it be temporal dependent. And finally, will it suite a particular geographic location and demographic.

o End Products: Scenario testing (if it suites a suggested party), decision support systems or tools.

What data is needed to fulfil the research aspect of the project? Will the sort after data be available?

Who provides the data?

o Is the information that was provided correct and reliable?

Relationship with other Business Ventures in the recreational industry

o Will the system be interoperable with theirs?

10 BY PATRICK CHUDE, PARTY CHOOSEN – HALLOWEEN AND CHRISTMAS PARTIES

INTELLIGENT INFORMATION SYSTEMS – PARTY PLANNER 2011

Having briefly given an idea of what intelligent systems are, the next step would be to understand what a knowledge based system is. And also, the techniques used by these knowledge based systems to represent the stored or gathered information. There are two definitions of knowledge based systems which I find particularly interesting.

“This is an AI application that uses a database of knowledge about a subject. In time, it is expected that everyday information systems will increasingly become knowledge based and provide users with more assistance than they do today”

[pcmag.com http://www.pcmag.com/encyclopedia_term/0,2542,t=knowledge+based+system

&i=45840,00.asp]

“This is software that uses artificial intelligence or expert system techniques in problem solving processes. It incorporates a store (i.e. database)

of expert knowledge with couplings and linkages designed to facilitate its retrieval in response to specific queries, or to transfer expertise from

one domain of knowledge to another” [businessdictionary.com http://www.businessdictionary.com/definition/knowledge-based-system.html]

As you can see, both concur that a knowledge based system is primarily software. But, what hits it home is the fact that both speak of how expert system techniques, which make use of databases, are used in problem solving. These expert system techniques used for representing data include:

Logic Frames Semantic Networks Production Rules

Relating these expert system techniques to human memory techniques will help give you a better understanding of the terms. Human Beings primarily have two types of long term memories. And these are Declarative and Procedural.

A Declarative Memory is one which can be consciously recalled such as facts, concepts and Events. [Ullman MT. Contributions of memory circuits to language: the declarative/procedural model. Cognition 2004; 92: 231–70] [http://en.wikipedia.org/wiki/Declarative_memory#cite_note-tulving1-1]

A Declarative Memory is further subdivided into two –

11 BY PATRICK CHUDE, PARTY CHOOSEN – HALLOWEEN AND CHRISTMAS PARTIES

INTELLIGENT INFORMATION SYSTEMS – PARTY PLANNER 2011

Semantic Memory: This type of memory stores general factual knowledge that is independent of ones personal experience. [Tulving E. 1972. Episodic and semantic memory. In Organization of Memory, ed. E Tulving, W Donaldson, pp. 381–403. New York: Academic] [http://en.wikipedia.org/wiki/Declarative_memory#cite_note-tulving1-1]

Episodic Memory: This type of memory stores specific events such as the first time someone flies in an aeroplane. If one is to retrieve these memories, it is said that one is mentally reliving past events. It is widely believed that episodic memory is the back bone of Semantic Memory. [Tulving E. 1972. Episodic and semantic memory. In Organization of Memory, ed. E Tulving, W Donaldson, pp. 381–403. New York: Academic] [http://en.wikipedia.org/wiki/Declarative_memory#cite_note-tulving1-1]

The basic principles behind the Declarative Memory are the same as the principles behind Semantic Networks. A Semantic Network simply converts vast volumes of information into valuable and interpretable data. Essentially, a computer-based-semantic network uses metadata (i.e. data describing data) in order to accurately discern the meaning of an information. [http://www.bestpricecomputers.co.uk/glossary/semantic-networks.htm]It would be impossible for a computer to interpret any information without the use of metadata. [http://www.bestpricecomputers.co.uk/glossary/semantic-networks.htm]

Definitions of the six most common kinds of Semantic Networks, courtesy of jfsowa.com, are given below:

1. A Definitional network emphasizes the subtype or is-a relation between a concept type and a newly defined subtype. The resulting network, also called a generalization or subsumption hierarchy, supports the rule of inheritance for copying properties defined for a super type to all of its subtypes. Since definitions are true by definition, the information in these networks is often assumed to be necessarily true.[http://www.jfsowa.com/pubs/semnet.htm]

Figure 3: Conflicting defaults in a definitional network

2. Assertional networks are designed to assert propositions. Unlike definitional networks, the information in an assertional network is

12 BY PATRICK CHUDE, PARTY CHOOSEN – HALLOWEEN AND CHRISTMAS PARTIES

INTELLIGENT INFORMATION SYSTEMS – PARTY PLANNER 2011

assumed to be contingently true, unless it is explicitly marked with a modal operator. Some assertional netwoks have been proposed as models of the conceptual structures underlying natural language semantics. [http://www.jfsowa.com/pubs/semnet.htm]

3. Implicational networks use implication as the primary relation for connecting nodes. They may be used to represent patterns of beliefs, causality, or inferences. [http://www.jfsowa.com/pubs/semnet.htm]

Figure 4: An implicational network for reasoning about wet grass

4. Executable networks include some mechanism, such as marker passing or attached procedures, which can perform inferences, pass messages, or search for patterns and associations. [http://www.jfsowa.com/pubs/semnet.htm]

5. Learning networks build or extend their representations by acquiring knowledge from examples. The new knowledge may change the old network by adding and deleting nodes and arcs or by modifying numerical values, called weights, associated with the nodes and arcs. [http://www.jfsowa.com/pubs/semnet.htm]

13 BY PATRICK CHUDE, PARTY CHOOSEN – HALLOWEEN AND CHRISTMAS PARTIES

INTELLIGENT INFORMATION SYSTEMS – PARTY PLANNER 2011

Figure 5: A neural net

6. Hybrid networks combine two or more of the previous techniques, either in a single network or in separate, but closely interacting networks. [http://www.jfsowa.com/pubs/semnet.htm]

Figure 6: A Hybrid Network – this is a network that isn’t completely centralised or completely distributed [http://us.generation-nt.com/peer-peer-

peer2peer-p2p-file-sharing-internet-review-40573-4.html]

A Procedural Memory is memory that is retrieved and utilized for the execution of the integrated procedures involved in both cognitive and motor skills; an example is reading or tying a lace. This type of memory is executed without the need of a conscious control. Just as Declarative Memory is a form of explicit memory, Procedural Memory is a form of Implicit Memory. [http://psychology.about.com/od/pindex/g/procedural-memory.htm] [http://en.wikipedia.org/wiki/Procedural_memory]

14 BY PATRICK CHUDE, PARTY CHOOSEN – HALLOWEEN AND CHRISTMAS PARTIES

INTELLIGENT INFORMATION SYSTEMS – PARTY PLANNER 2011

An Implicit Memory is one in which previous experiences aid in the performance of a task without any conscious effort. [http://pages.pomona.edu/~rt004747/lgcs11read/Schacter87.pdf] [Schacter, D. L. (1987)."Implicit memory: history and current status". Journal of Experimental Psychology: Learning, Memory, and Cognition, 13, 501-518.] [http://en.wikipedia.org/wiki/Implicit_memory#cite_note-Schacter1987-0]

An Explicit Memory is one in which there is a conscious, intentional recollection of previous experiences to perform a particular task. This type of memory is often associative (i.e. the brain links memories together). [http://www.positscience.com/human-brain/memory/types-of-memory/explicit-memory] [http://en.wikipedia.org/wiki/Explicit_memory#cite_ref-0]

You could say that the principles behind procedural memories bare a similar resemblance to the principles behind Production Rules. Production Rules are a set of rules used by Production Rule Systems to provide a form of Artificial intelligence. Production Rules are made up of two parts –

Sensory Precondition (If statement) Action (Then statement)

[http://www.britannica.com/EBchecked/topic/664352/production-rule]

Production Rules are said to be forward chaining in nature i.e. it is a form of reasoning that starts with what is known and works towards a solution or goal. [http://www.pcmag.com/encyclopedia_term/0,2542,t=forward+chaining&i=43425,00.asp]

Other knowledge representation techniques include filler and slots. And also, Predicate logic. Choosing a knowledge representation technique depends on both the nature of the applications and the choice of the intended users [http://www.learnartificialneuralnetworks.com/ai.html]

For this project, the domain experts chose the type of data that was necessary for the completion of the project. And also, they chose the most efficient method of extracting the data (the way in which data was collected is covered in Section 1.31).

The domain experts for this project are also the knowledge engineers. They are meant to check if the data being collected is relevant and correct. The most important role of these knowledge engineers is the organization of knowledge.

The primary acquisition of data was through questionnaires and interviews. There were other secondary methods of acquiring data and these include web searches and both digital and physical copies of journals and articles.

Not only is the extraction of data important, the ability to generate new pieces of knowledge is also important (i.e. knowledge that can be implemented into Penny). The adequate implementation of the generated knowledge into the penny shell should also be heavily taken into consideration (this is because the slightest human error can cause the program to not run properly).

15 BY PATRICK CHUDE, PARTY CHOOSEN – HALLOWEEN AND CHRISTMAS PARTIES

INTELLIGENT INFORMATION SYSTEMS – PARTY PLANNER 2011

The diagram below illustrates the relationship between a knowledge engineer, a user and an expert system. Knowledge engineers act as middlemen or mediators between the expert system and a user(s). This is because he or she will easily represent whatever information is gotten from users in the expert system.

Figure 7: Knowledge Acquisition for an expert system

Figure 8: Reasoning Strategy used for the completion of the project.

The reasoning strategy used to proceed from the starting point via sub – goals to the final goal while making use of various penny shell components is shown in the figure above (i.e. figure 8). It’s a classic rule – based expert system, albeit with a few modifications.

The first step for the reasoning strategy is the knowledge acquisition; this is the primary task of the domain experts. The data extracted from questionnaires, interviews, etc is entered into the penny shell as static knowledge in the form of

16 BY PATRICK CHUDE, PARTY CHOOSEN – HALLOWEEN AND CHRISTMAS PARTIES

EXPERT SYSTEM

USER OR USERS

KNOWLEDGE ENGINEER

KNOWLEDGE ACQUISITION MODULE

KNOWLEDGE BASE

INFERENCE ENGINE

USER INTERFACE

PARTY PLANNING EXPERT

PENNY INTERFACE

PARTY PLANNER USERS

FACTS OR DATABASE CONTEXT

INTELLIGENT INFORMATION SYSTEMS – PARTY PLANNER 2011

facts. The other type of knowledge which the system makes use of is Dynamic. This ranges from the choice of party the user inputs to the budget he or she has in mind.

If the user enters any irrelevant information into the system, it is supposed to terminate. If not, the next rule fires. The knowledge base, which makes use of the set of facts, from the figure above, is controlled by the inference engine for the penny shell.

Users have two methods of inputting their information. This is either by typing in their information or choosing from a drop down list. To get to the aim of the program, which is how to plan a certain type of party, the user is meant to answer every question that appears. After every question is answered, the user should be able to know whether the amount of money he or she has is enough to host or organise or arrange the type of party he or she has in mind.

The maximum value which the system takes into consideration that is appropriate for hosting or arranging a party is 1000. The currency is assumed to be Pound Sterling, since every member of the team currently lives in the United Kingdom. Since penny is case sensitive, we made sure to include very little open-ended questions; rarely used open-ended questions included questions like the budget of the proposed party. And also, the system is designed only for Western Type parties, parties outside of this scope is not covered.

After the system has terminated, the user can choose to rerun the program.

17 BY PATRICK CHUDE, PARTY CHOOSEN – HALLOWEEN AND CHRISTMAS PARTIES

INTELLIGENT INFORMATION SYSTEMS – PARTY PLANNER 2011

The constructed system operates according to the design principles which were set up for the project. An example is the use of the go to rule functionality. The inclusion of a go to rule functionality enabled the creation of a simple semantic network. This in turn led to the creation headless rules which allowed for the skipping of questions or options by users (they might have found the questions or options to be either unimportant or irrelevant).

Another good strength of the system is the inclusion of a budget checking measure. This checks to see if the user actually has enough money to organize a party. As mentioned above, the default currency is assumed to be Pound Sterling since every member of the team is currently based in the United Kingdom and it is assumed to be widely used in the region. The created expert system caters to a Western Audience; this also means that it also caters only to Western type parties. Parties outside of this scope are not covered.

Penny Shell is case sensitive, the way we avoided this hurdle was the inclusion of very little open – ended questions. And when these questions appeared, we indicated to the user the way he or she should input their information. Example: What is the Budget of your party; please answer only with numerical numbers.

Knowledge which was implemented into the system was based heavily on data gotten from questionnaires and interviews completed by a broad demography of individuals. These ranged from Postgraduates, Non – Students to Undergraduates. From the broad array of individuals, we were able to get the most relevant and reliable information which were both common and important to them. The reliability of the information provided was checked by cross referencing them with other systems currently in the market.

Even though we tried to make the system both simple to understand and operate, it still had its shortcomings. These include –

If the system isn’t looked at comprehensively, it might be passed off as too simplistic. This is because it is forward chaining in its execution/inference methods and might be said to depend too heavily on the go to rule functionality.

Instead of acting as an aid to people who want to organize a party, the system was initially intended to actually tell people, point blank, how to organize a party (even if little information was provided). It was also intended to be like a learning artificial intelligence (like on Amazon’s website).

18 BY PATRICK CHUDE, PARTY CHOOSEN – HALLOWEEN AND CHRISTMAS PARTIES

INTELLIGENT INFORMATION SYSTEMS – PARTY PLANNER 2011

The question that appears next shouldn’t depend on the information provided for a current question – computational dynamism run by a query on top of implemented facts and rules.

There was no use of pictures to either show the products which are going to be used to organize a certain party type or pictures which could illustrate how a certain party type would look like. And also, the system didn’t take into account the age of the user that will be making use of it – persons aged 18 or over or under.

Finally, the expert system focuses too much on Western Type parties. An effort should be made to incorporate other party types. E.g. Traditional Indian Weddings.

The user reviews were slightly better than what we expected. The general consensus was that they (i.e. the users) easily understood how to use the system. And also, users said that inputting values made them more involved with the expert system. Coincidentally, the inputting of values idea was gotten from an individual who we both interviewed and gave a questionnaire to fill out. She said that if users were to key in their values, it would psychologically involve the users more, which in turn makes them more aware that they are actually feeding information into the system, which it would process and produce an output.

A lacking functionality which was spotted by a user is the inability of the penny shell to do any probability calculations. Adding probability functionality in updated versions of the program would definitely increase the degree of complexity of an intended expert system and improve penny’s inference.

The expert system which was created was called “Party Planning”. Before the system was created, two systems were created. The first was called “Practice 1” and the second was called “Practice 2”, these systems were created to get an understanding of how the penny shell works.

“Practice 1” doesn’t work but, “Practice 2” works – the problem is that it doesn’t store the string text that was used to make the system run properly. The following are the questions that were used in the creation of the main expert system, practice 1 and practice 2 (for the project, I worked on the “Halloween” and “Christmas” sections of the project):

1). Would you like a Pumpkin ?

19 BY PATRICK CHUDE, PARTY CHOOSEN – HALLOWEEN AND CHRISTMAS PARTIES

INTELLIGENT INFORMATION SYSTEMS – PARTY PLANNER 2011

Yes / No

2). What style of Pumpkin would you like ?

(this question only pops up if no. 1's answer is Yes)

Friendly, Scary, Silly

3). Would you like Sweets ?

Yes / No

4). What kind of Sweets would you like ?

(this question only pops up if no. 3's answer is Yes)

Chocolates, Lollipops, Strawberry

5). Are you going to use decorations

Yes / No

6). What is the theme of your party ?

Scary, Gory, Ghostly

7). Would you like the decorations to match the theme of your party ?

Yes / No

8). Would you like Activities in your party ?

Yes / No

9). What kind of Activities would you like ?

(this question only pops up if no. 8's answer is Yes)

Picking Apples, Rope Candy, Puicini, Poem Competition

10). Are you planning on having a “big celebration” ?

Yes / No

11). Would you like to have more activities in your party ?

(this question only pops up if no. 10's answer is Yes)

Yes / No

12). Suggestions for extra activities

(this question only pops up if no. 11's answer is Yes)

20 BY PATRICK CHUDE, PARTY CHOOSEN – HALLOWEEN AND CHRISTMAS PARTIES

INTELLIGENT INFORMATION SYSTEMS – PARTY PLANNER 2011

Horse Riding, Skeleton Hunting, Syrup (blood) making

13). Would you like Music at your party ?

Yes / No

14). Would you like the music to match the theme of your party ?

(this question only pops up if no. 13's answer is Yes)

Yes / No

15). What is the budget your party ?

…..........................

16). What is the time of the party ?

…............................

17). Where is the venue of the party ?

…............................

18). Suggestions for decorations

(this question only pops up if no. 7's answer is Yes)

Scary Decorations (writing scripts), Gory Decorations (Fake organs, plastic eyeballs), Ghostly Decorations (fake ghosts, fake sound effects, smokes)

1). What kind of Christmas party are you having?

Corporate, Family, Private, Bespoke (customisable)

2). How many people are being invited?

…...........................

3). What is the venue of the party?

…...........................

4). Would you like decorations at the party ?

Yes / No

5). What is the theme of your party ?

Bespoke, Normal (standardised)

21 BY PATRICK CHUDE, PARTY CHOOSEN – HALLOWEEN AND CHRISTMAS PARTIES

INTELLIGENT INFORMATION SYSTEMS – PARTY PLANNER 2011

6). Would you like the decorations to match the theme of your party ?

Yes / No

7). What is the time of the party ?

…...........................

8). Would you like activities in your party ?

Yes / No

9). What kind of activities would you like ?

(this question only pops up if no. 8's answer is Yes)

Bespoke, Normal (Standardised)

10). Are you planning on having a “Big Celebration” ?

Yes / No

11). Would you like to have more activities in your party ?

(this question only pops up if no. 10's answer is Yes)

Yes / No

12). Suggestions for extra activities

(this question only pops up if no. 11's answer is Yes)

Fun Fair Rides, Casinos, Simulators

13). Would you like Music to be played at your party ?

Yes / No

14). Would you like the music to match the theme of your party ?

(this question only pops up if no. 13's answer is Yes)

Yes / No

15). What kind of decorations would you like ?

(this question only pops up if no. 6's answer is Yes)

Bespoke, Normal (Standardised)

After I creating the questions, i went about creating a flow diagram for both the “Halloween Party” questions and the “Christmas Party” questions. The flow diagram shows the way in which questions are to be asked.

22 BY PATRICK CHUDE, PARTY CHOOSEN – HALLOWEEN AND CHRISTMAS PARTIES

INTELLIGENT INFORMATION SYSTEMS – PARTY PLANNER 2011

23 BY PATRICK CHUDE, PARTY CHOOSEN – HALLOWEEN AND CHRISTMAS PARTIES

INTELLIGENT INFORMATION SYSTEMS – PARTY PLANNER 2011

Figure 9: Flow diagram, Halloween Party

24 BY PATRICK CHUDE, PARTY CHOOSEN – HALLOWEEN AND CHRISTMAS PARTIES

INTELLIGENT INFORMATION SYSTEMS – PARTY PLANNER 2011

Figure 10: Flow diagram, Christmas Party

After all of the questions above were put into the penny shell, the following screenshots show the end results (please note that before practice 2 was

25 BY PATRICK CHUDE, PARTY CHOOSEN – HALLOWEEN AND CHRISTMAS PARTIES

INTELLIGENT INFORMATION SYSTEMS – PARTY PLANNER 2011

initiated, the following were ticked; “Step – fired rules only”, “Open fact status window” and “Backup facts in start condition (allows later restore)” –

Figure 11: party choice

Figure 12: Pumpkin choice

Figure 13: pumpkin style

26 BY PATRICK CHUDE, PARTY CHOOSEN – HALLOWEEN AND CHRISTMAS PARTIES

INTELLIGENT INFORMATION SYSTEMS – PARTY PLANNER 2011

Figure 14: sweet choice

Figure 15: sweet type

Figure 16: Decoration choice

27 BY PATRICK CHUDE, PARTY CHOOSEN – HALLOWEEN AND CHRISTMAS PARTIES

INTELLIGENT INFORMATION SYSTEMS – PARTY PLANNER 2011

Figure 17: theme choice

Figure 18: Decoration_theme

Figure 19: Activities choice

Figure 20: Activity types

28 BY PATRICK CHUDE, PARTY CHOOSEN – HALLOWEEN AND CHRISTMAS PARTIES

INTELLIGENT INFORMATION SYSTEMS – PARTY PLANNER 2011

Figure 21: Big Celebration types

Figure 22: Extra activities choice

Figure 23: Extra Activities suggestions

29 BY PATRICK CHUDE, PARTY CHOOSEN – HALLOWEEN AND CHRISTMAS PARTIES

INTELLIGENT INFORMATION SYSTEMS – PARTY PLANNER 2011

Figure 18: Comments

Figure 24: Music Choice

Figure 25:Music_2_match_theme

30 BY PATRICK CHUDE, PARTY CHOOSEN – HALLOWEEN AND CHRISTMAS PARTIES

INTELLIGENT INFORMATION SYSTEMS – PARTY PLANNER 2011

Question 15 (in Section 3.31) involves an amount that is supposed to be inputted by the user. The rule which handles this operation is called “Budget_of_party”.

Figure 26: The rule Budget_of_party rule description

The rule definition for the rule is shown below –

Figure 27: Rule budget_of_party rule definition

As you can see this rule definition is for when the value that inputted is equal to or less than the value, if the conditions are met. The statement “Your budget is too low to host this party” pops up. If the amount inputted was greater than 1000, another rule definition similar to the one shown handles that situation.

31 BY PATRICK CHUDE, PARTY CHOOSEN – HALLOWEEN AND CHRISTMAS PARTIES

INTELLIGENT INFORMATION SYSTEMS – PARTY PLANNER 2011

The only difference is that equality status changes to “is equal to or greater than” and also the comment that pops up will more positive

The penny shell has two knowledge representation techniques. And these are – Semantic Networks and Production Rules. Because of the presence of Production Rules, you could say that the Penny Shell is a rule based system.

From the definition of an expert system (shown in Section 1.0, given by C. Naylor in 1983), an expert system should be able to come to a conclusion or provide solutions to problems by making use of resources available to it. These resources include both the Semantic Networks and the Production rules mentioned above.

The reasoning process of a Penny Shell is the same as of any rule based system. This process has to first have a Sensory Precondition (IF statement), followed by an Action (THEN statement). This reasoning is Forward Chaining in nature – it can’t work towards a goal without first starting with what is known.

The headless rules which were created allowed for the representation of Semantic Networks. These headless rules gave the expert system the capability of not firing rules sequentially. This capability is very important for systems with a lot of rules and facts.

A feature which could improve the appeal of the penny shell is a Search Functionality. Imagine you have both 5000 rules and facts; currently the only way to sort through them is to physically scroll through them. It would make the creation of the system a lot easier (by significantly lowering the construction time) and improving the user experience.

As mentioned in Section 3.2, there is no way of assigning weight to facts or pieces of knowledge. The weights express the perceived certainty of a fact being true: usually –1 indicates certainly false, +1 indicates definitely true, and intermediate values represent varying degrees of certainty, with 0 meaning unknown. The medical expert system MYCIN used certainty factors, with conjunctions of rules taking the minimum value. The use of certainty factors is similar to probabilistic reasoning but is less formally related to probability theory. [http://www.encyclopedia.com/doc/1O11-certaintyfactor.html]

32 BY PATRICK CHUDE, PARTY CHOOSEN – HALLOWEEN AND CHRISTMAS PARTIES

INTELLIGENT INFORMATION SYSTEMS – PARTY PLANNER 2011

The aim of the project was to create a party planning expert system which could serve as an aid for individuals wanting to organize a party. The information which it provides on the different types of parties will be appealing to a wide range of people. But, the only problem is that it appeals only to Western sensibilities. Example: Consumption of Alcohol during a recreational period, pop-culture-themes for parties, etc.

The minimum requirement, which was making use of static facts and the system’s reliance on the static knowledge base were met. Since the created expert system met this minimum requirement we concluded as a group that it exhibits Intelligence, even though it’s momentary or partial.

But if it were truly intelligent, like IBM’s Watson, it should be able to store any information (which will be interpreted as variables) entered into it. Not only should it be able to store information manually fed into it by a human, it should be able to locate any information by itself, determine if that information is relevant then, automatically store that relevant information.

Even though we had gotten a lot of information/data from the questionnaires, there were still a few that weren’t implemented. One of the reasons for this is that we couldn’t determine how to represent it in the penny shell – this isn’t referring to data that is Certainty – factor – based. When writing up the facts and rules for the expert system, the data gotten from the questionnaires and interviews were based on what was common amongst the individuals and also, the relevance and reliability of the sources (this also refers to other secondary methods of data acquisition e.g. journals, articles, web – searches, etc).

When evaluating the system, I find it easier to classify it in three ways – Functionality

Implementation

Usability

The system successfully performed according to the minimum requirement, which is mentioned above, set up by the group. The basic task was simply planning a party.

33 BY PATRICK CHUDE, PARTY CHOOSEN – HALLOWEEN AND CHRISTMAS PARTIES

INTELLIGENT INFORMATION SYSTEMS – PARTY PLANNER 2011

The knowledge gained from both the primary and secondary methods of data acquisition were implemented correctly. We know this because there weren’t any human errors found.

Since the individuals who used our system clearly understood it, the system’s usability was deemed a success. What further amazed us was that individuals without a Computer Engineering background easily made use of the system.

But one thing that I would like to properly implement in future iterations of the Party Planning Expert System is Certainty Factor. An Expert System which makes excellent use of certainty factor is MYCIN. During its creation, it didn’t make use of any theoretical model; its model had to be acquired from extensive interviewing of experts, who in turn acquired them from textbooks, other experts, and direct experience of case. [ARTIFICIAL INTELLIGENCE: A MODERN APPROACH BY STUART J. RUSSELL AND PETER NORVIG (2003) ---> http://artificial-intell.blogspot.com/2005/04/artificial-intelligence-in-nutshell.html]

This led to the creation of the MYCIN rules, the rules had to reflect the uncertainty called certainty factors which seemed (at the time) to fit well with how doctors assessed the impact of evidence on the diagnosis. [ARTIFICIAL INTELLIGENCE: A MODERN APPROACH BY STUART J. RUSSELL AND PETER NORVIG (2003) ---> http://artificial-intell.blogspot.com/2005/04/artificial-intelligence-in-nutshell.html]

34 BY PATRICK CHUDE, PARTY CHOOSEN – HALLOWEEN AND CHRISTMAS PARTIES

INTELLIGENT INFORMATION SYSTEMS – PARTY PLANNER 2011

BIBLIOGRAPHYThe text book “Artificial intelligence: a guide to intelligent systems”, written by “Michael Negnevitsky” was used for research purposed in the writing of this report. Segments created in Patrick Chude’s expert system (i.e. practice 2 and budget) were used in the creation of the group’s expert system (i.e. party planning). Group members include “Yufan Fan” and “Qianru He”.

REFERENCE1. Negnevitsky, M. 2005, Artificial intelligence: a guide to intelligent

systems (2nd edition), Harlow, England, New York: Addison-Wesley.

35 BY PATRICK CHUDE, PARTY CHOOSEN – HALLOWEEN AND CHRISTMAS PARTIES