A Framework For Development and Implementation of Knowledge Base Systems For Organizations

Download as pdf or txt
Download as pdf or txt
You are on page 1of 14

A FRAMEWORK FOR DEVELOPMENT AND IMPLEMENTATION OF KNOWLEDGE BASE SYSTEMS FOR ORGANIZATIONS.

A PROJECT PROPOSAL BY MUPUYA EMMANUEL TEL: 0779222337 [email protected] 14/11/2011

Title: A framework for development and implementation of knowledge base systems for organizations.

CHAPTER 1 1.0 Introduction In the information and communication technology era today, a large number of processes are automated and generate a number of large databases. Such large databases in business contain staggering amounts of raw data. These data must be looked at to find new relationships, emerging lines of the business, and ways for improving it. Trying to make sense out of this data requires a knowledgeoriented perspective, which is not easily achieved through either statistical process or even multidimensional visualization alone (Cox, 2005). The potential validity or usefulness of data elements or patterns of data elements may be different for various users. The relevance of such items is highly contextual, personal, and changing continuously. According to Donovan (2003), making retrieved data or a description of data patterns generally understandable is also highly problematic. Moreover, the structure and size of the data set or database and the nature of the data itself make the procedure more complex and tedious. This leads to the need necessity to develop systems that can analyze data and give expert opinions about situations. It is evident that knowledge-based systems techniques and applications are one of the key technologies of the new economy of the new millennium. Since artificial intelligence (AI) was named and focused on at the Dartmouth Conference in the summer of 1956, a variety of intelligent techniques have been initiated to perform intelligent activity. Among them, knowledge-based techniques are the most important and successful branch. The technology and accumulation of knowledge have shifted enterprises away from the traditional labor-intensive format to the present knowledge-intensive format. Decision-making and other processes have become somewhat more intelligent and intensively knowledge-dependent (Cornelius T. Leondes, 2003). Knowledge base systems contribute abundantly to improving the quality of the knowledge and the process of its acquisition. In this paper focus is placed on the development of knowledge based systems that can be utilized by organizations for their data processing and information handling needs.

1.1 Background Knowledge based system (originally expert systems) originated in the 1960s and the fields in which they are used include chemistry, geology, medicine, banking and investments, and insurance. Several systems were developed to help in problem solving in the various fields of study. Among these systems include;

MYCIN (1976) Identification of bacteria in blood and urine samples and prescription of antibiotics; DENDRAL (1960s and 1970s) Identification of molecular structure of organic compounds; PLANT/ds. Diagnosing diseases in soybeans PROSPECTOR (1978) Provides advice on mineral prospecting MACSYMA (1968 - present) Symbolic solutions to mathematical problems

From the time of the conception, knowledge base systems are perceived and defined differently ranging from expert to expert. Here are some of the definitions provided for knowledge based systems.

A knowledge-based system (KBS) is a software system that contains a significant amount of knowledge in an explicit, declarative form. The area of KBS development has matured over the past two decades. It started with first-generation expert systems with a single flat knowledge base and a general reasoning engine, typically built in a rapid-prototyping fashion. This has now been replaced by methodological approaches that have many similarities with general software engineering practice. KBS development is best seen as software engineering for a particular class of application problems. These applications problems typically require some form of reasoning to produce the required results. In current business practice there is an increasing need for such systems, due to progression of information technology in our daily work. Some typical applications are systems for assessing loans in a bank, for job-shop scheduling in a factory, for configuring an elevator, and for diagnosing problems in a production line.

Knowledge-Based Systems (KBS) are productive tools of Artificial Intelligence (AI) working in a narrow domain to impart quality, effectiveness, and knowledge-oriented approach in decision making process. Being a product of fifth generation computer technology, KBS possess characteristics like (Efraim, 1993): providing a high intelligence level; 3

assisting people to discover and develop unknown fields; offering vast knowledge base; aiding management activities; solving social problems in better way; acquiring new perceptions by simulating unknown situations; offering significant software productivity improvement; and reducing cost and time to develop computerized systems.

Knowledge based systems(KBS) are Artificial Intelligence based tools that work on a knowledge base for effective decision making in more human oriented way using the expert knowledge stored in it. (Priti &Rajendra.2010)

An Expert System (or KBS) is a type of computer application program that makes decisions or solves problems in a particular field, such as finance or medicine, by using knowledge and analytical rules defined by experts in the field. (Microsoft Encarta, 2009)

