Knowledge-Based - Systems ; Rajendra Arvind Akerkar Chairman, Technomathematics Research Foundation and Senior Researcher, Western Norway Research institute Priti Srinivas Sajja Sardar Patel University JONES A N D BARTLETT PUBLISHERS Sudbury, Massachusetts BOSTON TORONTO LONDON SINGAPORE Contents Preface Chapter 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 xvii Introduction to Knowledge-Based Systems Natural and Artificial Intelligence Testing the Intelligence 1.2.1 Turing Test 1.2.2 Weakness of the Turing Test 1.2.3 Chinese R o o m Experiment Application Areas of Artificial Intelligence 1.3.1 Mundane Tasks 1.3.2 Formal Tasks 1.3.3 Expert Tasks Data Pyramid and Computer-Based Systems 10 1.4.1 Data 13 1.4.2 Information 14 1.4.3 Knowledge 15 1.4.4 Wisdom and Intelligence 17 1.4.5 Skills Versus Knowledge 17 Knowledge-Based Systems 18 Objectives of KBS 18 Components of KBS 19 Categories of KBS 20 1.8.1 Expert Systems 21 1.8.2 Database Management Systems in Conjunction with an Intelligent User Interface 21 1.8.3 Linked Systems 22 1.8.4 CASE-Based Systems 22 1.8.5 Intelligent Tutoring Systems 22 Difficulties with the KBS 23 1.9.1 Completeness of Knowledge Base 23 1.9.2 Characteristics of Knowledge 23 vi CONTENTS 1.10 Chapter 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.9 2.10 2.11 2.12 2.13 1.9.3 Large Size of Knowledge Base 23 1.9.4 Acquisition of Knowledge 24 1.9.5 Slow Learning and Execution 24 Warm-Up Questions, Exercises, and Projects 25 Knowledge-Based Systems Architecture 29 Source of the Knowledge 29 Types of Knowledge 30 2.2.1 Commonsense and Informed Commonsense Knowledge 30 2.2.2 Heuristic Knowledge 30 2.2.3 Domain Knowledge 30 2.2.4 Metaknowledge 31 2.2.5 Classifying Knowledge According to Its Use 31 2.2.6 Classifying Knowledge According to Its Nature 31 Desirable Characteristics of Knowledge 33 Components of Knowledge 33 2.4.1 Facts 33 2.4.2 Rules 34 2.4.3 Heuristics 34 Basic Structure of Knowledge-Based Systems 34 Knowledge Base 35 Inference Engine 36 2.7.1 Modus Ponens 36 2.7.2 Modus Tollens 37 2.7.3 Forward Chaining 38 2.7.4 Backward Chaining 38 2.7.5 ForwardVersus Backward Chaining 39 2.7.6 Conflict Resolution Strategies for Rule-Based Systems 42 Self-Learning 42 Reasoning 42 Explanation 43 Applications 43 2.11.1 Advisory Systems 43 2.11.2 Health Care and Medical Diagnosis Systems 44 2.11.3 Tutoring Systems 44 2.11.4 Control and Monitoring 44 2.11.5 Prediction 44 2.11.6 Planning 45 2.11.7 Searching Larger Databases and Data Warehouses 45 2.11.8 Knowledge-Based Grid and Semantic Web 45 Knowledge-Based SheU 45 Advantages of Knowledge-Based Systems 46 2.13.1 Permanent Documentation of Knowledge 46 2.13.2 Cheaper Solution and Easy Availability of Knowledge 46 CONTENTS 2.14 2.15 Chapter 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 2.13.3 Dual Advantages of Effectiveness and Efficiency 47 2.13.4 Consistency and Reliability 47 2.13.5 Justification for Better Understanding 47 2.13.6 Self-Learning and Ease of Updates 47 Limitations of Knowledge-Based Systems 48 2.14.1 Partial Self-Learning 48 2.14.2 Creativity and Innovation 48 2.14.3 Weak Support of Methods and Heuristics 48 2.14.4 Development Methodology 49 2.14.5 Knowledge Acquisition 49 2.14.6 Structured Knowledge Representation and Ontology Mapping 50 2.14.7 Development of Testing and Certifying Strategies and Standards for Knowledge-Based Systems 50 Warm-Up Questions, Exercises, and Projects 51 Developing Knowledge-Based Systems 55 Nature of Knowledge-Based Systems 55 Difficulties in KBS Development 55 3.2.1 High Cost and Effort 56 3.2.2 Dealing with Experts 56 3.2.3 The Nature of the Knowledge 56 3.2.4 The High Level of Risk 56 Knowledge-Based Systems Development Model 58 Knowledge Acquisition 60 3.4.1 Knowledge Engineer 60 3.4.2 Domain Experts 60 3.4.3 Knowledge Elicitation 60 3.4.4 Steps of Knowledge Acquisition 60 Existing Techniques for Knowledge Acquisition 62 3.5.1 Reviewing the Literature 62 3.5.2 Interview and Protocol Analysis 62 3.5.3 Surveys and Questionnaires 63 3.5.4 Observation 63 3.5.5 Diagram-Based Techniques 63 3.5.6 Generating Prototypes 63 3.5.7 Concept Sorting 63 Developing Relationships with Experts 64 Sharing Knowledge 64 3.7.1 Problem Solving 65 3.7.2 Talking and Storytelling 65 3.7.3 Supervisory Style 65 Dealing with Multiple Experts 65 3.8.1 Handling Individual Experts 66 vii viii CONTENTS 3.9 3.10 3.11 3.12 3.13 3.14 3.15 3.16 Chapter 4.1 4.2 4.3 3.8.2 Handling Experts in Hierarchical Fashion 66 3.8.3 Small-Group Approach 66 Issues with Knowledge Acquisition 67 Updating Knowledge 67 3.10.1 Self-Updates 67 3.10.2 Manual Updates by Knowledge Engineer 67 3.10.3 Manual Updates by Experts 68 Knowledge Representation 68 Factual Knowledge 70 3.12.1 Constants 70 3.12.2 Variables 70 3.12.3 Functions 70 3.12.4 Predicates 71 3.12.5 Well-Formed Formulas 71 3.12.6 First-Order Logic 71 Representing Procedural Knowledge 72 3.13.1 Production Rules 72 3.13.2 Semantic Networks 73 3.13.3 Frames 75 3.13.4 Scripts 76 3.13.5 Hybrid Structures 76 3.13.6 Semantic Web Structures 79 Users of Knowledge-Based Systems 80 Knowledge-Based System Tools 80 3.15.1 С Language Integrated Production System (CLIPS) 3.15.2 Java Expert System Shell (JESS) 85 Warm-Up Questions, Exercises, and Projects 90 82 Knowledge Management 95 Introduction to Knowledge Management 95 Perspectives of Knowledge Management 96 4.2.1 Technocentric 96 4.2.2 Organizational 97 4.2.3 Ecological 97 What Drives Knowledge Management? 97 4.3.1 Size and Dispersion of an Organization 97 4.3.2 Reducing Risk and Uncertainty 98 4.3.3 Improving the Quality of Decisions 98 4.3.4 Improving Customer Relationships 98 4.3.5 Technocentric Support 98 4.3.6 Intellectual Asset Management and Prevention of Knowledge Loss 4.3.7 Future Use of Knowledge 99 99 CONTENTS 4.4 4.5 4.6 4.7 4.8 4.9 4.10 4.11 4.12 4.13 4.14 4.3.8 Increase Market Value and Enhance an Organization's Brand Image 99 4.3.9 Shorter Product Cycles 99 4.3.10 Restricted Access and Added Security 99 Typical Evolution of Knowledge Management within an Organization 100 4.4.1 Ad-hoc Knowledge 100 4.4.2 Sophisticated Knowledge Management 100 4.4.3 Embedded Knowledge Management 100 4.4.4 Integrated Knowledge Management 100 Elements of Knowledge Management 100 4.5.1 People and Skills 101 4.5.2 Procedures 102 4.5.3 Strategy and Policy 102 4.5.4 Technology 102 The Knowledge Management Process 102 4.6.1 Knowledge Discovery and Innovation 103 4.6.2 Knowledge Documentation 104 4.6.3 Knowledge Use 104 4.6.4 Knowledge Sharing Through Pull and Push Technologies 104 Knowledge Management Tools and Technologies 104 4.7.1 Tools for Discovering Knowledge 104 4.7.2 Tools for Documenting Knowledge 105 4.7.3 Tools for Sharing and Using Knowledge 106 4.7.4 Technologies for Knowledge Management 108 Knowledge Management Measures 111 Knowledge Management Organization 112 Knowledge Management Roles and Responsibilities 113 4.10.1 Chief Knowledge Officer (CKO) 114 4.10.2 Knowledge Engineer (KE) 114 4.10.3 Knowledge Facilitator (KF) 114 4.10.4 Knowledge Worker (KW) 114 4.10.5 Knowledge Consultant (КС) 115 Knowledge Management Models 115 4.11.1 Transaction Model 116 4.11.2 Cognitive Model 116 4.11.3 Network Model 117 4.11.4 Community Model 117 Models for Categorizing Knowledge 117 4.12.1 Knowledge Spiral Model 117 4.12.2 Knowledge Management Model 118 4.12.3 Knowledge Category Model 118 Models for Intellectual Capital Management 118 Socially Constructed Knowledge Management Models 119 ix x CONTENTS 4.15 4.16 4.17 4.18 4.19 Chapter 5.1 5.2 5.3 5.4 5.5 5.6 5.7 5.8 5.9 5.10 5.11 5.12 5.13 5.14 5.15 5.16 Techniques to Model Knowledge 119 4.15.1 CommonKADS 120 4.15.2 Protege 2000 122 K-Commerce 123 Benefits of Knowledge Management 123 4.17.1 Knowledge-Related Benefits 124 4.17.2 Organizational and Administrative Benefits 4.17.3 Individual Benefits 124 Challenges of Knowledge Management 124 Warm-Up Questions, Exercises, and Projects 125 124 Fuzzy Logic 129 Introduction 129 Fuzzy Logic and Bivalued Logic 130 5.2.1 Fuzzy Versus Probability 130 Fuzzy Logic and Fuzzy Sets 131 Membership Functions 132 5.4.1 Fuzzification 133 5.4.2 Defuzzification 133 Operations on Fuzzy Sets 134 5.5.1 Intersection of Fuzzy Sets 134 5.5.2 Union of Fuzzy Sets 134 5.5.3 Complements of Fuzzy Sets 134 5.5.4 Equality of Fuzzy Sets 135 Types of Fuzzy Functions 135 5.6.1 Quasi-Fuzzy Membership Functions 135 5.6.2 Triangular Fuzzy Membership Functions 135 5.6.3 Trapezoidal Fuzzy Membership Function 136 Linguistic Variables 136 5.7.1 Linguistic Hedges 137 Fuzzy Relationships 138 Fuzzy Propositions 142 5.9.1 Fuzzy Connectives 142 Fuzzy Inference 144 Fuzzy Rules 144 Fuzzy Control System 145 Fuzzy Rule-Based System 147 5.13.1 Models of Fuzzy Rule-Based Systems 147 Type-1 and Type-2 Fuzzy Rule-Based Systems 147 5.14.1 T2 FS Membership Functions 148 Modeling Fuzzy Systems 149 Limitations of Fuzzy Systems 150 CONTENTS 5.17 5.18 Chapter 6.1 6.2 6.3 6.4 6.5 6.6 6.7 6.8 6.9 6.10 6.11 6.12 6.13 6.14 Chapter 7.1 7.2 7.3 7.4 Applications and Research Trends in Fuzzy Logic-Based Systems Warm-Up Questions, Exercises, and Projects 152 Agent-Based Systems 157 Introduction 157 What Is an Agent? 158 Characteristics of Agents 159 Advantages of Agent Technology 161 Agent Typologies 162 6.5.1 Collaborative Agent 162 6.5.2 Interface Agent 163 6.5.3 Mobile Agent 163 6.5.4 Information Agent 166 6.5.5 Hybrid Agent 166 Agent Communication Languages 167 Standard Communicative Actions 169 Agents and Objects 169 Agents, AI, and Intelligent Agents 171 Multiagent Systems 173 6.10.1 Layered Architecture of a Generic Multiagent System Knowledge Engineering-Based Methodologies 178 6.11.1 MAS-CommonKADS 179 6.11.2 DESIRE 180 Case Study 180 6.12.1 Partial Discharge Diagnosis Within a GIS 180 6.12.2 Intelligent Agents for GIS Monitoring 181 Directions for Further Research 184 Warm-Up Questions, Exercises, and Projects 184 150 174 Connectionist Models 189 Introduction 189 7.1.1 Advantages and Disadvantages of Neural Networks 190 7.1.2 Comparing Artificial Neural Networks with the von Neumann Model Biological Neurons 192 Artificial Neurons 192 Neural Network Architectures 194 7.4.1 Hopfield Model 194 7.4.2 Learning in a Hopfield Network Through Parallel Relaxation 195 7.4.3 Perceptrons 195 7.4.4 Perceptron Learning Rule 198 7.4.5 Fixed-Increment Perceptron Learning Algorithms 198 7.4.6 Multilayer Perceptrons 200 7.4.7 Back-Propagation Algorithms 201 191 xi xii CONTENTS 7.5 7.6 7.7 7.8 7.9 Chapter 8.1 8.2 8.3 8.4 8.5 8.6 8.7 8.8 8.9 8.10 8.11 8.12 8.13 Chapter 9.1 9.2 9.3 Learning Paradigms 205 Other Neural Network Models 207 7.6.1 KohonenMaps 207 7.6.2 Probabilistic Neural Networks 208 Integrating Neural Networks and Knowledge-Based Systems Applications for Neural Networks 210 7.8.1 Applications for the Back-Propagation Model 211 Warm-Up Questions, Exercises, and Projects 212 Genetic Algorithms 215 Introduction 215 Basic Terminology 216 Genetic Algorithms 218 Genetic Cycles 219 Basic Operators of a Genetic Algorithm 219 8.5.1 Mutation 220 8.5.2 Crossover 220 8.5.3 Selection 222 Function Optimization 223 8.6.1 Stopping Criteria 226 Schema 226 8.7.1 Schema Defined 227 8.7.2 Instance, Defined Bits, and Order of Schema 227 8.7.3 The Importance of Schema Results 227 Ordering Problems and Edge Recombination 228 8.8.1 Traveling Salesperson Problem 228 8.8.2 Solutions to Prevent Production of Invalid Offspring 8.8.3 Edge Recombination Technique 229 Island-Based Genetic Algorithms 230 Problem Solving Using Genetic Algorithms 230 Bayesian Networks and Genetic Algorithms 232 Applications and Research Trends in GA 233 Warm-Up Questions, Exercises, and Projects 236 Soft Computing Systems 239 Introduction to Soft Computing 239 Constituents of Soft Computing 240 Characteristics of Soft Computing 243 9.3.1 Simulation of Human Expertise 9.3.2 Innovative Techniques 243 9.3.3 Natural Evolution 243 9.3.4 Model-Free Learning 243 243 209 229 CONTENTS 9.4 9.5 9.6 9.7 9.8 9.9 9.10 9.11 Chapter 10 10.1 10.2 10.3 10.4 xiii 9.3.5 Goal-Driven 244 9.3.6 Extensive Numerical Computations 244 9.3.7 Dealing with Partial and Incomplete Information 244 9.3.8 Fault Intolerance 244 Neuro-Fuzzy Systems 244 9.4.1 Fuzzy Neural Networks 246 9.4.2 Cooperative Neuro-Fuzzy Model 246 9.4.3 Concurrent Neuro-Fuzzy Model 246 9.4.4 Hybrid Neuro-Fuzzy Model 247 Genetic-Fuzzy Systems 247 9.5.1 Genetic Algorithms Controlled by Fuzzy Logic 248 9.5.2 Fuzzy Evolutionary Systems 248 9.5.3 Evolving Knowledge Bases and Rule Sets 250 Neuro-Genetic Systems 251 9.6.1 Neural Network Weight Training 253 9.6.2 Evolving Neural Nets 254 Genetic-Fuzzy-Neural Networks 257 Chaos Theory 259 9.8.1 Basic Constructs 259 9.8.2 Hybridization 262 Rough Set Theory 263 9.9.1 Pawlak's Information System 263 9.9.2 Rough Sets 265 9.9.3 Rough Logic 267 9.9.4 Rough Models 268 9.9.5 Rough-Set-Based Systems 268 Applications of Soft Computing 270 Warm-Up Questions, Exercises, and Projects 272 Knowledge-Based Multiagent System Accessing Distributed Database Grid: An E-Learning Solution 277 Introduction and Background 277 10.1.1 E-learning Defined 277 10.1.2 Major Components of E-learning 278 10.1.3 Objectives of E-learning 279 10.1.4 Advantages of E-learning 279 Existing E-learning Solutions: Work Done So Far 279 Requirements for an Ideal E-learning Solution 280 10.3.1 Quality Parameters for an Ideal E-learning Solution 281 Toward a Knowledge-Based Multiagent Approach 283 10.4.1 Objectives of a Knowledge-Based Multiagent E-learning Solution 284 10.4.2 Introduction to Multiagent Systems 284 10.4.3 Advantages of a Knowledge-Based Multiagent Approach for E-learning 285 xiv CONTENTS 10.5 10.6 10.7 10.8 Chapter 11 11.1 11.2 11.3 11.4 11.5 11.6 11.7 11.8 11.9 11.10 11.11 11.12 11.13 11.14 11.15 Chapter 12 12.1 12.2 12.3 12.4 System Architecture and Methodology 286 10.5.1 System Agents 287 10.5.2 Interaction Between Agents 288 10.5.3 Middleware Services 288 Knowledge Representation and System Output Results of the Experiment 291 10.7.1 Advantages Achieved 292 Conclusion 292 289 Knowledge-Intensive Learning: Diet Menu Planner 297 Introduction 297 Case Retrieval 299 11.2.1 The Identify Features 299 11.2.2 Matching 299 Case Reuse 300 Case Revision 301 Case Retention 301 Organization of Cases in Memory 302 DietMaster 303 11.7.1 General Menu-Planning Process for Diabetic Patients 304 11.7.2 The DietMaster Architecture 305 Knowledge Model 308 Representation of Different Knowledge Types 308 11.9.1 Case Structure 310 11.9.2 General Knowledge 310 11.9.3 Rules 311 11.9.4 Procedures 314 Problem Solving in DietMaster 316 Integrated Reasoning in DietMaster 317 Problem Solving and Reasoning Algorithm 319 The Learning Process 319 11.13.1 The Learning Algorithm 319 Feedback on Diet Plan 320 Conclusion 322 Natural Language Interface: Question Answering System Introduction 323 12.1.1 Open-Domain Question Answering 327 12.1.2 Closed-Domain Question Answering 328 Natural Language Interface to Structured Data 328 Natural Language Interface to Unstructured Data 331 Different Approaches to Language 334 323 12.4.1 Symbolic (Rule-Based) Approach 335 12.4.2 Empirical (Corpus-Based) Approach 335 12.4.3 Connectionist Approach (Using a Neural Network) Semantic-Level Problems 336 Shallow Parsing 338 12.6.1 Semantic Symmetry 338 12.6.2 Sentence Patterns and Semantic Symmetry 339 12.6.3 An Algorithm 340 Ambiguous Modification 341 Conclusion 344 Index 347 336 ... Dual Advantages of Effectiveness and Efficiency 47 2.13.4 Consistency and Reliability 47 2.13.5 Justification for Better Understanding 47 2.13.6 Self-Learning and Ease of Updates 47 Limitations... Ontology Mapping 50 2.14.7 Development of Testing and Certifying Strategies and Standards for Knowledge-Based Systems 50 Warm-Up Questions, Exercises, and Projects 51 Developing Knowledge-Based Systems... Slow Learning and Execution 24 Warm-Up Questions, Exercises, and Projects 25 Knowledge-Based Systems Architecture 29 Source of the Knowledge 29 Types of Knowledge 30 2.2.1 Commonsense and Informed