Skip to main content

2018 | Buch

Modeling with Rules Using Semantic Knowledge Engineering

insite
SUCHEN

Über dieses Buch

This book proposes a consistent methodology for building intelligent systems.

It puts forward several formal models for designing and implementing rules-based systems, and presents illustrative case studies of their applications.

These include software engineering, business process systems, Semantic Web, and context-aware systems on mobile devices. Rules offer an intuitive yet powerful method for representing human knowledge, and intelligent systems based on rules have many important applications. However, their practical development requires proper techniques and models - a gap that this book effectively addresses.

Inhaltsverzeichnis

Frontmatter

Domain of Rule-Based Systems

Frontmatter
Chapter 1. Rules as a Knowledge Representation Paradigm
Abstract
Rules are a commonly used and natural way to express knowledge. They have been used for decades in AI, Computer Science, Cognitive Science and other domains. We start by discussing the AI roots of rules and elaborate on different kinds and types of rules. We then focus on a more careful treatment of rules in symbolic AI. There, they constitute an approach which allows for the representation of knowledge and basic automated reasoning. Originally, one of the most important areas for rule applications were expert systems. We will discuss them, along with a much broader perspective. What makes rule-based representation and reasoning particularly interesting is the opportunity for the formalization of rule languages. Therefore, selected logic-based formalizations are considered. We present in more detail a family of so-called attributive logics. Based on these concepts we introduce important requirements for a formalized description of rule based-systems.
Grzegorz J. Nalepa
Chapter 2. Knowledge Engineering with Rules
Abstract
Intelligent systems that use knowledge representation and reasoning methods are commonly referred to as knowledge-based systems. The domain that considers building them is most generally referred to as knowledge engineering. This chapter introduces some of the important knowledge engineering topics with respect to rule-based systems. We discuss the modeling of acquired knowledge with the use of rules and other representations supporting the design. Once a rule set is built, an inference mechanism should be considered. In the case of large rule sets their structure has to be considered. The quality of the rule base should be analyzed during the design, or at least after it. If possible, the rule base should be kept independent of the specific system implementation. To make this possible a specific rule interchange method can be used. Finally, as today rule-based systems are not usually stand-alone systems, specific architectures for their integration are discussed.
Grzegorz J. Nalepa
Chapter 3. Selected Applications of Rules
Abstract
In this chapter we discuss several applications of rules and rule-based systems. Applications discussed in this chapter are mostly related to the areas of business and software engineering. They relevant for the applications of the semantic knowledge engineering approach. We begin with the discussion of the business rules approach. With time rules systems had to be integrated into other business management systems using business processes. Recently Web-based applications of the Semantic Web project played an important role. A number of past knowledge engineering experiences were placed in a new technological context. However, integration of classic rule-based systems with the Semantic Web technologies is quite challenging. Furthermore, we discuss some common uses of rules in the area of software engineering. A recent emerging computing paradigm of context-aware systems is also an important area for rules. Finally, we take a look at rules as a general programming paradigm.
Grzegorz J. Nalepa

Formal Models for Rules

