Skip to main content

Rule-based inference and decomposition for distributed in-network processing in wireless sensor networks

Abstract

Wireless sensor networks are application specific and necessitate the development of specific network and information processing architectures that can meet the requirements of the applications involved. A common type of application for wireless sensor networks is the event-driven reactive application, which requires reactive actions to be taken in response to events. In such applications, the interest is in the higher-level information described by complex event patterns, not in the raw sensory data of individual nodes. Although the central processing of information produces the most accurate results, it is not an energy-efficient method because it requires a continuous flow of raw sensor readings over the network. As communication operations are the most expensive in terms of energy usage, the distributed processing of information is indispensable for viable deployments of applications in wireless sensor networks. This method not only helps in reducing the total amount of packets transmitted in the network and the total energy consumed by the sensor nodes, but also produces scalable and fault-tolerant networks. For this purpose, we present two schemes that distribute information processing to appropriate nodes in the network. These schemes use reactive rules, which express relations between event patterns and actions, in order to capture reactive behavior. We also share the results of the performance of our algorithms and the simulations based on our approach that show the success of our methods in decreasing network traffic while still realizing the desired functionality.

This is a preview of subscription content, access via your institution.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8

References

  1. 1.

    Ahn S, Kim D (2006) Proactive context-aware sensor networks. Lect Notes Comput Sci 3868/2006:38–53

    Article  Google Scholar 

  2. 2.

    Akyildiz IF, Weilian S, Sankarasubramaniam Y, Cayirci E (2002) A survey on sensor networks. IEEE Commun Mag 40(8):102–114

    Article  Google Scholar 

  3. 3.

    Apiletti D, Baralis E, Cerquitelli T (2011) Energy-saving models for wireless sensor networks. Knowl Inf Syst 28(3):615–644

    Article  Google Scholar 

  4. 4.

    Bonato P (2010) Advances in wearable technology and its medical applications. In: Proceedings of 32nd annual international conference of the IEEE engineering in medicine and biology society (EMBC), Buenos Aires, Argentina, September 2010

  5. 5.

    Braginsky D, Estrin D (2002) Rumor routing algorithm for sensor networks. In: Proceedings of the 1st ACM international workshop on wireless sensor networks and applications, Atlanta Georgia, USA, September 2002, pp 22–31

  6. 6.

    Carrano RC, Passos D, Magalhaes LCS, Albuquerque CVN (2014) Survey and taxonomy of duty cycling mechanisms in wireless sensor networks. IEEE Commun Surv Tutor 16(1):181–194

    Article  Google Scholar 

  7. 7.

    Castalia: a simulator for WSNs. http://castalia.forge.nicta.com.au/. Last Accessed on Feb 2016

  8. 8.

    Chong SK, Gaber MM, Krishnaswamy S, Loke SW (2011) Energy conservation in wireless sensor networks: a rule-based approach. Knowl Inf Syst 28(3):579–614

    Article  Google Scholar 

  9. 9.

    Eckert M (2008) Complex event processing with XChange\(^{EQ}\): language design, formal semantics, and incremental evaluation for querying events, Ph.D. Dissertation, October 2008

  10. 10.

    Fei X, Magill E (2012) REED: flexible rule based programming of wireless sensor networks at runtime. Comput Netw 56(14):3287–3299

    Article  Google Scholar 

  11. 11.

    Fragouli C, Widmer J, Boudec J-Y L (2006) A network coding approach to energy efficient broadcasting: from theory to practice. In: Proceedings of IEEE INFOCOM 2006, Barcelona, Spain, April 2006, pp 1–11

  12. 12.

    Gatziu S, Dittrich KR (1994) Detecting composite events in active databases using petri nets. In: Proceedings of the 4th international workshop on research issues in data engineering: active database systems, pp 2–9, February 1994

  13. 13.

    Hande A, Polk T, Walker W, Bhatia D (2006) Self-powered wireless sensor networks for remote patient monitoring in hospitals. Sensors 6 9:1102–1117

    Article  Google Scholar 

  14. 14.

    Hanson MA, Powell HC, Barth AT, Ringgenberg K, Calhoun BH, Aylor JH, Lach J (2009) Body area sensor networks: challenges and opportunities. Computer 42(1):58–65

    Article  Google Scholar 

  15. 15.

    Hung C-C, Peng W-C (2011) Optimizing in-network aggregate queries in wireless sensor networks for energy saving. Data Knowl Eng 70(7):617–641

    Article  Google Scholar 

  16. 16.

    Intanagonwiwat C, Govindan R, Estrin D (2000) Directed diffusion: a scalable and robust communication paradigm. In: Proceedings of the 6th annual international conference on mobile computing and networking, Boston MA, USA, August 2000, pp 56–67

  17. 17.

    Jiao B, Son S, Stankovic J (2005) GEM: generic event service middleware for wireless sensor networks. In: Proceedings of the 2nd international workshop on networked sensing systems (INSS), San Diego, CA, USA, June 2005

  18. 18.

    Khan AM, Lee Y-K, Lee SY, Kim T-S (2010) A triaxial accelerometer-based physical-activity recognition via augmented-signal features and a hierarchical recognizer. IEEE Trans Inf Technol Biomed 14(5):1166–1172

    Article  Google Scholar 

  19. 19.

    Kotidis Y (2005) Snapshot queries: towards data-centric sensor networks. In: Proceedings of the 21st international conference on data engineering, Tokyo, Japan, April 2005, pp 131–142

  20. 20.

    Lai Y, Zeng W, Lin Z, Li G (2010) LAMF: framework for complex event processing in wireless sensor network. In: Proceedings of the 2nd international conference on information science and engineering, Hangzhou, China, December 2010, pp 2155–2158

  21. 21.

    Lara R, Benitez D, Caamano A, Zennar M, Rojo-Alvarez JL (2015) On real-time performance evaluation of volcano-monitoring systems with wireless sensor networks. IEEE Sens J 15(6):3514–3523

    Article  Google Scholar 

  22. 22.

    Li M, Liu Y (2009) Underground coal mine monitoring with wireless sensor networks. ACM Trans Sens Netw 5(2):1–29

    Article  Google Scholar 

  23. 23.

    Liu X, Cao J, Tang S, Guo P (2015) Fault tolerant complex event detection in WSNs: a case study in structural health monitoring. IEEE Trans Mob Comput 14(12):2502–2515

    Article  Google Scholar 

  24. 24.

    Lloret J, Garcia M, Bri D, Sendra S (2009) A wireless sensor network deployment for rural and forest fire detection and verification. Sens 9 9(11):8722–8747

    Article  Google Scholar 

  25. 25.

    Lu G, Sadagopan N, Krishnamachari B, Goel A (2005) Delay efficient sleep scheduling in wireless sensor networks. In: Proceedings of IEEE INFOCOM 2005. 24th annual joint conference of the IEEE computer and communications societies, vol 4, Miami, FL, USA, March 2005, pp 2470–2481

  26. 26.

    Luo H, Ye F, Cheng J, Lu S, Zhang L (2005) TTDD: two-tier data dissemination in large-scale wireless sensor networks. Wirel Netw J 11(1–2):161–175

    Article  Google Scholar 

  27. 27.

    Ma J, Lou W, Wu Y, Li X-Y, Chen G (2009) Energy efficient TDMA sleep scheduling in wireless sensor networks. In: Proceedings of IEEE INFOCOM 2009, Rio de Jenairo, Brazil, April 2009, pp 630–638

  28. 28.

    Madden SR, Franklin MJ, Hellerstein JM, Hong W (2005) TinyDB: an acquisitional query processing system for sensor networks. ACM Trans Database Syst 30(1):122–173

    Article  Google Scholar 

  29. 29.

    Manjeshwar A, Agrawal DP (2000) TEEN: a routing protocol for enhanced efficiency in wireless sensor networks. In: Proceedings of 15th international parallel and distributed processing symposium, San Francisco, CA, USA, April 2000, pp 2009–2015

  30. 30.

    Marcelloni F, Vecchio M (2008) A simple algorithm for data compression in wireless sensor networks. IEEE Commun Lett 12(6):411–413

    Article  Google Scholar 

  31. 31.

    Perianu MM, Havinga P (2007) D-FLER: distributed fuzzy logic engine for rule-based wireless sensor networks. Ubiquitous Comput Syst 4836(2007):86–101

    Article  Google Scholar 

  32. 32.

    Pietzuch PR, Shand B, Bacon J (2004) Composite event detection as a generic middleware extension. In: IEEE network magazine, special issue on middleware technologies for future communication networks, Jan/Feb 2004

  33. 33.

    Pottie GJ, Kaiser WJ (2000) Wireless integrated network sensors. Commun ACM 43(5):51–58

    Article  Google Scholar 

  34. 34.

    Shnayder V, Hempstead M, Chen BR, Allen GW, Welsh M (2004) Simulating the power consumption of large-scale sensor network applications. In: Proceedings of the 2nd international conference on embedded networked sensor systems, Baltimore, MD, USA, November 2004, pp 188–200

  35. 35.

    Szewczyk R, Mainwaring A, Polastre J, Anderson J, Culler D (2004) An analysis of a large scale habitat monitoring application. In: Proceedings of the 2nd international conference on embedded networked sensor systems, Baltimore, MD, USA, November 2004, pp 214–226

  36. 36.

    Villas LA, Boukerche A, Ramos HS, de Oliveira HABF, de Araujo RB, Loureiro AAF (2013) DRINA: a lightweight and reliable routing approach for in-network aggregation in wireless sensor networks. IEEE Trans Comput 62(4):676–689

    MathSciNet  Article  Google Scholar 

  37. 37.

    Xu Y, Heidemann J, Estrin D (2001) Geography-informed energy conservation for Ad Hoc routing. In: Proceedings of the 7th annual international conference on mobile computing and networking, Rome, Italy, July 2001, pp 70–84

  38. 38.

    Yao Y, Gehrke J (2002) The cougar approach to in-network query processing in sensor networks. ACM SIGMOD 31(3):9–18

    Article  Google Scholar 

  39. 39.

    Zoumboulakis M, Roussos G, Poulovassilis A (2004) Active rules for sensor databases. In: Proceedings of the first workshop on data management for sensor networks (DMSN’04), Toronto, Canada, September 2004

