<!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>Genetic Programming for Design Grammar Rule Induction</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Julian R. Eichho</string-name>
          <email>julian.eichhoff@informatik.uni-stuttgart.de</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Dieter Roller</string-name>
          <email>dieter.roller@informatik.uni-stuttgart.de</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Institute of Computer-aided Product Development Systems, University of Stuttgart Universitatsstr.</institution>
          <addr-line>38, 70569 Stuttgart</addr-line>
          ,
          <country country="DE">Germany</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>The knowledge engineering e ort associated with de ning grammar systems can become a barrier for the practical use of such systems. Existing grammar and rule induction algorithms o er rather limited support for discovering context-sensitive graph grammar rules as required by some applications in the domain of engineering design. For this task the present work proposes a rule induction method grounded on Genetic Programming. Specializations regarding the representation and evaluation of rule candidates are discussed. Results from preliminary experiments with a prototype implementation demonstrate the feasibility of the suggested approach.</p>
      </abstract>
      <kwd-group>
        <kwd>Genetic Programming</kwd>
        <kwd>Rule Induction</kwd>
        <kwd>Graph Grammar</kwd>
        <kwd>Machine Learning</kwd>
        <kwd>Design Graph</kwd>
        <kwd>Functional Decomposition</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        There is a growing interest in using grammar-based systems in the eld of
computer-aided design. Sridharan and Campbell [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ], for instance, use a
contextsensitive graph grammar to explore functional descriptions of product designs.
Here, grammar rules capture common moves for generating such descriptions,
i.e. they represent knowledge on making design decisions. So far the process of
formalizing this knowledge into rules has been subject to manual knowledge
elicitation. Our research is targeted towards answering the question: What are
adequate machine learning processes for reducing the knowledge engineering burden
of human experts in the context of automated engineering design and in which
settings do they apply?
      </p>
      <p>In this paper focus is put on learning an additional grammar rule pi in
