overview of expert systems

78
Overview of Expert Systems Sudeep Marwaha Division of Computer Applications, IASRI [email protected]

Upload: mandel

Post on 24-Feb-2016

41 views

Category:

Documents


0 download

DESCRIPTION

Overview of Expert Systems . Sudeep Marwaha Division of Computer Applications, IASRI [email protected]. Expert System of Extension. Developed By : Indian Agriculture Research Institute & Indian Agricultural Statistics Research Institute . INTRODUCTION. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Overview of Expert Systems

Overview of Expert Systems

Sudeep MarwahaDivision of Computer Applications,

[email protected]

Page 2: Overview of Expert Systems

Developed By :Indian Agriculture Research

Institute &

Indian Agricultural Statistics Research Institute

Expert System of Extension

Page 3: Overview of Expert Systems

INTRODUCTION This Project is meant to provide required information and expert advice to the farmers and extension workers at Krishi Vigyan Kendra’ s according to their needs & available resources. For example: - •On the basis of symptoms supplied by the farmer, diseases affecting the crop can be detected •Which practices should be adopted according to the geographical locations or climate for a better yield, etc.

Page 4: Overview of Expert Systems

OBJECTIVESTo categorize agriculture in sub-

areas & collect relevant information of these areas to feed into database

To make decision rules to process the information.

To design & develop the web based expert system in extension.

To provide required information to the farmers and extension workers to take decisions before starting the agricultural enterprise.

Page 5: Overview of Expert Systems

Developed By :Division of Computer Applications

Indian Agricultural Statistics Research Institute

AgriDaksh

Page 6: Overview of Expert Systems

Expert System of Maize– Collaborated with Directorate of Maize Research– DMR Scientists are domain experts– ESE is a base technology– Enhanced Features

• System has a new look and personalized homepage• Credit is given to the scientist and institution for the added

information at the individual entity level e.g. for each disease, insect, agronomic practice, variety etc.

• Maize Products Module• More featured user/farmer feedback module• Enhanced Information Validation Control• Support for Audio and Video Files

Page 7: Overview of Expert Systems

Home Page

Page 8: Overview of Expert Systems

Technology

It is a Rule Based Expert System. It is a Web based System. It has Java Expert System Shell (JESS)

as an alternative to AI Programming Language (like LISP, Prolog).

It is incremental or upgradeable in nature as it is built in Java.

Open to new technologies like Semantic Web.

Page 9: Overview of Expert Systems

METHODOLOGYThis Project is mainly divided into

2 parts: -Knowledge Acquisition &

Formulation of Decision Rules i.e. Collection of Agricultural Information of some selected crops from authentic sources & their Storage in the Knowledge Base( as Facts & Rules).

Development of the Web Based User Interface.

Page 10: Overview of Expert Systems

KNOWLEDGE ACQUISITION

Selected Areas: ICAR-Agroclimatc Region 4, (Ludhiana, Karnal, Gurgaon, Hisar, Delhi, Anand, etc.)

Selected Crop: Paddy, Pea, Mustard, Tomato, Gladiolus, Mushroom, Mango.

Continued...

Page 11: Overview of Expert Systems

Knowledge Acquisition Process

KNOWLEDGE ACQUISITION

Technical & Extension Bulletins

Knowledge Engineer

Text Books

Domain Expert

Know--ledge Base

Research

FindingsData, Problems, Question

Knowledge, Concepts, Solutions

Facts

Structured Knowledge

Page 12: Overview of Expert Systems

ARCHITECTUREFront End (through Web Browser)

(made in HTML, Java Script)Knowledge Acquisition & Explanatory Interface

Application Logic Layer(Java Server Pages)

Inference Engine Layer(Java Expert System

Shell)

Knowledge Base (Database Layer: SQL Server)

n Different Layers of Architectural Components

1

2

4

3

Page 13: Overview of Expert Systems

ARCHITECTURAL COMPONENTS

Knowledge Base contains Facts & Rules