Download references

Acknowledgments

This work is supported in part by a research Grant from TUBITAK with Grant No. 114R082.

Author information

Affiliations

Authors

Corresponding author

Correspondence to Ibrahim Korpeoglu.

Appendices

Appendix 1: Proof of RBDA

Before we proceed with the proof of the algorithm, let’s give the common facts, terms and notations used in this subsection.

By a single operation of the algorithm, a rule is decomposed into sub-rules, which are then to be processed by two different types of nodes. The node whose input set is used to determine P, Q, \(Q^\prime \) and R is referred to as the first node and the other as the second node. The antecedent of the original rule might contain P, \((Q_i\;|\;Q_i^\prime )\), R or any combination of them. There are three cases that this could possibly fit:

  • There is no \((Q\;|\;Q^\prime )\) in the rule.

    • Case 1 There is either P or R. If there is P, r : P is placed in the first node’s rule-base, and if R, r : R is placed the second node’s rule-base.

    • Case 2 There are both P and R. A single pair of rules is generated: \(r_1: P\), which is placed in the first node’s rule-base, and \( r_2: r_1 \; \& \; R\), which is placed in the second node’s rule-base.

  • Case 3 There are \((Q\;|\;Q^\prime )\) and possibly P and/or R. If there are n conjuncts in the form of \((Q\;|\;Q^\prime )\), there can be \(n+1\) cases that we need to consider: 0 to n Qs being detected by the first node. For each of n + 1 cases, there are C(ni) different combinations of Qs where \(0 \le i \le n\). Therefore, there can be a total of \(\sum _{i=0}^n C(n,i)\) = \(2^n\) different cases that can be encountered during run-time processing. The rule-decomposition algorithm exhaustively generates a distinct pair of rules for every possible case. Let q be the set \(\{Q_1, Q_2, \ldots , Q_n\}\), \(q^\prime \) be the set \(\{Q_1^\prime , Q_2^\prime , \ldots , Q_n^\prime \}\), s be any subset of q and \(s^\prime \) be the subset of \(q^\prime \) such that \((Q_i^\prime \in s^\prime ) \Leftrightarrow (Q_i \notin s)\). The antecedents of a pair of rules \(r_1\) and \(r_2\) generated by the rule-decomposition algorithm are as follows (coe(x) means conjunction of elements of x):

    • \( r_1: \; \left( P \; \& \; {<} coe(s) {>} \right) \), which is placed in the first node’s rule-base and

    • \( r_2:\; \left( {<}output\;of\;r_1{>} \; \& \; {<} coe(s^\prime ) {>} \; \& \; R \right) \), which is placed in the second node’s rule-base.

    If, however, there is no R and the case considered is for n Qs, only a single rule is added into the first node’s rule-base: \( r: \; \left( P \; \& \; {<} conjunction\; of \;elements\; of\; q {>} \right) \). For any pair of \(r_1\) and \(r_2\), the union of the conjuncts of \(r_1\) and \(r_2\) covers all the conjuncts of the original rule, since s together with \(s^\prime \) cover all conjuncts that are in the form \((Q\;|\;Q^\prime )\) of the original rule.