In other words from the definitions stated above it can clearly concluded that a knowledge based system is a software that uses store knowledge, in a knowledge base, to effect or provide solutions to problems and help in making of decisions. Using logical statements a knowledge bases system can be described using the expression; KBS = | | Expert Knowledge Common Sense | | which conveys a meaning that a KBS uses knowledge extracted from experts to implement its problem solving techniques with no regard to common sense.

1.2 Problem statement In this age of information, knowledge is a very important asset in an organization thus it vital to handle and present it in a reliable efficient and consistent manner. This proposal seeks to provide a suitable means to this ends using knowledge base systems.

1.3 Objectives 1.3.1 Main Objective To assess a way of solving the kinds of problems that normally requires human experts. Typical examples: medical diagnosis, financial analysis, factory production scheduling.

1.3.2 Specific Objectives To find ways of retaining knowledge in an organization. To establish a method of aiding management activities. To identify the most reliable approach of providing consistent solutions to a given problem that is providing consistent decisions to the same situation.

1.4 Scope Although knowledge based systems are widely used in a variety of principle i.e. medicine, military, mining, chemistry and geology in this case we will focus on its application in organizations for handling of expert knowledge such that it can be used by other individuals for consultancy and research.

1.5 Significance This project aims at seeing to it that the advantages of knowledge based systems can be put to good use. Generally with the implementation of knowledge base systems the weaknesses of human experts are accounted for. Whereas Knowledge based systems are not meant to replace human experts, they are designed to work hand in hand to improve efficiency.

CHAPTER 2

2.0 Literature review With the increase of processing capabilities of computers, knowledge processing techniques began to develop. The rapid development of technology in both hardware and software lead towards high degree of expectations from the computing support provided through information and communication technology. In this situation only the data and information processing is not sufficient to quench the thirst of users. KBS use has already been started and researchers are traversing the field of advanced computing models, techniques and research trends of the KBS. (Priti &Rajendra.2010)

One of the main components of KBS is the knowledge base, in which domain knowledge, knowledge about knowledge, factual data, procedural rules, business heuristics, and so on are available. The inference engine is another component, which infers new knowledge and utilizes existing knowledge for decision-making and problem solving. Explanation/reasoning and self-learning are two more components to improve acceptability and scope of the system. These components also provide justification for the decision taken. Additionally, a user interface is available to interact with users in more friendly way. Typical relational database management systems deal with data stored in predefined format in one or more databases/tables. These systems do not deal with knowledge and/or decision processing and do not include features like: capability to add powers to the solution and concentrate on effectiveness; transfer of expertise, use of expertise in decision making, self-learning, and explanation; mainly symbolic manipulation; learning by case/mistakes; ability to deal with partial and uncertain information; and work for narrow domain in a proactive manner.

The figure shows position of the KBS in the well-known data pyramid along with its general structure.

Figure: Data pyramid(Tuthill) and KBS

In a Multi-agent System Architecture, KBS can be adopted for functionality. The term agent is loosely defined. However, an agent can be referred to as a component of software and/or hardware, which is capable of acting exactly like a user in order to accomplish tasks on behalf of its user. KBS tools used as agents are autonomous, co-operative, and able to learn themselves. A multi-agent system can be considered as a loosely coupled network of problem solver entities that work together to find answers to problems that are beyond the individual capabilities or knowledge of each entity (Durfee, Lesser, & Corkill, 1989; Sajja, 2005).

In Uganda, research has been done for the implementation of KBS in the medical sector. In their study of Maternal Health Review Uganda Freddie Ssengooba et al.2003, mentioned among their specific objectives to create a knowledge base on health systems and maternal health services in Uganda for policy and management of health services and the HSDP(Health Systems Development Programme).