about some specialized knowledge domain

(Example: Crop Diseases).

Java Server Pages are used here. Server Side Scripting language meant to receive user’ s input, then processes it according to logic underneath & responds back to the user.

1

2

Page 14: Overview of Expert Systems

ARCHITECTURAL COMPONENTS

Inference Engine accepts User’s input Queries & Responses and uses this dynamic information with static knowledge present in the Knowledge base in form of facts & rules to derive a conclusion.

Front End has been designed using HTML/DHTML and validations are put through using JavaScript.

3

4

Page 15: Overview of Expert Systems

Features• One System for all crops.• Ability to Add New Crops.• Location Specific Variety Information.• Ability to Define Knowledge Model for Crops Online.• Comprehensive Plant Protection Module.

– Diseases, – Insects, – Weeds,– Nematodes, – Physiological Disorders.

• Cost Benefit Analysis among Varities.• Ability for Domain Experts to define problems online and create

decision trees to solve the problems.• Powerful Administrative Module. • Full Featured Online Help.

Page 16: Overview of Expert Systems

Add New Crops

Page 17: Overview of Expert Systems

Knowledge Model for Crops

Page 18: Overview of Expert Systems

Economic Attributes

Page 19: Overview of Expert Systems
Page 20: Overview of Expert Systems
Page 21: Overview of Expert Systems
Page 22: Overview of Expert Systems
Page 23: Overview of Expert Systems
Page 24: Overview of Expert Systems

Crop Specific Disease Information

Page 25: Overview of Expert Systems
Page 26: Overview of Expert Systems

Add New Insect

Page 27: Overview of Expert Systems

Add New Insect

Page 28: Overview of Expert Systems

Insect Image Updating

Page 29: Overview of Expert Systems

• Ontology based Expert System

New Initiatives

Page 30: Overview of Expert Systems

What is Ontology?• Controlled vocabulary that describes

objects and the relations between them.

Has grammar for using the vocabulary terms to express something meaningful.

Together with set of individual instances of classes constitutes a Knowledgebase.

Classes describe concepts in the domain.

Page 31: Overview of Expert Systems

Ontology Based Expert System

• In Rule-based systems, in order to simulate the human reasoning process, a vast amount of knowledge needed to be stored in the knowledgebase (Rules and Facts).

• In an Ontology Based Expert System domain knowledge is stored in ontology.

• Ontology allows better way of representation of knowledge and tools are available for its easy creation.

• Ontology is a part of Semantic Web Technologies and its use can help in building more scalable and multi agent based systems.

Page 32: Overview of Expert Systems

Advantages of OBES • It is easy to maintain as only the central server

needs to be maintained.

• All the data and user transactions are captured in a single central database.

• It can be quickly deployed.

• It works irrespective of the operating system of the user.

• It can be used by the user or Web Service client or software agent.

• Domain experts can dynamically update their knowledge in ontology.

Page 33: Overview of Expert Systems

TECNOLOGY REVIEW

Page 34: Overview of Expert Systems

XML• Allows users to define their own elements.• Primary purpose to help information

systems share structured data.• Clear, simple syntax and unambiguous

structure .• Offers many ways to check the quality of

document.• Basic syntax for one element is:• <el_name

attrname=“attr_value”>el_content</el_name>

Page 35: Overview of Expert Systems

RDF• Encoding knowledge for the

semantic web.• Builds on existing XML and URI

technologies.• URIs used to identify resources and

make statements about them.• Statement consist of RDF triples.

Page 36: Overview of Expert Systems

RDF Triple

[resource] [property] [value]Crop  affectedBy Disease

[subject] [predicate] [object]

Crop affectedBy Disease

Page 37: Overview of Expert Systems

RDF Tags• Defined triples can be encoded in RDF/XML.• RDF/XML syntax:

rdf:Description - define a Triple.rdf:about – define subject of triple.Properties are defined by their URI as tag using

xml namespace.Value of property tag can be plain/typed literal

