DJess - a context-sharing middleware to deploy distributed inference systems in pervasive computing domains

In this paper DJess is presented, a Java package that provides programmers with a lightweight middleware by which inference systems implemented in Jess and running on different nodes of a pervasive computing ensemble can transparently share both contextual knowledge (facts) and reactive behaviors (rules). Communication and coordination among inference systems (agents) is achieved through the ability of each agent to reason asynchronously on facts, i.e., propositional expressions representing the context, that might even be asserted by other agents on the basis of inference code (rules), which can be either local or transmitted by any node to any other node. Pervasive computing is the main reference domain that guided the design of the DJess architecture and still drives the API development.

[1]  Nicholas Carriero,et al.  Linda in context , 1989, CACM.

[2]  David Gelernter,et al.  Generative communication in Linda , 1985, TOPL.

[3]  Andrea Omicini,et al.  Agent Coordination Context: From Theory to Practice∗ , 2004 .

[4]  Babu Joseph,et al.  A blackboard architecture for model-based reasoning and plan refinement in real-time process control , 1992 .

[5]  Stefania Bandini,et al.  Dealing with space in multi--agent systems: a model for situated MAS , 2002, AAMAS '02.

[6]  Soheil Khajenoori,et al.  DYNACLIPS (DYNAmic CLIPS): A dynamic knowledge exchange tool for intelligent agents , 1994 .

[7]  Amy L. Murphy,et al.  LIME: a middleware for physical and logical mobility , 2001, Proceedings 21st International Conference on Distributed Computing Systems.

[8]  Giovanni Vigna,et al.  Understanding Code Mobility , 1998, IEEE Trans. Software Eng..

[9]  Krzysztof R. Apt,et al.  Logic Programming and Negation: A Survey , 1994, The Journal of Logic Programming.

[10]  Ted Selker,et al.  A Look at Human Interaction with Pervasive Computers , 1999, IBM Syst. J..

[11]  Francesco Amigoni,et al.  Dynamic Agencies and Multi-Robot Systems , 1998, DARS.

[12]  Paolo Bouquet,et al.  Distributed Context-Aware Systems , 2001, Hum. Comput. Interact..

[13]  Franco Zambonelli,et al.  Tuples on the air: a middleware for context-aware computing in dynamic networks , 2003, 23rd International Conference on Distributed Computing Systems Workshops, 2003. Proceedings..

[14]  Francesco Amigoni,et al.  A theoretical framework for the conception of agency , 1999 .

[15]  Gerd Kortuem,et al.  Cooperative Artefacts: Assessing Real World Situations with Embedded Technology , 2004, UbiComp.

[16]  Federico Cabitza,et al.  Being at one with things: the interconnection metaphor for intelligent environments , 2005 .

[17]  Earnest J. Friedman-hill Jess in Action: Java Rule-Based Systems , 2003 .

[18]  Liam J. Bannon,et al.  Constructing Common Information Spaces , 1997, ECSCW.

[19]  Peter Norvig,et al.  Artificial Intelligence: A Modern Approach , 1995 .

[20]  Lidia Fuentes,et al.  Towards the development of Ambient Intelligence Environments using Aspect-Oriented techniques , 2004 .

[21]  H. Penny Nii,et al.  Blackboard Systems, Part One: The Blackboard Model of Problem Solving and the Evolution of Blackboard Architectures , 1986, AI Mag..

[22]  Francesco Amigoni,et al.  A theoretical framework for the conception of agency , 1999, Int. J. Intell. Syst..

[23]  Anind K. Dey,et al.  Understanding and Using Context , 2001, Personal and Ubiquitous Computing.

[24]  H. Penny Nii,et al.  Blackboard systems: the blackboard model of problem solving and the evolution of blackboard architectures , 1995 .

[25]  Paul Dourish,et al.  Introduction to This Special Issue on Context-Aware Computing , 2001, Hum. Comput. Interact..

[26]  Gregory D. Abowd,et al.  A Conceptual Framework and a Toolkit for Supporting the Rapid Prototyping of Context-Aware Applications , 2001, Hum. Comput. Interact..

[27]  Toru Ishida,et al.  Parallel, Distributed and Multi-Agent Production Systems - A Research Foundation for Distributed Artificial Intelligence , 1995, ICMAS.

[28]  Guanling Chen,et al.  A Survey of Context-Aware Mobile Computing Research , 2000 .

[29]  Samir Tata,et al.  Specifying Interactions in Cooperative Applications , 1999 .

[30]  Andrew T. Campbell,et al.  Managing complexity: middleware explained , 1999 .

[31]  Federico Cabitza,et al.  Supporting Wards with Interactive Resources and Logic-based Systems , 2004 .

[32]  Mark Weiser,et al.  Some computer science issues in ubiquitous computing , 1993, CACM.

[33]  Anurag Acharya,et al.  Eliminating redundant barrier synchronizations in rule-based programs , 1996, ICS '96.

[34]  Vinny Cahill,et al.  A framework for developing mobile, context-aware applications , 2004, Second IEEE Annual Conference on Pervasive Computing and Communications, 2004. Proceedings of the.