overview of expert systems
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 PresentationTRANSCRIPT
Developed By :Indian Agriculture Research
Institute &
Indian Agricultural Statistics Research Institute
Expert System of Extension
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.
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.
Developed By :Division of Computer Applications
Indian Agricultural Statistics Research Institute
AgriDaksh
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
Home Page
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.
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.
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...
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
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
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
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
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.
Add New Crops
Knowledge Model for Crops
Economic Attributes
Crop Specific Disease Information
Add New Insect
Add New Insect
Insect Image Updating
• Ontology based Expert System
New Initiatives
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.
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.
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.
TECNOLOGY REVIEW
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>
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.
RDF Triple
[resource] [property] [value]Crop affectedBy Disease
[subject] [predicate] [object]
Crop affectedBy Disease
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
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
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
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
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.
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 .
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.
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.
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.
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).
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.
Creating a subclass ( Cereals ) of owl:Thing.
Adding restrictions for class diseases
All the Object properties defined for crop ontology
Creating an individual of class Nematodes
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.
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)
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.
OWL-DL Reasoning• OWL Reasoner provide at least the
“standard” set of Description Logic inference services, namely:
Realization,
Concept satisfiability
Classification
Consistency checking
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.
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.
Ontology Based Expert System
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.
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
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.
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.
Window showing class hierarchy
Window showing object properties
Window showing Data Property
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.
Window showing user home page
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.
Disease Diagnosis module
Window showing first question for Disease diagnosis
Window showing second question for Disease diagnosis
Window showing third question for Disease diagnosis
Window showing fourth question for Disease diagnosis
Window showing fifth question for Disease diagnosis
Window showing sixth question for Disease diagnosis
Window showing seventh question for Disease diagnosis
Window showing final result after Disease diagnosis
Thank you!