Frontmatter
Chapter 4. Formalism for Description of Decision Rules
Abstract
In this chapter we discuss the eXtended Tabular Trees knowledge representation method for rules. It uses strict formalization of rule syntax and improves design and verification of RBS. It is the core of the Semantic Knowledge Engineering approach. This chapter discusses the core features of XTT. We begin with the formalization of single rules with the ALSV(FD) logic. Inference with ALSV(FD) is discussed next. Based on this, the formalization of rule bases with the XTT method is discussed. Then rule base modularization is described. Such rule bases need custom inference algorithms considered next. Finally, the formalization allows for the XTT rule bases to be verified.
Grzegorz J. Nalepa
Chapter 5. Formalized Integration of Rules and Processes
Abstract
In this chapter a formalized model for describing the integration of business processes with business rules is discussed. The solution uses the existing representation methods for processes and rules, specifically the Business Process Model and Notation (BPMN) for process models, and the XTT method for rules. The proposed model deals with the integration of processes with rules in order to provide a coherent formal description, and to support the practical design. Furthermore, in such an approach, BP can be used as a high level inference control for the XTT knowledge base. The chapter provides a formal description of a BPMN process model. This formalized process model is then integrated with rules, and this integration is specified as the General Business Logic Model. In order to apply this model to a specific rule solution, the Specific Business Logic Model is presented. As an evaluation, a case study described using the proposed model is presented.
Grzegorz J. Nalepa
Chapter 6. Prototyping Structure of Rule Bases
Abstract
Designing a knowledge base for a RBS is a tedious task. The main issue concerns the identification of system properties on which the rules are based. This is an iterative process that needs proper support. This stage is often generally referred to as the conceptual design. The focus of the ARD+ method presented in this chapter is the initial transition from user-provided specification (often in natural language) that includes general concepts, to the rule specification that tie rules with these concepts. Moreover, the semi-automated prototyping of the structure of the knowledge bases is possible. The schemas of XTT decision tables can be obtained, along with default inference links between tables. We introduce the main intuitions behind the ARD+ method and its formalization. Then an algorithm for prototyping the structure of the XTT rule base is given. The design with ARD+ can be also used to generate a business process with rules.
Grzegorz J. Nalepa
Chapter 7. Handling Uncertainty in Rules
Abstract
In this chapter we present extensions to the XTT model aimed at handling uncertain knowledge. The primary motivation for this research were studies in the area of the context-aware systems. We implemented such systems on mobile platforms, including smartphones or tablets. Such an environment poses a number of challenges addressed by our work. In this chapter we present the classification of most common uncertainty sources present in mobile context-aware systems. We provide a short survey of methods that aim at modeling and handling these uncertainties. We present the approach developed for XTT to cover uncertainties caused by the imprecise data based on modified certainty factors algebra. Furthermore, we discuss its probabilistic extensions. Then the time-parametrised operators for handling noisy batches of data are provided. Finally, we give an insight into a probabilistic interpretation of rule-based models for handling uncertainties caused by the missing data.
Grzegorz J. Nalepa
Chapter 8. Formalizing Interoperability in Rule Bases
Abstract
With the increasing number of rules application areas, the number of different rule representations is also growing. As a result, rule-based knowledge cannot be easily shared among different rule bases. The goal of translation methods is to facilitate the process of interoperability between representations by providing an intermediate and formalized format for knowledge translation. We provide a definition of the formalized model for production rule representation. The proposed model is intended to be used as the intermediate format for rule interoperability between rule languages like CLIPS, Jess, Drools, or XTT. The discussed model is based on ALSV(FD) logic and significantly extends a formal model of XTT towards production rule systems. As we consider structured rule bases, module formalization is also introduced.
Grzegorz J. Nalepa

Practical Studies in Semantic Knowledge Engineering

