A block set free of conflicts between blocks is use-
ful to prevent conflicts between filters.
We say that a set of blocks is complete, if every
node of the assignment graph is contained in at least
one block, none of the blocks contains all elements of
another block partitioned the same way, and no block
can be extended further.
Constructing the DN for a complete, conflict-free
block set can be done by materialising the filters in the
blocks starting with the blocks containing the fewest
columns. Within the set of blocks containing an equal
number of columns the order is arbitrary, since none
of these blocks can be the input of another block in
that set (otherwise they would “overlap” and would
have been in conflict). A more detailed explanation
of how to construct the network (part) for a block in-
cluding considerations about the optimisation poten-
tial and what to keep in mind w. r. t. filters with exis-
tential parameters is given in (Ohler et al., 2016).
The construction order is relevant only if blocks
contain the same nodes. Since the block set is
conflict-free and complete, if one block overlaps with
another block, the columns of one of the blocks are a
subset of the columns of the other block. As the one
with fewer columns is constructed first, its output can
be used to construct the larger (w. r. t. column count)
block.
8 CONCLUSION & OUTLOOK
We presented a concept for an optimisation of DNs
for RBSs considering node-sharing and integrating
the degree of freedom emerging from being able
to choose between elements that are supposed to
be equal. This block concept is able to formalise
the problems of node-sharing, i. e. which network
parts would compete against each other. Equivalence
classes were integrated into the block concept to allow
for a free choice of which element to use for which
filter and of how to check the equality among the ele-
ments efficiently, e. g., using a minimal spanning tree.
Based on the notation presented, we are currently
developing optimisation algorithms considering sev-
eral rules at once. The output of such an algorithm
should be a conflict-free set of blocks, where no block
can be extended and no block contains all elements
of another block partitioned the same way. An opti-
mising DN construction algorithm can then use this
information to decide, whether node-sharing is bene-
ficial in terms of runtime cost and memory consump-
tion w. r. t. the data to be expected. Developing such
an algorithm with acceptable runtime costs – despite
the fact that it has to look at a set of rules instead of a
single one – is pending.
ACKNOWLEDGEMENTS
This work was funded by German Federal Ministry
of Economic Affairs and Energy for project Mobility
Broker (01ME12136).
REFERENCES
Aouiche, K., Jouve, P.-E., and Darmont, J. (2006).
Clustering-based materialized view selection in data
warehouses. In Manolopoulos, Y., Pokorný, J., and
Sellis, T. K., editors, Advances in Databases and In-
formation Systems, volume 4152 of Lecture Notes in
Computer Science, pages 81–95. Springer Berlin Hei-
delberg.
Brant, D. A., Grose, T., Lofaso, B., and Miranker, D. P.
(1991). Effects of database size on rule system perfor-
mance: Five case studies. In Lohman, G. M., Ser-
nadas, A., and Camps, R., editors, Proceedings of
the 17th International Conference on Very Large Data
Bases, pages 287–296.
Brownston, L., Farrell, R., Kant, E., and Martin, N. (1985).
Programming expert systems in OPS5. Addison-
Wesley Pub. Co., Inc., Reading, MA.
Forgy, C. L. (1981). OPS5 User’s Manual. Tech. Report
CMU-CS-81-135. Carnegie-Mellon Univ. Pittsburgh
Dept. Of Computer Science.
Forgy, C. L. (1982). Rete: A fast algorithm for the many
pattern/many object pattern match problem. Artificial
Intelligence, 19(1):17–37.
Hanson, E. N., Bodagala, S., and Chadaga, U. (2002). Trig-
ger condition testing and view maintenance using op-
timized discrimination networks. IEEE Transactions
on Knowledge and Data Engineering, 14(2):261–280.
Hanson, E. N. and Hasan, M. S. (1993). Gator : An Op-
timized Discrimination Network for Active Database
Rule Condition Testing. Tech. Report TR93-036, Univ.
of Florida, pages 1–27.
Miranker, D. P. (1987). TREAT: A Better Match Algorithm
for AI Production Systems; Long Version. Technical
report, Austin, TX, USA.
Ohler, F., Krempels, K.-H., and Terwelp, C. (2016). Ran-
domised optimisation of discrimination networks con-
sidering node-sharing. Manuscript submitted for pub-
lication.
Ohler, F. and Terwelp, C. (2015). A notation for discrim-
ination network analysis. In Proceedings of the 11th
International Conference on Web Information Systems
and Technologies, pages 566–570.
Whang, K.-Y. and Krishnamurthy, R. (1990). Query opti-
mization in a memory-resident domain relational cal-
culus database system.
An Enhanced Block Notation for Discrimination Network Optimisation
273