Lemma 1

An event pattern captured by a rule is also captured by the sub-rules, which are decomposed from that rule.

Proof

We need to prove that if original rule satisfies, r or \(r_2\) also satisfies. Consider the three cases one by one:

  1. 1.

    P or R As the original rule and the rule placed in the sub-rule-base are the same, the same events are detected.

  2. 2.

    P and R Satisfaction of the original rule means that P and R evaluate to true. If P satisfies, \(r_1\) also satisfies. Similarly, the satisfaction of \(r_1\) and R results in the satisfaction of \(r_2\). Therefore, if the original rule satisfies, sub-rules \(r_1\) and \(r_2\) also satisfy.

  3. 3.

    Existence of \((Q \;|\;Q^\prime )\) Satisfaction of the original rule implies that P, R and each \((Q\;|\;Q^\prime )\) evaluate to true. Since an exhaustive list of possible cases enumerated by sub-rules, at least one rule pair out of \(2^n\) pairs will catch the event pattern detected by the original rule. \(\square \)

Lemma 2

An event pattern that cannot be captured by a rule cannot be captured by the sub-rules generated as a result of the decomposition of that rule.

Proof

We need to prove that if the original rule does not satisfy, neither does r or \(r_2\). Consider the three cases one by one:

  1. 1.

    P or R As the original rule and the rule placed in the sub-rule-base are the same, the same event pattern should yield the same result.

  2. 2.

    P and R If the original rule does not satisfy, either P or R should yield a false evaluation. If P were false, \(r_1\) and, as a result, \(r_2\) would not satisfy. If R were false, \(r_2\) would not satisfy. Therefore, if the original rule does not satisfy, neither does sub-rule \(r_2\).

  3. 3.

    Existence of \((Q \;|\;Q^\prime )\) If the original rule does not satisfy, there must be at least one conjunct that evaluates to false. Since the conjuncts of the original rule are covered by all pairs of sub-rules, each pair of sub-rules should have at least one conjunct that does not satisfy, which means that if the original rule does not satisfy, sub-rules do not satisfy either. The same reasoning applies to the case in which there is only r, which covers all conjuncts of the original rule.