Frontmatter
Chapter 9. Semantic Knowledge Engineering Approach
Abstract
In this chapter we introduce the Semantic Knowledge Engineering approach. It is a development approach for Knowledge-based Systems that uses rule-based knowledge representation. The core of the approach is the formalized rule representation method XTT. The motivation for the approach, along with its distinctive features are given. Then the SKE design process for rule-based systems is presented. SKE was developed to support a heterogeneous architecture of rule-based applications. The approach is well supported by a number of discussed software tools for knowledge base design, generation of the executable rule format, and execution of the rule-based system. Furthermore, tools for rule analysis are discussed.
Grzegorz J. Nalepa
Chapter 10. Rule Interoperability with Expert System Shells
Abstract
The Semantic Knowledge Engineering approach was proposed to address some of the limitations of knowledge engineering with classic expert systems shells. In this chapter we demonstrate how the formalized model for rule interoperability can be used to provide translation of rule base between Drools and CLIPS, using XTT. We will use the model to formalize the main aspects of both rule languages. First the semantically equivalent features of rule languages in production systems are discussed. Next, the main features of CLIPS and Drools are analyzed. Modularization of the rule base is also considered.
Grzegorz J. Nalepa
Chapter 11. Visual Software Modeling with Rules
Abstract
In the last decades visual design methods have been gaining popularity and importance in Software Engineering. When it comes to practical software design, UML is de facto the standard for modeling software applications. Today, UML diagrams are typically not detailed enough to describe every aspect of the modeled system. This chapter concerns practical design issues of rule-based models integrated with business applications built using the Model-View-Controller architectural pattern and designed in UML. The main idea consists in the introduction of a visual UML representation for business rules modeling the application logic. A complete bidirectional translation between XTT and the UML representation is presented. It preserves the semantics of XTT in an UML-friendly fashion, allowing UML designers to approach the XTT-based rule logic model in a unified way. The implementation of practical translators is described, and the evaluation of this approach is given.
Grzegorz J. Nalepa
Chapter 12. Using Rules to Support Software Testing
Abstract
Software engineering seeks novel methods and approaches for dealing with growing challenges, such as the quality control of software. Testing is an important area in the software lifecycle. In this chapter we present a practical rule-based method for supporting the unit testing process. First our approach to the use of rules in software unit testing is presented. Then we focus on decision table based testing. A practical tool implementing the method was developed, discussed, and evaluated.
Grzegorz J. Nalepa
Chapter 13. Integrating Business Process Models with Rules
Abstract
When it comes to practical software design, UML is the standard for modeling software applications. However, the design of complex business management systems requires much more than just UML for design. In the case of process modeling, UML is far too expressive to be understood by the average business user. Thus, BPMN was introduced. Although there is an important difference in abstraction levels of rules and processes, they can be complementary. A formal model for the integration was previously provided by us. In it, the BPMN component defines the high level behavior of the system while the low level logic is defined by rules in XTT. In this chapter we continue that discussion on a practical level. We discuss challenges that need to be addressed to provide full integration, not just on the design but also the runtime level. We demonstrate how the SKE design process can be applied to this goal. Then we discuss selected metrics for the evaluation of process complexity.
Grzegorz J. Nalepa
Chapter 14. Rule-Based Systems and Semantic Web
Abstract
This chapter discusses the practical application of the SKE approach in the context of Semantic Web technologies. In this chapter we present an original solution to a heterogeneous integration of forward chaining rules with Description logic. The Description And Attributive Logic formalism provides the integration of the ALSV(FD)-based rule solution with Description Logics. Furthermore, the Pellet-HeaRT framework enables practical runtime integration of an ontology reasoner a rule engine.
Grzegorz J. Nalepa
Chapter 15. Collaborative Knowledge Engineering with Wikis
Abstract
In this chapter we discuss original results in the area of Collaborative Knowledge Engineering. The knowledge engineering process becomes more complex when we consider the participation of many individual knowledge engineers. They might participate in the process in roughly the same time using distributed tools. They might also take part in a gradual development of knowledge bases. The most interesting case is the collaborative one where there is a clear mutual engagement of participants in a coordinated effort to solve problems together. This of course requires some special tools. In our opinion they can be provided based on the semantic wiki technology. We begin with the presentation of the Loki platform, an original semantic wiki solution that combines the ideas of SKE with semantic wikis. We extended Loki with business users in mind. To this goal we provided extended capabilities of SBVR authoring. Furthermore, another extension allows for authoring of the BPMN models.
Grzegorz J. Nalepa
Chapter 16. Designing Robot Control Logic with Rules
Abstract
In this chapter we present the application of the SKE methods, to support the design of control logic for basic mobile robots implemented with LEGO Mindstorms. This work addresses the second generation of the LEGO hardware, also known as the NXT. A dedicated programming solution based on the Prolog language is described. On top of it the HeaRT rule engine is integrated. This allows for the use of XTT for the control of NXT. Examples of such control cases are presented.
Grzegorz J. Nalepa
Chapter 17. Rules in Mobile Context-Aware Systems
Abstract
Building systems that acquire, process and reason with context data is a major challenge, especially on mobile platforms. Constant updates of knowledge models are one of the primary requirements for the mobile context-aware systems. In this chapter we discuss selected practical results of the KnowMe project. We demonstrate the use of the formal model for uncertainty handling. We distinguish three phases that every context-aware system should pass during the development and later while operating on the mobile device. We discuss the knowledge modeling aspects and the use of the KnowMe toolset.
Grzegorz J. Nalepa
Backmatter
Metadaten
Titel
Modeling with Rules Using Semantic Knowledge Engineering
verfasst von
Grzegorz J. Nalepa
Copyright-Jahr
2018
Electronic ISBN
978-3-319-66655-6
Print ISBN
978-3-319-66654-9
DOI
https://doi.org/10.1007/978-3-319-66655-6