Docstoc

Engineering Knowledge for Engineering Grid Applications

Document Sample
Engineering Knowledge for Engineering Grid Applications Powered By Docstoc
					  Knowledge Management
       in Geodise


  Geodise Knowledge Management Team
Liming Chen, Barry Tao, Colin Puleston, Paul Smart

          University of Southampton
          University of Manchester
               Epistemics Ltd.
                 Overview
Geodise needs knowledge management
Knowledge acquisition and modelling
Grid-oriented knowledge management
Knowledge applications in Geodise
 Creating
         semantic content
 Workflow management
 Knowledge-based advice
 EDSO component management

Summary and future work
      Geodise Meets
Knowledge Management (KM)

    - put KM in context -
 GEODISE                                                        Engineer
                                                                               Reliability
                                                                               Security
                                                                                 QoS
                                                            GEODISE
                                                                                                    Visualization
                                                            PORTAL
                      Knowledge
                      repository       Session
  Ontology for                        database
  Engineering,                   Traceability
Computation, &
Optimisation and                                           OPTIMISATION
 Design Search

                                                      OPTIONS                                    Globus, Condor, OGSA
                                                       System
                                                                  Optimisation
                                                                    archive
                          APPLICATION
                            SERVICE                                                          COMPUTATION
                           PROVIDER
                                                  Licenses
   Intelligent                                    and code                                                                Intelligent
  Application                                                                                                             Resource
                   CAD System              Analysis                                      Parallel machines
   Manager                                                                                                                 Provider
                    CADDS                   CFD                                              Clusters
                     IDEAS                  FEM                                    Internet Resource Providers
                      ProE                  CEM                                             Pay-per-use
                   CATIA, ICAD
                                                            Geodise will provide grid-based seamless access to an intelligent knowledge
                                            Design       repository, a state-of-the-art collection of optimisation and search tools, industrial
                                            archive             strength analysis codes, and distributed computing & data resources
        The Problems & the Solutions
Geodise: “Flexible and secure sharing of resources on the Grid to carry out
Engineering Design Search and Optimisation (EDSO)
  Component level - EDSO tasks such as problem setup, mesh generation, code
   analysis, DOE, RSM, Optimisation, etc.
  Process level – EDSO workflow for problem-solving
  Grid level - resource accessibility, sharing, reuse, interoperability, etc.

The problems
    From “infosmog” to shared, semantically enriched, well-structured knowledge
     repositories
    From standalone KBSs to knowledge services on the Grid
The solutions
    Ontology – conceptual backbone for resource sharing and creating semantic
     content
    Knowledge management – knowledge delivery, reuse and decision-making
     support
The Approach to Knowledge Management
                                      Knowledge Acquisition


                      Validation               Knowledge Modelling
 Domain Experts

                                              Knowledge Publishing
    Application     Application
     Domain          Systems
                                             Knowledge Use & Re-use
                                                                      Knowledge
                                                                      Engineers
                  Knowledge Support          Knowledge Maintenance
                     Via KBSs




                                   Application Scenarios &
  Domain Users
                                     User Requirements
Knowledge Acquisition and Modelling

  - what we need & how to get them -
        Knowledge Acquisition (KA)
Knowledge sources
Domain experts, software
manuals & textbooks.
                            Concept hierarchy
KA techniques               in Laddering Tool
Interview, protocol analysis,
concept sorting etc.

Tools used
PC-PACK integrated
knowledge engineering toolkit

Knowledge acquired
EDSO domain knowledge,
EDSO processes and problem Concept mark-up
definition                 in Protocol Editor
                 Knowledge Modelling
Techniques
CommonKADS knowledge
engineering methodologies.
Knowledge models
Organization, agent & task
templates, domain schema &
inference rules.
Tools used
PC-PACK integrated knowledge
engineering toolkit
Deliverables
Knowledge web in HTML, XML
and UML, Conceptual task
model, EDSO process flowchart
               Ontology Development (1)
    Tools
     Protégé & OilEd Editor
                                    Protégé Editor
    Representation
    DAML+OIL & CLIPS
    Deliverables
   EDSO domain ontology
   EDSO task ontology
   Mesh generation tool                             OilEd Editor
    (Gambit software) ontology
   User-profile ontology



                                 DAML+OIL
           Ontology Development (2)
Ontology Views                           Geodise
                                         Concept
                                                   Geodise
                                                    Tasks
                                                               GONG
                                                               Concept
                                                                            Other
                                                                            Views
                                            s                     s
 DL ontologies (DAML/OWL)
                                Concept Query      Semantic Network View         Other
 Simplified views                   View              (Configurable)            Views??
 Tailored to specific domains
                                                   Ontology Client


                                                       WEB


                                                   Ontology Server


                                  FaCT             DAML+OIL/OWL            Instance Store
                                 Reasoner            Ontology                (Database)



                                     Ontology Views
                                        Underlying complexity hidden
                                        Ontology editing by…
                                           Knowledge engineers
                                           Domain experts
