Abstract
Pervasive and mobile computing call for suitable middleware and programming models to support the activities of complex software systems in dynamic network environments. In this article we present TOTA (“Tuples On The Air”), a novel middleware and programming approach for supporting adaptive context-aware activities in pervasive and mobile computing scenarios. The key idea in TOTA is to rely on spatially distributed tuples, adaptively propagated across a network on the basis of application-specific rules, for both representing contextual information and supporting uncoupled interactions between application components. TOTA promotes a simple way of programming that facilitates access to distributed information, navigation in complex environments, and the achievement of complex coordination tasks in a fully distributed and adaptive way, mostly freeing programmers and system managers from the need to take care of low-level issues related to network dynamics. This article includes both application examples to clarify concepts and performance figures to show the feasibility of the approach
- Abdelzaher, T., Anokwa, Y., Boda, P., Burke, J., Estrin, D., Guibas, L., Kansal, A., Madden, S., and Reich, J. 2007. Mobiscopes for human spaces. IEEE Pervas. Comput. 6, 2, 20--29. Google ScholarDigital Library
- Babaoglu, O., Canright, G., Deutsch, A., Caro, G. D., Ducatelle, F., Gambardella, L., Ganguly, N., Jelasity, M., Montemanni, R., Montresor, A., and Urnes, T. 2006. Design patterns from biology for distributed computing. ACM Trans. Auton. Adap. Syst. 1, 1, 26--66. Google ScholarDigital Library
- Baldoni, R., Marchetti, C., Virgillito, A., and Vitenberg, R. 2005. Content-based publish-subscribe over structured overlay networks. In Proceedings of the International Conference on Distributed Computing Systems. IEEE Computer Society Press, Los Alamitos. Google ScholarDigital Library
- Basagni, S., Conti, M., Giordano, S., and Stojmenovic, I. 2004. Mobile Ad Hoc Networking. Wiley-IEEE Press, Piscataway. Google ScholarDigital Library
- Beal, J. and Bachrach, J. 2006. Infrastructure for engineered emergence on sensor/actuator networks. IEEE Intel. Syst. 21, 2, 10--19. Google ScholarDigital Library
- Bonabeau, E., Dorigo, M., and Theraulaz, G. 1999. Swarm Intelligence. From Natural to Artificial Systems. Oxford University Press, Oxford, U.K. Google ScholarDigital Library
- Borcea, C., Iyer, D., Kang, P., Saxena, A., and Iftode, L. 2002. Cooperative computing for distributed embedded systems. In Proceedings of the International Conference on Distributed Computing Systems. IEEE Computer Society Press, Los Alamitos. Google ScholarDigital Library
- Cabri, G., Ferrari, L., Leonardi, L., Mamei, M., and Zambonelli, F. 2005. Uncoupling coordination: Tuple-based models for mobility. In Mobile Middleware. Taylor and Francis CRC Press, London, U.K., 229--256.Google Scholar
- Cabri, G., Leonardi, L., Mamei, M., and Zambonelli, F. 2003. Location-dependent services for mobile users. IEEE Trans. Syst. Man, Cybernet.—Part A: Syst. Hum. 33, 6, 667--681. Google ScholarDigital Library
- Camurri, M., Mamei, M., and Zambonelli, F. 2006. Urban traffic control with co-fields. In International Workshop on Environments for Multi-Agent Systems. Lecture Notes in Computer Science, vol. 4885. Springer Verlag, Berlin, Germany. Google ScholarDigital Library
- Castelli, G., Rosi, A., Mamei, M., and Zambonelli, F. 2007. A simple model and infrastructure for context-aware browsing of the world. In Proceedings of the International Conference on Pervasive Computing and Communications. IEEE Computer Society Press, Los Alamitos. Google ScholarDigital Library
- Cugola, G. and Picco, G. 2006. Reds: A reconfigurable dispatching system. In Proceedings of the International Workshop on Software Engineering and Middleware. (Portland). Google ScholarDigital Library
- Davies, N., Cheverst, K., Mitchell, K., and Efrat, A. 2001. Using and determining location in a context-sensitive tour guide. IEEE Comput. 34, 8, 35--41. Google ScholarDigital Library
- Eugster, P., Felber, P., Guerraoui, R., and Kermarrec, A. 2003. The many faces of publish/subscribe. ACM Comput. Surv. 35, 2, 114--131. Google ScholarDigital Library
- Gamma, E., Helm, R., Johnson, R., and Vlissides, J. 1999. Design Patterns. Addison-Wesley, Reading.Google Scholar
- Ganesan, D., Krishnamachari, B., Woo, A., Culler, D., Estrin, D., and Wicker, S. 2002. Complex behavior at scale: An experimental study of low-power wireless sensor networks. Tech. rep. UCLA/CSD-TR 02-0013. University of California, Los Angeles.Google Scholar
- Gelernter, D. and Carriero, N. 1992. Coordination languages and their significance. Commun. ACM 35, 2, 96--107. Google ScholarDigital Library
- Hightower, J. and Borriello, G. 2001. Location systems for ubiquitous computing. IEEE Comput. 34, 8, 57--66. Google ScholarDigital Library
- Intanagonwiwat, C., Govindan, R., Estrin, D., Heidemann, J., and Silva, F. 2003. Directed diffusion for wireless sensor networking. IEEE/ACM Trans. Netw. 11, 1, 2--16. Google ScholarDigital Library
- Johanson, B. and Fox, A. 2002. The event heap: A coordination infrastructure for interactive work spaces. In Proceedings of the International Workshop on Mobile Computer Systems and Applications. IEEE Computer Society Press, Los Alamitos. Google ScholarDigital Library
- Julien, C. and Roman, C. 2006. Egospaces: Facilitating rapid development of context-aware mobile applications. IEEE Trans. Softw. Eng. 32, 5, 281--298. Google ScholarDigital Library
- Lee, H., Mihailescu, P., and Shepherdson, J. 2007. Realizing teamwork in the field: An agent-based approach. IEEE Pervas. Comput. 6, 2, 85--92. Google ScholarDigital Library
- Mamei, M. and Zambonelli, F. 2004. Motion coordination in the quake 3 arena environment: A field-based approach. In International Workshop on Environments for Multi-Agent Systems. Lecture Notes in Computer Science, vol. 3374. Springer Verlag, Berlin, Germany. Google ScholarDigital Library
- Mamei, M. and Zambonelli, F. 2006a. Programming modular robots with the tota middleware. In International Workshop on Engineering Self-Organizing Applications. Lecture Notes in Computer Science, vol. 4389. Springer Verlag, Berlin, Germany. Google ScholarDigital Library
- Mamei, M. and Zambonelli, F. 2006b. Self-maintained overlay data structures for pervasive autonomic services. In Workshop on Self-Managed Networks, Systems, and Services. Springer Verlag, Berlin, Germany. Google ScholarDigital Library
- Mamei, M., Zambonelli, F., and Leonardi, L. 2004. Co-fields: A physically inspired approach to distributed motion coordination. IEEE Pervas. Comput. 3, 2, 52--61. Google ScholarDigital Library
- Menezes, R. and Tolksdorf, R. 2003. A new approach to scalable linda-systems based on swarms. In Proceedings of the ACM Symposium on Applied Computer. ACM Press, New York. Google ScholarDigital Library
- Mishra, A. and Nadkarni, K. M. 2003. Security in wireless ad hoc networks—A survey. In The Hand book of Ad Hoc Wireless Networks, M. Ilyas, Ed. CRC Press, Boca Raton, 499--549. Google ScholarDigital Library
- Montresor, A., Jelasity, M., and Babaoglu, O. 2005. Gossip-based aggregation in large dynamic networks. ACM Trans. Comput. Syst. 23, 3, 219--252. Google ScholarDigital Library
- Mottola, L. and Picco, G. P. 2006. Programming wireless sensor networks with logical neighborhoods. In Proceedings of the International Conference on Integrated Internet Ad Hoc and Sensor Networks. ACM Press, New York, 8. Google ScholarDigital Library
- Nagpal, R. 2002. Programmable self-assembly using biologically-inspired multi-agent control. In Proceedings of the Intenational Conference on Autonomous Agents and Multi-Agent Systems. ACM Press, New York. Google ScholarDigital Library
- Newton, R. and Welsh, M. 2004. Region streams: Functional macro-programming for sensor networks. In Proceedings of the International Workshop on Data Management for Sensor Networks. ACM Press, New York, 78--87. Google ScholarDigital Library
- O'Grady, R., Gross, R., Mondada, F., Bonani, M., and Dorigo, M. 2005. Self-assembly on demand in a group of physical autonomous mobile robots navigating rough terrain. In Proceedings of the European Conference on Artificial Life, (Canterbury, U.K). Google ScholarDigital Library
- Parunak, H. V. 1997. Go to the ant: Engineering principles from natural multi-agent systems. Ann. Operat. Res. 75, 69--101.Google ScholarCross Ref
- Picco, G., Murphy, A., and Roman, G. 2006. Lime: A coordination model and middleware supporting mobility of hosts and agents. ACM Trans. Softw. Engin. Methodol. 15, 3, 279--328. Google ScholarDigital Library
- Pister, K. 2000. On the limits and applicability of mems technology. In Defense Science Study Group Report. Institute for Defense Analysis. Alexandria.Google Scholar
- Riva, O., Nadeem, T., Borcea, C., and Iftode, L. 2007. Context-aware migratory services in ad hoc networks. IEEE Trans. Mobile Computing. Google ScholarDigital Library
- Robinson, P., Vogt, H., and Wagealla, W. 2005. Privacy, Security and Trust Within the Context of Pervasive Computing. Springer Verlag, Berlin, Germany. Google ScholarDigital Library
- Roman, G., Julien, C., and Huang, Q. 2002. Network abstractions for context-aware mobile computing. In Proceedings of the International Conference on Software Engineering. ACM Press, New York. Google ScholarDigital Library
- Schelfthout, K., Holvoet, T., and Berbers, Y. 2005. Views: Customizable abstractions for context-aware applications in manets. In International Workshop on Software Engineering for Large Multi-Agent Systems. Springer Verlag, Berlin, Germany. Google ScholarDigital Library
- Shen, W.-M., Will, P. M., Galstyan, A., and Chuong, C.-M. 2004. Hormone-inspired self-organization and distributed control of robotic swarms. Auton. Robots 17, 1, 93--105. Google ScholarDigital Library
- Stoy, K. and Nagpal, R. 2004. Self-reconfiguration using directed growth. In Proceedings of the International Symposium on Distributed Autonomous Robotic Systems, (Toulouse, France).Google Scholar
- Want, R. and Pering, T. 2005. System challenges for ubiquitous and pervasive computing. In Proceedings of the International Conference on Software Engineering. ACM Press, New York. Google ScholarDigital Library
- Weyns, D., Schelfthout, K., Holvoet, T., and Lefever, T. 2005. Decentralized control of EGV transportation systems. In Proceedings of the International Conference on Autonomous Agents and Multi-Agent Systems -- Industry Track. ACM Press, New York. Google ScholarDigital Library
- Whitehouse, K., Sharp, C., Brewer, E., and Culler, D. 2004. Hood: A neighborhood abstraction for sensor network. In Proceedings of the International Conference on Mobile Systems, Application, and Services (Boston). Google ScholarDigital Library
- Zambonelli, F., Gleizes, M., Mamei, M., and Tolksdorf, R. 2005. Spray computers: Explorations in self-organization. J. Perv. Mobile Comput. 1, 1, 1--20. Google ScholarDigital Library
- Zhou, H. and Singh, S. 2000. Content-based multi-cast (CBM) in ad hoc networks. In Proceedings of the International Symposium on Mobile Ad Hoc Networking and Computing. ACM Press, New York. Google ScholarDigital Library
Index Terms
- Programming pervasive and mobile computing applications: The TOTA approach
Recommendations
Engineering Pervasive Service Ecosystems: The SAPERE Approach
Emerging pervasive computing services will typically involve a large number of devices and service components cooperating together in an open and dynamic environment. This calls for suitable models and infrastructures promoting spontaneous, situated, ...
Toward autonomic pervasive computing
iiWAS '08: Proceedings of the 10th International Conference on Information Integration and Web-based Applications & ServicesThe Autonomic Pervasive Computing can simplify the complexity of the configuration, maintenance and management of pervasive environments such as smart spaces. The Pervasive Computing is a paradigm where the information processes are distributed in the ...
Context-aware middleware support for component based applications in pervasive computing
APPT'07: Proceedings of the 7th international conference on Advanced parallel processing technologiesUbiquitous computing allows application developers to build a large and complex distributed system that can transform physical spaces into computationally active and intelligent environments. Ubiquitous applications need a middleware that can detect and ...
Comments