presence of an existing but incomplete rule set [p]A (sets are depicted in square
brackets). The new rule set [p]B = [p]A [ pi will be used in a graph-rewriting
system that shall be capable of reproducing a set of desired design graphs [Gbn]
by means of derivation from an initial graph G0. All rules are allowed to be
context-sensitive, i.e. left-hand side (LHS) and right-hand side (RHS) may
contain both terminal and non-terminal (NT) elements. Considering the practical
application for engineering two additional restrictions apply:</p>
      <p>Restriction 1: There is no explicit information available on how the rules of
[p]A are de ned (LHS and RHS are hidden from the learner). This restriction
stems from an application scenario where di erent engineering organizations,
each working on di erent subsystems or disciplines, contribute to a commonly
used graph-rewriting system. It is likely that these organizations want to share
results with their partners, whilst being reluctant to reveal insight on how these
results were established, i.e. their design rationale should be kept secret.</p>
      <p>Restriction 2: As training data we are only given the initial graph G0 (input)
and desired design graphs [Gbn] (output). The data does not provide any negative
examples of undesired graph-rewriting behavior. This restriction suits common
engineering practice where positive milestones and nal results are more likely
to be documented than un nished states and failures.</p>
      <p>In light of this, a machine learning process based on Genetic Programming
(GP) is proposed and studied using the following methodology: First, the
feasibility of using GP for rule induction in the given context is validated by constructing
a prototype implementation. Then, its applicability is tested with respect to an
existing graph grammar from engineering design (pilot case) and a comparative
study with an existing rule induction algorithm is undertaken.</p>
      <p>Accompanying materials, including an application example and a discussion
on extending the proposed method to iteratively learn multiple rules, are
provided online at http://ouky.de/accompanying-materials/ruleml-2015.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Related Work</title>
      <p>
        Besides various contributions addressing the induction of context-free string
grammars, there only has been relatively little research on learning
contextsensitive graph-grammars [
        <xref ref-type="bibr" rid="ref1 ref2 ref3 ref4 ref5 ref6">1, 6, 4, 2, 5, 3</xref>
        ]. None of these approaches is readily
applicable under the mentioned restrictions as they are bound to several
limitations: First, LHSs were limited to rule templates (cf. [
        <xref ref-type="bibr" rid="ref1 ref4">1, 4</xref>
        ]) or LHSs and RHSs
were limited to single components. Hence, existing approaches are not capable
of accepting multiple isolated subgraphs in their LHS (e.g. to link these
components with new edges). Second, all grammars have been induced from scratch.
Completing a set of given (unknown) rules has not been considered. This
complicates the problem of rule induction as existing rules may produce or require
nodes, edges, or application conditions that cannot be inferred from the training
examples.
      </p>
      <p>
        In order to address these limitations, machine learning can be conceptualized
as search over a space of possible hypotheses [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]. In this case, hypotheses are
candidates for rule pi and the search space is de ned by the vocabulary and
syntax used for formulating rules. The goal of the learning algorithm is to search
for rule candidates that best describe the training data. GP [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] is a well known
evolutionary search heuristic. It has proven suitable for large search spaces and
is robust against local optima. Wyard [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] rst used a genetic approach to the
induction of context-free string grammars. However, as shown herein, GP can
also be employed for inducing rules in context of an existing rule set.
      </p>
    </sec>
    <sec id="sec-3">
      <title>Proposed Solution</title>
      <p>This section describes a GP-based rule induction algorithm for learning rules
that comply with an existing context-sensitive graph grammar. The learner's
task is to determine de nitions for rule pi in order to enable a graph-rewriting
system to produce the desired design graphs [Gbn] from the initial black-box
design G0.</p>
      <p>Consider a prede ned rule sequence S = p1; p2; :::; pi 1; pi; pi+1; :::; pn 1; pn
of length n that can be used to derive [Gbn] from G0. Subsequences S1 =
p1; :::; pi 1 and S2 = pi+1; :::; pn are known to the graph-rewriting system
(reasoning process) but unknown to the learner, and pi is unknown to both. The
proposed learner is capable of learning de nitions for the LHS and RHS of pi
given the following is provided: G0, [Gbn], and access to the graph-rewriting
system in order to gather answer sets [Gi+1]; [Gi+2]; :::; [Gn] for possible candidate
de nitions of pi.</p>
      <p>The proposed learner's main procedure (see algorithm 1) learns a rule
candidate for one desired design graph at a time and tests if the found candidate is
applicable to more than one graph of the desired answer set. Its sub-procedure
evolve is a GP algorithm specially con gured for the rule induction task.
Algorithm 1 Main procedure of proposed GP-based rule induction algorithm.</p>
      <p>Load G0 and [Gbn]
Initialize graph-rewriting system with rules p1; p2; :::; pi 1 and pi+1; :::; pn 1; pn
while [Gbn] is not empty do</p>
      <p>Get next Gbn;j from [Gbn]
S
Use evolve to learn a rule pi;j that enables derivations G0 =) Gbn;j</p>
      <p>where S = p1; p2; :::; pi 1; pi;j ; pi+1; :::; pn 1; pn
Remove Gbn;j and all graphs of [Gbn] that can be derived using pi;j</p>
      <p>Add pi;j to the set of learned rules [pi]
end while
return [pi]</p>
      <p>During GP, candidates for pi are sampled from the space of possible rule
de nitions by means of evolutionary principles. Initially, the set of considered
candidates, called population, is chosen randomly. Then, with each GP iteration,
a new generation of this population is produced by applying mutation, crossover
and selection operators. The selection operator ranks every produced candidate
with respect to evaluation criteria and determines what candidates are
considered for the next generation (survival of the ttest). Mutation and crossover are
used to produce new candidates from the members of the current population.
Crossover recombines parts of two candidates to form a new candidate, whereas
mutation randomly changes parts of an existing candidate.</p>
      <p>As a preparatory step, all possible host graphs [Gi 1], on which pi may be
applied, are computed. Then, from this set a subset [Gbi 1] is formed that only
contains host graphs which are feasible for deriving the current desired design
graph Gbn. This is realized by a lter that checks whether all monotonic elements
present in Gi 1 are also present in Gbn. In this case only NTs are non-monotonic.
Once added, terminal nodes and edges are preserved throughout the remaining
direct derivations. Hence, there must be a subgraph isomorphism that maps all
terminal nodes and edges of Gi 1 to Gn. If this is given, then Gi 1 2 [Gbi 1].
3.1</p>
      <sec id="sec-3-1">
        <title>Representation</title>
        <p>The representation of candidates is crucial for the rule induction task. In this
