<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Presentation of the HeKatE Design Environment?</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Krzysztof Kaczor</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Grzegorz J. Nalepa</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Institute of Automatics, AGH University of Science and Technology</institution>
          ,
          <addr-line>Al. Mickiewicza 30, 30-059 Krakw</addr-line>
          ,
          <country country="PL">Poland</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>TOOL PRESENTATION: The paper introduces the HeKatE design environment called HaDEs. The HeKatE project aims at delivering new knowledge representation methods for rule-based systems. Principal ideas include an integrated hierarchical design process covering stages from conceptual, through logical to physical design. These stages are supported by specic knowledge representation methods: ARD+, XTT2, and HMR. The whole design process is supported by a number of tools, namely: VARDA and HJEd in the ARD+conceptual design stage and rule prototyping, HQEd for the XTT 2 logical design and nally HeaRT, the rule runtime environment. The goal of this tool presentation is to introduce the design process using a practical example.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>
        Practical design methodologies for intelligent systems remain a eld of active
development. Developing such a methodology requires an integration of accurate
knowledge representation and processing methods [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ], as well as practical tools
supporting them. Some of the important features of such approaches are:
scalable visual design, automatic code generation, support for existing programming
frameworks. At the same time quality issues, as well as a formalized description
of the designed systems should be considered.
      </p>
      <p>
        The HeKatE project (see hekate.ia.agh.edu.pl ) aims at providing an
integrated methodology for the design, implementation, and analysis of rule-based
systems [
        <xref ref-type="bibr" rid="ref2 ref3">2,3</xref>
        ]. An important goal of the project is to allow for an easy integration
of knowledge and software engineering methods and approaches, thus providing
a Hybrid Knowledge Engineering methodology. The project delivers several new
knowledge representation methods, as well as a set of practical tools supporting
the whole design process.
      </p>
      <p>This paper provides a short overview of the project including its main
objectives and tools in Sect. 2. Then in Sect. 3 the HeKatE design toolchain called
HaDEs is introduced. The paper accompanies a tool presentation given at the
KESE 2009 workshop.
? The paper is supported by the HeKatE Project funded from 20072009 resources for
science as a research project.</p>
    </sec>
    <sec id="sec-2">
      <title>HeKatE Project Overview</title>
      <p>
        Research Objectives
The main principles of the HeKatE project are based on a critical analysis of
the state-of-the art of the rule-based systems design, see [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ].
      </p>
      <p>Formal Language for Knowledge Representation . It should have a
precise denition of syntax, properties and inference rules. This is crucial for
determining its expressive power, and solving formal analysis issues.</p>
      <p>Internal Knowledge Base Structure . Rules working within a specic
context, are grouped together and form the extended decision tables. These
tables are linked together forming a partially ordered graph structure which
encodes the ow of inference.</p>
      <p>Systematic Hierarchical Design Procedure . A complete, well-founded
design process that covers all of the main phases of the system lifecycle, from
the initial conceptual design, through the logical formulation, all the way to the
physical implementation is proposed. A constant verication of the model w.r.t.
critical formal properties, such as determinism and completeness is provided.</p>
      <p>
        In the HeKatE approach the control logic is expressed using forward-chaining
decision rules. They form an intelligent rule-based controller or simply a business
logic core. The controller logic is decomposed into multiple modules represented
by attributive decision tables. The emphasis of the methodology is its possible
application to a wide range of intelligent controllers. In this context two main
areas have been identied in the project: control systems, in the eld of intelligent
control, and business rules [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] and business intelligence systems, in the eld
of software engineering. In the case of the rst area the meaning of the term
controller is straightforward. In the second area the term denotes a well isolated
software component implementing the application logic, or logical model.
2.2
      </p>
      <p>
        Main Methods