Theorem 1

For a two-layer hierarchy, sub-rules that are decomposed from a rule capture exactly the same events as the original rule.

Proof

In order for this to be true, the following conditions should hold:

  • an event pattern should be captured by sub-rules if and only if it could be captured by the original rule,

  • an event pattern should not be captured by sub-rules if and only if it could not be captured by the original rule.

Let A(e) be a proposition expressing an event pattern e detected by the original rule, B(e) be a proposition expressing e detected by the sub-rules of that rule, \(A^\prime (e)\) be the proposition expressing e not detected by the original rule, and \(B^\prime (e)\) be the proposition expressing e not detected by the sub-rules. We need to prove that \((A(e) \Leftrightarrow B(e))\) and \((A^\prime (e) \Leftrightarrow B^\prime (e))\). In order to prove \((A(e) \Leftrightarrow B(e))\), we need to show \((A(e) \Rightarrow B(e))\) and \((B(e) \Rightarrow A(e))\). Similarly, in order to prove \((A^\prime (e) \Leftrightarrow B^\prime (e))\), we need to show \((A^\prime (e) \Rightarrow B^\prime (e))\) and \((B^\prime (e) \Rightarrow A^\prime (e))\). However, we know from propositional logic that \((A(e) \Rightarrow B(e)) \vdash (B^\prime (e) \Rightarrow A^\prime (e))\) and \((A^\prime (e) \Rightarrow B^\prime (e)) \vdash (B(e) \Rightarrow A(e))\). Therefore, it is enough to show that \((A(e) \Rightarrow B(e))\) and \((A^\prime (e) \Rightarrow B^\prime (e))\). The proofs for these are given in Lemmas 1 and 2. \(\square \)