or a resource.rdf:resource – defines value of a property if it is a

resource.rdf:datatype – defines data type of literals .

• Only for describing resources not for specifying the semantics

Page 38: Overview of Expert Systems

RDFSDescribe groups of related RDF resources

and the relationships between themDefines allowable properties that can be

assigned to RDF resourcesAllows creating classes of resources that

share common propertiesResources defined as instances of classesClass is a resource Any class can be a subclass of another

38

Page 39: Overview of Expert Systems

RDFSRDFS tags:

rdfs:Class : define a class in RDFS.rdfs:subClassOf : assign a class its

parent class.rdf:Property :define a property .rdfs:subPropertyOf : assign a property

its parent property.rdfs:domain and rdfs:range : schema

properties to describe application specific properties.

rdfs:Resource : RDFS defines all the classes as subclass of this class

39

Page 40: Overview of Expert Systems

Web Ontology Language (OWL)

Builds upon RDF and RDFSUses XML to indicate hierarchies and

relationships between different resourcesHas three sub languages: OWL Lite, OWL

DL, and OWL Full

Page 41: Overview of Expert Systems

Need for OWL over RDFSClasses can be defined as Boolean

combinations of other classes .

It can be stated that the two classes (with different URI) are same.

Cardinality restrictions can be specified for properties.

It can be specified that a property is transitive, symmetric, Functional, inverseOf, or InverseFunctional Property.

Page 42: Overview of Expert Systems

Java Server Pages (JSP)• Enables rapid development of platform

independent Web-based applications.

• Separates the user interface from the underlying dynamic content.

• Uses XML-like tags that encapsulate the logic that generates the content for the page.

• JSPs are compiled into JavaServlets .

Page 43: Overview of Expert Systems

JENA• Java framework for building Semantic

Web applications.

• It provides a programmatic environment for RDF, RDFS and OWL, including a rule-based inference engine.

• An ontology model is an extension of the Jena RDF model.

Page 44: Overview of Expert Systems

JENA Interface• Model: a set of statements.

• Statement: a triple of {R,P,O}.

• Resource: subject, URI.

• Property: “characterstic” of resource.

• Object: may be a resource or a literal.

• Literal: non-nested “object”.

• Container: special resource, collection of things.

Page 45: Overview of Expert Systems

Protégé• Free, open-source platform which provides tools to

construct domain models and knowledge-based applications .

• Supports the creation, visualization, and manipulation of ontologies .

• Protégé-OWL is tightly integrated with Jena.

Page 46: Overview of Expert Systems

Protégé•Protégé platform supports two main ways of

modeling ontologies.

•The Protégé-Frames editor enables users to build and populate ontologies that are. frame-based.

•The Protégé–OWL editor enables users to build ontologies for the Semantic Web in particular in the W3C's Web Ontology Language (OWL).

Page 47: Overview of Expert Systems

ProtégéThe Protégé-OWL editor enables users to:

Load and save OWL and RDF ontologies.

Edit and visualize classes, properties, and restrictions .

Define logical class characteristics as OWL expressions.

Edit OWL individuals.

Page 48: Overview of Expert Systems

Creating a subclass ( Cereals ) of owl:Thing.

Page 49: Overview of Expert Systems

Adding restrictions for class diseases

Page 50: Overview of Expert Systems

All the Object properties defined for crop ontology

Page 51: Overview of Expert Systems

Creating an individual of class Nematodes

Page 52: Overview of Expert Systems

Description Logics• Description Logics are a family of class-based

knowledge representation formalisms.

• Characterized by Use of various constructors to build complex classes from

simpler ones, An emphasis on the decidability of key reasoning

problems, Provision of sound, complete and (empirically) tractable

reasoning services.

Page 53: Overview of Expert Systems

Description Logics Contd..

• The standard technique for specifying the meaning of a DL is via a model theoretic semantics.

• A model consists of a domain ( often written as ΔI) and an interpretation function (often written as ·I)

Page 54: Overview of Expert Systems