Grid-oriented Knowledge Management

- From local, standalone KBSs
      to distributed, shared knowledge services -
        The KM Architecture for the Grid

Features:
  Service-oriented approach
  Ontologies as a conceptual
  backbone
  Integrated KM framework
  Layered modular structure
  Distributed knowledge
  reuse & sharing
  Flexible & extensible
  Robust & easy
  maintenance
                       Knowledge Portal

    Functions
   Make knowledge available &
    accessible
   Provide tools for knowledge
    reuse and exchange
   Security infrastructure
   Knowledge resources
    management
    Techniques
   Microsoft .Net framework
                       Ontology Services
    Facilitating ontology
    sharing & reuse
   Ontology service APIs
    Domain independence
   DAML+OIL/OWL standards
    Soap-based web
    services -WSDL
    Java, Apache Tomcat &
    Axis technologies
            Knowledge Advice Service
Application Side
   Ontologies
   Knowledge bases
   Problems being solved
Knowledge Service Side
   Inference layer: the reasoning process of a KBS
    in domain-independent terms
   Communication layer: XML-based messaging
   Application layer: provide common terms for
    knowledge bases, inference layer and
    communication schema
Standalone knowledge advice system
implemented
Not wrapped as web/Grid service yet
    Exploiting Knowledge in Geodise

- Make differences for EDSO
                 through the use of knowledge -
     Knowledge Application 1:

Create Semantic Content
                       Goals
                      Machine understandable information
                      Facilitate sharing & reuse

                                      Technique & tool
                                     OntMat-annotizer
                                     Geodise Ontologies

                                      Example
                                   OPTIONS log-files
                                  annotation
                             Knowledge Application 2:

Ontology-assisted Workflow Management
    Features:
   Function selection
   Function instantiation
   Database schema
   Semantic instances
   Semantic workflow
    Technologies:
   EDSO ontologies &
    ontology services
   Java JAX-RPC,
    DOM/SAX
                          Knowledge Application 3:

      Knowledge-based Design Advisor
    Features
   Context-sensitive advice
   Advice at multi-levels of
    granularity (process, task …)
   KBSs as knowledge services
    Technologies
   Knowledge engineering
   EDSO ontologies
   Rule-based reasoning
    techniques
Knowledge Application Prototype
   Knowledge-based Ontology-assisted
    Workflow Construction Environment
                  Knowledge Application 4:

EDSO Component Management
       for the Grid
 Aim – to make EDSO components (which could be a
 problem definition, an algorithm, a solution or a task)
 available on the Grid, easy of use and reusable to other
 users.
 Problems involved
  Describe or model components in a way …
  Create instances and repositories
  Discovery and retrieval mechanisms
  Query and inference mechanisms
  Semantics on the use and re-use of the components
       Knowledge Application 4: Component Management (1)

XML-based Template-oriented Approach
 Use XML & XML Schema
 Java/JAXFront technology
 Access via knowledge APIs
 Potential ontology support