The Knowledge Base Population (KBP) shared task, conducted as part of the NIST Text Analysis Conference, aims to address and evaluate these capabilities, and bridge the IE(Information extraction and QA(Question Answering) communities to promote research in discovering facts about entities and expanding a knowledge base with these facts. KBP is done through two separate subtasks, Entity Linking and Slot Filling; in 2010, 23 teams submitted results for one or both sub-tasks. 7

For Law applications Nienke den Haan and Joost Breuker in A TRACTABLE JURIDICAL KBS* FOR APPLYING AND TEACHING TRAFFIC REGULATIONS explain that Intelligent tutoring systems allow law students to ask questions, learn the tricks of the legal trade and experiment freely with the regulation and world knowledge bases. In the IT-tool the model of the student's knowledge of the regulations and validations is updated according to her/his progress. Misconceptions of regulations are met by comparing the student model with the rules from the regulation KB. Mistakes in juridical problem solving are either on the priority-rules matters or are spotted when the student-model is compared to an expert-model. Expert problem solving models are acquired by having lawyers or other legal experts tackle traffic law problems.

Knowledge-based expert systems collect the small fragments of human know how into a knowledge base, which is used to reason through a problem, using the knowledge that is appropriate. An important advantage here is that within the domain of the knowledge base, a different problem can be solved using the same program without reprogramming efforts. Moreover, expert systems could explain the reasoning process and handle levels of confidence and uncertainty, which conventional algorithms do not handle (Giarratano and Riley, 1989). Some of the important advantages of expert systems are as follows: ability to capture and preserve irreplaceable human experience; ability to develop a system more consistent than human experts; minimize human expertise needed at a number of locations at the same time (especially in a hostile environment that is dangerous to human health); solutions can be developed faster than human experts.

The knowledge base stores all relevant information, data, rules, cases, and relationships used by the expert system. A knowledge base can combine the knowledge of multiple human experts. A rule is a conditional statement that links given conditions to actions or outcomes. A frame is another approach used to capture and store knowledge in a knowledge base. It relates an object or item to various facts or values. A frame-based representation is ideally suited for objectoriented programming techniques. Expert systems making use of frames to store knowledge are also called frame-based expert systems.

The construction of a KBS poses some specific problems. A central problem that needs to be tackled by a methodology for KBS development is the acquisition and representation of knowledge. This activity is usually called knowledge engineering, although some people use this term for the whole process of KBS construction.(P-H. Speel 1 et al, 2010)

CHAPTER 3

3.0 Methodology Steps in the expert systems development process include determining the actual requirements, knowledge acquisition, constructing expert system components, implementing results, and formulating a procedure for maintenance and review. Knowledge acquisition is the most important element in the development of expert system (Niwa, Sasaki and Ihara, 1988). Knowledge could be obtained by interviewing domain experts and/or learning by experience. Very often people express knowledge as natural language (spoken language), or using letters or symbolic terms. There exist several methods to extract human knowledge. Cognitive Work Analysis (CWA) and the Cognitive Task Analysis (CTA) provide frameworks to extract knowledge. The CWA is a technique to analyze, design, and evaluate the human computer interactive systems (Vicente, 1999). The CTA is a method to identify cognitive skill, mental demands, and needs to perform task proficiency (Militallo and Hutton, 1998). This focuses on describing the representation of the cognitive elements that defines goal generation and decision-making. It is a reliable method for extracting human knowledge because it is based on the observations or an interview. The developers of knowledge-based applications to need following: knowledge representation languages that express the structure of the given application effectively (i.e., formally, concisely, naturally, etc.); knowledge organization tools that allow for the safe and efficient handling of large amounts of complex knowledge structures; methodologies and environments through which the customer can create, maintain and query knowledge bases efficiently and effectively. support for the re-use of existing hardware and software facilities. In general, knowledge bases can be characterized by the degree to which they offer the above facilities. For example, Brachman and Levesque [BL86] define (the content of) a knowledge base as the set of nonruled-out possibilities. If the knowledge base is empty, everything is possible.

Knowledge base system overview The knowledge base: contains "domain knowledge," normally provided by human experts 10

is typically very specialized for a particular problem domain is often encoded as IF-THEN rules may incorporate heuristics or probabilities is a valuable commodity

Building, validating, and maintaining a knowledge base is a skill (art) called knowledge engineering

The reasoning mechanism: takes descriptions from the user about the problem to be solved requests additional information from the user as needed interprets the knowledge base to make inferences, draw conclusions, and ultimately give advice explains its reasoning to the user(how were the conclusions reached?) is sometimes called an inference engine

How the rules are produced. Test cases are selected. The knowledge engineer encodes the rules (in LISP) and tests them with the test cases. The expert reviews the test results and modifies or adds rules to handle the cases that are incorrectly diagnosed Looping continues until the expert is satisfied

How to test performance. Additional different cases are analyzed 1) by human experts and 2) by KBS The diagnoses are compared and about 90% should match to same degree of severity and about 100% should match to within one degree of severity

Efforts used are about 50 hours by the expert and 400 hours by the knowledge engineer The rules are inserted into an existing expert system

11

OBSERVATIONS made from development of KBS. Human experts are often unaware of how they reach conclusions The expert usually knows more than he/she is aware of knowing The knowledge brought to bear by the expert is often experiential, heuristic, and uncertain General problem-solvers (domain independent) are too weak for building real-world, high performance systems The behavior of the best problem solvers (humans) is weak and shallow except in areas of specialization Expertise in one specialization area usually does not transfer well to other areas

