Artificial Intelligence



Similar documents
Predicate logic Proofs Artificial intelligence. Predicate logic. SET07106 Mathematics for Software Engineering

FUNDAMENTALS OF ARTIFICIAL INTELLIGENCE KNOWLEDGE REPRESENTATION AND NETWORKED SCHEMES

æ A collection of interrelated and persistent data èusually referred to as the database èdbèè.

IAI : Knowledge Representation

! " # The Logic of Descriptions. Logics for Data and Knowledge Representation. Terminology. Overview. Three Basic Features. Some History on DLs

Logic in general. Inference rules and theorem proving

Reusable Knowledge-based Components for Building Software. Applications: A Knowledge Modelling Approach

Course Syllabus For Operations Management. Management Information Systems

COMPUTER SCIENCE TRIPOS

A terminology model approach for defining and managing statistical metadata

CSL105: Discrete Mathematical Structures. Ragesh Jaiswal, CSE, IIT Delhi

Artificial Intelligence 2014

Software Engineering. System Models. Based on Software Engineering, 7 th Edition by Ian Sommerville

The CLIPS environment. The CLIPS programming language. CLIPS production rules language - facts. Notes

COURSE DESCRIPTION FOR THE COMPUTER INFORMATION SYSTEMS CURRICULUM

CS510 Software Engineering

2. The Language of First-order Logic

COMP 378 Database Systems Notes for Chapter 7 of Database System Concepts Database Design and the Entity-Relationship Model

Information Theory and Coding Prof. S. N. Merchant Department of Electrical Engineering Indian Institute of Technology, Bombay

Mathematics for Computer Science/Software Engineering. Notes for the course MSM1F3 Dr. R. A. Wilson

Circuits and Boolean Expressions

Relations: their uses in programming and computational specifications

Algorithms, Flowcharts & Program Design. ComPro

Discuss the size of the instance for the minimum spanning tree problem.

Classification of Fuzzy Data in Database Management System

Policy Modeling and Compliance Verification in Enterprise Software Systems: a Survey

Lecture 16 : Relations and Functions DRAFT

Scheduling Shop Scheduling. Tim Nieberg

Algorithm & Flowchart & Pseudo code. Staff Incharge: S.Sasirekha

WOLLONGONG COLLEGE AUSTRALIA. Diploma in Information Technology

Updating Action Domain Descriptions

WHAT ARE MATHEMATICAL PROOFS AND WHY THEY ARE IMPORTANT?

International Journal of Scientific & Engineering Research, Volume 4, Issue 11, November ISSN

Introduction to Logic in Computer Science: Autumn 2006

EFFICIENT KNOWLEDGE BASE MANAGEMENT IN DCSP

Lecture 12: Entity Relationship Modelling

University of Ostrava. Reasoning in Description Logic with Semantic Tableau Binary Trees

Normal Form vs. Non-First Normal Form

Announcements. SE 1: Software Requirements Specification and Analysis. Review: Use Case Descriptions

Chapter 1: Key Concepts of Programming and Software Engineering

Eastern Washington University Department of Computer Science. Questionnaire for Prospective Masters in Computer Science Students

Chapter 6: Programming Languages

Expert Systems : AI Course Lecture 35 36, notes, slides RC Chakraborty, rcchak@gmail.

LONG BEACH CITY COLLEGE MEMORANDUM

Introduction to formal semantics -

2) Write in detail the issues in the design of code generator.

(LMCS, p. 317) V.1. First Order Logic. This is the most powerful, most expressive logic that we will examine.

CS104: Data Structures and Object-Oriented Design (Fall 2013) October 24, 2013: Priority Queues Scribes: CS 104 Teaching Team

II. Conceptual Modeling

Eastern Washington University Department of Computer Science. Questionnaire for Prospective Masters in Computer Science Students

Division of Mathematical Sciences

Big Data Analytics. Rasoul Karimi

Chapter 13: Program Development and Programming Languages

Overview of the TACITUS Project

[Refer Slide Time: 05:10]

The Prolog Interface to the Unstructured Information Management Architecture

Introduction to Conceptual Modeling

Static Analysis and Validation of Composite Behaviors in Composable Behavior Technology

ABET General Outcomes. Student Learning Outcomes for BS in Computing

TECH. Requirements. Why are requirements important? The Requirements Process REQUIREMENTS ELICITATION AND ANALYSIS. Requirements vs.

Semantic Search in Portals using Ontologies

Database Concepts. Database & Database Management System. Application examples. Application examples

Relational model. Relational model - practice. Relational Database Definitions 9/27/11. Relational model. Relational Database: Terminology

Rigorous Software Development CSCI-GA

Jairson Vitorino. PhD Thesis, CIn-UFPE February Supervisor: Prof. Jacques Robin. Ontologies Reasoning Components Agents Simulations

Reverse Engineering of Relational Databases to Ontologies: An Approach Based on an Analysis of HTML Forms