Theorem 2

For a k-layer hierarchy, sub-rules that are decomposed from a rule capture exactly the same events as the original rule.

Proof

(Proof by Induction) A single operation of the decomposition algorithm generates two sub-rule-bases: a new rule-base for the node whose input set is used by the algorithm, and a modified original rule-base (MORB).

  • Initial Step For two-layer hierarchy, a single running of the algorithm generates two sub-rule-bases. The sub-rules of a decomposed rule capture exactly the same events as the original rule, as proved by Theorem 1.

  • Inductive Step For a k-layer hierarchy, the decomposition algorithm should be run \((k-1)\) times. We have to prove that for an arbitrary \(k \ge 3\), if the theorem holds for \((k-1)\) sub-rule-bases, it also holds for k sub-rule-bases. Let’s assume that the algorithm is run \((k-2)\) times, which generates \((k-1)\) rule-bases, and the events detected by the original rule are exactly the same as the events detected by sub-rules distributed into \((k-1)\) rule-bases. In order to generate the final rule-bases for \((k-1)\)th and kth layers, the decomposition algorithm should be run once more, taking the following inputs: the input set of the \((k-1)\)th layer and the MORB, generated from the \((k-2)\)th iteration of the algorithm. Theorem 1 proves that sub-rules that are decomposed from a rule in MORB and placed in the newly generated rule-bases capture exactly the same event patterns as the event patterns detected by that decomposed rule. Based on this, we can conclude that sub-rules of an initial rule placed in k rule-bases capture exactly the same events as that rule does, since the event patterns captured by the rules of first \((k-2)\) together with the patterns captured by MORB constitute the event pattern of the initial rule. \(\square \)

Appendix 2: Proof of v-RBDA

By a single operation of the algorithm, a rule is decomposed into sub-rules to be processed by two different types of nodes. Let’s refer to the rule-base of the node where the input set is used to determine P, Q, \(Q^\prime \) and R as the first rule-base and the other one as the second rule-base.

The antecedent of the original rule might contain P, a KTV/PMV pair, \((Q_i\;|\;Q_i^\prime )\), R or any combination of these. It might contain no or two variables in its antecedent: a KTV (corresponding to the elements of q) and a PMV (corresponding to the elements of \(q^\prime \)). They are related such that if the consequent of a rule does not contain a variable (i.e., it is a decision rule) and the non-variable conjuncts have been satisfied, the following condition must hold in order for the rule to fire: \(\forall i, (\mathrm{KTV}[i] \;|\; \mathrm{PMV}[i]) \rightarrow \mathrm{true}\).