case a candidate denotes, which host graph Gi 1 is chosen from [Gbi 1], and what
graph operations will be performed on Gi 1 to yield Gi:</p>
        <p>Regarding the rst point, all graphs in [Gbi 1] are considered as possible
bases for deriving Gbn. Since the learner is not allowed to inspect the LHS of
the following rules, di erent Gi 1 2 [Gbi 1] need to be tested by executing the
graph-rewriting system in a manner of trial-and-error. Which Gi 1 is chosen is
re ected by an index parameter within the rule candidate representation that is
subject to the evolutionary optimization.</p>
        <p>The second point addresses the RHS of the rule. Essentially each rule
candidate is a tree structure (the standard representation for GP individuals) that
speci es how the chosen Gi 1 will be modi ed. The tree consists of operation
nodes and index nodes. Operation nodes represent the graph operations used for
modifying Gi 1. For the problem at hand the considered operations are add-node,
add-edge, add-non-terminal, and remove-non-terminal. Index nodes parametrize
these operations with respect to Gi 1 and Gbn. Further, every operation has a
cost factor associated that is used for evaluation.</p>
        <p>In order to evaluate a rule candidate, the set of considered host graphs [Gbi 1]
is passed to the GP-tree's root node. Using an index node attached to the root,
some Gi 1 2 [Gbi 1] is chosen. Then, Gi is initialized as a copy of this graph
and passed to the root's children in order to be propagated through the whole
tree. At each operation node the graph is modi ed with respect to the parameter
de ned by its index node child (see list below). An operation is bypassed if it is
not applicable. Having passed this way through all nodes of the tree, the modi ed
graph Gi is considered to be the direct derivation result of rule candidate pi,
just as if it had been applied in the graph-rewriting system.</p>
        <p>Add-node: For all terminal nodes in Gbn that are not yet present in Gi, add
the one speci ed by the index node to Gi. The operation is not applicable if the
set of addable nodes is empty. The cost for this operation is 2.</p>
        <p>Add-edge: For all edges in Gbn that are not yet present in Gi, add the one
speci ed by the index node to Gi. Incident nodes that are not present in Gi
are added as well. The operation is not applicable if the set of addable edges is
empty. Adding an edge costs 2 and each added node adds up with an extra 2.</p>
        <p>Add-non-terminal: For all edges in Gbn that are not yet present in Gi, but
where exactly one incident terminal node already exists in Gi, select the edge
speci ed by the index node. Add a NT and the selected edge to Gi, where one
end of the edge marks the existing terminal node, and the other is the newly
added NT. The operation is not applicable if the set of edges to be considered
is empty. The cost for this operation is 1.</p>
        <p>Remove-non-terminal: For all NTs in Gi, remove the one speci ed by the
index node. The operation is not applicable if the set of NTs is empty. The cost
for this operation is 1.
3.2</p>
      </sec>
      <sec id="sec-3-2">
        <title>Evaluation and Selection</title>
        <p>Three criteria, termed match, brevity, and variety, are considered for determining
the tness of a candidate. Match targets the main goal of nding an applicable
rule that enables the derivation of Gbn under consideration of the remaining
rule sequence pi+1; :::; pn 1; pn. The other criteria have corrective purposes for
improving the quality of the produced rule candidates.</p>
        <p>
          Match: After Gi has been prepared, the learner tries to apply the remaining
rule sequence S2 using the graph-rewriting system. The graphs produced during
derivation are compared with Gn in terms of similarity. Match is considered at
maximum (1) if one of the produced graphs is isomorphic to Gbn, or if Gbn is
completely \included" in one of the produced graphs (subgraph isomorphism).
Otherwise match is measured using a graph similarity algorithm which compares
the topology and labeling of both graphs and returns a value within [0; 1]. The
most similar graph is taken as reference for the rule candidate's match. This has
been implemented using the Neighbor Matching algorithm proposed by [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ].
        </p>
        <p>During the GP's evolutionary search the rule candidates are allowed to