Weak vs. strong methods: Weak methods Domain-independent, general purpose (example: GPS) Strong methods Domain-specific, knowledge-rich (examples: knowledge-based systems)

Conclusions Knowledge-based systems are ways to capture and use the knowledge of human experts. Knowledge-based systems need a knowledge base and a reasoning mechanism. IF-THEN rules are common, but other knowledge representations are possible (e.g. semantic nets) Machine learning methods can help with large knowledge bases.

3.2 Sources of data Books Books provide a considerable amount of information on the topic. They will be used to provide tips and techniques on the specifications and rules used.

Experts These will be helpful for the knowledge inserted into the knowledge base and the rules used in the problem solving mechanisms Users 12

In the development of any system or tool, it is very necessary to include the users since they are the direct beneficiaries. User provide the requirements they need from the system to be developed.

Internet There are tons of information available over the internet such as current trends, new methods and implementations which can be integrated in the system to be developed t make it better.

Requirements specification Most expert systems are developed using specialized software tools called shells. These shells come equipped with an inference mechanism (backward chaining, forward chaining, or both), and require knowledge to be entered according to a specified format. One of the most popular shells widely used throughout the government, industry, and academia is the CLIPS (CLIPS, 2004). CLIPS is an expert system tool that provides a complete environment for the construction of rule- and/or object-based expert systems. CLIPS provides a cohesive tool for handling a wide variety of knowledge with support for three different programming paradigms: rule-based, objectoriented, and procedural. CLIPS is written in C for portability and speed and has been installed on many different operating systems without code changes.

Additional software especially programming languages are needed to develop interfaces for user interaction with the system. These include JAVA, pHp, MySQL and many other depending on the designers needs.

13

Index Terminologies used


Data- The raw digital material, e.g. a Morse signal --- Information- Interpreted data, e.g., the message SOS Knowledge- Assigns a purpose and/or action to information, e.g., SOS is an emergency signal that requires an immediate response in the form of a rescue action. Knowledge-based system - A software system with an explicit, declarative description of knowledge for a certain application. Knowledge system - Synonym for knowledge-based system. Expert system - Old term for knowledge-based system. Should not be used because it may give rise to wrong expectations. In general, a knowledge based system is not intended to replace an expert but to support an expert. Domain- Some area of interest, e.g. a production line, a medical discipline or banking services. Task - A piece of work that needs to be done. Some typical tasks encountered are diagnosis, assessment, and planning. A business process is composed out of a collection of tasks to achieve a business objective. Agent -An executor of a task, typically either a human or a software system. Application -The context in which an agent executes a task in a particular domain. Artificial Intelligence (AI) - the study and engineering of intelligent machines capable of performing the same kinds of functions that characterize human thought. (Microsoft Encarta, 2009)

Bibliography Conceptual Modelling for Knowledge-Based Systems P-H. Speel 1, A. Th. Schreiber 2, W. van Joolingen 2, G. van Heijst 3, G.J. Beijer 4 ), 2010. Microsoft Encarta 2009. 1993-2008 Microsoft Corporation. All rights reserved. Deriving Expectations to Guide Knowledge Base Creation. Jihie Kim and Yolanda Gil,2010 Mylopoulos, J., On Knowledge Base Management Systems. The Creation, Care, and Feeding of a Knowledge Base: Practical Advice, Jonathan Bolte. McGraw-Hill. Waterman, Donald A. A Guide to Expert Systems, 1986. Niwa, K., Sasaki, K. and Ihara, H. (1988) An Experimental Comparison of Knowledge Representation Schemes, in Principles of Expert Systems, (Eds A., Gupta and E.B., Prasad), IEEE Press, New York (pp. 133140). Efraim, T. (1993). Decision support and expert systems (3rd ed.). NY: Macmillan Publishing Company. Cox, E. (2005). Fuzzy modeling and genetic algorithms for data mining and exploration. CA: Morgan Kaufmann Publications. The Foundation for Legal Knowledge Systems Editors: J.A.P.J. Breuker &R.V. De Mulder &J.C. Hage Militallo, L.G., Hutton, R.J.B. (1998) Applied Cognitive Task Analysis (ACTA): A Practitioners Toolkit for Understanding Cognitive. Ergonomics, 41(11), 16181642. Vicente, K.J. (1999) Cognitive Work Analysis: Towards Safe, Productive, and Healthy ComputerBased Work, Lawrence Erlbaum Associates, Inc. Press, USA. Maternal Health Review Uganda, Authors: Freddie Ssengooba & Stella Neema & Anthony Mbonye & Olive Sentubwe & Virgil Onama HSD/WP/04/03

14

You might also like