HeKatE introduces a formalized language for rule representation [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. Instead
of simple propositional formulas, the language uses expressions in the so-called
attributive logic [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. This calculus has a stronger expressiveness than the
propositional logic, while providing tractable inference procedures for extended decision
tables. The current version of the rule language is called XTT 2 [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. The
current version of the logic, adopted for the XTT 2 language, is called ALSV(FD)
(Attributive Logic with Set Values over Finite Domains ).
      </p>
      <p>
        Based on the logic, a rule language called XTT is provided [
        <xref ref-type="bibr" rid="ref6 ref7">7,6</xref>
        ]. XTT stands
for eXtended Tabular Trees . The language is focused not only on providing an
extended syntax for single rules, but also allows for an explicit structurization of
the rule base. XTT introduces explicit inference control solutions, allowing for a
ne grained and more optimized rule inference than in the classic Rete-like
solutions. The representation has a compact and transparent visual representation
suitable for visual editors.
      </p>
      <p>
        HeKatE also provides a complete hierarchical design process for the creation
of the XTT-based rules. The main phase of the XTT rule design is called the
logical design. The logical rule design process may be supported by a preceding
conceptual design phase. In this phase the rule prototypes are built with the
use of the so-called Attribute Relationship Diagrams . The ARD method has
been introduced in [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ], and later rened in [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. The principal idea is to build a
graph, modelling functional dependencies between attributes on which the XTT
rules are built. The version used in HeKatE is called ARD+ as discussed in [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ].
The practical implementation on the XTT rule base is performed in the physical
design phase. In this stage the visual XTT model is transformed into an algebraic
presentation syntax called HMR. A custom inference engine, HeaRT runs the
XTT model described in HMR.
      </p>
      <p>The complete framework including the discussed methods and tools is
depicted in Fig. 1.</p>
      <sec id="sec-2-1">
        <title>Logical Model</title>
        <p>ARD+</p>
      </sec>
      <sec id="sec-2-2">
        <title>Automated Implementation</title>
        <p>V1
V2
V3</p>
        <sec id="sec-2-2-1">
          <title>VIEWS</title>
          <p>HQEd
XTT2
Analysis</p>
          <p>Human readable
Machine readable
HMR
HML
XML serialization
jvm/C++
HeaRT
HaThoR</p>
        </sec>
        <sec id="sec-2-2-2">
          <title>CONTROLLER</title>
        </sec>
        <sec id="sec-2-2-3">
          <title>MODEL</title>
          <p>SWRL
RIF
Drools
Conceptual
Logical</p>
          <p>Physical</p>
        </sec>
      </sec>
      <sec id="sec-2-3">
        <title>Visual Design</title>
        <p>HJEd/Varda
s
s
e
c
o
r
P
n
g
i
s
e
D</p>
      </sec>
      <sec id="sec-2-4">
        <title>Implementation Process</title>
        <p>The HeKatE design process is supported by a number of tools supporting the
visual design and the automated implementation of rule-based systems (see
https://ai.ia.agh.edu.pl/wiki/hekate:hades ).</p>
        <p>HJEd visual editor supports the ARD+ design process. It is a cross-platform
tool implemented in Java. Its main features include the ARD+ diagram creation
with on-line design history available through the TPH diagram. An example of
a design capturing functional dependencies between system attributes is shown
in Fig. 2. It is a medical diagnosis system. The diagram on the left shows the
dependencies between rule attributes, whereas the right one captures the design
history. Once created, the ARD+ model can be saved in a XML-based HML
(HeKatE Markup Language) le. The le can be then imported by the HQEd
design tools supporting the logical design.</p>
        <p>VARDA is a prototype semi-visual editor for the ARD+ diagrams
implemented in Prolog, with an on-line model visualization with Graphviz. The tool
also supports prototyping of the XTT model, where table headers including a
default inference structure are created, see Fig. 3. In this case three tables are
generated. The ARD+ design is described in Prolog, and the resulting model
can be stored in HML.</p>
        <p>HQEd provides support for the logical design with XTT, see Fig. 4. In the
gure some additional decision tables to input attribute values are present. It
is able to import a HML le with the ARD+ model and generate the XTT
prototype. It is also possible to import the prototype generated by VARDA.
HQEd allows to edit the XTT structure with on-line support for syntax checking
on the table level. Attribute values entered are checked against their domains
and a number of possible anomalies is eliminated.</p>
        <p>The editor is integrated with a custom inference engine for XTT 2 called
HeaRT. The role of the engine is twofold: run the rule logic designed with the</p>
        <p>Medication
use of the editor, as well as provide constant formal analysis of the rulebase. The
communication uses a custom TCP-based protocol.</p>
        <p>
          HeaRT (HeKatE Run Time) is a dedicated inference engine for the XTT 2
rule bases. It is implemented in Prolog in order to directly interpret the HMR
representation which is generated by HQEd. HMR (HeKatE Meta
Representation) is a textual representation of the XTT 2 logic designed by HQEd. It is a
human readable form, as opposed to the machine readable HML format. The
HeaRT engine implements the inference based on the ALSV(FD) logic [
          <xref ref-type="bibr" rid="ref4 ref6">6,4</xref>
          ].
        </p>
        <p>HalVA (HeKatE Verication and Analysis) is a modularized verication
framework provided by HeaRT. So far several plugins are available, including
completeness, determinism and redundancy checks. The plugins can be run form
the interpreter or from HQEd using the communication protocol.
4</p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>Conclusions</title>
      <p>The paper shortly introduces the main concepts of the HeKatE project, its
methods and tools. The main motivation behind the project is to speed up and
simplify the rule-based systems design process, while assuring the formal quality of
the model. The HeKatE design process is supported by the HeKatE design
environment called HaDEs. During the presentation given at the KESE workshop
the tools were presented using practical examples.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>van Harmelen</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lifschitz</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Porter</surname>
          </string-name>
          , B., eds.:
          <source>Handbook of Knowledge Representation. Elsevier Science</source>
          (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Giarratano</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Riley</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          :
          <article-title>Expert Systems. Principles and Programming. Fourth edition edn</article-title>
          .
          <source>Thomson Course Technology</source>
          , Boston, MA, United
          <string-name>
            <surname>States</surname>
          </string-name>
          (
          <year>2005</year>
          ) ISBN 0-534-38447-1.
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Ligƒza</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Logical Foundations for Rule-Based Systems</article-title>
          . Springer-Verlag, Berlin, Heidelberg (
          <year>2006</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Nalepa</surname>
            ,
            <given-names>G.J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ligƒza</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Hekate methodology, hybrid engineering of intelligent systems</article-title>
          .
          <source>International Journal of Applied Mathematics and Computer Science</source>
          (
          <year>2009</year>
          )
          <article-title>accepted for publication.</article-title>
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Ross</surname>
          </string-name>
          , R.G.:
          <article-title>Principles of the Business Rule Approach. 1 edn</article-title>
          . Addison-Wesley
          <string-name>
            <surname>Professional</surname>
          </string-name>
          (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Nalepa</surname>
            ,
            <given-names>G.J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ligƒza</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Xtt+ rule design using the alsv(fd)</article-title>
          . In
          <string-name>
            <surname>Giurca</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Analyti</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wagner</surname>
          </string-name>
          , G., eds.
          <source>: ECAI 2008: 18th European Conference on Articial Intelligence: 2nd East European Workshop on Rule-based applications, RuleApps2008: Patras, 22 July</source>
          <year>2008</year>
          , Patras, University of Patras (
          <year>2008</year>
          )
          <fpage>1115</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Nalepa</surname>
            ,
            <given-names>G.J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ligƒza</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>A graphical tabular model for rule-based logic programming and verication</article-title>
          .
          <source>Systems Science</source>
          <volume>31</volume>
          (
          <issue>2</issue>
          ) (
          <year>2005</year>
          )
          <fpage>8995</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Nalepa</surname>
            ,
            <given-names>G.J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ligƒza</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Conceptual modelling and automated implementation of rule-based systems</article-title>
          . In:
          <article-title>Software engineering : evolution and emerging technologies</article-title>
          .
          <source>Volume 130 of Frontiers in Articial Intelligence and Applications</source>
          . IOS Press, Amsterdam (
          <year>2005</year>
          )
          <fpage>330340</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Nalepa</surname>
            ,
            <given-names>G.J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wojnicki</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          :
          <article-title>Towards formalization of ARD+ conceptual design and renement method</article-title>
          . In Wilson, D.C.,
          <string-name>
            <surname>Lane</surname>
          </string-name>
          , H.C., eds.: FLAIRS-21
          <source>: Proceedings of the twenty-rst international Florida Articial Intelligence Research Society conference: 1517 may</source>
          <year>2008</year>
          ,
          <string-name>
            <surname>Coconut</surname>
            <given-names>Grove</given-names>
          </string-name>
          , Florida, USA, Menlo Park, California, AAAI Press (
          <year>2008</year>
          )
          <fpage>353358</fpage>
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>