There are four cases that the original rule could possibly be in:

  • There are neither variables nor \((Q\;|\;Q^\prime )\) in the rule.

    • Case 1 There is either P or R. If there is P, r : P is placed in the first rule-base and if R, r : R is placed the second rule-base.

    • Case 2 There are both P and R. A single pair of rules is generated: \(r_1: P\), which is placed in the first rule-base, and \( r_2: r_1 \; \& \; R\), which is placed in the second rule-base.

  • Case 3 There are \((Q\;|\;Q^\prime )\) and possibly P and/or R in the rule, but no variables. Let \(\vartheta \) and \(\mu \) correspond to the elements of q, and \(\omega \) corresponds to the elements of \(q^\prime \). A pair of rules, \(r_1\), for the first rule-base, and \(r_2\), for the second rule-base, are as follows: \( r_1: \left( [P \; \& ]\; \vartheta \right) \rightarrow \mu \), \( r_2: \left( \mu \; \& \; \omega \;[ \& \; R] \right) \rightarrow O\). If there is no R, an additional rule is added into the first rule-base: \( r: \left( [P \; \& ] {<} conj\_of\_elements\_of\_q {>}\right) \rightarrow O\). Actually, \(r_1\) and \(r_2\) could detect the same event patterns as r, but its sole purpose is to enable the first node to react to events.

  • Case 4 There is a KTV/PMV pair and possibly \((Q\;|\;Q^\prime )\) and/or P and/or R in the rule. Let KTV be \(\mu \) and PMV be \(\theta \) for the original rule, \(\vartheta \) and \(\tau \) correspond to the elements of q and processable entries of \(\theta \), and \(\omega \) correspond to the elements of \(q^\prime \) and the non-processable elements of \(\theta \). The antecedents of a pair of rules \(r_1\) and \(r_2\) generated by the rule-decomposition algorithm are as follows: \( r_1: \left( [P \; \& ]\; \mu \; \& \; \vartheta \right) \rightarrow \tau \), \( r_2: \left( \tau \; \& \; \omega \;[ \& \; R] \right) \rightarrow O\). If there is no R, an additional rule is added into the first rule-base: \( r: \left( [P \; \& ]\; \mu \; \& \; \vartheta \;[ \& {<} conj\_of\_elements\_of\_q {>}] \right) \rightarrow O\). It is used for enabling the first node to react to events.

An event pattern detected by the original rule is also detected by sub-rules if \(r_2\) or r fires. Because an event pattern that is detected by r is also detected by \(r_1\), we will omit discussing it in the rest of the proof. Furthermore, as the proofs for cases 1 and 2 are similar to the ones given in Sect. 3, here we discuss only cases 3 and 4.

Lemma 3

An event pattern captured by the original rule is also captured by sub-rules, which are decomposed from that rule.

Proof

Let E(Pr) represent the result of the evaluation of Pr. The firing of the original rule means that all conjuncts satisfy; in other words, E(P), E(R), \(\forall i\; E(Q_i\;|\;Q_i^\prime )\) and \(\forall i\; E(\mu [i]\;|\;\theta [i])\) (only for case 4) are true.

Case 3 As E(P) is true, \(r_1\) fires with \(\mu [i]\) set to true if \(E(Q_i)\) is true, or else it is set to false. Since all \((Q_i\;|\;Q_i^\prime )\) evaluate to true, if \(\mu [i]\) \(( {=}E(Q_i))\) is not true, \(\omega [i]\; ({=}E(Q^\prime _i))\) needs to satisfy. As a result, the condition that “\(\forall i, \; (\mathrm{KTV}[i] \;|\; \mathrm{PMV}[i]) \rightarrow \mathrm{true}\)” holds and because E(R) is true, \(r_2\) satisfies.