contain operations that are not directly needed to achieve the goal of producing
the desired design graph: First, there may be operations that are not applicable.
These are simply ignored during the generation of Gi. Second, it is su cient if
the desired graph could be matched in terms of a subgraph isomorphism, i.e.
super uous operations do not prevent from reaching maximum match. Leaving
these elements in the rule candidates is a deliberate design choice, as it increases
the genetic variation in the population. Thereby, a once super uous or
inapplicable operation of one candidate actually can become useful when it is passed
to an individual of a later generation. In consequence of crossover and mutation
this operation (or gene) may be put into a di erent context where it is
mandatory for derivation. Just at the very end of the GP search process all unnecessary
operations are removed from the best rule candidate.</p>
        <p>Brevity: Taking only match into account could lead to the undesired behavior
of discovering a rule that replaces existing rules of the following rule sequence
instead of enabling their use. In order to penalize such rules brevity is de ned
as the inverted sum of costs of all applicable operations. The associated costs
are also used to rank di erent strategies for graph manipulation. For instance,
consider a speci c edge that can be added either directly by the candidate or
by advising a following rule to do so using a NT. Here, the second strategy is
preferable, since it does not compromise the concerns of that existing rule. This
is re ected by the lower score of add-non-terminal compared to add-edge.
Start</p>
        <p>Prepare
host graphs</p>
        <p>Randomly generate
initial rule candidates</p>
        <p>Use rule candidates together
with existing rules for derivation
Select individuals
based on fitness
Make random changes (crossover/mutation)</p>
        <p>Fitness of best
No matching rule converged?</p>
        <p>Yes</p>
        <p>Compare derived graphs
with target graphs (match)
and compute fitness</p>
        <p>End
Reduce and return best rule</p>
        <p>Variety: This score targets special semantic properties of our application
domain. Typically, a rule focuses on the conversion of some speci c types of
ows (edges) through functions (nodes). It would be atypical if a wide variety
of ows were subject the modi cation by the rule candidate. Hence, variety is
de ned as the inverse number of distinct ow labels used by the rule.</p>
        <p>Match, brevity and variety are multiplied to gain an overall tness score for
each rule candidate. These tnesses are the basis for selecting individuals that
will be used for \breeding" the next generation. Separately from the GP
selection process, for each generation, individuals achieving maximum match (1) are
ranked with respect to their tnesses. If the tness of the best candidate from
this set converges, the best candidate found so far is reduced to its necessary
operations and returned as result of the procedure evolve. The LHS and RHS of the
rule are deduced from the remaining operations. Fig. 1 provides a summarizing
ow chart for the evolve procedure.
4</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>Results</title>
      <p>
        The hereinafter described preliminary experiments were conducted with a
prototype implementation. The system uses a rule set consisting of 11 rules. These
rules largely correspond to those of a graph grammar for functional engineering
design, which was hand-crafted by a group of experts [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]. [Gbn] was generated
by means of derivation over the complete rule set. The derivation process largely
corresponds to the example described in [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ].
      </p>
      <p>In each experiment one rule was taken out of graph-rewriting system and