BenInq. BenInq. How It Works. Why? Uses of Expert Systems in Insurance Underwriting Policy Matching Benefit Querying Claim Processing

3. Mathematical Induction

Complexity Theory. IE 661: Scheduling Theory Fall 2003 Satyaki Ghosh Dastidar

Deterministic Discrete Modeling

Foundations of Information Management

School of Computer Science

GCE Computing. COMP3 Problem Solving, Programming, Operating Systems, Databases and Networking Report on the Examination.

Introducing Formal Methods. Software Engineering and Formal Methods

A Platform-Independent Model for Videogame Gameplay Specification

Data Validation with OWL Integrity Constraints

An Object Model for Business Applications

Learning is a very general term denoting the way in which agents:

Lecture 7: NP-Complete Problems

Chapter 13: Program Development and Programming Languages

Model Checking: An Introduction

Integrating Cognitive Models Based on Different Computational Methods

A Review of Data Mining Techniques

Mapping between Levels in the Metamodel Architecture

Chapter 2: Entity-Relationship Model. Entity Sets. " Example: specific person, company, event, plant

The Virtual Assistant for Applicant in Choosing of the Specialty. Alibek Barlybayev, Dauren Kabenov, Altynbek Sharipbay

Cassandra. References:

Curriculum Map. Discipline: Computer Science Course: C++

Dedekind s forgotten axiom and why we should teach it (and why we shouldn t teach mathematical induction in our calculus classes)

CS Master Level Courses and Areas COURSE DESCRIPTIONS. CSCI 521 Real-Time Systems. CSCI 522 High Performance Computing

A Knowledge-based System for Translating FOL Formulas into NL Sentences

High Integrity Software Conference, Albuquerque, New Mexico, October 1997.

Transcription:

Artificial Intelligence ICS461 Fall 2010 1 Lecture #12B More Representations Outline Logics Rules Frames Nancy E. Reed nreed@hawaii.edu 2 Representation Agents deal with knowledge (data) Facts (believe & observe knowledge) Procedures (how to knowledge) Meaning g( (relate & define knowledge) Right representation is critical to success Early realisation of importance in AI Wrong choice can lead to project failure Still an active research area Choosing a Representation For certain problem solving techniques Best representation already known Often a requirement of the technique Or a requirement of the programming language (e.g. Prolog) Examples First order theorem proving first order logic Inductive logic programming logic programs Neural networks learning neural networks Some general representation schemes Suitable for many different (and new) AI applications Some General Representations Logical Representations Production Rules Conceptual graphs, frames Description and Multivalued Logics What is a Logic? A language with concrete rules No ambiguity in representation (may be other errors!) Allows unambiguous communication and processing Very unlike natural languages e.g. English Many ways to translate between languages A statement can be represented in different logics And perhaps differently in same logic Expressiveness of a logic How much can we say in this language? Not to be confused with logical reasoning Logics are languages, reasoning is a process (may use logic) 1

Logic is a Good Representation Fairly easy to do the translation when possible Branches of mathematics devoted to it It enables us to do logical reasoning Tools and techniques come for free Basis for programming languages Prolog uses logic programs (a subset of FOL) λprolog based on HOL Syntax and Semantics Syntax Rules for constructing legal sentences in the logic Which symbols we can use (English: letters, punctuation) How we are allowed to combine symbols Semantics How we interpret (read) sentences in the logic Assigns a meaning to each sentence Example: All lecturers are seven feet tall A valid sentence (syntax) And we can understand the meaning (semantics) This sentence happens to be false (there is a counterexample) The idea is that knowledge is often best understood as a set of concepts that are related to one another. The meaning of a concept is defined by its relationship to other concepts. A semantic network consists of 1. a set of nodes that are 2. connected by labeled arcs. The nodes represent concepts and the arcs represent relations between concepts. Common Semantic Relations There is no standard set of relations for semantic networks, but the following relations are very common: INSTANCE: X is an INSTANCE of Y if X is a specific example of the general concept Y. Example: Elvis is an INSTANCE of Human ISA: X ISA Y if X is a subset of the more general concept Y. Example: sparrow ISA bird HASPART: X HASPART Y if the concept Y is a part of the concept X. (Or this can be any other property) Example: sparrow HASPART tail Inheritance Inheritance is a key concept in semantic networks and can be represented naturally by following ISA links. In general, if concept X has property P, then all concepts that are a subset of X should also have property P. But exceptions are pervasive in the real world! In practice, inherited properties are usually treated as default values. If a node has a direct link that contradicts an inherited property, then the default is overridden. 2