Case 4 Let there be x conjuncts in the form of \((Q\;|\;Q^\prime )\) and the number of entries of \(\mu \) be y. The first y elements of \(\vartheta \) contain the disjunctions of the processable predicates of \(\theta \) and the remaining x elements correspond to \(Q_i\). Similarly, the first y elements of \(\omega \) contain the disjunctions of the non-processable predicates of \(\theta \) and the remaining x elements correspond to \(Q_i^\prime \). \(\tau \) contain the results of the evaluations of the elements of \(\vartheta \). As E(P) is true, \(r_1\) fires, with \(\tau [i]\) is set to true if \(\mu [i]\) is true or \(\vartheta [i]\) satisfies, or else it is set to false. As all \((Q_i\;|\;Q_i^\prime )\) evaluate to true, the disjunction of \(\tau [i]\) and \(\omega [i]\), where \((y+1) \le i \le (y+x)\), needs to produce true as well. Since \(\theta [i] = \vartheta [i] \;|\; \omega [i]\) for \(1 \le i \le x\), what is captured by \(\theta \) in the original rule will also be captured by the \(\tau \) and \(\omega \) variable pair. As a result, the condition that “\(\forall i, \; (\mathrm{KTV}[i] \;|\; \mathrm{PMV}[i]) \rightarrow true\)” holds and because E(R) is true, \(r_2\) satisfies. \(\square \)

Lemma 4

An event pattern not captured by the original rule is not captured by the sub-rules, which are decomposed from that rule, either.

Proof

If the original rule does not satisfy, at least one of P, R, \((Q_i\;|\;Q_i^\prime )\) or \(\theta [i]\) (only for case 4) should fail to satisfy. If E(P) is false, \(r_1\) and in turn, \(r_2\) do not fire for cases 3 and 4. Similarly, if E(R) is false, \(r_2\) fails to satisfy. If E(P) and E(R) are true:

  • Case 3 As the original rule fails to fire, the following condition should hold: \(\exists i, \; E(Q_i \;|\; Q_i^\prime ) \rightarrow \mathrm{false}\). In such a case, although \(r_1\) fires, \(r_2\) fails to fire since the condition that “\(\forall i \; (\mathrm{KTV}[i] \;|\; \mathrm{PMV}[i])\) is true” does not satisfy.

  • Case 4 If there exists at least one i for which \(E(Q_i\;|\;Q_i^\prime )\) is false, \(r_2\) does not fire for the reason explained for case 3. Otherwise, the following condition must be true: \(\exists i, (\mu [i] \;|\; \theta [i]) \rightarrow false\). Since \(\theta [i] = \vartheta [i] \;|\; \omega [i]\), what is captured by \(\theta \) in the original rule will also be captured by the \(\tau \) and \(\omega \) variable pair in \(r_2\). As a result, the condition that ”\(\forall i, \; (\mathrm{KTV}[i] \;|\; \mathrm{PMV}[i]) \rightarrow \mathrm{true}\)” would fail and therefore \(r_2\) fails to satisfy.

As we can see, it is not possible to fire \(r_2\) if the original rule fails to fire. \(\square \)

Theorem 3

For a two-layer hierarchy, sub-rules that are decomposed from a rule capture exactly the same events as the original rule.

Proof

In order for this to be true, the following conditions should hold:

  • an event pattern should be captured by sub-rules if and only if it could be captured by the original rule,

  • an event pattern should not be captured by sub-rules if and only if it could not be captured by the original rule.

The proofs given for Lemmas 3 and 4 demonstrate that these conditions hold true.

Theorem 4

For a k-layer hierarchy, sub-rules that are decomposed from a rule capture exactly the same events as the original rule.

Proof

The proof is similar to the proof of Theorem 2. \(\square \)

Rights and permissions

Reprints and Permissions

About this article

Verify currency and authenticity via CrossMark

Cite this article

Sanli, O., Korpeoglu, I. & Yazici, A. Rule-based inference and decomposition for distributed in-network processing in wireless sensor networks. Knowl Inf Syst 50, 231–264 (2017). https://doi.org/10.1007/s10115-016-0942-z

Download citation

Keywords

  • In-network processing
  • Event-driven applications
  • Rule-based information processing
  • Wireless sensor networks