the learner was given the task to learn it. The learned rule was compared to
the original rule with respect to the nodes and edges each rule added to the
produced graphs. Every node or edge of a desired graph in [Gbn] is classi ed as
follows. True positive: node/edge is both added by the learned and the original
rule. False positive: node/edge is only added by the learned rule. True negative:
Neither learned nor original rule add the node/edge. False negative: node/edge is
only added by the original rule. Accuracy (ACC) and the F1 score { two common
measures for classi er evaluation { have been employed to measure the similarity
of learned rules with original rules. Accuracy denotes the relative amount of
correctly assigned nodes/edges. F1 puts a stronger bias on the elements that
should not have been part of the learned rule. It is the harmonic mean of precision
(PRC) and recall (RCL). PRC: How many added nodes/edges of the learned
rule are also part of the original rule? RCL: How many added nodes/edges of
the original rule are also added by the learned rule?</p>
      <p>
        As a baseline, another rule induction algorithm based on the Subdue method
[
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] was given the task to learn the complete rule set from scratch. Subdue
iteratively adds one rule at a time. With each iteration, it searches for subgraphs that
frequently appear in the graphs of [Gbn] and forms rules from those subgraphs.
Subdue generated a total of 16 rules, which were assigned to original rules with
respect to maximum ACC.
      </p>
      <p>Table 1 shows the mean ACC, PRC, RCL, F1 score for the learned rules.
Since Subdue is a deterministic method, it is only executed once, and its mean
scores are computed over the graphs of [Gbn]. The proposed GP method is
nondeterministic, thus every test run, i.e. the execution of the main procedure, has
been repeated 25 times. The mean has then been computed over every nal rule
candidate of evolve. GEN and MIN denote the mean number of generations and
minutes needed by evolve to converge (tested on a PC with 2.5 GHz 4-core CPU
and 16 GB RAM).</p>
      <p>The rules learned by the GP approach generally show a high similarity with
the original ones. As expected they most often outperform Subdue's rules, as the
rules used in the preceding sequence S1 are kept and the learner tries to avoid
replacing rules of S2. Subdue's strategy is to make the rules' RHSs as large as
possible. Hence, parts of multiple original rules are covered by the induced rule
resulting in a PRC-drop.</p>
      <p>A drawback of the GP method is that the trial-and-error evaluation a ords
signi cantly more computational resources than the Subdue method. On the
test machine (see above), Subdue computes the new ruleset within seconds.
Depending on the complexity of the rule and its position in the rule sequence,
an execution of evolve takes several minutes. Further, in its current form the GP
method may learn rules that produce graphs which are only subgraph isomorphic
to the target graphs [Gbn].
The results show the principle feasibility of inducing rules by means of GP in
context of an existing rule set. Further, it has been shown that the proposed
method is applicable to a concrete example from the eld of engineering design.
It is capable of learning rules that are considerably similar to those of an existing
graph grammar for functional decomposition. In comparison with a
state-of-theart rule induction algorithm that learned the complete ruleset from scratch, the
proposed method achieves a higher similarity with the original rule de nitions.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1. Bartsch-Sporl, B.:
          <article-title>Grammatical Inference of Graph Grammars for Syntactic Pattern Recognition</article-title>
          . In: Ehrig,
          <string-name>
            <given-names>H.</given-names>
            ,
            <surname>Nagl</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Rozenberg</surname>
          </string-name>
          ,
          <string-name>
            <surname>G</surname>
          </string-name>
          . (eds.) Graph Gramars and Their Application to Computer Science, 4th Intl. Workshop, Haus Ohrbeck, Germany, October
          <volume>48</volume>
          ,
          <year>1982</year>
          . pp.
          <volume>1</volume>
          {
          <issue>7</issue>
          . LNCS, Springer, Berlin/Heidelberg (
          <year>1983</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Cook</surname>
            ,
            <given-names>D.J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Holder</surname>
            ,
            <given-names>L.B.</given-names>
          </string-name>
          :
          <article-title>Substructure Discovery Using Minimum Description Length</article-title>
          and
          <string-name>
            <given-names>Background</given-names>
            <surname>Knowledge</surname>
          </string-name>
          .
          <source>J. Artif. Intell. Res</source>
          .
          <volume>1</volume>
          (
          <issue>1</issue>
          ),
          <volume>231</volume>
          {
          <fpage>255</fpage>
          (
          <year>1994</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Costa</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sorescu</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>The Constructive Learning Problem : an e cient approach for hypergraphs</article-title>
          .
          <source>In: Constructive Machine Learning, Workshop at the 2013 Conf. on Neural Information Processing Systems (NIPS'13)</source>
          , Lake Tahoe,
          <string-name>
            <surname>NV</surname>
          </string-name>
          , USA, December
          <volume>10</volume>
          ,
          <year>2013</year>
          . pp.
          <volume>1</volume>
          {
          <issue>5</issue>
          (
          <year>2013</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4. Furst, L.,
          <string-name>
            <surname>Mernik</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mahnic</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          :
          <article-title>Graph Grammar Induction as a ParserControlled Heuristic Search Process</article-title>
          . In: Schurr,
          <string-name>
            <given-names>A.</given-names>
            ,
            <surname>Varro</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            ,
            <surname>Varro</surname>
          </string-name>
          ,
          <string-name>
            <surname>G</surname>
          </string-name>
          . (eds.)
          <article-title>Applications of Graph Transformations with Industrial Relevance, 4th Intl</article-title>
          .
          <source>Symposium (AGTIVE'11)</source>
          , Budapest, Hungary, October 4-
          <issue>7</issue>
          ,
          <year>2011</year>
          ,
          <string-name>
            <given-names>Revised</given-names>
            <surname>Selected</surname>
          </string-name>
          and
          <string-name>
            <given-names>Invited</given-names>
            <surname>Papers</surname>
          </string-name>
          . pp.
          <volume>121</volume>
          {
          <fpage>136</fpage>
          . LNCS, Springer, Berlin/Heidelberg (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Inokuchi</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Washio</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Motoda</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          :
          <article-title>An Apriori-Based Algorithm for Mining Frequent Substructures from Graph Data</article-title>
          . In: Zighed,
          <string-name>
            <given-names>D.A.</given-names>
            ,
            <surname>Komorowski</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            ,
            <surname>Zytkow</surname>
          </string-name>
          ,
          <string-name>
            <surname>J</surname>
          </string-name>
          . (eds.)
          <article-title>Principles of Data Mining and Knowledge Discovery, 4th European Conf</article-title>
          .
          <source>(PKDD'00)</source>
          , Lyon, France,
          <year>September 1316</year>
          ,
          <year>2000</year>
          . pp.
          <volume>13</volume>
          {
          <fpage>23</fpage>
          . LNCS, Springer, Berlin/Heidelberg (
          <year>2000</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Jeltsch</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kreowski</surname>
            ,
            <given-names>H.J.:</given-names>
          </string-name>
          <article-title>Grammatical lnference Based on Hyperedge Replacement</article-title>
          . In: Ehrig,
          <string-name>
            <given-names>H.</given-names>
            ,
            <surname>Kreowski</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.J.</given-names>
            ,
            <surname>Rozenberg</surname>
          </string-name>
          ,
          <string-name>
            <surname>G</surname>
          </string-name>
          . (eds.) Graph Gramars and Their Application to Computer Science, 4th Intl. Workshop, Bremen, Germany, March
          <volume>59</volume>
          ,
          <year>1990</year>
          . pp.
          <volume>461</volume>
          {
          <fpage>474</fpage>
          . LNCS, Springer, Berlin/Heidelberg (
          <year>1991</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Koza</surname>
            ,
            <given-names>J.R.</given-names>
          </string-name>
          :
          <article-title>Genetic Programming: On the Programming of Computers by Means of Natural Selection</article-title>
          . MIT Press, Cambridge (
          <year>1992</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Nikolic</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Measuring similarity of graph nodes by neighbor matching</article-title>
          .
          <source>Intell. Data Anal</source>
          .
          <volume>16</volume>
          (
          <issue>6</issue>
          ),
          <volume>865</volume>
          {
          <fpage>878</fpage>
          (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Sammut</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          :
          <article-title>Learning as Search</article-title>
          . In: Sammut,
          <string-name>
            <given-names>C.</given-names>
            ,
            <surname>Webb</surname>
          </string-name>
          ,
          <string-name>
            <surname>G.I</surname>
          </string-name>
          . (eds.)
          <source>Encyclopedia of Machine Learning</source>
          , pp.
          <volume>572</volume>
          {
          <fpage>576</fpage>
          . Springer, New York (
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Sridharan</surname>
          </string-name>
          , P.,
          <string-name>
            <surname>Campbell</surname>
            ,
            <given-names>M.I.:</given-names>
          </string-name>
          <article-title>A Grammar for Function Structures</article-title>
          .
          <source>In: Proc. of the ASME 2004 Intl. Design Engineering Technical Conf. and Computers and Information in Engineering Conf. (IDETC/CIE'04)</source>
          , Salt Lake City,
          <string-name>
            <surname>UT</surname>
          </string-name>
          , USA,
          <source>September 28-October 2</source>
          ,
          <year>2004</year>
          . vol.
          <volume>3a</volume>
          , pp.
          <volume>41</volume>
          {
          <issue>55</issue>
          (
          <year>2004</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Wyard</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          :
          <article-title>Context Free Grammar Induction Using Genetic Algorithms</article-title>
          .
          <source>In: Proc. of the IEE Colloquium on Grammatical Inference: Theory, Applications</source>
          and Alternatives, Colchester,
          <string-name>
            <surname>UK</surname>
          </string-name>
          , April
          <volume>22</volume>
          -
          <issue>23</issue>
          ,
          <year>1993</year>
          . pp.
          <source>P11/1{P11/5</source>
          . IET (
          <year>1993</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>