Multiple Inheritance Multiple inheritance allows an object to inherit properties from multiple concepts. Multiple inheritance can sometimes allow an object to inherit conflicting properties. Conflicts are potentially unavoidable, so conflict resolution strategies are needed. Representing Events Jack kidnapped Billy on August 5 Kidnapping Event Kidnap1 perpetrator: Jack victim: Billy date: August 5 Representing Predicates Representing Relations score(bows, Otherguys, 34-8 Karl John Game Instance: Game17 hometeam: Bows Visiting team: Otherguys Score: 34-8 height Height1 greater-than height2 height Non-Logical Representations? Production rules Semantic networks Conceptual graphs Frames Logic representations have restrictions and can be hard to work with Many AI researchers searched for better representations Production Rules Rule set of <condition,action> pairs if condition then action Match-resolve-act cycle Match: Agent checks if each rule s condition holds Resolve: - Multiple production rules may fire at once (conflict set) - Agent must choose rule from set (conflict resolution) Act: If so, rule fires and the action is carried out Working memory: rule can write knowledge to working memory knowledge may match and fire other rules 3

Graphical Representations People draw diagrams all the time, e.g. Causal relationships Graphical Representation Graphs easy to store in a computer To be of any use must impose a formalism And relationships between ideas Jason is 15, Bryan is 40, Arthur is 70, Jim is 74 How old is Julia? Because the syntax is the same We can guess that Julia s age is similar to Bryan s Formalism imposes restricted syntax Graphical representation Links indicate subset, member, relation,... Equivalent to logical statements (usually FOL) Easier to understand than FOL? Specialised SN reasoning algorithms can be faster Example: natural language understanding Sentences with same meaning have same graphs e.g. Conceptual Dependency Theory (Schank) Conceptual Graphs Semantic network where each graph represents a single proposition Concept nodes can be Concrete (visualisable) such as restaurant, my dog Spot Abstract (not easily visualisable) such as anger Edges do not have labels l Instead, conceptual relation nodes Easy to represent relations between multiple objects Frames A frame represents an entity as a set of slots (attributes) and associated values. Each slot may have constraints that describe legal values that the slot can take. A frame can represent a specific entity, or a general concept. Frames are implicitly associated with one another because the value of a slot can be another frame. 4

Frame Representations Example: Frame Representation Semantic networks where nodes have structure Frame with a number of slots (age, height,...) Each slot stores specific item of information When agent faces a new situation Slots can be filled in (value may be another frame) Filling in may trigger actions May trigger retrieval of other frames Inheritance of properties between frames Very similar to objects in OOP Flexibility in Frames Slots in a frame can contain Information for choosing a frame in a situation Relationships between this and other frames Procedures to carry out after various slots filled Default information to use where input is missing i Blank slots: left blank unless required for a task Other frames, which gives a hierarchy Can also be expressed in first order logic Demons One of the main advantages of frames is the ability to include demons to compute slot values. Demon - a function that computes the value of a slot on demand. HUMAN isa: (MAMMAL) mortal: (yes :inheritable yes) cardinality: (6 million :inheritable no) age: (:inheritable yes :demon compute_age) MARY instance: HUMAN gender: FEMALE birthday: 11/04/60 int Compute_Age (frame) return(today- (query birthday slot)); Features of Frame Representations Frames can support values more naturally than semantic nets (e.g. the value 25) Frames can be easily implemented using object-oriented programming techniques. Demons allow for arbitrary functions to be embedded in a representation. But a price is paid in terms of efficiency, generality, and modularity! Inheritance can be easily controlled. Comparative Issues in Knowledge Representation The semantics behind a knowledge representation model depends on the way that it is used (implemented). Notation is irrelevant! Whether a statement is written in logic or as a semantic network is not important -- what matters is whether the knowledge is used in the same manner. Most knowledge representation models can be made to be functionally equivalent. It is a useful exercise to try converting knowledge in one form to another form. From a practical perspective, the most important consideration usually is whether the KR model allows the knowledge to be encoded and manipulated in a natural fashion. 5

Expressiveness of Semantic Nets Some types of properties are not easily expressed using a semantic network. For example: negation, disjunction, and general non-taxonomic knowledge. There are specialized ways of dealing with these relationships, for example partitioned semantic networks and procedural attachment. But these approaches are ugly and not commonly used. Negation can be handled by having complementary predicates (e.g., A and NOT A) and using specialized procedures to check for them. Also very ugly, but easy to do. If the lack of expressiveness is acceptable, semantic nets have several advantages: inheritance is natural and modular, and semantic nets can be quite efficient. Representation & Logic Some wanted non-logical representations Production rules Semantic networks - Conceptual graphs, frames Bt But all can be expressed din first order logic! i! Best of both worlds Logical reading ensures representation well-defined Representations specialised for applications Can make reasoning easier, more intuitive Inheritance Comparison Semantic networks and frames are often used because inheritance is represented so naturally. But rule based systems can also do inheritance Semantic networks (and frames) have an implementation advantage for inheritance because special-purpose algorithms can be used to follow the ISA links. Representation Comparisons Rules are appropriate for some types of knowledge, but do not easily map to others. Semantic nets can easily represent inheritance and exceptions, but are not well-suited for representing negation, disjunction, preferences, conditionals, and cause/effect relationships. Frames allow arbitrary functions (demons) and typed inheritance. Implementation is a bit more cumbersome. Summary Knowledge Representations Logic Rules Frames 6