Expert Paper

  • Upload
    edcocu

  • View
    215

  • Download
    0

Embed Size (px)

Citation preview

  • 8/12/2019 Expert Paper

    1/9

    Abnormal Condition Management using Expert Systems

    Vasiliki Tzovla Yan Zhang

    Emerson Process Management Emerson Process Management

    Austin, Texas 78759, USA Austin, Texas 78759, USA

    KEYWORDS

    Expert Systems, CLIPS,inference engine, abnormal condition management

    ABSTRACT

    Expert Systems may be used to solve difficult problems that typically require significant

    human expert intervention. By emulating the expertise and the decision-making ability of

    a human it is possible to reduce the effort and cost of making the knowledge of multipleexperts available continuously, simultaneously, and permanently; thereby increasing

    reliability and performance. This paper describes how the inherent advantages of expert

    systems can be embedded in a scalable process control system. It also presents aprototype of a highly interactive and user friendly environment that simplifies and speeds

    the configuration and documentation of an expert system and makes it extremely easy

    and intuitive for the typical plant engineer to incrementally apply his process knowledge.Such a tool can be used to monitor and control a process and to address abnormal

    condition management by continuously evaluating real-time and historical data, watching

    for events and abnormal conditions, providing reliable diagnosis and advice, and takingcorrective actions when necessary in order to support the plant operators to manage their

    manufacturing operations. The core technology and functionality is implemented using

    CLIPS inference engine. The paper also details features of convenience such as themodular design of complex systems, partitioning of a knowledge base, verification and

    validation, simulation and evaluation of the expert rules against user provided data.

    INTRODUCTION

    Conventional programming languages are designed and optimized for the procedural

    manipulation of data (such as numbers and arrays). Humans, however, often solve

    complex problems using very abstract, symbolic approaches which are not well suited forimplementation in conventional languages. Although abstract information can be

    modeled in these languages, considerable programming effort is required to transform the

    information to a format usable with procedural programming paradigms.One of the results of research in the area of artificial intelligence has been the

    development of techniques, which allow the modeling of information at higher levels of

    abstraction. These techniques are embodied in languages or tools, which allow programsto be built that closely resemble human logic in their implementation and are therefore

  • 8/12/2019 Expert Paper

    2/9

  • 8/12/2019 Expert Paper

    3/9

    while it can be examined for correctness, consistency, and completeness and when

    necessary be adjusted and re-examined. It can also grow over time.

    DEVELOPMENT TOOLS

    Urged by the industrys need for expert systems, several expert systems have been built

    and reported on in computer journals, books and conference; and many specialized tools

    have been developed for expert system building. Some of them have been designed asresearch tools while others fulfill important business and industrial functions including

    process control. These tools take advantage of the expert system technology and using

    them makes it more convenient and efficient to build an expert system compared togeneral-purpose tools, since the user doesnt have to build a new expert system

    application from scratch.

    The ease, with which an expert system may be implemented, commissioned and

    maintained though, is influenced to a large extent by the user interface supplied by thesoftware tool manufacturer and its capability to integrate with the rest of the system, in

    our case the process control system. In many cases, the application and generalacceptance of control and monitoring tools within the process industry has been limited

    by ease of use issues. Commercial products have too often violated some of the very

    basic principles of good usability. As a result, typical process engineers and instrumenttechnicians may have difficulty in addressing expert based applications, while the plant

    operators may be faced with increasingly complex user interfaces which provide

    minimum or no support. This paper explores how some commonly accepted practices in

    user interface design can be successfully applied in an Expert System application.Examples show how an integrated environment can facilitate the development,

    debugging, and delivery of an expert system while using the core technology andfunctionality of a multi-paradigm expert system programming language. This approachintegrates many services in one environment, presents a common interface to the user,

    and takes advantage of the existing features of a modern process control system and the

    expert system technology. Such an approach provides a complete environment for theconstruction of expert systems, minimizes the need for the user to become familiar with

    different utilities, eliminates the time to switch between environments to perform

    different tasks, and maximizes resource reusability, modularity, and flexibility.Simplicity, nonetheless, is achieved without any loss of functionality and sophistication.

    In particular, the needs of the expert user are addressed without sacrificing the ease with

    which a normal user may implement such advanced applications.

    CLIPS AND RULE-BASED PROGRAMMING

    CLIPS is a multi-paradigm programming language that provides support for rule-based,

    object-oriented, and procedural programming. It was developed by NASA's Johnson

    Space Center to specifically address the difficulty of putting state-of-the-art expert

  • 8/12/2019 Expert Paper

    4/9

    systems into practical use and was designed with the specific purpose of providing high

    portability, low cost, and easy integration with external systems [1].

    Rule-based programming is one of the most commonly used techniques for developing

    expert systems. In this programming paradigm, rulesare used to represent heuristics or

    "rules of thumb," which specify a set of actions to be performed in a given situation. Arule is composed of an ifportion and a thenportion. The ifportion of a rule is a series of

    patterns which specify the facts(or data) that cause the rule to be applicable. The process

    of matching facts to patterns is called pattern matching. The ifportion of a rule can

    actually be thought of as the wheneverportion of a rule since pattern matching is donebased on facts. The thenportion of a rule is the set of actions to be executed when the if

    portion of the rule is satisfied. The expert system tool provides a mechanism, called the

    inference engine, which automatically matches facts against patterns and determineswhich rules are applicable. The actions of applicable rules are executed. This process

    continues until no applicable rules remain.

    As shown in figure 1 a typical rule-based expert system consists of the followingcomponents:

    User Interface the mechanism by which the user and the expert systemcommunicate

    Explanation facility explains the reasoning of the system to a user Working memory a global database of facts used by the rules Inference engine makes inferences by deciding which rules are satisfied by facts,

    prioritizes the satisfied rules, and executes the rule with the highest priority

    Agenda a prioritized list of rules created by the inference engine, whose patternsare satisfied by facts in working memory

    Knowledge acquisition facility an automatic way for the user to enter knowledge inthe system instead of having the engineer explicitly code the knowledge (this is anoptional feature).

    Figure 1: Structure of a Rule-Based System

  • 8/12/2019 Expert Paper

    5/9

    A SIMPLIFIED APPROACH

    In order to make available the inherent advantages of expert systems to a scalable process

    control system, a highly interactive and user-friendly environment may be developed thatsimplifies and speeds the configuration, documentation and on-line deployment of an

    expert system. Such a capability can be used to monitor and control a process and to

    address abnormal condition management by continuously evaluating real-time andhistorical data and events, watching for abnormal situations, providing advice and taking

    corrective actions when necessary. A prototype of such a system has been developed to

    take full advantage of the expert system technology by using the core technology andfunctionality implemented in NASA CLIPS programming language for the inference

    engine. It is also designed to take full advantage of the existing features of a modern

    process control system by providing the typical plant engineers with easy access to the

    existing plant configuration. This approach saves time and effort for the plant engineers

    and expert system developers and enables them to focus on incrementally applying theirprocess knowledge in the implementation of the expert system. By including a set of

    configuration, integration and communication services, such a tool provides easy toconfigure, smart filtering of plant data, and increases the systems flexibility and usability

    by allowing data updates to be received and abnormal situations to be reported in a user-

    defined manner (e-mail notification, pager alerts, report generation, alarm activation,etc.). With quick detection of abnormal conditions, reliable diagnosis and advice for

    correction of problems through friendly and explanatory interfaces, such an application

    provides the plant operators with the full support they need to manage todays

    manufacturing operations.

    The prototype application is designed to take advantage of the Windows technology andbe similar in appearance to Microsoft Windows NT Explorer, with which most engineersare familiar. The user can graphically model the properties and behaviors of dynamic

    operations and produce his knowledge design mainly by using the drag-and-drop-

    technique. The user can also view the overall structure and layout of the working memoryand knowledge base in a tree hierarchy. The graphical representation gives easy access to

    the properties and behaviors of the different components and objects and the presentation

    of the whole system in a hierarchical structure makes clear the relationships among them(Figure 2). Through intuitive and friendly interfaces the user can also watch the working

    memory and agenda, and view the explanation facility of his system.

  • 8/12/2019 Expert Paper

    6/9

    Figure 2: Hierarchical structure of an expert system in process control

    Standard fact templates are provided to allow consistent and easy access to real time and

    historical data, events and abnormal conditions. Figure 3 shows an example of the

    graphic interface for a fact template definition. The friendly graphical environmentenables even non-programmers to define, read, understand and modify the system.

  • 8/12/2019 Expert Paper

    7/9

    Figure 3: A graphic interface for a fact template definition

    Predefined expert rules are provided to make it easy for a user to benefit from the expert

    system capability. However, the advanced user is allowed to define his/her own fact andrule templates to address the unique situation of a particular plant. Figure 4 shows an

    example of the graphic interface for a rule template definition. An embedded interactive

    editor is available to the advanced users familiar with the CLIPS programming language,so they can create and edit rules. An Expert User option separates the basic features from

    the advanced features of the tool to provide simplicity without any loss of functionality.

  • 8/12/2019 Expert Paper

    8/9

    Figure 4: A graphic interface for a rule template definition

    The tool also provides a Debug/On-line capability to allow control and examination ofthe execution of the rules, verification that the rules are in the correct form and validation

    of the rules (whether a chain of correct inferences leads to the correct answer).

    Selections, such as removal of all the facts from the fact list, breakpoint settings andremovals, breakpoint listing, configuration of the maximum number of rules that can be

    fired, viewing of the patterns that match a rule examination and much more, areavailable. These features help the expert system developers to verify the correctness ofthe knowledge, debug and solve possible problems, identify areas to increase

    performance, gain a better understanding of the system and more efficiently monitor the

    execution of the logic.

    A simulation feature is available to permit checkout of rules execution. Fact data that is

    based on process measurements may be examined as the application executes and, if

    simulation is enabled, user-provided values or archived data may be used for testing andevaluation of the rules.

    To assist the development of a robust expert system and deal with more complexstructures, a mechanism is provided to permit the partition of the knowledge base in to

    modules. This feature allow the user to organize his knowledge base (configuration

    database) following his/her plants structure and provides an explicit method forcontrolling the execution of the system. To achieve better performance, the run time

    database (execution of the rules) may be also partitioned and different sets of rules may

    be assigned for execution at different workstations.

  • 8/12/2019 Expert Paper

    9/9

    CONCLUSION

    Expert systems can be effectively used for real-world problems, which are difficult to

    solve by other means such as Abnormal Condition Management in process control

    systems. The design and implementation of a simplified approach to the construction ofan expert system has been presented. By embedding an expert engine in a modern

    process control system, the benefits of expert systems can be easily applied while taking

    advantage of the existing features of the control system. An intuitive and user friendlyGUI minimizes the engineering and implementation effort while maintaining the

    underlying expert system technology. Several enhancements increase the systems

    usefulness and maintainability. This approach is instrumental in the development of thenext generation of easy to use, integrated Expert System applications implemented in a

    scalable process control system.

    REFERENCES

    1. Giarratano, J. and Riley, G., Expert Systems Principles and Programming, PWSPublishing Company

    2. CLIPS Reference Manual, Version 6.05