TY - GEN
T1 - A rule-based calculus and processing of complex events
AU - Bragaglia, Stefano
AU - Chesani, Federico
AU - Mello, Paola
AU - Sottara, Davide
PY - 2012
Y1 - 2012
N2 - Rules are definitely among the main kinds of knowledge representation in Artificial Intelligence. In recent years, there has been much discussion about production rules and logic programming to understand whether the two paradigms could be joined or, alternatively, which was the better. Conversely, the idea to program a production system with logic without actually relying on logic programming was proposed. In this paper we present a software component that implements a typical logic formalism, the Event Calculus within a production rules system. This component allows to perform deductive reasoning tasks (temporal projection or prediction, such as monitoring) and thanks to some technical choices, it proves to be quite efficient. In addition, thanks to its strong modular nature, it can adapt to the domain's requirements and complement other forms of reasoning at the same time. We also present some preliminary results on tests that we have conducted to show that our system based on a Java rules engine is almost as efficient as an equivalent logic program running on the fastest C++ Prolog interpreter. Furthermore we show how our framework can be used to effectively observe the evolving state of our use case - a Service Oriented Architecture server - in a way that qualifies as Complex Event Processing.
AB - Rules are definitely among the main kinds of knowledge representation in Artificial Intelligence. In recent years, there has been much discussion about production rules and logic programming to understand whether the two paradigms could be joined or, alternatively, which was the better. Conversely, the idea to program a production system with logic without actually relying on logic programming was proposed. In this paper we present a software component that implements a typical logic formalism, the Event Calculus within a production rules system. This component allows to perform deductive reasoning tasks (temporal projection or prediction, such as monitoring) and thanks to some technical choices, it proves to be quite efficient. In addition, thanks to its strong modular nature, it can adapt to the domain's requirements and complement other forms of reasoning at the same time. We also present some preliminary results on tests that we have conducted to show that our system based on a Java rules engine is almost as efficient as an equivalent logic program running on the fastest C++ Prolog interpreter. Furthermore we show how our framework can be used to effectively observe the evolving state of our use case - a Service Oriented Architecture server - in a way that qualifies as Complex Event Processing.
KW - Complex Event Processing
KW - Event Calculus
KW - Production Rules
KW - Rule-based Reasoning
UR - http://www.scopus.com/inward/record.url?scp=84866682118&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=84866682118&partnerID=8YFLogxK
U2 - 10.1007/978-3-642-32689-9_12
DO - 10.1007/978-3-642-32689-9_12
M3 - Conference contribution
AN - SCOPUS:84866682118
SN - 9783642326882
T3 - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
SP - 151
EP - 166
BT - Rules on the Web
T2 - 6th International Symposium on Rules on the Web: Research and Applications, RuleML 2012, collocated with the 20th biennial European Conference on Artificial Intelligence (ECAI 2012)
Y2 - 27 August 2012 through 29 August 2012
ER -