Example Use – Arcadia                                             Problem Setup
                                       % Query and locate the instance file
                                       result=gd_query('standard.archiveDate > 2003-03-16');
                                       ProblemID=result{1}.standard.ID;
                                       local_file_path=gd_retrieve(ProblemID,'d:\'); %local_file_path=’D:/geodise/XML_Templates/
                                       problem_mo_arcadia5.xml’

                                       % Specify the local path of the problem profile instance.
                                       problem_profile_instance=local_file_path;

                                         % get information about design variables
                                         xp=knowledgeapi.XMLParser(problem_profile_instance);
                                         % get information about design variables
                                         dvs=knowledgeapi.DesignVariables1(xp.getDoc);
                                         %get information about objective function
                                         of=knowledgeapi.ObjectiveFunction(xp.getDoc);
                                         % The recommented boundaries for the design parameters, useful as
                                         % allows the problem" dg_id="" lastTimeUsed="2003-03-04T11:21:36" timeCreated="2002-11-23T09:20:23"
             <ProblemProfile description="Arcadia5 design user to use a constrained optimisation.
             user="barry" xmlns="http://www.geodise.org/knowledge" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http:/
                                         %
             /www.geodise.org/knowledge design parameter bounds
             D:\geodise\XML_Templates\problem_mo.xsd">
                                         dsgnmin = rot90(dvs.getLowerBounds);%[ -0.15 0.40 2.00 0.00 0.50 2.00];
                 <designVariables>
                    <name>a_l</name> dsgnmax = rot90(dvs.getUpperBounds);%[ 0.05 0.80 10.00 0.15 0.85 5.00];
                    <meaning>The maximum bump height of the Hicks-Henne bump function on the lower surface of the nacelle</meaning>
                                         defaultValues=rot90(dvs.getDefaultValues);
                    <unit>mm</unit>
                    <limit>              % design parameters selected to be design variables
                        <continousLimit> select = rot90(dvs.getSelected);%[3,5];
                            <lower_bound>-0.15</lower_bound>
                                         selectedObjName=char(of.getSelectedObjName);
                            <default_value>0.05</default_value>
                             <upper_bound>0.04</upper_bound>
                         </continousLimit>
                                                                                                   Knowledge API
                    </limit>             % Create a setup file for the optimisation
                                                                                                  called in MatLab
                    <fixed>true</fixed> % [setup_struct,setupFileID] = arcadia5_setup( [3,5],'peakvel2','',[0.04,0.5,3,0.02,0.6,3],1.4,1.5,0.1,4.6,[
                </designVariables>
                <designVariables>        0.75,1.5,0,0.95],[0.05,0.0125,0.05,0.0125])
                                                                                                                                                       -

                    <name>xp_l</name>    [setup_struct,setupFileID] = arcadia5_setup( select,selectedObjName,'',defaultValues,1.4,1.5,0.1,4.6,[        -
                    <meaning>The bump peak location (on the x-axis) of the Hicks-Henne bump function on the lower surface of the nacelle</meaning>
                    <unit>mm</unit>      0.75,1.5,0,0.95],[0.05,0.0125,0.05,0.0125])
                    <limit>
                         <continousLimit>
                                         % Example use of
                             <lower_bound>0.40</lower_bound> the program
                             <default_value>0.5</default_value> rot90(dvs.getSelectedDefaults) %[2.0, 0.85];
                                         DesignVariables=
                             <upper_bound>0.80</upper_bound>
                         </continousLimit>
                    </limit>
                    <fixed>true</fixed>
                </designVariables>
                <designVariables>
                    <name>t_l</name>
                    <meaning>The bump width parameter of the Hicks-Henne bump function on the lower surface of the nacelle</meaning>
                    <unit>mm</unit>
                    <limit>
                         <continousLimit>
                             <lower_bound>2.00</lower_bound>
                             <default_value>3</default_value>
                             <upper_bound>10.00</upper_bound>
                         </continousLimit>
                    </limit>
                    <fixed>false</fixed>
                </designVariables>
                <designVariables>
                    <name>a_u</name>
                    <meaning>The maximum bump height of the Hicks-Henne bump function on the upper surface of the nacelle</meaning>
                    <unit>mm</unit>
                    <limit>
                         <continousLimit>
                             <lower_bound>0.00</lower_bound>
        Knowledge Application 4: Component Management (2)

   Semantic Service-oriented Approach
  Semantic description for                                                         Concept




                                                               Jena RDF APIs
                                    EDSO Ontologies                              Java Classes
components using DAML+OIL           (service/function)

/OWL ontologies
                                                                                RDF Generator
  Automated form generation for     Ontology Services
creating instances
  RDF as the representation                                            RDF Triple Store
                                     Service/Function             & Permanent Storage (DBS)
formalism                           Form or Templates


  Semantic knowledge                  Create                                   Semantics-based
repository using RDF triple store                                              Query &
                                                                               Inference
   Semantics-based query &                               Re-use

inference technologies
                                     Geodise Users       Geodise toolkit in Matlab
                            Summary
EDSO knowledge
   EDSO domain, process, problem definition, (partial) optimisation algorithms
EDSO ontologies
   Domain ontology, task ontology, Gambit & user profile ontology
Grid-oriented knowledge management architecture
   Ontology service infrastructure
   Knowledge publishing mechanism
   Service-oriented KBS paradigm
Application prototypes
   Knowledge portal; workflow construction environment; knowledge-based
    advice system, XML-based templates-oriented description for EDSO
    components; ontology-assisted Gambit Journal file editor
A semantic description framework for EDSO components
                          Future Work
Component management
   Knowledge repositories for EDSO functions, problems in CFD & workflows …
   Storage, query & inference mechanisms
Service-oriented KBSs reuse infrastructure
   Reasoning services - problem-solving methods (PSM)
   Brokering services - a paradigm for manipulating reasoning services on the Web
Knowledge-based decision-making support systems
   Knowledge intensive points (need to be clarified from domain users)
   Further KAs
   Semantics-based, case-based reasoning mechanisms
Geodise knowledge toolkit in Matlab
   Where & when it fits in, what knowledge is needed, in which form? We need
    application scenarios & user requirements.
Thank you!


 Q/A …
                        Knowledge Application 2:

Ontology-assisted Workflow Management
                                        Features
                                       Ontology-assisted function selection
                                       Ontology-assisted function instantiation
                                       Database schema
                                       Semantic instances & workflow


                                   Ontology
                                   service




    Technologies
   EDSO ontologies &
    ontology services
   Java JAX-RPC, DOM/SAX
                            Task ontology
    Knowledge-based Systems for EDSO
    Process-level design advisor
   Service-oriented paradigm         Knowledge APIs
   Ontology as common terms          XML-based messaging

                        Task-level design tools
                       Ontology-assisted Gambit journal file
                        editor
                       Critique on commands & workflow




                                                  Add a task