Knowledge Based Systems - ICS 2405
Course Overview
- ICS 2405 Knowledge Based Systems course focuses on artificial intelligence and knowledge-based systems, emphasizing program development within specific application domains.
- Topics include AI techniques, case studies for system development principles, knowledge representation, and acquisition, with hands-on experience in building expert systems.
- Aims to develop computer programs competent in cognitive tasks and computational models of human intelligence within Cognitive Science.
- Learning outcomes include understanding knowledge-based systems representation, automatic reasoning, and inductive/deductive learning, with the ability to implement small knowledge-based systems.
Assessment
- Assignments: 20% (online submission)
- CAT: 20% (written, at JKUAT main campus or approved centers)
- Final Examination: 60% (written, at JKUAT main campus or approved centers)
Key Concepts
- Artificial Intelligence (AI): Making computer systems that mimic human intelligence, including perception, natural language processing, reasoning, problem-solving, and learning.
- Knowledge-Based Systems (KBS): Software systems using explicit knowledge representation and reasoning mechanisms for high-level problem-solving.
- Knowledge Engineering: Developing KBS, including knowledge acquisition, representation, and validation.
- Inference: Drawing conclusions from facts and rules.
- Knowledge Representation: Structuring knowledge for AI systems.
Types of Intelligence
- General
- Linguistic-Verbal
- Logical-Mathematical
- Musical
- Spatial
- Intrapersonal
- Interpersonal
- Naturalist
- Bodily-Kinesthetic
AI History
- 1943: McCulloch & Pitts - Boolean circuit model of the brain
- 1950: Turing's "Computing Machinery and Intelligence"
- 1950s: Early AI programs (e.g., Samuel's checkers, Newell & Simon’s Logic Theorist)
- 1956: Dartmouth meeting - "Artificial Intelligence" term adopted
- 1966–74: AI discovers computational complexity
- 1969–79: Early development of knowledge-based systems
- 1980–88: Expert systems industry boom
- 1988–93: Expert systems industry decline (“AI Winter”)
- 1985–95: Neural networks regain popularity
- 1988–: Resurgence of probabilistic methods; Nouvelle AI (ALife, GAs, soft computing)
Turing Test
- Tests a computer's ability to exhibit human-like intelligence.
- Requires:
- Natural language processing
- Knowledge representation
- Reasoning
- Learning and adaptation
Characteristics of AI
- Symbolic Processing: Manipulating symbols rather than numbers.
- Heuristics: Using rules of thumb for problem-solving.
- Inferencing: Reasoning with facts and rules.
- Pattern Matching: Describing objects based on qualitative features.
- Knowledge Processing: Managing facts, concepts, and relationships.
- Knowledge Bases: Using collected knowledge for problem-solving.
Advantages of AI
- Permanent and consistent.
- Easy to duplicate and disseminate.
- Can be less expensive than human intelligence.
- Faster execution of certain tasks.
Components of Knowledge Based Systems
- Knowledge Base: Contains domain knowledge.
- Inference Engine: Reasoning mechanism.
- User Interface: Communication between user and KBS.
- Explanation Facilities: Explains reasoning.
- Learning Facilities: Allows system to learn.
Knowledge Engineering Process
- Knowledge acquisition
- Knowledge Validation
- Knowledge Representation
- Inferencing
- Explanation
Types of Knowledge Based Systems
- Expert Systems: Mimic decision-making.
- Neural Networks: Model brain functions, pattern recognition.
- Case Based Reasoning: Learn from past experiences.
- Fuzzy Logic Systems: Handle uncertain knowledge.
Knowledge Acquisition
- Extracting knowledge from experts and converting it for computer use.
- Characteristics: experiential, descriptive, qualitative, undocumented, changing.
- Process:
- Identification
- Conceptualization
- Formalization
- Implementation
- Testing
Players in KBS Development
- Domain Expert: Provides expertise.
- Knowledge Engineer: Designs and builds the system.
- Programmer: Implements the system.
- Project Manager: Manages the project.
- End-User: Uses the system.
Knowledge Representation
- Framework for storing and manipulating knowledge.
- Uses: learning, retrieval, reasoning.
- Schemes: Natural language, logic, production rules, semantic networks, frames, etc.
Logic Representation
- Uses syntax, semantics, and proof theory.
- Types: Propositional, Predicate, Fuzzy, Temporal, Description Logics.
Semantic Networks
- Represent knowledge using interconnected nodes and arcs.
- Nodes: concepts, entities, attributes, events, values.
- Arcs: Relationships between concepts.
Frames
- Represent stereotyped information.
- Features: Object attributes and values.