Reasoning• The basic inference on concept expressions in

DL is subsumption (written as C ⊆ D ).

• Subsumption checks whether the first concept always denotes a subset of the set denoted by the second one.

• Another inference on concept expressions is concept satisfiability.

• Satisfiability is the problem of checking whether a concept expression does not necessarily denote the empty concept.

Page 55: Overview of Expert Systems

OWL-DL Reasoning• OWL Reasoner provide at least the

“standard” set of Description Logic inference services, namely:

Realization,

Concept satisfiability

Classification

Consistency checking

Page 56: Overview of Expert Systems

Explanation of some commonly used terms in DL

jargonAbbr Stands for

Description

ABox

TBox

KB

Assertion Box

Terminological Box

Knowledge Base

Component that contains assertions about individuals, i.e. OWL facts such as type , property value, equality or inequality assertions.

Components that contains axioms about classes, i.e. Owl axioms such as subclass, equivalent class or disjointness axioms.

A combination of an ABox and a TBox ,i.e. a complete Owl ontology.

Page 57: Overview of Expert Systems

Pellet• Pellet has been the first reasoner to

support all of OWL-DL.

• It offers panoply of features including conjunctive query answering, rule support etc.

• Pellet seems to be closer to the expressiveness needed by the OBES.

Page 58: Overview of Expert Systems

Ontology Based Expert System

Page 59: Overview of Expert Systems

Ontology Based Expert System

• In earlier systems, a vast amount of knowledge was stored in the knowledgebase as rules.

• Rules were extracted manually and stored in the expert system.

• In our OBES, domain knowledge is stored in ontology, which is easy to create using available GUI editors.

Page 60: Overview of Expert Systems

N-tier Architecture of OBESUSER INTERFACE

(Web Browser)

WEB SERVER

JSP (Web Container)

Internet

OWL

PELLET

JENA

KNOWL-EDGE BASE

LOGIN INFORMAT-

ION

DATABASE SERVER

Page 61: Overview of Expert Systems

OBES contd..• OBES have the advantage of distributive

development and maintaining of knowledgebase over traditional expert systems.

• The application has been implemented in Java and Java Server Pages (JSP).

• The application allows users to: Classify the crop ontology and checking its Consistency.

Page 62: Overview of Expert Systems

Pest and Disease identification in Crops

In order to validate the Presented model we have created crop ontology. The following section explains the classes, properties and relation between classes and properties in crop ontology.

Page 63: Overview of Expert Systems

Window showing class hierarchy

Page 64: Overview of Expert Systems

Window showing object properties

Page 65: Overview of Expert Systems

Window showing Data Property

Page 66: Overview of Expert Systems

Disease and Pest identification using

OBES• Ontology based Expert system is designed

keeping easy and convenient user access

• Most interaction is through simple form, checkboxes and radio buttons etc.

• The screen shots are presented ahead.

Page 67: Overview of Expert Systems

Window showing user home page

Page 68: Overview of Expert Systems

Functionalities of OBES• After logging in, user can perform certain

operations such as:

Query ontology using SPARQL syntax

Check the consistency of the ontology

View the class hierarchy and

Diagnose the crop diseases and insect or pest.

Page 69: Overview of Expert Systems

Disease Diagnosis module

Page 70: Overview of Expert Systems

Window showing first question for Disease diagnosis

Page 71: Overview of Expert Systems

Window showing second question for Disease diagnosis

Page 72: Overview of Expert Systems

Window showing third question for Disease diagnosis

Page 73: Overview of Expert Systems

Window showing fourth question for Disease diagnosis

Page 74: Overview of Expert Systems

Window showing fifth question for Disease diagnosis

Page 75: Overview of Expert Systems

Window showing sixth question for Disease diagnosis

Page 76: Overview of Expert Systems

Window showing seventh question for Disease diagnosis

Page 77: Overview of Expert Systems

Window showing final result after Disease diagnosis

Page 78: Overview of Expert Systems

Thank you!