Lecture Notes in Computer Science Commenced Publication in 1973 Founding and Former Series Editors: Gerhard Goos, Juris Hartmanis, and Jan van Leeuwen
Editorial Board David Hutchison Lancaster University, UK Takeo Kanade Carnegie Mellon University, Pittsburgh, PA, USA Josef Kittler University of Surrey, Guildford, UK Jon M. Kleinberg Cornell University, Ithaca, NY, USA Alfred Kobsa University of California, Irvine, CA, USA Friedemann Mattern ETH Zurich, Switzerland John C. Mitchell Stanford University, CA, USA Moni Naor Weizmann Institute of Science, Rehovot, Israel Oscar Nierstrasz University of Bern, Switzerland C. Pandu Rangan Indian Institute of Technology, Madras, India Bernhard Steffen TU Dortmund University, Germany Madhu Sudan Microsoft Research, Cambridge, MA, USA Demetri Terzopoulos University of California, Los Angeles, CA, USA Doug Tygar University of California, Berkeley, CA, USA Gerhard Weikum Max-Planck Institute of Computer Science, Saarbruecken, Germany
6294
Sergey Balandin Roman Dunaytsev Yevgeni Koucheryavy (Eds.)
Smart Spaces and Next Generation Wired/Wireless Networking Third Conference on Smart Spaces, ruSMART 2010 and 10th International Conference, NEW2AN 2010 St. Petersburg, Russia, August 23-25, 2010 Proceedings
13
Volume Editors Sergey Balandin Nokia Research Center Office of CTO Itamerenkatu 11-13 00180 Helsinki, Finland E-mail:
[email protected] Roman Dunaytsev Tampere University of Technology Department of Communications Engineering Korkeakoulunkatu 10 33720,Tampere, Finland E-mail:
[email protected] Yevgeni Koucheryavy Tampere University of Technology Department of Communications Engineering Korkeakoulunkatu 10 33720, Tampere, Finland E-mail:
[email protected]
Library of Congress Control Number: 2010931611 CR Subject Classification (1998): C.2, H.4, D.2, K.6.5, D.4.6, H.3 LNCS Sublibrary: SL 5 – Computer Communication Networks and Telecommunications ISSN ISBN-10 ISBN-13
0302-9743 3-642-14890-5 Springer Berlin Heidelberg New York 978-3-642-14890-3 Springer Berlin Heidelberg New York
This work is subject to copyright. All rights are reserved, whether the whole or part of the material is concerned, specifically the rights of translation, reprinting, re-use of illustrations, recitation, broadcasting, reproduction on microfilms or in any other way, and storage in data banks. Duplication of this publication or parts thereof is permitted only under the provisions of the German Copyright Law of September 9, 1965, in its current version, and permission for use must always be obtained from Springer. Violations are liable to prosecution under the German Copyright Law. springer.com © Springer-Verlag Berlin Heidelberg 2010 Printed in Germany Typesetting: Camera-ready by author, data conversion by Scientific Publishing Services, Chennai, India Printed on acid-free paper 06/3180
Preface
We welcome you to the joint proceedings of the anniversary 10th NEW2AN 2010 (Next Generation Teletraffic and Wired/Wireless Advanced Networking) and Third ruSMART 2010 (Are You Smart) conferences held in St. Petersburg, Russia during August 23–25, 2010. Originally the NEW2AN conference was launched by ITC (International Teletraffic Congress) in St. Petersburg in June 1993 as an ITC-Sponsored Regional International Teletraffic Seminar. The first implementation was entitled “Traffic Management and Routing in SDH Networks” and was hosted by R&D LONIIS. In 2002 the event received its current name, NEW2AN. In 2008 NEW2AN was joined by a new counterpart in smart spaces, ruSMART, hence boosting interaction between researchers, practitioners and engineers from different areas of ICT. This year, in its 10th implementation, NEW2AN/ruSMART is an established conference with a unique cross-disciplinary mix of telecommunications science in Russia. NEW2AN/ruSMART has always featured outstanding keynotes from universities and companies from Europe, USA and Russia. The 10th NEW2AN technical program addressed various aspects of nextgeneration network architectures. New and innovative developments for enhanced signaling protocols, QoS mechanisms, cross-layer optimization, traffic characterization were also addressed within the program. In particular, issues of QoS in wireless and IP-based multiservice networks were dealt with, as well as financial aspects of future networks. It is also worth mentioning that emphasis was place on wireless networks, including, but not limited to, cellular networks, wireless local area networks, personal area networks, mobile ad hoc networks, and sensor networks. The Third Conference on Smart Spaces, ruSMART 2010, provided a forum for academic and industrial researchers to discuss new ideas and trends in the emerging area of smart spaces that creates new opportunities for making fully customized applications and services for the users. The conference brought together leading experts from top affiliations around the world and there was active participation and strong interest from Russian attendees with a good reputation for high-quality research and business in innovative service creation and applications development. This year the technical program of both conferences benefited from two keynote speakers: – Vladimir Gorodetsky, St. Petersburg Institute for Informatics and Automation of Russian Academy of Sciences, Russia – Ian Oliver, Nokia Research Center, Finland – Alexey Vinel, St. Petersburg Institute for Informatics and Automation of Russian Academy of Sciences, Russia
VI
Preface
We wish to thank the Technical Program Committee members of both conferences and associated reviewers for their hard work and important contribution to the conference. This year the conferences were organized in cooperation with the FRUCT Program, ITC (International Teletraffic Congress), IEEE, Tampere University of Technology, Popov Society, and supported by NOKIA, Nokia Siemens Networks and Sententia Ltd. The support of these organizations is gratefully acknowledged. Finally, we wish to thank many people who contributed to the organization. In particular, Jakub Jakubiak (TUT) carried a substantial load of the submission and review process, the website maintenance, did an excellent job on the compilation of camera-ready papers and in the interaction with Springer. Many thanks go to Natalia Avdeenko, Ekaterina Antonyuk and Ekaterina Akimova (Monomax Meetings & Incentives) for their excellent local organization efforts and the conference’s social program preparation. We believe that the work done for the 10th NEW2AN and Third ruSMART conferences provided an interesting and up-to-date scientific program. We hope that participants enjoyed the technical and social conference program, the Russian hospitality and the beautiful city of St. Petersburg. June 2010
Sergey Balandin Roman Dunaytsev Yevgeni Koucheryavy
Organization NEW2AN International Advisory Committee Nina Bhatti Igor Faynberg Jarmo Harju Andrey Koucheryavy Villy B. Iversen Paul K¨ uhn Kyu Ouk Lee Mohammad S. Obaidat Michael Smirnov Manfred Sneps-Sneppe Ioannis Stavrakakis Sergey Stepanov Phuoc Tran-Gia Gennady Yanovsky
Hewlett Packard, USA Alcatel Lucent, USA Tampere University of Technology, Finland ZNIIS R&D, Russia Technical University of Denmark, Denmark University of Stuttgart, Germany ETRI, Republic of Korea Monmouth University, USA Fraunhofer FOKUS, Germany Ventspils University College, Latvia University of Athens, Greece Sistema Telecom, Russia University of W¨ urzburg, Germany State University of Telecommunications, Russia
NEW2AN Technical Program Commitee TPC Chair Roman Dunaytsev Mari Carmen Aguayo-Torres Ozgur B. Akan Khalid Al-Begain Sergey Andreev
Tampere University of Technology, Finland
University of Malaga, Spain METU, Turkey University of Glamorgan, UK State University of Aerospace Instrumentation, Russia Tricha Anjali Illinois Institute of Technology, USA Konstantin Avrachenkov INRIA, France Francisco Barcelo UPC, Spain Sergey Balandin Nokia, Finland Thomas M. Bohnert SAP Research, Switzerland Torsten Braun University of Bern, Switzerland Chrysostomos Chrysostomou University of Cyprus, Cyprus Nirbhay Chaubey Institute of Science and Technology for Advanced Studies and Research (ISTAR), India Ibrahim Develi Erciyes University, Turkey Eylem Ekici Ohio State University, USA Sergey Gorinsky Washington University in St. Louis, USA Markus Fidler NTNU Trondheim, Norway Giovanni Giambene University of Siena, Italy Stefano Giordano University of Pisa, Italy Ivan Ganchev University of Limerick, Ireland Vitaly Gutin Popov Society, Russia
VIII
Organization
Andreas Kassler Maria Kihl Tatiana Kozlova Madsen Yevgeni Koucheryavy Jong-Hyouk Lee Vitaly Li Leszek T. Lilien Saverio Mascolo Maja Matijaˇsevic Paulo Mendes Pedro Merino Ilka Miloucheva Dmitri Moltchanov Edmundo Monteiro Se´an Murphy Marc Necker Nitin Nitin Jaypee Mairtin O’Droma Evgeni Osipov George Pavlou Veselin Rakocevic Simon Pietro Romano Alexander Sayenko Dirk Staehle Sergei Semenov Burkhard Stiller Weilian Su Arvind Swaminathan Dmitry Tkachenko Vassilis Tsaoussidis Christian Tschudin Andrey Turlikov Kurt Tutschku Alexey Vinel Lars Wolf
Karlstad University, Sweden Lund University, Sweden Aalborg University, Denmark Tampere University of Technology, Finland (Chair) INRIA, France Kangwon National University, Republic of Korea Western Michigan University, USA Politecnico di Bari, Italy University of Zagreb, FER, Croatia INESC Porto, Portugal University of Malaga, Spain Salzburg Research, Austria Tampere University of Technology, Finland University of Coimbra, Portugal University College Dublin, Ireland University of Stuttgart, Germany University of Information Technology, India University of Limerick, Ireland Lulea University of Technology, Sweden University of Surrey, UK City University London, UK Universita’ degli Studi di Napoli “Federico II”, Italy Nokia Siemens Networks, Finland University of W¨ urzburg, Germany Nokia, Finland University of Z¨ urich and ETH Z¨ urich, Switzerland Naval Postgraduate School, USA Qualcomm Inc., USA IEEE St. Petersburg BT/CE/COM Chapter, Russia Demokritos University of Thrace, Greece University of Basel, Switzerland State University of Aerospace Instrumentation, Russia University of Vienna, Austria SPIIRAN, Russia Technische Universit¨ at Braunschweig, Germany
NEW2AN Additional Reviewers V.V. Govindaswamy C. Hoene J. Jakubiak
N. Nitin S. Poryazov M. Smirnov
N. Vassileva
Organization
ruSMART Executive Technical Program Committee Sergey Boldyrev Nikolai Nefedov Ian Oliver Alexander Smirnov Vladimir Gorodetsky Michael Lawo Michael Smirnov Dieter Uckelmann Cornel Klein Maxim Osipov
Principle Scientist, Nokia Research Center, Helsinki, Finland Senior Research Engineer, Nokia Research Center, Zurich, Switzerland Principle Scientist, Nokia Research Center, Helsinki, Finland Head of laboratory, SPIIRAS, St. Petersburg, Russia Head of laboratory, SPIIRAS, St. Petersburg, Russia Professor, Center for Computing Technologies (TZI), University of Bremen, Germany Fraunhofer FOKUS, Germany LogDynamics Lab, University of Bremen, Germany Program Manager, Siemens Corporate Technology, Germany Siemens CT, Embedded Linux, Russia
ruSMART Technical Program Committee Juha Laurila Sergey Balandin Alexey Dudkov Didem Gozupek Kim Geunhyung Reto Krummenacher Prem Jayaraman Michel Banˆ atre Sergei Bogomolov Gianpaolo Cugola Dimitri Konstantas Markus Taumberger Bilhanan Silverajan Aaron J. Quigley Pedro Merino Victor Govindaswamy
Nokia Research Center, Switzerland Nokia Research Center, Finland University of Turku, Finland Bogazici University, Turkey Dong Eui University, Republic of Korea STI Innsbruck, Austria Monash University, Australia IRISA, France LGERP R&D Lab, Russia Politecnico di Milano, Italy University of Geneva, Switzerland VTT, Finland Tampere University of Technology, Finland University College Dublin, Ireland University of Malaga, Spain Texas A&M University, USA
ruSMART Additional Reviewers M. Baqer J. Jakubiak
Y. Koucheryavy
IX
Table of Contents I
ruSMART
Smart Spaces Use Cases Extending Context Spaces Theory by Proactive Adaptation . . . . . . . . . . . Andrey Boytsov and Arkady Zaslavsky
1
Context-Awareness Enabling New Business Models in Smart Spaces . . . . Boris Moltchanov, Christian Mannweiler, and Jose Simoes
13
A Middleware Architecture for Safety Critical Ambient Intelligence Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Antonio Coronato and Giuseppe De Pietro
26
Ranking Algorithm by Contacts Priority for Social Communication Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Natalia Dudarenko, Juwel Rana, and K˚ are Synnes
38
CrysP: Multi-Faceted Activity-Infused Presence in Emerging Social Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Saguna, Arkady Zaslavsky, and Dipanjan Chakraborty
50
Smart-M3 Platform Multichannel System of Audio-Visual Support of Remote Mobile Participant at E-Meeting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Andrey L. Ronzhin, Victor Yu Budkov, and Alexey A. Karpov On-the-Fly Ontology Matching in Smart Spaces: A Multi-model Approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Alexander Smirnov, Alexey Kashevnik, Nikolay Shilov, Sergey Balandin, Ian Oliver, and Sergey Boldyrev
62
72
Access Control in Personal Localized Semantic Information Spaces . . . . . Alexey Koren and Alexander Buntakov
84
Integration of an Answer Set Engine to Smart-M3 . . . . . . . . . . . . . . . . . . . . Vesa Luukkala and Jukka Honkola
92
A Video Monitoring Model with a Distributed Camera System for the Smart Space . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Andrey L. Ronzhin, Maria Prischepa, and Alexey Karpov
102
XII
Table of Contents
Smart Spaces Solutions Physical Approach in Smart Homes: A Proposition and a Prototype . . . . Michele Dominici, Giulio Zecca, Fr´ed´eric Weis, and Michel Banˆ atre SMEO: A Platform for Smart Classrooms with Enhanced Information Access and Operations Automation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Akshey Jawa, Sudip Datta, Sujeeth Nanda, Vishal Garg, Vasudeva Varma, Suresh Chande, and Murali Krishna Punaganti Venkata Creative Approach to the Design and Prototyping of Experimental Smart Spaces, Case Studies from the Interactive Environments Minor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Tomasz Jaskiewicz, Walter A. Aprile, and Aadjan van der Helm Event Recognition via Energy Efficient Voting for Wireless Sensor Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Mohamed Baqer
II
111
123
135
148
NEW2AN
Performance Evaluation Evaluation of Multi-service CDMA Networks with Soft Blocking . . . . . . . Villy B. Iversen Design of MPLS over DWDM Architecture for Unicast and Anycast Flows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Jakub Gladysz and Krzysztof Walkowiak Comparative Analysis of Sleep Mode Control Algorithms for Contemporary Metropolitan Area Wireless Networks . . . . . . . . . . . . . . . . . Alexey Anisimov, Sergey Andreev, Olga Galinina, and Andrey Turlikov Determining Normalized Measure of Dispersion for Evaluating the Performance of IEEE 802.11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Faisal Iradat and Sayeed Ghani Development of a System to Promote Eco-Driving and Safe-Driving . . . . Ryosuke Ando, Yasuhide Nishihori, and Daisuke Ochi
160
172
184
196 207
Performance Modeling Oligopoly Game Modeling for Cognitive Radio Environments . . . . . . . . . . Ligia C. Cremene, D. Dumitrescu, and R´eka Nagy
219
Table of Contents
Reducing the Number of States for Markovian Model of Optical Slotted Ring Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Mateusz Nowak and Piotr Pecka Performance Modelling of Automatic Identification System with Extended Field of View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Troels Laursen, Hans Peter Mortensen, Nikolaj Bisgaard Pedersen, Ulrik Wilken Rasmussen, Tatiana K. Madsen, and Jens Dalsgaard Nielsen Performance Measures Computation for a Single Link Loss Network with Unicast and Multicast Traffics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Irina Gudkova and Olga Plaksina Realization of a Method of Matrix-Geometric Progression . . . . . . . . . . . . . Yuri Ryzhikov
XIII
231
242
256
266
Delay-/Disruption-Tolerant Networking and Overlay Systems Mobility Pattern Based Routing Algorithm for Delay/Disruption Tolerant Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ManKyu Park, SeokHong Min, SangHo So, DeockGil Oh, ByungChul Kim, and JaeYong Lee
275
Heuristic Congestion Control for Message Deletion in Delay Tolerant Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Lertluck Leela-amornsin and Hiroshi Esaki
287
The FDPOO: A Flexible Delivering Platform with at-One-time and On-time guarantees in Opportunistic Networks . . . . . . . . . . . . . . . . . . . . . . Yuan-Tse Yu, Chung-Ming Huang, and Hsing-Cheng Wang
299
A Distributed Telematics Peer-to-Peer (D-TP2P) Networking System for Service Discovery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Chung-Ming Huang, Chia-Ching Yang, and Chun-Yu Tseng
311
Empirical Predictor of TCP Throughput on a Multihop Wireless Path . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Anna Chaltseva and Evgeny Osipov
323
A Framework for Connectivity in Inter-working Multi-hop Wireless Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Oladayo Salami, Antoine Bagula, and H. Anthony Chan
335
XIV
Table of Contents
Integrated Wireless Networks Practical Vertical Handover Mechanisms between Satellite and Terrestrial Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MinSu Shin, ManKyu Park, DeockGil Oh, ByungChul Kim, and JaeYong Lee Geo-aware Handover of Mission Agents Using Opportunistic Communication in VANET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Edison Pignaton de Freitas, Tales Heimfarth, Fl´ avio Rech Wagner, Armando Morado Ferreira, Carlos Eduardo Pereira, and Tony Larsson
353
365
Comparison and Evaluation of the Most Efficient Mobility Management Protocols for Integrated Wireless Networks . . . . . . . . . . . . . . . . . . . . . . . . . . Asimakis Lykourgiotis and Stavros Kotsopoulos
377
Functional Model and Service Scenarios for QoS Enabled Mobile VoIP Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Kyu Ouk Lee, Sang Soo Lee, and Tae Whan Yoo
389
Heuristic Approaches to the Multi-objective Network Design and Optimization for Wireless Data Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . Chutima Prommak and Naruemon Wattanapongsakorn
398
Resource Management Call Admission Control in Single and Two-Tier Cellular Networks . . . . . . Manfred Schneps-Schneppe and Janis Sedols
411
Joint Admission Control and Resource Allocation for Multiuser Loading in LTE Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . V. Venkatkumar, T. Haustein, and M. Faulkner
421
Data Traffic Scheduling Algorithm for Multiuser MIMO-OFDM System with the Throughput Maximization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Jerzy Martyna
436
Multimedia Communications Scalable Video Coding Based on Three-Dimensional Discrete Pseudo Cosine Transform . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Eugeniy Belyaev, Timofey Sukhov, and Liu Kai
448
NTRULO: A Tunneling Architecture for Multimedia Conferencing over IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A. Amirante, T. Castaldi, L. Miniero, and S.P. Romano
460
Table of Contents
XV
Seamless Streaming Service Session Migration Support Architecture for Heterogeneous Devices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Geun-Hyung Kim and Bong-Hwan Lee
473
Author Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
485
Extending Context Spaces Theory by Proactive Adaptation Andrey Boytsov and Arkady Zaslavsky Department of Computer Science and Electrical Engineering Luleå University of Technology, SE-971 87 Luleå {Andrey.Boytsov,Arkady.Zaslavsky}@ltu.se
Abstract. Context awareness is one of the core features of pervasive computing systems. Pervasive systems can also be improved by smart application of context prediction. This paper addresses subsequent challenge of how to act according to predicted context in order to strengthen the system. Novel reinforcement learning based architecture is proposed to overcome the drawbacks of existing approaches to proactive adaptation. Context spaces theory is used as an example of how existing context awareness systems can be enhanced to achieve proactive adaptation. This recently developed theory addresses problems related to sensors uncertainty and high-level situation reasoning and it can be enhanced to achieve efficient proactive adaptation as well. This article also discusses implementation options and possible testbed to evaluate the solutions. Keywords: Context awareness, context prediction, context spaces theory, pervasive computing, reinforcement learning, proactive adaptation, act-ahead adaptation.
1 Introduction Pervasive computing is a paradigm where computing systems are integrated into the everyday life in a non-intrusive, graceful and transparent manner. Some implementations of pervasive computing paradigm include smart homes, elderly care systems, smart mobile devices, GPS navigators, RFID tracking systems, social networks. Context awareness is one of the basic features of pervasive computing. Context prediction is also recognized as a challenge and an opportunity. However, for context prediction and especially for acting on predicted context there is a definite lack of universal approach to the problem. This paper proposes and motivates the approach for contextual act-ahead adaptation – proactive adaptation to predicted context. The strengths and challenges of proposed approach are discussed. The article is structured as follows. Section 2 describes related work and current challenges of proactive adaptation to predicted context. Section 3 further elaborates identified challenges and proposes and explains the solution approach. Section 4 describes the essentials of context spaces theory and introduce ECORA framework. Sections 5 and 6 discuss the integration of proposed approach into context spaces S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 1–12, 2010. © Springer-Verlag Berlin Heidelberg 2010
2
A. Boytsov and A. Zaslavsky
theory and introduce CALCHAS – Context Aware aCt aHead Adaptation System. Section 7 introduces a sample testbed scenario. Section 8 makes a summary, provides future research plans and concludes the paper.
2 Context Prediction and Acting on Predicted Context Most of context prediction approaches use machine learning techniques. Predictive models that were applied to context prediction task include sequence predictors [5], neural networks [22], Bayesian networks [17], branch predictors [16], decision tree learning [11], time series prediction [19], Markov models [7], trajectory extrapolation [1]. Some authors actually do recognize acting on predicted context as a specific problem ([3], [4]), but still there is not much research done for the challenge of proactive adaptation. Generally most of the ways to act on predicted context can be classified in two groups. 1. Rule-based engines. For every particular prediction result there is a rule that defines an action. Improving behavior of the system is achieved by improving efficiency of context prediction. 2. Learning by example. That approach was applied mostly in smart home environments. Pervasive computing system tracks user actions and then it starts executing the actions for the user. On the basis of studying and analyzing existing approaches, summary representation can look like expression set (1). state(t)=SenseAndProcessData(t) prediction(t)=PredictionModel(state(t),history(t),prediction(t-1 ) history(t+1)=addToHistory(state(t),history(t) ) action(t)=actOnPrediction(state(t),prediction(t),history(t)) .
(1)
Where state(t) is entire context state at the time t, including the results of sensor data acquisition, validation and processing. Entire aggregated history up to time t, but not including time t, is stored in history(t). Prediction results at time t for time t+1 and maybe subsequent steps are referred to as prediction(t). Usually they depend on the current state and on the dependencies learned from history. Sometimes previous prediction results can influence them as well, if time horizons of prediction attempts do overlap. System is acting on predicted context, so action at time t ܽܿ݊݅ݐሺݐሻ depends on prediction results and current state. In case learning by example is implemented, action also has some learning mechanisms and therefore depends on history. The model presented in (1) has a very serious drawback – it cannot handle mutual dependency between system actions and prediction results. Those drawbacks and solution opportunities will be addressed in section 3. Notable exceptions that do not fall in that model are the applications of Markov decision processes and Q-learning based approaches to context prediction [24],[6],[13]. They will be mentioned further in section 3 when discussing reinforcement learning solutions.
Extending Context Spaces Theory by Proactive Adaptation
3
3 Proactive Adaptation as Reinforcement Learning Task Sometimes the system has to provide results of context prediction in quite specific conditions. Here are some motivating use cases. Consider elderly care system. Users need some assistance in accomplishing everyday tasks. System is able to give an advice, call a caregiver or just do nothing if the user is performing quite well. The task is to predict the probability of successful outcome of the activity and to act to maximize that probability, but not at the cost of wasting the time of the caregiver or annoying the user with unnecessary advices. Use case is partially based on [10]. Another motivating use case can be a smart home, where user satisfaction can be estimated according to both direct questioning and the number of user manual interventions into a configuration of home parameters. The task is to predict user’s cumulative satisfaction and act to increase it. Also the system should do its best to behave in non-intrusive manner and not to annoy the user with too many questions. One more example might be prediction and prevention of memory shortage in pervasive system. If memory shortage was predicted with the certainty above the threshold, the system takes actions to avoid memory shortage condition (e.g. searches for additional resources to share the work). But if those preventive actions are successful, the predictor would have learning problem. Formally if there was no memory shortage, it is a prediction failure. In reality most likely it is not, but we cannot claim it for sure. Actually, when the system starts decision making, predictor becomes unable to learn properly - predictor cannot distinguish between prediction failure and successful prevention. For all those cases, neither rule-based system, nor learning by example can solve the problem completely. The solution for this and many similar use cases is to take decision making process into account while making predictions. The dependencies for those use cases can be described like the expressions (2). state(t)=SenseAndProcessData(t) prediction(t)=PredictionModel(state(t),history(t),prediction(t-1) , action(t)) history(t+1)=addToHistory(state(t),history(t) ) action(t)=actOnPrediction(state(t),prediction(t),history(t)) .
(2)
The meaning of state(t), history(t), action(t) and other elements in (2) is the same as in expressions (1). The difference between (2) and (1) is marked in bold. The additional dependency makes most current proactive adaptations methods inapplicable. System acts on predicted context, but in turn predicted context depends on system actions. Most of the context prediction approaches we mentioned previously use predictive models, which do not take into account the mutual dependency between system actions and prediction results. Usually this problem is avoided by completely splitting the context in two independent parts: the one that is affected by actions and the one that is predicted. For example, if the system intends to proactively open the door before the user comes into the room, the choice whether the system opens the door or leaves it closed will not change user intentions and, therefore, prediction results. Learning by example is also the way to avoid mutual dependency problem, but this approach has very limited applicability: it works only if possible user actions and
4
A. Boytsov and A. Zaslavsky
system actions significantly overlap and only with the assumption that imitating user actions grants acceptable effectiveness of the system. We propose an enhanced method to solve mutual dependency problem between actions and predictions. That problem can actually be viewed as reinforcement learning task. Reinforcement learning problem is a problem faced by an agent that should find an acceptable behavior in a dynamic environment and learn from its trial and errors [12]. Reinforcement learning in application to pervasive computing task is almost not researched. Notable exceptions are Markov decision processes and Q-learning approaches [24],[6],[13]. However, as it will be discussed further in this section, Markov decision processes have very limited applicability due to the features of pervasive computing systems. Recent advancements in reinforcement learning include the approaches, which to the best of our knowledge were not applied to pervasive computing at all, including predictive state representation [23], most cases of neural network control [8], different applicable cases of actor-critic model (like [9]), selforganizing maps and Q-learning integration [20] and many more. To the best of our knowledge, there was no attempt to address particular features of reinforcement learning in pervasive computing area. Those features are: • Continuous action spaces. Actuators sometimes provide the choice from practically continuous range of values. • Continuous state spaces. Many kinds of sensors produce values from practically continuous range as well. However, this problem can be resolved by the means of situation awareness. • Mobility of nodes. Mobility of nodes in pervasive computing system can cause the loss of connection to certain sensors and actuators. Or, on the contrary, new connections to different sensors and actuators can be established. • High dimensionality. The count of sensors and actuators in pervasive computing system can be very high. • High heterogeneity of data. Discrete-valued, continuous-valued or event-based sensors and actuators can appear in any combination. • Ability to incorporate prior knowledge. Sometimes common sense or expert estimations can give some sketches of good acting strategies. Ability to incorporate them can significantly reduce learning time. • Explicit prediction result can also provide some insight into the problem. • Limited exploration capabilities. Pervasive system cannot just do a random thing to see what happens. • Limited time for decision making. • Goals of the user can change instantly. The features mentioned above seriously limit the scope of reinforcement learning solutions that we can try. In particular, those features mean that Markov decision process – the dominating model for reinforcement learning – can be used only in limited set of special cases. The main reason here is MDPs’ discrete state and action spaces, which might be not suitable for pervasive computing solutions. In sections 4-6 we will discuss in more details, how we can address pervasive computing challenges presented in the list above.
Extending Context Spaces Theory by Proactive Adaptation
5
4 Context Spaces Theory – Main Concepts Some features of proactive adaptation in pervasive computing can be addressed by improving context spaces theory. The theory of context spaces [14] is a recently developed approach for context awareness and reasoning which addresses the problems of sensors uncertainty and unreliability. It also deals with situation reasoning and the problems of context representation in a structured and meaningful manner. Context spaces theory is designed to enable context awareness in clear and insightful way. This theory uses spatial metaphors for representing context as a multidimensional space. To understand context spaces theory we need to introduce several new terms. Any kind of data that is used to reason about context is called context attribute. Context attribute usually corresponds to a domain of values of interest, which are either measured by sensors directly or calculated from other context attributes. It can be either numerical value or a value from pre-defined set of non-numerical options. Context state represents the set of all relevant context attributes at a certain time. A set of all possible context states constitutes application space. Therefore, application space can be viewed as a multi-dimensional space where the number of dimensions is equal to the number of context attributes in the context state. The state of the system is represented by a point in the application space and the behavior of the system is represented by a trajectory moving through the application space over time. Situation space is meant to represent real life situation. It can be defined as subspace of the application space. So if context state is in the subspace representing situation S, it means that situation S is occurring. Situation S has the level of occurrence certainty. It depends on the probability of the context state to be within S and it also depends on the subspace within S. See Figure 1 for simple illustration.
Fig. 1. Context spaces theory
In context spaces theory several methods were developed for reasoning about the context. Bayesian reasoning [21] or Dempster-Schafer algorithm [18] are used to get overall confidence in the fact that a situation is occurring. Algebraic operations on situations and some logic-based methods were developed for reasoning in terms of situations [14].
6
A. Boytsov and A. Zaslavsky
Some solutions were developed to integrate various context prediction methods into the theory of context spaces [2]. However, those prediction methods are based on pure forecasting and do not take into account decision making aspects. Context spaces theory was implemented in ECORA [15] – Extensible Context Oriented Reasoning Architecture. ECORA is a framework for development of contextaware applications. That framework provides its functionality as a set of Java classes to be integrated into the prototypes of context-aware systems. The presented research introduces proactive adaptation methods that can be used to extend the context spaces theory and enhance ECORA-based applications.
5 Integrating Proactive Adaptation into Context Spaces Theory Context spaces theory has all the necessary capabilities to ensure context awareness. However, when it comes to proactive adaptation, some enhancements have to be made. At first, the actuators need to be introduced into the model. Actually, those actuators can constitute a separate space in the manner much like the context space itself. That actuator space can be treated as action space for reinforcement learning. Considering different meaning of sensors and actuators, it seems that the better solution is to separate the spaces for sensors and actuators. Situation spaces in the space of actuators are not likely to have any value (or, in case a set of discrete actions can be elicited, those situations will just look like points, not spaces). In case of the lost connection to actuator, the corresponding axis is removed. Most likely, it will take some time for the system to learn how to act in new conditions, but previously learnt data can provide a good starting point and reduce adaptation time. Similar refers to introducing new actuators – combining old data with exploration can provide adaptation to new capabilities. Another question is how to define reinforcement learning state space for context spaces theory. Having discrete state space is likely to make the task simpler. One solution is to take situations as states for reinforcement learning and trigger the state if the certainty of situation occurring is above some threshold. To fit the Markov property (that is essential for different kinds of Markov decision processes), situation decomposition algorithm presented in [2] can be used. That kind of situation decomposition approach can also help to overcome node mobility problem from sensor point of view: if the sensor loses the link or if new sensor is introduced, situation properties are recalculated (see [14] for the details), but it is transparent for the upper layer, including the proactive adaptation. Also taking context space as state space for reinforcement learning is an option. One more option is to take the degrees of certainty in different situations as continuous state space. To summarize, context spaces theory can be enhanced to incorporate proactive adaptation solutions. Those context spaces theory enhancements can deal with one of the main features of pervasive computing – the mobility of sensors and actuators – using geometrical metaphors and situation awareness. Addressing other features of proactive adaptation depends mostly on exact reinforcement learning method and the architecture of proactive adaptation solutions of upper layers.
Extending Context Spaces Theory by Proactive Adaptation
7
6 CALCHAS Prototype The proposed approach can be implemented by creating a general-purpose middleware for context prediction and proactive adaptation based on context spaces theory. CALCHAS (Context Aware Long-term aCt aHead Adaptation System) prototype is now under development. Integrated with ECORA, it will allow achieving efficient proactive adaptation for context spaces theory. The architecture was designed to address all the features of pervasive computing area that were mentioned in section 3. That middleware solution should incorporate a library of different context prediction and proactive adaptation methods. Middleware development is in progress and the prototype is being implemented. We propose the following architecture for CALCHAS (see Figure 2).
Fig. 2. CALCHAS general architecture
The architectural blocks have following purpose. Run-time goal and efficiency engine translates user input into exact goals for pervasive system in terms of context and timing. Sensor fusion and low-level validation block provides preliminary low-level processing of context data. Retraining database provides bulk of recent low-level data on request, in case there is a need to retrain the model (e.g. due to goal change) or
8
A. Boytsov and A. Zaslavsky
Fig. 3. CALCHAS adaptation engine
provide faster model start. Feedback is implicit – every actuator action will affect future state of the system, which will in turn be tracked by sensors. Adaptation and prediction engine is responsible for inferring adaptation sequences – sequences of actions for the actuator to do. Also it is responsible for providing explicit prediction results. Adaptation engine has the following structure (see Figure 3). All the translation blocks are used to translate between the format of internal model (e.g. states of Markov decision process, its reward functions) and the format of the outer system (e.g. vectors of values of sensor data and exact commands for actuators). The adaptation core is responsible for generating the actions according to the model and learning engine is responsible to adapt the model to new data. All translation blocks are heavily dependent on specific task, but for most of other blocks general purpose solutions can be developed. Supplied with a comprehensive library of reinforcement learning methods, the system can facilitate the development of pervasive computing applications, which will be aware of current and predicted context and which will be capable of smart proactive adaptation to predicted context.
7 Sample Scenario for Proactive Adaptation Methods In order to validate proactive adaptation solutions, we introduce “Moonprobe” model. “Moonprobe” is the result of subsequent development of application scenario presented in [2]. The “Moonprobe” model is an imitation of a vehicle in 2D environment. The aim of the vehicle is to reach destination point safely and not crash or run out of fuel on its way. “Moonprobe” was developed using XJ Technologies AnyLogic modeling tool [25].
Extending Context Spaces Theory by Proactive Adaptation
9
Although not representing pervasive system on its own, the “Moonprobe” model deals with the problems that are common for every pervasive system like sensor uncertainty, sensor failures, acting under uncertainty, fusing heterogeneous sensor data. The moonprobe has a set of specific situations to be aware of. These are sensor failure conditions, progress of going to the destination point and safety conditions. “Moonprobe” uses around 20 context parameters to reason about the situations. Also the moonprobe has some actuators to trigger: engines can help the probe to land safely or to keep the speed. However, working engines require fuel, and the amount of fuel is limited. The actions based on actuators can be considered continuous (direction and power of engine) as well as discrete (like “do nothing”, “keep velocity”, “dampen the fall” etc.). In a very simplified manner the model can be described by the following set of equations (see formula (3)).
N
If probe is in the air: 0 If probe is on the ground: projection of M g on the axis perpendicular to the ground
Fen
(3)
|Fen|
Where t is time, X is probe coordinate, V is probe velocity, M is mass of the probe (known system parameter), N is support reaction (directed perpendicular to the ground), Fl – fuel level remained, g – gravity, FCR – fuel consumption rate (known system parameter), Fen – engine force vector (value and direction set by probe). In some cases probe can leave the ground. When probe lands, it will experience ground collision. Ground collisions are dangerous for the probe. Engines can be used to slow down the landing and avoid the crash.
Fig. 4. “Moonprobe” system architecture
The architecture of the model is following (see Figure 4). System consists of several components. •
“Environment and probe” component. It implements the physical model of the system. Also it monitors what happens to the probe (crash, sensor outage etc.).
10
• • •
A. Boytsov and A. Zaslavsky
“Sensors” component. Sensors measure the data from the probe in certain moments of time and introduce some errors. “Controlling engine” component. It takes sensed data and provides control information. All proactive adaptation logic is embedded there. “Main” component provides overall assessment of experimental results.
The design of exact learning approaches in CALCHAS is in progress. Rule-based decision making engine with quantified actions was introduced into “Moonprobe” model to act as a benchmark for different reinforcement learning solutions. Rules were defined based on common sense. Screen dump of running “Moonprobe” is depicted on Figure 5.
Fig. 5. "Moonprobe" system working
8 Conclusion and Future Work In this work we addressed the task of proactive adaptation to predicted context and proposed reinforcement learning based architecture, which will allow pervasive computing systems to address more complicated use cases. The features of proactive adaptation task in pervasive computing systems were identified. The architecture of proactive adaptation solution – CALCHAS system – was developed to address them. Context spaces theory was used as particular example of integration between context awareness system and proactive adaptation solution. Context spaces-based testbed for proactive adaptation solution was implemented. Our future plans are to implement the entire middleware with a comprehensive library of available reinforcement learning approaches. Also the plan is to extend reinforcement learning solutions methods to suit the core challenges pervasive computing area.
Extending Context Spaces Theory by Proactive Adaptation
11
References 1. Anagnostopoulos, C., Mpougiouris, P., Hadjiefthymiades, S.: Prediction intelligence in context-aware applications. In: Proceedings of the 6th international conference on Mobile data management, Ayia Napa, Cyprus, pp. 137–141. ACM, New York (2005) 2. Boytsov, A., Zaslavsky, A., Synnes, K.: Extending Context Spaces Theory by Predicting Run-Time Context. In: Balandin, S., Moltchanov, D., Koucheryavy, Y. (eds.) ruSMART 2009. LNCS, vol. 5764, pp. 8–21. Springer, Heidelberg (2009) 3. Cook, D.J., Augusto, J.C., Jakkula, V.R.: Ambient intelligence: Technologies, applications, and opportunities. Pervasive and Mobile Computing 5, 277–298 (2009) 4. Cook, D.J., Das, S.K.: How smart are our environments? An updated look at the state of the art. Pervasive and Mobile Computing 3, 53–73 (2007) 5. Das, S.K., Cook, D.J., Bhattacharya, A., Heierman III, E.O., Lin, T.-Y.: The role of prediction algorithms in the MavHome smart home architecture. IEEE Wireless Communications 9(6), 77–84 (2002) 6. Feki, M., Lee, S., Bien, Z., Mokhtari, M.: Context Aware Life Pattern Prediction Using Fuzzy-State Q-Learning. Pervasive Computing for Quality of Life Enhancement, 188–195 (2007) 7. Gellert, A., Vintan, L.: Person Movement Prediction Using Hidden Markov Models. Studies in Informatics and Control 15(1) (2006) 8. Hagan, M.T., Demuth, H.B.: Neural networks for control. In: Proceedings of the 1999 American Control Conference, San Diego, CA, pp. 1642–1656 (1999) 9. van Hasselt, H., Wiering, M.: Reinforcement Learning in Continuous Action Spaces. In: Proceedings of IEEE International Symposium on Approximate Dynamic Programming and Reinforcement Learning (ADPRL’07), Honolulu, HI, USA, pp. 272–279 (2007) 10. Hoey, J., Von Bertoldi, A., Poupart, P., Mihailidis, A.: Assisting persons with dementia during handwashing using a partially observable Markov decision process. In: Proceedings of International Conference on Vision Systems, p. 66 (2007) 11. Hong, J., Suh, E., Kim, J., Kim, S.: Context-aware system for proactive personalized service based on context history. Expert Systems with Applications 36(4), 7448–7457 (2009) 12. Kaelbling, L.P., Littman, M.L., Moore, A.W.: Reinforcement learning: A survey. Journal of Artificial Intelligence Research 4, 237–285 (1996) 13. Mozer, M.C.: Lessons from an adaptive home. In: Smart environments: technologies, protocols, and applications, pp. 273–294. Wiley, Chichester (2004) 14. Padovitz, A., Loke, S.W., Zaslavsky, A.: Towards a theory of context spaces. In: Proceedings of the Second IEEE Annual Conference on Pervasive Computing and Communications Workshops, pp. 38–42 (2004) 15. Padovitz, A., Loke, S.W., Zaslavsky, A.: The ECORA framework: A hybrid architecture for context-oriented pervasive computing. Pervasive and Mobile Computing 4(2), 182–215 (2008) 16. Petzold, J., Bagci, F., Trumler, W., Ungerer, T.: Context Prediction Based on Branch Prediction Methods. Technical Report, Institute of Computer Science, University of Augsburg (2003) 17. Petzold, J., Pietzowski, A., Bagci, F., Trumler, W., Ungerer, T.: Prediction of Indoor Movements Using Bayesian Networks. In: Strang, T., Linnhoff-Popien, C. (eds.) LoCA 2005. LNCS, vol. 3479, pp. 211–222. Springer, Heidelberg (2005) 18. Shafer, G.: A Mathematical Theory of Evidence. Princeton University Press, Princeton (1976)
12
A. Boytsov and A. Zaslavsky
19. Sigg, S., Haseloff, S., David, K.: Minimising the Context Prediction Error. In: Proceedings of IEEE 65th Vehicular Technology Conference VTC 2007, Dublin, Ireland, pp. 272–276 (Spring 2007) 20. Smith, A.J.: Applications of the self-organising map to reinforcement learning. Neural Networks 15, 1107–1124 (2002) 21. Russell, S.J., Norvig, P.: Artificial Intelligence: A Modern Approach, 2nd edn. Prentice Hall, Englewood Cliffs (2003) 22. Lin, T., Wang, C., Lin, P.-C.: A neural-network-based context-aware handoff algorithm for multimedia computing. ACM Transactions on Multimedia Computing, Communications, and Applications (TOMCCAP) archive 4(3), 1–23 (2008) 23. Wolfe, B., James, M.R., Singh, S.: Approximate predictive state representations. In: Proceedings of the 7th international joint conference on Autonomous agents and multiagent systems, vol. 1, pp. 363–370. International Foundation for Autonomous Agents and Multiagent Systems, Estoril (2008) 24. Ziebart, B.D., Maas, A.L., Dey, A.K., Bagnell, J.A.: Navigate like a cabbie: probabilistic reasoning from observed context-aware behavior. In: Proceedings of the 10th international conference on Ubiquitous computing, Seoul, Korea, pp. 322–331. ACM Press, New York (2008) 25. How to Build a Combined Agent Based / System Dynamics Model Logic in AnyLogic (2008), http://www.xjtek.com/file/161
Context-Awareness Enabling New Business Models in Smart Spaces Boris Moltchanov1, Christian Mannweiler2, and Jose Simoes3 1
Telecom Italia S.p.A., via Reiss Romoli 274, 10148-Torino, Italy
[email protected] 2 University of Kaiserslautern, Wireless Communications and Navigation Group 67663 Kaiserslautern, Germany
[email protected] 3 Fraunhofer Institute FOKUS, Kaiserin-Augusta-Alle 31, 10589 Berlin, Germany
[email protected]
Abstract. This paper describes how emerging context-awareness technologies will act as a driving force for introduction of intelligently personalized services in smart spaces. The according context-awareness framework is taken from the results of the EU FP 7 project “C-CAST”. Major novelties include a highly scalable context management architecture as well as a context prediction methodology. The paper considers business models and financial structures as well as service and application examples that might be realized in smart spaces enriched with environmental, personal, social, and network context information. From a commercial perspective on context-aware applications in smart spaces, these examples differ from traditional Telecom and IT services and demonstrate how Telecom and IT companies may strengthen and leverage their business based on context information about customers, services and their environments that is abundantly available in smart spaces. Moreover, this paper includes the description of a field trial with new applications in quasi-smart space environments. Keywords: Business model, smart space, sensor, context, prediction.
1 Introduction The number of mobile user terminals permanently connected to the web over wireless technologies as potential context sources (e.g., embedded sensors, cameras) and the sensors creating large interworking Wireless Sensor Networks (WSN) interconnected with Building Sensor Network and Automotive Sensor Networks is expected to increase significantly creating really ubiquitous systems. All these information sources create heterogeneous and very pervasive environments collectively identifiable as Smart Spaces. Users surrounded by this technology expect more sophisticated and useful services and richer multimedia content. S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 13–25, 2010. © Springer-Verlag Berlin Heidelberg 2010
14
B. Moltchanov, C. Mannweiler, and J. Simoes
In parallel, the advent of Web 2.0 technologies and their consequent application deployments revealed that user generated content, when tied to a certain geographical location and part of the augmented reality and virtual social communities became a trend in what concerns user most used services. Leveraging smart space technology with a context-aware framework will allow objects, devices, persons and entities to be characterized and interact in real time. Among all players involved in the business value chain of the innovative services, users themselves are the ones demanding for appealing services. To satisfy this demand, a mentality shift needs to occur, as the technological one occurred with the emergence of context-awareness and WSN technologies that enabled new business models and revenue schemes. The context management technology used in this work, has been designed in the European research project C-CAST [1], which aims at combining mobile distribution techniques (both unicast and multicast) and context-awareness in order to optimize multimedia content distribution. This papers shows how it can be used for new business models in smart spaces. The remainder of the paper is organized as follows. Section 2 presents the state-of-the-art in context-awareness for smart spaces. The technical and business aspects of our context management framework are presented in sections 3 and 4, respectively. Then, section 5 describes some context-aware commercial services and trials built within Telecom Italia (TI) infrastructure. Finally, section 6 concludes the paper and introduces future work.
2 State of the Art This section introduces the terminology and provides an overview of related research activities in the areas of context management. 2.1 Definitions and Terminology Context – Ryan et al. [2] referred to context as the user’s location, environment, identity and time. Dey [3] defines context as the user’s emotional state, focus of attention, location and orientation, date and time, as well as objects and people in the user’s environment. Hull et al. [4] describe context as the aspects of the current situation. Brown [5] defines context to be the elements of the user’s environment, which the computer knows about. The notion of situation is closely related to the concept of context. Zimmermann [6] defines it as “the state of a context at a certain point (or region) in space at a certain point (or interval) in time, identified by a name”. Smart Space – a smart space is any real or virtual location equipped with passive and active artifacts. These artifacts can be any kind of sensors and actuators, mobile devices, software agents, autonomous vehicles, management systems, and also human beings. In smart spaces, these artifacts have the processing and communication capabilities to interact with each other in a (mutually) beneficial way. Examples include smart homes, smart factories, smart transportation, smart grid or ambient assisted living environments [7], [8].
Context-Awareness Enabling New Business Models in Smart Spaces
15
2.2 Types of Context for Smart Spaces Context information can be derived from the physical environment or a physical state of an entity (e.g., temperature, humidity, light, noise levels, etc.) and logical (e.g., activity, friend, parent, preferences, etc.). Moreover, context may be of primary origin or derived origin, which effectively is reasoned out of primary context data. There is also meaningful context, a type considered in the literature as linguistic context. For this work, we will basically abstract from the context type, i.e. consider all types. 2.3 Context-Aware Systems for Smart Spaces The history of context-aware systems started when Want et al. [9] introduced the Active Badge Location System, considered to be one of the first context-aware applications. Ailisto et al., [10] and Dey and Abowd [11] proposed a layered conceptual architecture that augments layers for detecting and using context by adding interpreting and reasoning functionalities. In middleware-based systems, the Service-Oriented ContextAware Middleware (SOCAM) project [12] introduced an architecture for building and rapid prototyping context-aware mobile services. One further extensible centralized middleware approach designed for context-aware mobile applications is a project called Context-Awareness Sub-Structure (CASS) presented in [13]. Chen [14] presents a Context Broker Architecture (CoBrA), which is an agent-based architecture, for supporting context-aware systems in smart spaces (e.g., intelligent meeting rooms, smart homes, and smart vehicles). Other well-known examples for broker-based approaches are the SOUPA, and GAIA [15]. Many EU projects have explored contextawareness aspects, for example, SPICE [16] and MUSIC [17]. One of the main reasons of little context-awareness usage, despite the mentioned efforts, was lack of end user devices that could host the context-aware applications for users. With the wide scale availability of such devices, including the WSN sensors, it is now possible to harness the possibilities of context-awareness. There are many types of the services where context-aware smart-spaces could play a significant role, namely advertisement, e-recommendations, e-tourism, gaming, etc, opening the path for personalized content creation and distribution, enabling new business models of contextualized applications and service delivery over smart spaces.
3 Technical Aspects of Context-Aware Smart Spaces Before focusing on the business aspects, it is important to understand the technical requirements of smart spaces and how context is managed and represented, using our framework, throughout the entire value chain. 3.1 Context Management Requirements of Smart Spaces The vision of smart spaces includes intelligent environments and context-aware services that react in a sensitive and adaptive way to the presence of humans and/or objects. Telecom related applications as well as energy saving, gaming, chatting, info and payment services are important constituent parts of such smart spaces. The design of such context management system should therefore consider objectives and
16
B. Moltchanov, C. Mannweiler, and J. Simoes
requirements from various domains, like data management, communication, user ID management, system reliability, privacy, security, etc. The novelty here lies in the utilisation of information from smart spaces for supporting conventional, as well as community created context applications, in a way that has not been attempted before. This section gives an overview of the most common high-level objectives and requirements [7],[18]. 1) Enhance and leverage context data through • filtering mechanisms as well as evaluating and improving its (multidimensional) quality; • aggregation, fusion, inference, and prediction. 2) Efficiently exchange data and provide context services within and between different smart spaces by • establishing rules for context discovery, storage, and distribution; • designing common interfaces for communication within and across smart spaces; • specifying communication mechanisms between smart space artifacts • establishing management procedures for smart space entities owning context data. 3) Ensure end-to-end data security by • monitoring and assuring the non-violation of privacy, security, and trust within and across smart spaces; • guaranteeing the enforcement of rules and policies. These overall objectives yield a set of design requirements for the desired smart space system functionalities. The system needs to be capable of obtaining and representing context data from a wide range of sources, as well as processing and storing it according to rules and policies defined by the artifacts (users, objects, etc.) present in a smart space. Moreover, mechanisms for computation of semantically more abstract context, obtained from simple types of contexts (aggregation, fusion, reasoning, prediction, and inference) have to be made available. This includes the usage of widely used, standardized communication protocols and interfaces. A smart space has to dispose of a (preferably distributed, as described in [19]) context service directory that stores different types of information. Namely, what context services are available and at which location within a smart space. This will allow autonomous reconfigurations depending on the load and the capabilities of the smart space artifacts. Hence, a protocol for handling the arrival of new context sources joining a smart space needs to be available. Finally, mechanisms for identification, authentication and authorization guaranteeing end-to-end security and privacy of user context within and across smart spaces have to be included. 3.2 Context Management Architecture Context, “embedded” into our world and around our lives, can be exploited to enrich communication systems. The architecture proposed in this section is based on a topdown, service scenario-to-architecture component analysis. It is further scrutinized by a bottom-up synthesis of available underlying technologies for service creation and
Context-Awareness Enabling New Business Models in Smart Spaces
17
deployment to potential customers within a mobile environment, which possesses already context information regarding its customers. The proposed architecture is based on the producer consumer role paradigm. The system is built upon three basic functional entities: Context Consumer (CxC), Context Broker (CxB) and Context Provider (CxP), where a CxP is a source of the context information, a CxB is an arbitral node handling the context data as a reference point for the overall context in a smart space and CxCs are consumers of context information. The decoupling of provisioning and consumption is important as it impacts on the overall scalability of the system. Further details about this implementation can be found in [20] and [21]. 3.3 Context Modeling and Representation Context information needs to be represented and modeled for being machine interpretable and exchangeable using well-defined interfaces. The goals are to support easy manipulation on many devices, including resource constrained mobile devices, achieve low overhead in keeping the model up-to-date, easy extension, efficient search and query access, having cheap and simple mechanisms for adding new types of information and scalability. In the literature, different approaches for representing contextual knowledge and semantic information can be found [22]. To improve the limitations identified, our work proposes an appropriate option for representation and exchange of context information in smart space environments is ContextML [23], which is based on the XML format. ContextML can handle several layers of abstraction in a context-aware system, as illustrated in Fig. 1, and any context-aware middleware or architecture must therefore be capable of building representations and models of these layered abstractions.
Fig. 1. Layered Context Model
18
B. Moltchanov, C. Mannweiler, and J. Simoes
The main context management features are context acquisition, context aggregation & fusion, context dissemination, discovery and lookup. Adapting such a structure to existing infrastructures could allow a context handling interface to be embedded into a service exposure layer as a SOA-like web service, allowing secure and controlled access to context information. Nevertheless, privacy issues need to be addressed efficiently in order for such services to become a reality. To accomplish such vision, the work done in [24] addresses some of the most relevant issues.
4 The Business Aspects of Context-Awareness in Smart Spaces This chapter shows how the outcome of the proposed context-aware system can enable new business models in smart spaces. 4.1 Types of Context Before getting into the possible business models, it is important to understand what kind of context can be made available. In this sense, we will separate context into three different categories: real-time, historical and reasoned context. Nevertheless, only real-time information is considered as context in the real meaning of this term. Table 1 provides some examples of these context types. Table 1. Types of Context Available within a Smart Space Real-Time Location Orientation
Historical Previous locations Previous orientation
Temperature Humidity Brightness Noise level
Previous temperatures Previous humidity Previous brightness Previous noise levels
Proximity
Previous proximity
Call/VAS Log Phone profile settings HW version, FW release and SW packages installed Battery level
Previous Call/VAS Logs Previous profile settings Previous devices settings
…
Reasoned Movement Movement, destination Weather Weather Weather, Time User activity, user location Friends, colleagues, customers Relationship Proximity Service type, capability, content format Service usage
4.1.1 Real-Time Context This type of context represents the data available in the cache of the CxB, meaning that the context retrieved is still valid (has not expired). This is particularly useful to trigger events based on real time actions. It can be requested per user, per context or per object (e.g., retrieve users that viewed a specific content in a determined location).
Context-Awareness Enabling New Business Models in Smart Spaces
19
4.1.2 Context Prediction for Generating Higher-Level Knowledge Reasoning refers to information that can be inferred from analyzing data and combining different context information. This is usually more complex to obtain and should have a confidence level associated with it. One example for reasoning includes context prediction [25] Context prediction deals with the issue of generating awareness for future context. This implicitly includes the proactive control and adaptation of a system such as a smart space according to (expected) future user behavior. Generally, an entity of a context management system (e.g. context consumer, CxC) can query the future value of the specified context. An exhaustive prediction contains the following parameters: • • •
Name of context scope to be predicted Name of entity the scope belongs to Future point in time the context should be computed for
On the one hand, current context information of the specified entity will be queried in order to get the starting state for the prediction algorithm. On the other hand, historical data of the specified scope and as well as other (related) scopes of that entity will then be retrieved from other entities, e.g. from other CxPs or from context history databases. For example, in case of a location prediction, additional interesting context data could be speed, acceleration and orientation. For the actual prediction process, a set of algorithms for analysis of historical data are available. Suitable candidates include tendency predictors, first or higher order Markov models, hidden Markov models, or Bayesian networks. Depending on the prediction request, the most appropriate algorithm is selected. Again, relevant criteria include time horizon of prediction, type of context (i.e. expected data characteristics), performance of previous predictions for specific applications (e.g. service execution in smart space environments) as well as real time requirements. Another important aspect is the degree to which the algorithm needs supervision, i.e. human interaction. In principal, for smart space environments, prediction should be performed completely unsupervised. As such, the combination or parallel execution of different algorithms shall provide predictions with higher confidence and reliability. 4.2 Relevant Applications and Business Models Context-aware smart spaces may be used by many applications and services. The most interesting application classes that can benefit from context-awareness in smart paces are the following: • • •
sustainability – including assisted living, smart cities, traffic management, intelligent energy management, tele-working, smart remote (business) process control machine to machine communications – including smart factories, logistics, and vehicular communication e-health – including smart hospitals, personalized fitness programs, elderly support from remote, advanced national health and wellness program
20
B. Moltchanov, C. Mannweiler, and J. Simoes
• •
emergency management, recovery and rescue teams support – fast recovery from catastrophes, remote monitoring, support for rescue forces and efficient material allocation Gaming – including distributed and remote entertainment, education and tourism systems.
Any type of company from both the Telecom and IT industries may leverage on the potential of the presented context-aware applications in smart spaces. Some of the most promising business models applicable in this area will be described in the following sections. 4.2.1 The In-House Model One of the best ways to avoid churn is to offer users what they want and need. Using context intelligence to improve services customization and personalization became a trend and operators are starting to use context to improve or create, existing or new services, respectively. A great example of such deployment is provided by some Telcos where a service merges a simple address book into an immersive social experience. Similar ideas can be employed for enhancing user experience in smart spaces. Although very often third party applications (e.g., Facebook, Twitter) are used, there is not any sort of revenue sharing. With this approach, they improve not only customer satisfaction but also revenue generation resulting from the associated data consumption from the operators' network. Furthermore, as these services are usually associated with fidelity plans, this helps operators to rethink long-term strategies. 4.2.2 The Revenue Sharing Model This particular method can exist in two variants. The first occurs when the Telco improves its offer by using context information from external sources (e.g., social networks, traffic or news provider). This is similar to the outside-in methodology or to a white labeling product/service where the operator leverages its customer base to a new offering and earning a percentage out of it. The second approach resembles the inside-out approach, where third party applications are built not only based on operator infrastructure (using APIs) but also its context information. In this situation, although the Telecoms do not own the end user of these applications; they still earn a part of the revenue generated from this service. 4.2.3 The Advertising Model Advertising can be leveraged by a smart space infrastructure in a myriad of ways. It can be done in a non-intrusive way when the customer requests a specific service (e.g. in a shopping mall), which is then sponsored by advertising. In any case, advertisement can be targeted according to a user’s preferences and context. Therefore, advertisers are no longer limited to little customer segmentation options. In a way, this model is a mix of revenue sharing and context exposure selling as they earn money by using both their infrastructure (e.g., SMS or MMS) and their context information (e.g., location). The main challenge of this model is to provide advertisements in an unobtrusive way, simultaneously considering users’ interests for a specific moment in time. These targeted events will consequently improve the probability of service sales since the offer will match his or her needs, interests and context.
Context-Awareness Enabling New Business Models in Smart Spaces
21
4.2.4 Context Exposure Selling Model Operators can extend the usage of their customers’ context to outside their domain in order to improve their long-tail experience and creating revenues from businesses build by third parties. In this model there is no strict correlation between the service offered by third party providers and the operator. In this sense, the Telco exposes context through well-defined APIs. Then, depending on what is necessary the context can be accessed by: • •
•
Request – can be done per user, per group of users, or per context. In this case, the billing is performed on a per request basis or per response basis (both models could work). Subscription – for some services, in case an application needs to keep an updated status of the context (e.g., to track movement you need to update location regularly). For this case, a fee can be applied for the subscription to certain context, to certain users, group of users or a combination of all as the updates can occur without any specific pattern and therefore is difficult to estimate a price per notification. Bundling – bundling context decreases the offer price when compared to single purchases while significantly improving or completing the service offer.
4.2.5 Self-service Model In today’s interactive networks, users are no longer just consumers but also producers. Although for now this concept is mainly associated with content, it is predictable that in the future the same tendency is reflected on service composition and execution, where people can build their own applications based on intuitive graphical interfaces that represent logical interfaces of a myriad of context enablers. In this scenario the operator would also need a service orchestrator based on context. This would pave the way to a whole new way of service creation and consequently revenue generation. In a first instance, it would allow customers to engage with the service and network providers and would accelerate new service development paying back the network operator’s investments in customer tailored services. In a way, this can be seen as the “Application Stores” business model, where customers could then publish their services, using both the operators’ infrastructure and context information. For this to happen, a revenue sharing model together with context exposure billing model should be defined to charge an intermediate or an end user. 4.3 Limitations Despite the simplicity and flexibility in which these business models can be implemented, the processing and management of personal data obviously raises security and privacy issues that need to be addressed. In this sense, users need to stay in control of the whole process, enabling them to specify when, what, why, who, where and how the data is or can be accessed. In other words, user context should be disclosed according to contextual privacy policies and settings. Even the most primitive model should allow users to opt-in and opt-out from such profiling. Currently, on an average, only 3% of an operator’s costumer base opts-in for such services. Therefore, it is necessary to improve these business models in order to attract more end users. Otherwise, largescale context exposure and distribution will never be available.
22
B. Moltchanov, C. Mannweiler, and J. Simoes
In addition, it is necessary to achieve a consensus and agreement among different stakeholders so that information can be provided in a standardized way. This will allow for compatibility within and across different smart spaces and it will facilitate the reusability of applications in different smart spaces. Examples include developerindependent software APIs, as well as manufacturer-independent “hardware APIs”. Moreover, context shall be efficiently acquired, encoded and transformed into a determined high-level context, distributed and provided to requesting entities for consumption, while simultaneously maintaining its real-time properties. This is a very complex and resource-consuming task requiring appropriate context sources, very efficient supporting context management systems with embedded intelligence, employment of interoperable and lightweight standards, fast communication channels and secured interfaces for context retrieval and distribution. The main difficulty in the creation of intelligent and comprehensive smart spaces is “filling” the spaces with myriads of the sensors, which require huge investments. Therefore the users’ mobile terminals should be considered as sensor devices in smart spaces.
5 Trials of New Applications and Services Quasi-smart Space Environments TI is already providing some context-aware services tied to a certain location or a territory to its customers especially for mobile users in the eTourism field, where the B2B2C model is implemented with the following elements: • • • • •
the development of a model of integrated and aggregated offer on a local basis, or "under the patronage" of public administrations responsibility; the involvement of the PAs (Public Administrations) for the sponsorship of the model and the involvement of the proper actors active on the business value chain; the collection and delivery of content (e.g., information for the enhancement of heritage artists); a strong leverage on mobile devices for the end customer and on TI’s infrastructure based on assets (connectivity, data centers, Telco Capabilities) solutions; the hypothesis of conditional business to the establishment of a collaborative model based on a local public-private integration.
The different roles and their interactions in the TI’s eTourism scenario are shown in Fig. 2 where the CA&SA Provider is responsible for integrating context information and self-adapts it into its services. To some actors in the network this context information has an economic value. Therefore, it is assumed that actors do not give away data or services without an adequate compensation. Consequently, the analysis here has been done in terms of value exchanges between the different actors. By playing the role of context enabler, TI limited its involvement to providing network data that could enable context reasoning. In any case, it could be an important distributor of context data in the market of CA&SA services. By playing the role of context
Context-Awareness Enabling New Business Models in Smart Spaces
23
provider, TI would increase the involvement in the organization of these services and would trade context data from different sources. There are no sensor networks involved in the described services as abovementioned, however, mobile terminals and location-aware services can be considered as sensors. Therefore, the described environment is a first step towards a field trial smart-space facilitated by a Telecom operator. In the presented scenario, it plays the role of network operator, service provider and seller. This combination of roles puts TI in a privileged position to collect user and network context data.
CA&SA Service Provider
Fig. 2. View of different roles and their interactions in a general eTourism service scenario
The business model used in the aforementioned services was based on the bundling of a customized platform/service solution to third parties interested in a promotion of certain initiatives and events at large national, regional and local scales. These entities, (e.g., City Hall, Government, Event sponsors) interested to involve and to attract, for any reason (e.g., advertisement, social visibility, tourism), as much people as possible, have now a way to target this offer within a specific and contextualized scope. A prepared ad-hoc system usually involves context management platforms, preparation and customization of the website and its continent, where users can register and upload their content. Then different interactions are offered, voting, rating, the best content, the most popular place, as well as interactive game scenarios where every participant is invited and potentially involved. All these web portals [26] leverage User Generated Content (UGC) upload and sharing capabilities, mainly based on the user location, including the proximity to objects and other people, presence status, willingness proposition, preferences, and social contexts.
24
B. Moltchanov, C. Mannweiler, and J. Simoes
6 Conclusions and Future Work In this work we have presented the business potential of context-aware systems, demonstrated by a technical solution implemented at TI premises for trial concepts and scenarios. Moreover, we have highlighted context management requirements for smart spaces. As seen, most use cases involve more than two entities (a smart space consists of many active entities), therefore disrupting the traditional business models. Despite the presented limitations, we have shown that small variations to well-known models can generate positive financial flows. Furthermore, it became clear that the application of context-awareness as wide spread technology, oriented to the social usage and treating personal data, shall be further analysed for potential issues regarding privacy, business models and law regulations before it can be widely adopted and deployed in smart spaces. Nevertheless, when context-awareness and context-data are exposed as a business enabler to third parties, in a guaranteed and protected way, all entities within the value chain will be able to deliver attractive solutions. Still lacking is the definition of the right pricing structure with an appropriate revenue sharing scheme. Altogether, this work will leverage context exposure over Web2.0 interfaces and other new business propositions.
Acknowledgments This work is supported by the European ICT project “C-CAST” - Context Casting (Contract-No. ICT-216462) as well as by the project “G-Lab” (funding reference 01 BK 0808) funded by the German Ministry for Education and Research.
References 1. Context Casting (C-CAST), FP7-ICT-2007-1, http://www.ict-ccast.eu/ 2. Ryan, N., Pascoe, J., Morse, D.: Enhanced reality fieldwork: the context-aware archaeological assistant. In: Proceedings of 25th Anniversary Computer Applications in Archaeology (1997) 3. Dey, A.K., Abowd, G.D.: Towards a better understanding of context and contextawareness. In: Proceedings of Work on the What, Who, Where, When and How of Context-Awareness. ACM Press, New York (2000) 4. Hull, R., Neaves, P., Bedford-Roberts, J.: Towards situated computing. In: Proceedings of the First International Symposium on Wearable Computers (ISWC ’97), p. 146 (1997) 5. Brown, P.J.: The stick-e document: a framework for creating context-aware applications. In: Proceedings of Electronic Publishing, Palo Alto, pp. 259–272 (1996) 6. Zimmermann, A.: Context Management and Personalisation, p. 260 (2007) 7. Oh, Y., et al.: A Context Management Architecture for Large-Scale Smart Environments. IEEE Communications Magazine (March 2010) 8. Casdell-Oliver, R., Liu, W.: Representation and recognition of Situations in Sensor Networks. IEEE Communications Magazine (March 2010) 9. Want, R., Hopper, A., Falcao, V., Gibbons, J.: The active badge location system. ACM Transactions on Information Systems 10(1), 91–102 (1992)
Context-Awareness Enabling New Business Models in Smart Spaces
25
10. Ailisto, H., Alahuhta, P., Haataja, V., Kylloenen, V., Lindholm, M.: Structuring context aware applications: Five-layer model & example case. In: Proceedings of Workshop on Concepts & Models for Ubiquitous Computing, Sweden (2002) 11. Dey, A.K., Abowd, G.D.: A conceptual framework and a toolkit for supporting rapid prototyping of context-aware applications. HCI Journal 16(2-4), 7–166 (2001) 12. Gu, T., Pung, H.K., Zhang, D.Q.: A middleware for building context-aware mobile services. In: Proceedings of IEEE Vehicular Technology Conference (VTC), Milan, Italy (2004) 13. Fahy, P., Clarke, S.: CASS – a middleware for mobile context-aware applications. In: Workshop on Context Awareness, MobiSys 2004 (2004) 14. Chen, H., Finin, T., Joshi, A.: An Intelligent Broker for Context-Aware Systems. In: Article, Adjunct Proceedings of Ubicomp 2003 (2003) 15. Roman, M., et al.: GAIA: A Middleware Infrastructure to Enable Active Spaces. IEEE Pervasive Computing 1(4), 74–83 (2002) 16. Service Platform for Innovative Communication Environment (SPICE), FP6 EU Project, http://www.ist-spice.org 17. Salis, N., Licciardi, C., Hallsteinsen, S., Geihs, K.: Telecom Italia’s MUSIC Exploitation: Mobile eTourism, D13.12, FP6 EU Project MUSIC (December 2009) 18. Mannweiler, C., et al.: A Robust Management Platform for Multi-Sensor Location Data Interpretation. In: Proceedings of the 19th Future Network and Mobile (2010) (to be published in June 2010) 19. Mannweiler, C., Amann, B., Schneider, J., Klein, A., Schotten, H.D.: A Distributed Context Service Architecture for Heterogeneous Radio Environments. To be published in ITG-Fachbericht der 15. ITG Fachtagung Mobilkommunikation, Osnabrück, Germany (May 2010) 20. Moltchanov, B., Knappmeyer, M., Licciardi, C.A., Baker, N.: Context-Aware Content Sharing and Casting. In: Proceedings of ICIN 2008, Bordeaux, France (October 2008) 21. Liaquat, S., Knappmeyer, M., Baker, N., Moltchanov, B.: A Federated Broker Architecture for Large Scale Context Dissemination. To be published in Proceedings of The 2nd International Symposium on Advanced Topics on Scalable Computing, in conjunction with The 10th IEEE International Conference on Scalable Computing and Communications (ScalCom-2010), Bradford, UK, June 29-July1 (2010) (to be published in July 2010) 22. Baldauf, M., Dustdar, S., Rosenberg, F.: A survey on context-aware systems. International Journal of Ad Hoc and Ubiquitous Computing 2(4), 263–277 (2007) 23. Knappmeyer, M., Liaquat, S., Frà, C., Baker, N., Moltchanov, B.: ContextML A LightWeight Context Representation and Context Management Schema. In: Proceedings of IEEE International Symposium on Wireless Pervasive Computing, Modena, Italy, May 5-7 (2010) 24. Simoes, J., Weik, P., Magedanz, T.: The Human side of the Future Internet. In: Towards the Future Internet, pp. 183–192. IOS Press, Amsterdam (2010) doi:10.3233/978-1-60750539-6-183 25. Mayrhofer, R.M.: An Architecture for Context Prediction. Dissertation, Johannes Kepler University Linz (2004) 26. http://teamlife.telecomitalia.it/lucca, http://teamlife.telecomitalia.it/lecce, http://teamlife.telecomitalia.it/venezia, http://beta.teamlife.it/bs
A Middleware Architecture for Safety Critical Ambient Intelligence Applications Antonio Coronato and Giuseppe De Pietro Institute of High Performance Computing and Networking ICAR-CNR Via P. Castellino 111, 80131, Naples - Italy
[email protected],
[email protected] Abstract. Ambient Intelligence (AmI) technologies are more and more often adopted in scenarios, like healthcare, environments monitoring and control, ambient assisted living, etc, which are critical for human safety and assets preservation. This requires that such a kind of applications be designed taking into account stringent dependability requirements. This paper presents a service-oriented middleware architecture for safety critical Ambient Intelligence applications, which provides services that enable the designer to develop runtime verification mechanisms; that is, it is possible to continuously monitor the verification of correctness properties defined at design time.
1
Introduction
Ambient Intelligence (AmI) is the emerging computing paradigm, which derives from Pervasive Computing, that refers to electronic environments that are sensitive and responsive to the presence of people [4]. In the past few years, many pervasive computing environments have been developed and deployed to realize smart rooms, active spaces and context-aware applications. All these environments have been devised with the aim of enabling users to derive benefit from technology without being distracted by it, in order to augment productivity, collaboration, and access to technology. A recent trend is to use these technologies in new domains like hospitals, old people’s homes, emergency scenarios, etc. But, such kinds of environment present a new criticality especially concerning the issues of expressing requirements, verifying and validating them, ensuring functional correctness, etc. These applications must be considered safety critical and, consequently, should be designed taking into account such a criticality. As an example, let us consider the application described in [14]; it mainly consists in a tele-monitoring system that processes the stream of physiological data coming from an Electrocardiogram (ECG) sensor monitor of a cardiopathic patient at home. Data must be processed in real-time; i.e. by granting ”results” within a certain temporal period. Moreover, in the case of critical values, alerts must be raised and processed by a temporal threshold. As also emphasized by the authors, functional incorrectness or run time failures may result in catastrophic consequences for the patients monitored. As a consequence, such considerations require that this class S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 26–37, 2010. c Springer-Verlag Berlin Heidelberg 2010
Safety Critical Ambient Intelligence Applications
27
of systems be designed and developed taking into account intrinsic and stringent dependability requirements. In this paper, we present a service oriented middleware architecture that provides a set of basic mechanisms for rapidly prototyping safety critical Ambient Intelligence applications. In addition to other middleware infrastructure, the one proposed in this paper presents a specific section (set of services) that enables the specification of correctness properties and their check while the system is running. So called runtime verification techniques are adopted both to tune the system in its early running and to monitor its correct behavior once deployed definitively. The rest of this paper is organized as follows. Section 2 presents our motivation and related work. Section 3 describes the middleware architecture. Section 4 focuses on runtime verification mechanisms for correctness properties. Section 5 presents a case study. Finally, Section 6 concludes the paper.
2
Motivation and Related Work
A remarkable example of safety critical AmI applications is the class of Ambient Assisted Living (AAL), which regards the realization of Smart Environments to monitor elderly and ill people. A middleware infrastructure for AAL applications is the PERSONA project (Perceptive Spaces prOmoting iNdepentent Aging) [15], which aims at developing a scalable open standard technological platform for building a broad range of Ambient Assisted Living Services. This is an ongoing project funded by the European Commission. The main technical challenge is the design of a self-organizing middleware infrastructure allowing the extensibility of component/device ensembles. The communication patterns of the infrastructure are based on distributed coordination strategies for service discovery and utilization. The current prototype of the PERSONA middleware, implemented on the OSGi platform [12], uses connectors based on UPnP, Bluetooth, and R-OSGi [18]. However, the development of such a kind of applications presents new criticalities depending on their intrinsic characteristics, as for an example the dependency of the system behavior from the user and resources location and movements. Such criticalities can partly be faced by means of formal methods [17]. On the other hand, the use of formal methods in the field of pervasive computing is a relatively new trend and most of existing applications rely on Ambient Calculus (AC ) [3] that provides interesting primitives for the designer of pervasive systems. As an example, Campbell and Ranganathan [2] have argued the need for the formal specification of pervasive computing environments and have proved the correctness of some elements of their system GAIA by means of AC. In previous papers, we have defined a methodology that enables the designer to specify formally an Ambient Intelligence or a Pervasive Computing application [5] [6]. However, formal methods are typically not confined to the specification phase. Indeed, they can be adopted to prove the correctness of the specification or the
28
A. Coronato and G. De Pietro
implementation. In particular, Model Checking, that along with Theorem Proving and Static Analysis is a technique aiming at static program verification [13], which is concerned with checking if all possible traces derived from a program (or abstract model) satisfy a property of interest. In contrast to these techniques, this paper focuses on runtime verification which is concerned with checking traces of events generated from the program run against properties described in the proposed logic. When a property is violated or validated, the program can take actions to deal with it. The technique can be used both for testing before deployment of the software, and for monitoring after deployment. In the first case, one must come up with test cases [1] that might uncover a bug. In this setting, runtime verification is considered as an auxiliary tool to automate the creation of oracles that detect errors. In the second case, runtime verification is used to monitor a program during its execution so to take actions in response to the violation of properties. With this perspective in mind, a runtime verification tool may be used to define how the program reacts to bugs, possibly steering it to the correct behavior [11]. It is useful to note that runtime verification techniques can be adopted also to tune the system. This is particularly true for pervasive applications whose behavior can strongly depend on operating conditions. As an example, an RFID reader can fail to detect a tagged user depending on i) the orientation of the antenna, ii) the power of the antenna itself, iii) the position of the tag on body, iv) the existence of an object between the tag and the reader at the time of reading, etc. All these conditions may be very difficult to verify with static techniques. In contrast, runtime verification of the prototype system in the real domain of application can make possible the collecting of traces that can be used to tune the system. It is important to note that runtime verification techniques typically concern real-time properties [16], but in this paper we extend the verification to properties related to physical locations.
3
Middleware Architecture
In this section, we describe the overall middleware architecture. Figure 1 shows the key services, layers and modules of the proposed middleware. The bottom-left section regards Human Computer Interaction. It includes mechanisms for handling natural and advanced interactions in a smart environment. Indeed, one of the grand challenges for future smart environment applications is making interaction with technology-rich environments intuitive, natural, unobtrusive, intelligent, and distraction free. Currently, two services have been developed, a TextToSpeech Service, which is in charge of synthesizing vocal indications, and a Messaging Service that is in charge of sending textual messages to the user’s mobile device [7]. The bottom-right section is about Sensing and Controlling. This section includes hardware sensors and actuators. These two sections are structured in different layers. The lowest layer includes hardware devices. The heterogeneity of the components at this layer is handled by means of software components,
Safety Critical Ambient Intelligence Applications
29
Fig. 1. Middleware architecture
namely facilities, which hide the hardware components to upper layers. For example, the RFID Facility provides support to handle an RFID antenna; thus, each RFID antenna has its own facility that will handle interactions between the hardware component and the rest of the software system. Upon this layer, a Facility Service handles the set of homogeneous facilities that stand below; i.e. a facility service catches information coming from the set of facilities that are related to the same kind of hardware device, RFID antenna for the case of RFID. These services are in charge of capturing data coming from hardware components and handling them as an integrated set of information for the upper levels. Thus, the RFID Facility Service (one of the facility services not shown in the figure) collects information coming from any RFID antenna deployed within the environment. The middle section offers communication functionalities. In particular, in addition to RPC, an asynchronous communication mechanism is exposed by the Event Service. This service is in charge of dispatching events between software components. It supports the publish-subscribe mechanism. Further details can be found in [8]. The topmost section concerns the context. The services defined in this layer are: – Topology Service - This service provides a unique and uniform representation for the topology of the environment. In particular, locations are classified as semantic locations (buildings, floors, rooms, an area in front of a wall monitor, etc) and physical locations (the area sensed by an RFID antenna, the area covered by a WiFi access point, etc.) [9]. – Tracking Service - This service offers a mechanism to track all movements of a mobile resource or user.
30
A. Coronato and G. De Pietro
– Location Service - This component is in charge of handling physical location information for mobile resources and users. In particular, it locates mobile users by means of the RFID technology and WiFi enabled mobile devices by means of classic location techniques [9]. – User Service- This service provides basic authentication mechanisms for users and handles the list of all users active in the environment. – Resource Service - This component extends standard mechanisms for registering and monitoring resources, like laptops, PDAs and sensors. Finally, the correctness section includes mechanisms for runtime verification. The correctness properties are defined with respect to the state of an ambient, which is a physically bounded entity of the domain. An ambient may be i) a location of the environment (e.g. a room in which only authorized people can enter); ii) a resource (e.g. a constrained mobile device that can execute only lightweight software agents); or iii) a person (e.g. a user that can invoke some services only after having been identified); etc. The correctness properties can also be defined with respect to temporal properties (i.e. real-time constraints). The set of services defined for runtime verification consists of: – RunTimeStateHolder Service - This is the component that holds and exposes the state of an ambient. – RunTimeChecker Service - This is the component that checks, on behalf of an ambient, the properties of hosted, entering and leaving ambients. – Timer Service - This is the component that holds and verifies temporal constraints. – Monitoring Service- This service provides basic mechanisms for monitoring the entire system.
4
Runtime Verification
In this section, the services for runtime verification are described. Runtime verification is divided into two parts: instrumentation and event observation. A monitor receives events from the executing program, emitted by event generators inserted during instrumentation, and dispatches them to a collection of algorithms, each of which performs a specialized trace analysis. In the following, both the structural and behavioral models are presented. The structural model is reported in figure 2 and consists of a set of software components that instrument the running system in order to be monitored by an external monitor, the Monitoring Service. It is important to note that in addition to real-time properties we are interested in correctness properties that are related to locations. 4.1
Structural Model
The detailed architecture is: RunTimeStateHolder This component supports the following structure:
Safety Critical Ambient Intelligence Applications
31
– S - This is the state of the current ambient; – ES - This is the list of all admissible states for an entering ambient; i.e. another ambient must verify one of these states in order to enter the current ambient; – LS - This is the list of all admissible states for a leaving ambient; – HS - This is the list of all admissible states for a hosted ambient; – getState - This operation returns the current state; – setState - This operation updates the current state to a new value; – getHostedStates - This operation returns the list of admissible states for a hosted ambient; – setHostedStates - This operation sets the list of admissible states for a hosted ambient; – getEnteringStates - This operation returns the list of admissible states for an entering ambient; – setEnteringStates - This operation sets the list of admissible states for an entering ambient; – getLeavingStates - This operation returns the list of admissible states for a leaving ambient; – setLeavingStates - This operation sets the list of admissible states for a leaving ambient; RunTimeChecker This component supports the following operations: – canEnter - This is the operation that verifies whether an ambient (say for example b) can enter or not the current ambient (a); i.e., when the ambient b tries to enter into a, this method verifies whether the current status of b is admitted by a, or not; – canLeave - This is the operation that verifies whether an ambient (b) can leave or not the current ambient (a); – canHost - This is the operation that verifies whether an ambient can be hosted or not by the current ambient. Timer This component supports the following structure: – TimeToExpire - This is the time the timer has to wait before expiring; i.e., this is the temporal range to complete a real-time operation; – TimeToAlert - This is the time the timer waits before raising an alert. It holds the property (TimeToAlert < TimeToExpire). This parameter, which is optional, is used to send an alert a certain time before the timer expires; – setTimer - This is the operation that sets the timer’s parameters; – startTimer - This is the operation that starts the timer; – ariseAlert - This is the operation that raises an alert before the timer expires; – expire - This is the operation that sends a message when the timer expires.
32
A. Coronato and G. De Pietro
Fig. 2. Pattern Structural View
4.2
Behavioral Models
The case of an action of type enter in is detailed. In particular, the ambient b wants to enter the ambient a. For this case, two alternative interaction models are specified. In figure 3(a), the ambient b itself is in charge of verifying that the condition Enabled for entering the ambient a is satisfied. Eventually, the ambient b is considered trustworthy. In contrast, in figure 3(b), the ambient a is in charge of verifying incoming ambients, but, it must be notified of this action in some way.
(a) Incoming centered responsibility
(b) Hosting centered responsibility
(c) Change of the State of a Hosted Ambient Fig. 3. Capability in - Pattern Behavioral Views
Finally, in figure 3(c) the case of change of the state for a hosted ambient is reported. In this case, the hosted ambient (b in the figure) must notify its new state to the hosting one (a). After that, the hosting ambient verifies that the new state is compliant with the states admissible for hosted ambients.
Safety Critical Ambient Intelligence Applications
5
33
Case Study
In this section, we present a case study. The system being designed is a Pervasive Healthcare Application for the Department of Nuclear Medicine of the University Hospital ”Secondo Policlinico” of Naples. 5.1
Informal Description
Within the Department, patients are injected with a small amount of a radioactive substance in order to undergo specific examinations (e.g. Blood Volume Study, Bone Scan, Brain Scan, etc.). Once injected, patients emit radiation (gamma rays) and have to stay in a specific room to wait for the examination to be performed. The time patients have to wait depends on the kind of examination that has to be performed and the time the radioactive substance takes to propagate -within the body- and to decay to the right level. In fact, examinations can be executed only if the radiation level is in a certain range. After the examination, patients return to the waiting room until the level of radiation becomes less than a specific threshold and, so, harmless. The department consists of the following rooms: 1) Acceptance Room (AcceptanceRoom) -This is the room where patients are accepted within the department and wait for injection; 2) Injection Room (InjectionRoom) -This is the room where patients receive the injection; 3) Hot Waiting Room (HotWaitingRoom) -This is the room where patients wait for the examination after having been injected and until the radiation level reaches the correct range; and 4) Diagnostic Room (DiagnosticRoom) -This is the room where examinations are performed. Currently, patients are accompanied by nurses when moving within the department. The goal is to have an automatic system that would lead them. The system will adopt RFID readers and tags to identify and locate patients within the department. Mobile devices will also be used to send messages to patients in order to invite them to move (e.g. ”Move to the injection room”, ”exit the department”, ”you are not allowed to enter this room”, etc.). In this way, nurses will no longer be necessary to guide patients within the department. This will have two benefits: lower costs and fewer people exposed to radiation. 5.2
A Peace of the Formal Specification
First, the following classes of ambients are concerned: {Department, Room, Patient, RFIDReader, RFIDTag, MobileDevice, Message}
It is possible to specify the status of each ambient. The injection room and diagnostic room can be either ’WORKING’ or ’NON WORKING’. When ’WORKING’, it can be ’IDLE’ -no patient inside- or ’BUSY’. The patient is ’WAITING TO BE INJECTED’ (W) before having the injection and ’INJECTED’ (I) after the injection. Next, when the radioactive substance decays to the right level for the examination, he is ’READY’ (R) to be examined. After the examination his status
34
A. Coronato and G. De Pietro
is ’EXAMINED’ (E). Finally, when the radioactive substance becomes harmless, he is ’DECAYED’ (D). It is also possible to assume that other classes of ambients are stateless. The following formulas specify these possible states: Room ∈ {NON WORKING,WORKING*IDLE,WORKING*BUSY}
(1)
Patient ∈ {W,I,R,E,D}
Now, let us focus on some dynamic aspects. As an example, it is possible to formalize the path of a patient who has to move from the hot waiting room to the diagnostic room in order to undergo the examination. Before this, some constraints regarding this movement are expressed. Indeed, concerning the hot waiting room, a patient can enter only when he is just injected or examined and can exit only when ready to be examined or decayed. Therefore, the following constraints must be guaranteed: Patient canEnter(HotWaitingRoom), iff Patient ∈ {I,E}
(2)
–A patient can enter the hot waiting room only if he is INJECTED or EXAMINED Patient canLeave(HotWaitingRoom), iff Patient ∈ {R,D}
(3)
–A patient can leave the hot waiting room only if he is READY or DECAYED HotWaitingRoom canHost(Patient), iff Patient ∈ {I,R,E,D}
(4)
–A patient can stay in the hot waiting room only if he is INJECTED, READY, EXAMINED or DECAYED
It is worth noting that, on one hand, the specification proposed so far describes in an unambiguous way part of the application domain and behavior of its users; on the other hand, constraints and properties (e.g. canEnter ) will affect the software system. One of the most important constraints for the application regards the minimum and maximum time to wait for the examination after the patient has received injection. This is specified by the following formula: T MIN
(5)
where TMIN is the time to wait until the radioactive substance is sufficiently decayed to enable examination; TMAX is the maximum time to wait after the patient has been injected; Tk is the time when the patient is injected; and, Tj is the time when the examination is completed. 5.3
System Architecture and Runtime Verification
In this section, an implementation for runtime verification is provided. For the sake of brevity, the focus is on correctness properties related to the hot waiting room. Monitoring and runtime verification is accomplished by means of the following services: – PatientStateHolder - This is the component that holds and exposes the state of a patient by means of the operations getState and setState. Such operations act accordingly with what defined previously (1);
Safety Critical Ambient Intelligence Applications
35
– HotWaitingRoomStateHolder - The ambient hot waiting room is stateless; but, it must specify which are the states admissible for patients who try to get in/out of, or are hosted by the room. Then, it supports all the features of the RunTimeStateHolder component (figure 2) with the exception of S, getState and setState; – HotWaitingRoomChecker - This is the component that checks, for the hot waiting room, the properties of hosted, entering and leaving patients. Specifically, it supports the operations: canEnter, canLeave and canHost. Thus, the operation canEnter is in charge of verifying the correctness property (2), the operation canLeave refers to the property (3), whereas the operation canHost verifies the correctness property (4). – Timer - This is the component that verifies the temporal constraint (5); – EventService - This service is in charge of dispatching events between software components; – LocationService - This service is able to identify and locate RFID tagged entities; – MessagingService - This service offers functionalities in order to send messages to patients through their mobile devices; – Graphic User Interfaces - Two user interfaces are available: InjectionRoomInterface and DiagnosticRoomInterface. Both enable a doctor to select a patient from a waiting list and next to update the patient status. For an example, in the case of injection, a bottom Injection allows to change the status of the selected patient to ’INJECTED’. Now, let us analyze three possible scenarios. Scenario 1. The operator in the hot waiting room uses the InjectionRoomInterface to select and call a patient for the injection (see figure 4), let us call him Massimo Rossi. Next, the software interface component invokes the MessagingService to send a message to the patient by means of the operation MoveToRoom. Subsequently, the message is received and shown by the Massimo Rossi’s mobile device. Next, after the injection has been performed, the operator pushes the bottom ’INJECTED’, which produces three events: 1) the state of the patient is changed to ’INJECTED’ by means of the setState operation; 2) the Timer is set by the setTimer operation; and, 3) the patient is required to move to the hot waiting room by the operation MoveToRoom. Scenario 2. Let us suppose that after having received the message that requires to move to the injection Room, by mistake Massimo Rossi moves to the hot waiting room. Once at the door, he is located and identified by the LocationService, which alerts the HotWaitingRoomChecker. The HotWaitingRoomChecker asks the PatientStateHolder for the state of the patient. After that, it verifies that the state of Massimo Rossi is not compatible with any admissible by the hot waiting room since he has not yet been injected. Then, a message is sent to the Massimo Rossi’s mobile device in order to require he move away.
36
A. Coronato and G. De Pietro
Fig. 4. Case Study - A piece of system architecture
Scenario 3. Let us suppose the case that the Timer expires while the patient is within the hot waiting room and he has not undergone the examination yet; i.e. the correctness property (15) is not verified. In this case an event is generated by the Timer and notified to the EventService. Next, the Timer updates the state of the patient to ’DECAYED’ by invoking the setState operation. Successively, the HotWaitingRoomChecker, which periodically verifies the state of the patients in the room, detects the new state for Massimo Rossi and concludes that he can no longer stay in the room. Consequently, a message is sent to his mobile device.
6
Conclusions
Ambient Intelligence is one of the most exciting fields of application for pervasive, wireless and embedded computing. Indeed, promising prototypes are continuously being proposed by both academia and industry. However, the design and realization of real -non prototype- systems that may affect the safety of their users must be conducted by means of software engineering approaches and taking into account dependability issues. This paper has presented some middleware mechanisms for runtime verification of Ambient Intelligence applications. Such mechanisms are part of a methodology that relies on the use of formal methods for i) specifying AmI applications in an unambiguous way; ii) statically verifying the correctness of the specification; and iii) dynamically verifying the correctness of the implementation. This
Safety Critical Ambient Intelligence Applications
37
choice is due to the consideration that the correctness of specifications does not imply the correctness of implementation. In contrast, runtime verification of the prototype system in the real domain of application can make possible the collecting of traces that can be used to tune the system or to monitor the system itself in order to execute recovery strategies whenever a correctness proprty is violated.
References 1. Artho, C., et al.: Combining test case generation and runtime verification. Theor. Computer Science 336 (2005) 2. Campbell, R., Ranganathan, A.: Provably Correct Pervasive Computing Environments. In: Proc. of PerCom 2008 (2008) 3. Cardelli, L., Gordon, A.D.: Mobile Ambients. Theor. Computer Science (2000) 4. Cook, J., Augusto, J.C., Jakkula, V.R.: Ambient Intelligence: Technologies, applications, and opportunities. Pervasive and Mobile Computing 5(4) (2009) 5. Coronato, A., De Pietro, G.: Formal Specification of Wireless and Pervasive Healthcare Applications. ACM Transactions on Embedded Computing Systems (to appear in the SI on Wireless Healthcare) 6. Coronato, A., De Pietro, G.: Formal Specification of Dependable Pervasive Applications. In: The Proc. of APSCC 2009 (2009) 7. Coronato, A., De Pietro, G.: Middleware mechanisms for supporting multimodal interactions in smart environments. Computer Communications 31(18) (2008) 8. Coronato, A., De Pietro, G.: MiPeG: A Middleware Infrastructure for Pervasive Grids. Journal of Future Generation Computer Systems 24(1) (2008) 9. Coronato, A., De Pietro, G., Esposito, M.: A Multimodal Semantic Location Service for Intelligent Environments: An Application for Smart Hospitals. Personal and Ubiquitous Computing 13(7) (2009) 10. Crisler, K., Anneroth, M., Aftelak, A., Pulil, P.: The human perspective of the wireless world. Computer Communications 26(1) (2003) 11. d’Amorim, M., Havelund, K.: Event-based runtime verification of java programs. In: Proc. of WODA 2005 (2005) 12. Hall, R.S., Cervantes, H.: An OSGi implementation and experience report. In: Proc. of Consumer Communications and Networking (2004) 13. Karlsson, D., Eles, P., Peng, Z.: Formal verification of component-based designs. Journal of Design Automation for Embedded Systems 11(1) (2007) 14. Lee, R.G., Chen, K.C., Hsiao, C.C., Tseng, C.L.: A Mobile Care System With Alert Mechanism. IEEE Transactions on Information Technology In Biomedicine 11(5) (2007) 15. PERSONA, http://www.aal-persona.org/ 16. Rosu, G., Havelund, K.: Rewriting-based techniques for runtime verification. Automated Software Engineering 12(2) (2005) 17. Saha, G.K.: Software fault avoidance issues. ACM Ubiquity 7(46) (2006) 18. Wu, J., Huang, L., Wang, D., Shen, F.: R-OSGi-based architecture of distributed smart home system. IEEE Trans. on Consumer Electronics 54(3) (2008)
Ranking Algorithm by Contacts Priority for Social Communication Systems Natalia Dudarenko, Juwel Rana, and Kåre Synnes Department of Computer Science and Electrical Engineering Luleå University of Technology, SE-971 87 Luleå, Sweden {natalia.dudarenko,juwel.rana,kare.synnes}@ltu.se
Abstract. The paper presents the ranking algorithm by contacts priority with application for social communication services. This algorithm makes it possible to rank contacts in different social communication services by their priority for the user, and find a preferable communication tools for every contact in the social graph. It is proposed to determine priorities of the contacts using communication history. The ranking algorithm is based on the Markov chains theory and social strength calculation approach. The paper exploits the opportunities for measuring social strength for the contacts and also prioritizes communication tools for simplifying communication. The results are supported by an example. Keywords: Ranking algorithm, Markov chains, Social strength, Communication service, Contacts priority.
1 Introduction The social networking and communication services (Facebook, MySpace, Twitter, etc.) have a large impact on our daily life due to enormous applications and large number of users (e.g., Facebook have 400 Milion active users) [1, 6]. In general, the services form social graph among the contacts, provide online interactions among the contact individuals, facilitate content sharing mechanism, and also offer different kind of group communication tools. In a way, this forwards the traditional communication services (e.g., Email, SMS) to new directions (e.g., Google Wave) where Web technologies and mobile devices are playing a very important role [2]. However, that increased numbers of communication services (social networking and communication services) generates huge amount of contents (e.g., picture, video, presence information, etc), which add new challenges for maintaining contacts, and contents, and initiating group communication [4, 10]. Therefore, this paper addresses to the problem of social ranking of the contact individuals by providing an algorithm and discusses possible application scenarios for that. The paper proposes the ranking algorithm by contacts priority (CP-Rank algorithm) that allows classifying the contacts by their priority for the user and finding a preferable communication tools for every contact. The proposed method prioritizes the contacts based on communication history. However, aggregating communication history log is S. Balandin et al. (Eds.): NEW2AN/ruSMART 2010, LNCS 6294, pp. 38–49, 2010. © Springer-Verlag Berlin Heidelberg 2010
Ranking Algorithm by Contacts Priority for Social Communication Systems
39
not addressed in the paper. The focus of the paper is to provide sophisticated algorithm for ranking social contacts and communication tools. The CP-Rank algorithm is based on Markov chain theory. The social strength calculation algorithm [20] generates the values for the transition probability matrix with respect to the CP-rank algorithm. The rest of the paper is organized as follow. Section 2 provides related work of the research problem. Section 3 describes social strength as a building block of this research. Section 4 proposes CP-Ranking followed by the algorithm. Section 5 includes an example. Section 6 provides evaluation. Finally, Section 7 contains the discussion and future work. The conclusion is in Section 8.
2 Related Work Reto et al., do a survey for group communication and collaboration in mobile settings where they come to the result that contact ranking is an important problem [16]. They apply the CONGA algorithm for detecting group or community of contacts. In our work, the contacts are ranked in more generalized manner to form groups based on social strength rather detecting communities from the communication log. Ranking algorithms for example Pagerank or hypertext induced topic search [17, 18] are specialized for Web link searching. In the paper, we also develop an algorithm called CP-ranking for ranking the contacts and their communication tools in the online social networks. HITS or Pagerank algorithms consider in-links and out-links to form the utility functions used in the algorithm, while in our proposed algorithm we considered number of interactions using different communication tools in online social networking and communication services to measure social strength. Bao et al., propose two algorithms SocialSimRank and SocialPageRank for capturing the popularity of Web pages [7]. The algorithms take feedback of the user in form of social annotations. In our work, we consider frequency of communication with particular tools to identifying the popularity of particular communication tools. We also consider different threshold values based on popularity of tools to get good result. Different approaches for dealing with social strength are described in [5, 9, 16, 20]. In those papers different kind of quantitative methods are applied to capture social strength. The Markov chain theory is applied for finalizing social strength. As opposed to Zhang X. et al., who take into account the importance of the in-links and out-links and the different link weights, we use the social strength to form transition probability matrix [19].
3 Social Strength Calculation This section discusses how social strength can be calculated from different communication and social networking services. In the paper, social strength defines as numerical values to rank the contacts of a particular user’s social graph. For example, if a user has a social graph of three contacts (A, B and C) then their corresponding social strengths can be represented as 0.30, 0.50 and 0.20, which exposes that the user is
40
N. Dudarenko, J. Rana, and K. Synnes
highly connected with the contact B. Since the algorithm was described in an earlier work [20], we limit ourselves to a short description for the self-containment of this paper. Fig. 1 shows a conceptual overview of how social data (e.g., calendar data, sensor data, etc) is collected from different communication and social networking services and processed through aggregated social graph framework. When the user interacts in social media the interactions are captured by the framework [3]. Then the framework applies social strength calculation algorithm to generate rank of contacts in the social graph. For instance, Strength measurement block in the Fig. 1 applies social strength calculation algorithm and provides strongest network of contacts.
Fig. 1. Conceptual Architecture
Communication history log is processed (see Table 1) by following the approach of [20]. According to the approach, each of the frequency parameter f includes three dimensions where, i implies to communication service, j implies to communication tools and k implies to contacts (Fig. 2). In the Table 1, the field where i=1, j=1, k=1 means that Johan, a contact of the social graph interacts with the user through the Facebook messaging tool. The overall social strength of the user U (U is the main user which forms the aggregated social graph for all of his/her contacts) is n
S = ∑ sk = 1 , k =1
(1)
Ranking Algorithm by Contacts Priority for Social Communication Systems
41
k(Contact) j(Communication tool)
f
i(Communication service)
Fig. 2. Frequency Data Type
In the proposed CP-Ranking algorithm, the sum of strength of all values in a row of transition matrix is 1. In [20], utility functions are used to formulate social strength calculation algorithm. The utility function for social strength calculation is q
si , a = ∑ j =1
f i , j , a thresij n
∑ k =1
fi, j , k
,
(2)
where parameter si,a in equation (2) provides the strength of the user U with the contact a, considering all interactions in particular communication service i; q is the number of communication tools of the service i. The parameter thresij is the threshold value estimated over the usage on communication tool j of the communication service i. For instance, if the user has 4 contacts, 4 communication services, in which each services has 2 different communication tools and each of the communication tools has threshold to signify the effects of that particular communication tool, then the equation will provide 4 different strengths for the 4 contacts. The overall sum of the strength will be 1, as mentioned before. p
sa = ∑ thresi si , a .
(3)
i =1
Equation (3) accumulates strengths collected from Si,a to measure global rank of the contacts. Here, the parameter sa provides the overall strength of the user U with the contact a. The parameter thresi is the threshold value estimated over the usage on communication service i. Utility based approach is able to tune threshold values for the different communication tools and services, which is discussed more in [20]. Usage of the tools and services are taken into consideration for tuning threshold parameter dynamically.
42
N. Dudarenko, J. Rana, and K. Synnes Table 1. Frequency logs
Name
Johan (k=1) Natalia (k=2) Kare (k=3) Juwel (k=4)
FB/Message (i=1,j=1) 3 2 1 3
FB/Photo (i=1,j=2) 0 2 0 4
FB/Comments (i=1,j=3) 0 1 6 2
Mobile-phone/Call (i=2,j=1) 5 1 2 2
In the next section the proposed CP-ranking algorithm allow to aggregate the result, rank the contacts and find the preferable service/tools for the user/contacts using social strength.
4 The Proposed CP-Rank Let us consider the communication process in any communication system as a finite Markov chain [13], where S={Si: i=1÷n} is the states set of stochastic process with interactions between the user and his contacts, and between the contacts and communication tools of the different services; P={Pij: i=1÷n, j=1÷n} is the set of probabilities Pij (i=1÷n, j=1÷n) of moving from the state Si to the state Sj. P is a stochastic matrix, the Markov chain is a random walk on the graph defined by the interactions structure of the contacts. The probabilities set satisfies the equation [13,14] n
∑ P =1, i =1
i
(4)
that P = P1
P2 … Pi … Pn = row{Pi : i = 1, n} ;
(5)
Ptr =col{|row(Pij): j=1÷n|, i=1÷n} is the transition probability matrix from the state Si into the state Sj (i,j=1÷n); K={k:0≤k<∞} is the finite number of discrete sample time such that the stochastic process is in the state S(k+1) with probability vector P(k+1) and in the state S(k) with probability vector P(k) satisfy the equation P(k + 1) = P(k ) Ptr (k ) , P(0) = P{S (0)} ,
(6)
where P(0)=P{S(0)} is the initial probability vector of stochastic process being in the initial state S(0). In our problem statement the transition probabilities matrix is based on the values of the social strengths of interactions between the user and contacts which is discussed in the previous section. Let us consider the aggregated social graph as the graph representation of the communication process. For instance, the user U has 3 contacts k1, k2, k3. The
Ranking Algorithm by Contacts Priority for Social Communication Systems
43
connections between the user and his contacts can be realized with 2 services. One of the services has two communication tools (f11, f12), and another one has only one communication tool (f21). The contact k1 apply the communication service 1 with tools f11 or f12; the contact k2 likes to use the communication tools f11 of the service 1 or the tool f21 of the service 2. The third contact k3 prefers to connect by one of the all possible tools. Notice that every contact has individual preference about communication service and communication tool for interaction with the user. The social graph of the system S is shown in Figure 3. Using the social graph we get the next transition probabilities matrix 0 0 0 0 0 0 0 ⎡0 sk (i, f ,k1) sk (i, f , k2) sk (i, f ,k3) ⎤ ⎢0 ⎥ 0 0 0 sk (1, i f 1, k1) sk (1 i , f 2, k1) 0 0 0 0 0 ⎢ ⎥ ⎢0 ⎥ 0 0 0 0 0 sk (1 i , f 1,k2) sk (i2, f 1,k2) 0 0 0 ⎢ ⎥ 0 0 0 0 0 0 0 sk (1, i f 1,k3) sk (1, i f 2,k3) sk (i2, f 1,k3)⎥ ⎢0 ⎢0 ⎥ 0 0 0 1 0 0 0 0 0 0 ⎢ ⎥ Ptr = ⎢0 0 0 0 0 1 0 0 0 0 0 ⎥ ⎢0 ⎥ 0 0 0 0 0 1 0 0 0 0 ⎢ ⎥ 0 0 0 0 0 0 1 0 0 0 ⎢0 ⎥ ⎢ ⎥ 0 0 0 0 1 0 0 0 0 0 ⎢0 ⎥ ⎢0 ⎥ 0 0 0 0 0 0 0 0 1 0 ⎢ ⎥ 0 0 0 0 0 0 0 0 0 1 ⎣0 ⎦
(7)
Fig. 3. Social graph
Let us find the solution of equation (8) using recurrent method [15] ⎧ P (1) = P ( 0 ) Ptr , ⎪ 2 ⎪ P ( 2 ) = P (1) Ptr = P ( 0 ) Ptr Ptr = P ( 0 ) Ptr , ⎨ 2 3 ⎪ P ( 3) = P ( 2 ) Ptr = P ( 0 ) Ptr Ptr = P ( 0 ) Ptr . ⎪ ⎩…
(8)
44
N. Dudarenko, J. Rana, and K. Synnes
So, the solution of (8) is
P ( k ) = P ( 0 ) Ptr k .
(9)
The final probability vector Pf = lim { P ( k ) = P ( 0 ) Ptrk } satisfies the next equation k →∞
[13] Pf = Pf Ptr .
(10)
The solution of equation (10) with respect to the final probability vector Pf allows ranking the probabilities of stochastic process being in the state Si; then we obtain priorities of the user’s contacts and priorities of the contacts with respect to the communication tools. Now, we can describe CP-Rank algorithm.
5 The CP-Rank Algorithm The CP-Ranking algorithm follows the steps mentioned below: 1. Build the graph of communication process, where states are the user, his contacts, and communication tools. 2. Using the social strength calculation algorithm, find the social strength of all interaction between the user and his contacts, and calculate the social strength of every communication tool that are used by the contacts. 3. Form the transition probability matrix Ptr in form (7). 4. Solve the matrix equation (10). 5. Sort the user’s contacts in descending order with respect to the final probabilities. 6. Sort the communication tools in descending order with respect to every contact of the user by the final probabilities.
6 Example Let us consider the graph representation of communication process as graph in figure 3, where the social strengths for every user’s contact and every communication tool are the next values sk (i, f ,k1) =6/16; sk (i, f ,k2) =3/16; sk (i, f ,k3) =7/16; sk (1, i f 1,k1) = 2/6; sk (1, i f 2,k1) = 4/6; sk (1, i f1,k2) = 2/3; sk (i2, f1,k2) =1/3; sk (1, i f 1,k3) =1/7; sk (1, i f 2,k3) = 4/7; sk (i2, f 1,k3) =2/7.
Ranking Algorithm by Contacts Priority for Social Communication Systems
45
In this case, we get the transition probability matrix in the form ⎡0 6/16 3/16 7/16 0 0 ⎢0 0 0 0 2/6 4/6 ⎢ ⎢0 0 0 0 0 0 ⎢ 0 0 0 0 ⎢0 0 ⎢0 0 0 0 1 0 ⎢ Ptr = ⎢0 0 0 0 0 1 ⎢0 0 0 0 0 0 ⎢ 0 0 0 0 ⎢0 0 ⎢ 0 0 0 0 0 0 ⎢ ⎢0 0 0 0 0 0 ⎢ 0 0 0 0 ⎣0 0
0 0 2/3 0 0 0 1 0 0 0 0
0 0 0⎤ 0 0 0 ⎥⎥ 0 0 0⎥ ⎥ 1/7 4/7 2/7⎥ 0 0 0⎥ ⎥ 0 0 0⎥ 0 0 0⎥ ⎥ 0 0 0⎥ ⎥ 1 0 0⎥ 0 1 0⎥ ⎥ 0 0 0 1⎦
0 0 1/3 0 0 0 0 1 0 0
Using (16), we obtain the final probability vector Pf Pf 1 = 6 / 16 Pf 2 + 3 / 16 Pf 3 + 7 / 16 Pf 4 ; Pf 2 = 2 / 6 Pf 5 + 4 / 6 Pf 6 ; Pf 3 = 2 / 3Pf 7 + 1/ 3Pf 8 ; Pf 4 = 1/ 7 Pf 9 + 4 / 7 Pf 10 + 2 / 7 Pf 11 ; Pf 5 = Pf 5 ; Pf 6 = Pf 6 ; Pf 7 = Pf 7 ; Pf 8 = Pf 8 ; Pf 9 = Pf 9 ; Pf 10 = Pf 10 ; Pf 11 = Pf 11 ; Pf 1 + Pf 2 + Pf 3 + Pf 4 + Pf 5 + Pf 6 + Pf 7 + Pf 8 + Pf 9 + Pf 10 + Pf 11 = 1. The priorities for the user’s contacts can be found from the first row of the transition probability matrix and satisfy the next sequence: P3, P1, P2. The solution for searching the prevalent communication tools is Pf = 0 0 0 0 0.1111 0.2222 0.2222 0.1111 0.0476 0.1905 0.0952 . It is obvious that contact k1 prefers the communication tool f12; the contact k2 like to use the communication tool f11; the contact k3 usually connects with the user by the communication tool f12.
7 Evaluation We run an experiment over a simulated data-set to test the algorithm. The data-set is generated using random interaction generator and it is represented in MXML form of data-set to apply mining operations [11]. The generator follows Weibull distribution to produce more realistic interactions [12]. Using the CP ranking method, the ranks of the contacts is measured considering the user’s all interactions stored in the data-set. After that, we made different queries to form groups. To form the groups, group generation factors are used as search-key, for example, communication tools or locations. We preset counters in the interaction generator to log total number of properly
46
N. Dudarenko, J. Rana, and K. Synnes
generated groups using the group generation factors. Also, at the query time, we get total number of properly formed group and total number of returned groups. Using these numbers, we calculate precision and recall, which is quite standard method to evaluate performance of search techniques. The precision and recall satisfy the next form Precision= (number of properly formed group)/total formed group Recall= (number of properly formed group)/total number of properly formed group The result is not fully-completed, yet it is found that the measured precision and recall for group formation factors using different factors are satisfactory, except for the cases where context data have direct influence on group formation. To increase performance for that case, it is needed to have sophisticated method for capturing realtime context, which is not focus of the current paper.
8 Discussion and Future Work The paper exploits Markov chain theory to address the problem of social ranking. In the proposed approach, social strength calculation mechanism provides a strong background to apply the Markov chain theory in the problem space. The problem targets initiation of group communication by exploiting social strength, social rank and finally social contexts in the paper. It investigates how Markov chain theory provides the strength of current state based on probability transition matrix. The transition matrix is formed on the calculated social strength of the previous states. It is not defined yet how the approach could be utilized for predicting suitable communication tools to initiate a group communication or predicting communication patterns. Therefore, the current contribution can be motivated by a simple scenario of group initiation problem where the user would like to have a decentralized social networks (i.e., personalized social network from user perspective) to maintain the contacts and communication tracks. The user wants to have support to discover micro-community to initiate communication and also be able to identify the tools through which reachability to the contacts are higher. For example, an application which groups the Tweet messages (i.e., presence information) from different social networks is based on social strength and able to filter the information overloads could be interesting. Fig. 4 illustrates such a proof-of-concept prototype, where the user’s social interest is considered to group contacts in (high, medium, and low) levels and illustrates the presence information about the interested group. The work is not addressed the problem of social data collection and aggregation in unified manner [8], rather it aims at providing sophisticated algorithm for ranking contacts and predicting preferable communication tools of the contacts. Markov chain approach is comparatively new to apply in social strength problem domain which opens up new challenges. For example, how to prove reliability of such approach in context of other possible approaches of social ranking or is Markov chain based approach scalable enough to deal with large size of transition matrix. All these questions will be addressed in future work.
Ranking Algorithm by Contacts Priority for Social Communication Systems
47
Fig. 4. Twittering Client
9 Conclusion The proposed ranking algorithm by contacts priority with application for social communication services is based on the using social strength calculation algorithm and Markov chains theory. The algorithm allows grouping the contacts in different social communication services with respect to priorities of the individual user. The CP-Rank algorithm enables prediction of user's preferences for different communication services. The CP-Rank algorithm is effective in practice for applications made aware of the social strength between users. However, there are the challenges with respect to data about real-world interactions limited by ensuring privacy. Acknowledgments. This work was partly funded by the Research Area Multimedia Technologies of Ericsson Research, where Stefan Håkansson and Dr Johan Kristiansson have been vital for the direction and execution of the research. The work was also supported by the Centre for Distance-spanning Technology (CDT) at Luleå University of Technology, the Norrbotten Research Council and by the Satin-II research project, funded by the European Regional Funds (mål-2), the Swedish Agency for Economic and Regional Growth, the County Administrative Board of Norrbotten, Norrbotten County Council, and the City of Luleå.
References 1. Banerjee, N., Chakraborty, D., Dasgupta, K., Mittal, S., Nagar, S., Saguna: R-u-in? - exploiting rich presence and converged communications for next-generation activity-oriented social networking. In: MDM ’09: Proceedings of the 2009 Tenth International Conference on Mobile Data Management: Systems, Services and Middleware, pp. 222–231. IEEE Computer Society, Washington (2009)
48
N. Dudarenko, J. Rana, and K. Synnes
2. Rana, J., Kristiansson, J., Josef, H., Synnes, K.: Challenges for mobile social networking applications. In: EuropeComm 2009: Proceedings of the First International ICST Conference Communications Infrastructure. Systems and Applications in Europe, pp. 275–285. Springer, Heidelberg (2009) 3. Campbell, A.T., Eisenman, S.B., Fodor, K., Lane, N.D., Lu, H., Miluzzo, E., Musolesi, M., Peterson, R.A., Zheng, X.: Cenceme: Injecting sensing presence into social network applications using mobile phones (2009) (demo abstract), http://citeseerx.ist.psu.edu/viewdoc/summary? doi=?doi=10.1.1.136.6257 4. Jones, Q., Moldovan, M., Raban, D., Butler, B.: Empirical evidence of information overload constraining chat channel community interactions. In: CSCW ’08: Proceedings of the 2008 ACM conference on Computer supported cooperative work, pp. 323–332. ACM, New York (2008) 5. Ankolekar, A., Szabo, G., Luon, Y., Huberman, B.A., Wilkinson, D., Wu, F.: Friendlee: a mobile application for your social life. In: MobileHCl ’09: Proceedings of the 11th International Conference on Human-Computer Interaction with Mobile Devices and Services, pp. 1–4. ACM, New York (2009) 6. Messinger, P.R., Stroulia, E., Lyons, K., Bone, M., Niu, R.H., Smirnov, K., Perelgut, S.: Virtual worlds - past, present, and future: New directions in social computing. Decis. Support Syst. 47(3), 204–228 (2009) 7. Bao, S., Xue, G., Wu, X., Yu, Y., Fei, B., Su, Z.: Optimizing web search using social annotations. In: WWW ’07: Proceedings of the 16th international conference on World Wide Web, pp. 501–510. ACM, New York (2007) 8. Amitay, E., Carmel, D., Har’El, N., Ofek-Koifman, S., Soffer, A., Yogev, S., Golbandi, N.: Social search and discovery using a unified approach. In: 18th International World Wide Web Conference, WWW2009 (2009), http://data.semanticweb.org/conference/www/2009/paper/186 9. Aleman-Meza, B., Nagarajan, M., Ding, L., Sheth, A., Arpinar, I.B., Joshi, A., Finin, T.: Scalable semantic analytics on social networks for addressing the problem of conflict of interest detection. ACM Trans. Web 2(1), 1–29 (2008) 10. Baatarjav, E.-A., Dantu, R., Phithakkitnukoon, S.: Privacy management for facebook. In: Sekar, R., Pujari, A.K. (eds.) ICISS 2008. LNCS, vol. 5352, pp. 273–286. Springer, Heidelberg (2008) 11. Rozinat, A., Wynn, M.T., van der Aalst, W.M.P., ter Hofstede, A.H.M., Fidge, C.J.: Workflow simulation for operational decision support. Data Knowl. Eng. 68(9), 834–850 (2009) 12. Pinder III, J.E., Wiener, J.G., Smith, M.H.: The weibull distribution: A new method of summarizing survivorship data. Ecology 59(I), 175–179 (1978), http://www.jstor.Org/stable/l936645 13. Romanovsky, I.V.: Discrete analysis. Spb: Nevsky Dialect; BHV Peterburg (2003) (in Russia) 14. Akunov, T.A., Alisherov, S., Omorov, R.O., Ushakov, A.V.: Matrix equations in research of discrete processes over the finite and infinite fields. Ilim, Bishkek (1993) (in Russia) 15. Ushakov, A.V., Habalov, V.V., Dudarenko, N.A.: Mathematical base of systems theory: elements of theory and practical work. SPbSU ITMO, SPb (2007) (in Russia) 16. Grob, R., Kuhn, M., Wattenhofer, R., Wirz, M.: Cluestr: mobile social networking for enhanced group communication. In: Proceedings of the ACM 2009 international Conference on Supporting Group Work, GROUP ’09, Sanibel Island, Florida, USA, May 10-13, pp. 81–90. ACM, New York (2009)
Ranking Algorithm by Contacts Priority for Social Communication Systems
49
17. Page, L., Brin, S., Motwani, R., Winograd, T.: The PageRank citation ranking: Bringing order to the web. Technical report, Stanford Digital Library Technologies Project (1998) 18. Liu, B.: Web Data Mining - Exploring Hyperlinks, Contents and Usage Data ISBN 354037881 19. Zhang, X., Fan, X., Liu, X., Hongyu.: A Ranking Algorithm via Changing Markov Probability Matrix Based on Distribution Factor. In: Fifth International Conference on Fuzzy Systems and Knowledge Discovery, pp. 3–7 (2008) 20. Rana, J., Kristiansson, J., Josef, H., Synnes, K.: Enriching and Simplifying Communication by Social Prioritization. In: ASONAM 2010: Proceedings of the The 2010 International Conference on Advances in Social Networks Analysis and Mining, Odense, Denmark, August 9-11 (2010)
CrysP: Multi-Faceted Activity-Infused Presence in Emerging Social Networks Saguna1 , Arkady Zaslavsky1,2, and Dipanjan Chakraborty3 1 2
CaSIT, Monash University, Melbourne, Victoria, Australia Lule˚ a University of Technology, SE-971 87, Lule˚ a, Sweden 3 IBM Research, India Research Lab, New Delhi, India
[email protected],
[email protected],
[email protected]
Abstract. This paper presents Crystal Presence (CrysP) approach where we fuse presence and activity in the realm of social networking. CrysP functions on the basis of the activity-infused multi-faceted presence information. This information is derived from user’s involvement in multiple activities at any point in time. We propose and develop the CrysP System (CrysPSys) to determine CrysP from the user and his/her environmental context information (mainly relating to user activity, moods/emotions and cognition/thoughts) and then sharing the relevant CrysP with the appropriate devices, services and social-networks (corporate, personal and interest networks) and blogs (text, micro, video, photo and voice). We also highlight the benefits and challenges faced in developing such a system. This paper proposes the architecture and its test-bed and prototype implementation. Keywords: Presence, activity analysis, social networks, context, prototype.
1
Introduction
Activity analysis is an area of extensive research in domains such as healthcare, industry/workshop environments and sports. Current research focuses on lower granularities of activities where activities such as walking and running reveal information about user fitness and encourages user to be more active [8]. In this paper our focus is on inferring higher level activities which the user can share with other people, devices or services in the form of user presence. Presence is defined as the availability of a person for communication in the instant messaging (IM) domain [2]. This presence has later been extended as rich presence [11] to include other context information apart from mere availability. We state that presence extensions like RPID (RFC4480) [3] from existing PIDF (RFC 3863) [4], though a step forward, still needs further consideration. We also believe that both presence aggregation [1] which is the incorporation of presence from multiple sources (devices) and presence federation [1] which allows it to be shared S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 50–61, 2010. c Springer-Verlag Berlin Heidelberg 2010
CrysP: Multi-Faceted Activity-Infused Presence
51
across multiple technological domains (IMs, social-networking sites, etc) are also taking presence in the right direction. As new communication tools such as social networking sites [5] (like Facebook, LinkedIn and bookmarking sites like Delicious, Digg, StumbleUpon), blogging tools (micro-, video-, photo-, voice-blogs like Twitter, YouTube, Flickr, Bubbly respectively), citizen journalist and community news sites (Newsvine) are gaining popularity, we see a new form of communicating real-time information (relating to the user or his/her environment) in the form of status updates, tweets, etc. In this paper, we make an attempt to merge presence with activity information as we see it in the new realm of communication tools which are not limited to IM alone and include devices, services, social-networking, microblogging and community news sites. Such social interaction tools provide users with a means to communicate and share real-time information about them like activities undertaken, places visited, and the events related to the user as well as those happening in surrounding environments or which the user comes across from different media. This is a continuous process in time and space and updates are made using a number of devices from stationary (home and office) and mobile locations. This information is shared in real-time with people (family, friends, colleagues, acquaintances, complete unknowns, etc) having different types of relationships with the user. Also, we notice that the content of updates on each social networking site is related to the type of domain of that site and in turn, to the type of relationships the user has with the people in those sites. If a user is a member of the professional site LinkedIn, he/she will most likely make work-related status updates on this site and personal status updates may go to Facebook, for example if the user is writing a report and listening to music in library at the same time, he/she may want to share the information “writing a report in the library” on LinkedIn and “listening to music in library” on Facebook. Thus, to automate this process, we infuse user’s multiple activities to determine user’s multiple presence. We believe a) that presence information is linked closely with the user’s activity information, this is also evident from RFC 4480 on RPID, b) that presence is not merely linked with availability on IMs but transcends through all types of social networking tools mentioned previously, c) presence is now multi-faceted i.e., user can have different presence on different tools, and d) users can also have multiple types of presence information at the same point in time since it is linked closely to the user’s activity information as mentioned in a). Thus, in this paper we present Crystal Presence (CrysP) which is the user’s multiple activity infused presence information, implement the CrysP System (CrysPSys) to determine user’s CrysP from their sensed multiple activity information and then intelligently share CrysP using a number of social networking tools. In section 2, we present the related work, followed by the CrysP concept in section 3. The architecture of CrysPSys is presented in section 4 and section 5 gives the details of the test-bed and prototype implementation. Section 6 and 7 present the discussion and conclusion and future work respectively
52
2
Saguna, A. Zaslavsky, and D. Chakraborty
Related Work
In recent years the growth of social-networking and micro-blogs have gained immense popularity and have paved the way for new means of communicating. Location is becoming an important context parameter, and geo-tagging is on the rise, for example, portals like Plazes [6] are being used for location based applications and activities by users. At the same time, there is considerable amount of research in the field of activity analysis being undertaken. An increasing number of sensors are used to detect user’s physical as well as physiological activity. This research is mainly focussed in healthcare or industry environments, but we discuss some of those projects which look outside those two domains and closer to our research domain. Though, there are some similarities here with existing research but we highlight that our system looks at multiple activities of user and then its fusion with a user’s multiple presence information. In [9], the authors have built a context-aware IM client, called Nomatic IM. The main context information incorporated is location using Place Lab WLAN positioning in the campus which is then tagged by the user manually to a particular activity that they might be doing in that location. In the future the system assumes that the user will be doing the same activity at that location. CenceMe system [12], senses low level user activity information (standing/walking/running and stationary/driving are the activities sensed currently) and shares the same presence information across all social networking sites. Sensors inbuilt like the accelerometer on the Nokia N95, Nokia 5500 Sport mobile phone or the Nike+ and microphones and web cameras on the mobile phone were used. A mobile based CenceMe system where majority of the processing is done using light weight classifiers is also built. Personal Environmental Impact Report (PEIR, a Nokia funded research) [7] is an online tool to study the impact of users commuting using different types of transport and to encourage teenagers to use their bikes or public transport. A large-scale people-centric sensor network in [9] is proposed and implemented using two application scenarios: SkiScape and BikeNet. A mobile sensing platform (MSP) in [8], is a wearable device used to detect a person’s activity. The system is tested in different applications like the UbiFit Garden and UbiGreen. A Micro-Blog is researched and implemented as a prototype for users in [10], which leverages localization techniques (like GPS, Wi-Fi and GSM) to spatially geo-tag user micro-blogs. The aforementioned research does not consider identifying multiple user activities simultaneously and then reason about how to share user’s multiple activity information on different social networking sites.
3
Crystal Presence
In this section, we present the following definitions and terminology related to CrysP. Crystal Presence (CrysP) - activity-infused, multi-faceted presence information of a person shared with the relevant devices, services and people.
CrysP: Multi-Faceted Activity-Infused Presence
53
Audience - can include devices which interact with the user in different locations, services that the user might be interested in using and the user’s contacts on multiple social-networking sites such as his/her family, friends and colleagues, as well as those who read the user’s blogs and follow him/her on micro-blogging sites and contacts on IMs. CrysP can be derived from the user’s availability, moods, thoughts and activities. We currently focus only on activity of the user. Figure 1 shows the concept of CrysP. A user’s CrysP is the multi-faceted presence information which is determined using user and environmental context information and user audience consists of everyone who is interested in this real-time information related to the user. As shown in figure 1, we can see that the user’s CrysP can be of many types at different points in time and space for example, based on personal activity information such as “cooking pasta”, “baking a cake”, “reading a novel”, “planning a vacation”. Similarly, this can be based on professional activity information such as “working on research project”, “writing thesis”, and “reading references”.Thus, we present CrysP in figure 1 which shows that, at one point in time, the user’s CrysP can be a combination of these different types of activities (every facet of the crystal depicts a different type of activity at the same point in time); for example, the user can be “Cooking Pasta” and “Reading References” or “Baking a Cake” and “Watching News” or “Writing Code” and “Listening to Pink Floyd” and “Uploading images to Flickr”. These activities can overlap one another. For example, we can start cooking pasta at the start of time (ti ) t1 =1min, and at t2 = 5min we can be reading a reference paper, then resume to cooking pasta at t3 =10min, at t4 =12min we resume reading the reference paper while the pasta cooks on till t4 =20min. Thus, from t1 =1min to t4 =20min, we were involved with two activities which were not related to each other, but overlapped each other in time slots. So, CrysP for the user will be “Cooking Pasta” and “Reading References” in a spatio-temporal domain. The user and his/her audience interact with each other using a wide array of social-networking tools [5] (web portals like Facebook, Orkut, LinkedIn, IMs like Gtalk, Skype, micro-blogs like Twitter, etc). Table 1 shows a wide-array of tools that are available to the user to share his/her multi-faceted presence information (CrysP) with their audience. Some of these tools can be put into broad categories like, social networks, corporate social networks, social bookmarking sites, interest networks, blogs, micro-blogs, video-blogs, photo-blogs, voice-blogs, email and instant messengers. The user shares certain types of information on each of these networks depending on what type of network it is, what type of relationships he/she shares with people on that network along with what type of information related to the user people in that network are interested to see. Therefore, in this research we aim to automate the process of: a) determining CrysP based on activity analysis and b) share the presence and status updates with the relevant audience. Our proposed CrysP System (CrysPSys) can be seen as having the following advantages: a) it helps to reduce the amount of time people usually spend in making status updates; b) people who are unable to update their status information as often as they would like to, are able to
54
Saguna, A. Zaslavsky, and D. Chakraborty
Fig. 1. Crystal Presence (CrysP)
do so via CrysPSys, c) a user can send different updates to different audience sharing only that information which is of interest to a particular set of people; d) the previous point helps in privacy concerns of the user as well; e) this provides an interesting means of passively communicating what you want to with whom you want to in real-time; f) it also opens a lot of opportunities for providing value-added services to the user based on their activities in real-time; g) it can help in reducing energy consumption in smart homes and offices as shown in scenario A below; h) such updates can also help in increasing the revenue of service providers such as telecom companies, when the updates are made from mobile devices. Table 1. Social Network tools for sharing user’s multi-faceted presence Types of Social Networks
Social-networks
Personal Corporate Interest Blogs MicroBlog (Text, Voice Video, Photo, Mood)
Facebook, Orkut, MySpace LinkedIn, Xing HealthRanker, Newsvine, Plaxo, Blogger, Technocrati, Wordpress Twitter, Tumblr, Bubbly, YouTube, TwitPic, I rate my day, Moodmill, GTalk, Skype, MSN, Jaiku
Instant Messengers
Use case scenarios: Scenario A: John and Rhea are a couple living in one house. On Monday, John tells Rhea that he would be working late at office. Rhea reaches home at 7:00PM eats her dinner and leaves John’s dinner in the
CrysP: Multi-Faceted Activity-Infused Presence
55
oven on a timer for three hours later, at 10:00PM, but John is delayed further by an hour. John’s food gets heated at 10:00PM and then gets cold again. John reaches home at 11:30PM and has to reheat his food. This wastes John’s time as well as electricity. If the oven could be switched on after knowing that John has reached home or when John was driving to his home, it could save the need to reheat/recook the food. Similarly, on Tuesday, Rhea was about to finish work half an hour after John, but she was unable to communicate this to him as she was in a meeting with a client. John was driving home, from work and if he was able to learn this information in real-time, John instead of going home and then returning back to pick her up, could have gone straight to Rhea’s office and picked her up. If Rhea was able to share her activity information in real-time with John, this would help save John the time spent in driving again and help the couple save on their fuel costs. Scenario B: Iris is a student at university, from the time she wakes up in the morning, till she sleeps at night, she performs a wide range of activities. She usually makes updates of random activities thoughts, moods, news/articles which she has read, study or research related documents read or experiments conducted to her social-networking sites, IM presence, micro-blog, and blog. These updates are read by a number of people which include as mentioned earlier, her family members, friends, colleagues, advisors, students, and the general public depending on where the updates are made and which tool she uses to make a particular update. This is a time consuming job and can also be distracting when you have too much work on hand. The problem of not being able to make updates and share the right information with the right audience in real time needs to be addressed. This is where our novel architecture is used to determine and detect the presence information based on activity intelligently and then share it with the audience automatically.
4
CrysP System Architecture
The proposed architecture is shown in Figure 2. Our architecture consists of three components, Sensing Component, CrysP Determination Component, and CrysP Sharing Component. 4.1
Sensing Component
The Sensing Component (SC) is responsible for collecting context information from the different wearable sensors such as accelerometers, gyroscopes, location sensors, video cameras, RFID tags, microphones, physiological sensors, and other sensors in the user’s environment. Context information related to the user includes activity information and physiological information which helps to determine his/her cognitive activities as well as moods or emotions. The context information related to the user’s environment is also collected such as location of the user (spatial context), time, day of week, date of the year (temporal context), proximity to other people, the type of social activity, etc. This context information is collected and passed on to the CrysP Determination Component where activity determination is performed.
56
Saguna, A. Zaslavsky, and D. Chakraborty
4.2
CrysP Determination Component
The CrysP Determination Component (CDC) determines the user’s CrysP i.e., the activity infused presence. As shown in figure 2, firstly, activities are inferred by performing segmentation and classification on the raw context information which is received from the sensors. For activity inference we use decision trees to infer body motion activities, we use RFID object interaction with temporal analysis to infer activities linked to objects. We use the Context Spaces Model [13] to infer activities at a higher level of granularity which is then further shared with any device, services or people who may be interested in this information. The pseudo code for inferring user CrysP set is as follows: Repeat for every activity start match if (activity start match) then place time stamp on activity start; iterate through activity sequence till activity end match is not found; if(activity end match) then place time stamp on activity end; Record inferred activity with time stamp; Add every inferred activity with a set time duration to CrysP activity set; Check for each value of CrysP Set in Activity-Presence Ontology; Return(semantic CrysP Set); After the preliminary activity inference is done, we also determine multiple activities (level 2) based on the temporal analysis. In other words, this would also mean activities which overlap each other, or where one activity is paused to perform another activity, and the previous activity is resumed after the completion of the second activity. We only look at activities which are not related to each other i.e., they are not sub-activities of a higher level activity. The activity presence ontology is used to provide us with key sub-activities which are part of higher level activities along with the spatial and temporal aspects of each sub and higher level activity. For example, an activity like “studying in the library” can be inferred by user sitting and interacting with a word document related to his/her studies on a laptop. There can be other ways of inferring the user studying and these can be populated in the ontology. Also, if the user’s location is “in library” it further adds to construct the activity “studying in library”. If user is also interacting with their lunch box while sitting in the library we can add the activity “user is studying and eating food in the library”. This higher level activity can then be shared others. In CDC, the activity-presence ontology is further used to give semantic readability to the inferred activities which creates the activity fused presence information (CrysP). This semantic meaning provides more readability as well as it removes the otherwise plain update of mere activity update, like “walking”, to
CrysP: Multi-Faceted Activity-Infused Presence
57
Fig. 2. Architecture of CrysP System
“walking to catch a tram”, “walking towards the mall”, etc. The use of such ontology gives the advantage of adding more information in the way we would like to express the same activity. Here location information, distances between semantic locations and direction in which user is moving can also be used. The activity-presence diary provides the user a tool to view the CrysP information at later points in time. A user can also provide feedback to the system to help it learn and modify its behaviour, accordingly. 4.3
CrysP Sharing Component
In the CrysP Sharing Component (CSC), we use semantic reasoning to decide how to disseminate and share the CrysP information with the user’s audience. The semantic reasoning allows for sharing the relevant CrysP information with the relevant user audience. The presence-sharing ontology is built which contains the linkages between the different social-networking tools, services and devices with the user, i.e. the type of relationship the user has with the audience. We argue that the user shares a similar class of relationship with all the contacts in each tool he/she uses in regards to the CrysP information that he/she wants to share using a particular tool. Though, such lines are getting blurred with social networking tools and in the future perhaps individual or group based sharing mechanisms may be required. Since, most social networks do not allow currently to share presence information in such a way and a presence update to a network is visible to all friends within that network we hereby take a homogenous
58
Saguna, A. Zaslavsky, and D. Chakraborty
approach. The CSC also includes within it a number of adapters for sharing the CrysP information with the user audience. These adapters can be added or removed based on which tools the user uses to share his/her CrysP information. Another important point to note is that the semantic rules for sharing CrysP across different tools are user-specific. Everyone can have different levels of privacy; some people are more comfortable in sharing personal information with everyone while others find it uncomfortable to do the same. Thus, the semantic rules should be easily modifiable by user intervention. The following is the pseudo code to check the type of CrysP element and then share it with the correct tool. We have built a preliminary ontology and this will be further enhanced in the future. Load Presence Sharing Ontology; For every CrysP element; Check relationship of user with each social tool; If(matched) Send CrysP element as update to that tool; Else Send CrysP as direct message to individual contact in the form of IM/Email/SMS;
5
Test-Bed and Prototype Implementation
We have built a test-bed comprising of several sensors such as accelerometer (body motion), indoor and outdoor positioning systems (location), temperature sensor, RFID tags and reader (object interaction) and other sophisticated software based context collection threads (user’s activity on devices such as laptop and mobile phone). We place a Mulle v3 sensor (which has on it an accelerometer and a temperature sensor) on the user’s waist to gather information about user body motion. Based on previous research in body motion detection using accelerometer we use chose the waist of the user as the most appropriate position [8]. The Mulle sends data at 15Hz which is collected on our laptop where we use Java based Weka API to process the acceleration data. We use J48 decision tree which is an extension of C4.5 to infer three body motion related low-level activities such as sitting, standing, and walking. We achieved an accuracy of 92.56%1. An RFID reader is attached to the user’s wrist which detects RFID tagged objects such as coffee mug, lunch box, etc. The RFID reader scans for tags once every second. Each tag is labeled in terms of an activity, and the RFID readings are inferred as activities using varying time windows for different activities. This eliminates the problem of reading a tag when the object is not intentionally been touched. Multiple readings of an object over time are inferred as an intentional activity. The user’s activity on the laptop and the mobile phone are inferred using both Java and .Net based plug-ins. A .Net based hook is used to infer the user’s interaction with an application running on the device by logging mouse clicks which log current activity on the laptop such as the current 1
This was achieved by using a single user.
CrysP: Multi-Faceted Activity-Infused Presence
59
Fig. 3. CrysP Portal
application (adobe reader, word document, power point presentation, eclipse, etc). A URL logging tool Slogger is used to log URLs visited by the user in a text file and are retrieved every second to monitor user’s browsing activity such as email, online news, Google search, Google scholar search, library website, airline booking site, Flickr photos, etc. Location information is collected using three methods, GPS (outdoor), Wi-fi positioning (Ekahau WLAN positioning is deployed on university campus office of the user), and RFID based location (at home). We use the inbuilt AGPS on an android development phone (ADP1) to gather the location, speed and temperature. The RFID smart home helps in locating the user at home using multiple fixed tags. We have built a web-based GUI as shown in figure 3 to view the user’s CrysP information along with the sensor/context streams. In order to share CrysP we infer activities of the user with varying time windows. The user’s current location and activity can be viewed in the pop-up on the map. Also, the user’s movement patterns and activities at different locations and time can be viewed by clicking anywhere on the user’s path. We are further building the web-interface to make it more interactive as well as to get user feedback. We are working towards running longer experiments on a variety of users to gather different types of information. We are also building the adapters on the mobile phone to infer activity and send updates to the correct social-network/blog directly from the mobile phone. It is also important to note that these activity updates could be shared with devices and services that the user uses in different locations and at different times
60
Saguna, A. Zaslavsky, and D. Chakraborty
in the day. Currently we share these updates only in the social networking domain. Adapters for sharing CrysP were written for a number of social-networking tools like LinkedIn (using OpenSocial Java API) and Facebook (using Facebook Java API); micro-blog like twitter (using Twitter Java API, twitter4j); IM like Skype (using skype win32.jar API) and GTalk (using smack.jar API). We send CrysP updates to each of these tools depending on the preliminary presence sharing (PS) ontology. The PS ontology is written to classify the various tools and various categories of CrysP information along with the relationships between them and the user. We have only assumed five categories, personal, very personal, work, private work and public at present. We send personal updates to Facebook, very personal updates to GTalk, private work updates to Skype, public work updates to LinkedIn and public updates to Twitter. We use the Jena API to interact with the two ontologies and they are written in OWL 1.0 and RDF. Further details of the ontology are omitted here due to lack of space. Figure 4 shows how the CrysPSys shares an element of the user’s CrysP with the user’s Facebook audience.
6
Discussion
The CrysP System (CrysPSys) is currently tested in a scenario limited to a student’s life. We used a specific set of sensors to infer our activities; there is a need to build the system further so that more different types of sensing technology can be incorporated into the same test-bed. There is also a requirement that labeling of activities and creating the relationships between higher and lower level activities can be easily created with limited user interaction. The higher level activity models should be built using these relationships. In our test-bed we currently infer activities using a laptop but we intend to use the mobile phone for inference and sharing of higher level activities, though this would significantly affect the battery life of the device. The system needs to be further evaluated on multiple sets of users on longer periods of time. Further evaluation on reducing user interaction is also important.
Fig. 4. Dissemination of user’s CrysP to Facebook via CrysP plug-in adapter
7
Conclusion and Future Work
In this paper, we present the concept of Crystal Presence (CrysP) which opens new avenues of communicating the user’s activity information with the user’s
CrysP: Multi-Faceted Activity-Infused Presence
61
audience and thus allows users to passively communicate at all times in the day. Our novel system determines activity-infused multi-faceted presence information at a point in time and each facet of this activity infused presence is shared accordingly with the intended audience. We also present a test-bed and prototype which infers multiple higher level activities of a user and then share this information with devices, services and with other people on social networking tools. In future, we will further develop and extend our architecture to incorporate more complex activities and in different scenarios with more number of users.
References 1. Jabber: The XMPP Cloud: Building a Presence-Enabled Infrastructure for RealTime Communication, White Paper (2008) 2. RFC 2778, A Model for Presence and Instant Messaging, http://www.ietf.org/rfc/rfc2778.txt (access date: January 12, 2009) 3. RFC 4480, RPID: Rich Presence Extensions to the Presence Information Data Format (PIDF), http://www.rfc-editor.org/rfc/rfc4480.txt (access date: January 12, 2009) 4. RFC 3863, Presence Information Data Format (PIDF), http://tools.ietf.org/html/rfc3863 (access date: January 12, 2009) 5. Social Networking Sites, http://en.wikipedia.org/wiki/List_of_social_networking_websites (access date: January 12, 2009) 6. Plazes, http://plazes.com/ (access date: January 12, 2009) 7. Agapie, E., et al.: Seeing our signals: Combining location traces and web-based models for personal discovery. In: HotMobile ’08: Proceedings of the 9th workshop on Mobile computing systems and applications, pp. 6–10. ACM, New York (2008) 8. Choudhury, T., et al.: The mobile sensing platform: An embedded activity recognition system. Pervasive Computing 7(2), 32–41 (2008) 9. Eisenman, S.B., et al.: Metrosense project: People-centric sensing at scale. In: WSW 2006 at Sensys (2006) 10. Gaonkar, S., Li, J., Choudhury, R.R., Cox, L., Schmidt, A.: Micro-blog: sharing and querying content through mobile phones and social participation. In: MobiSys ’08: Proceeding of the 6th international conference on Mobile systems, applications, and services, pp. 174–186. ACM, New York (2008) 11. Jachner, J., Petrack, S., Darmois, E., Ozugur, T.: Rich presence: A new user communications experience. Alcatel Telecommunications Review - 1st Quarter (2005) 12. Miluzzo, E., Lane, N.D., Eisenman, S.B., Campbell, A.T.: CenceMe – injecting sensing presence into social networking applications. In: Kortuem, G., Finney, J., Lea, R., Sundramoorthy, V. (eds.) EuroSSC 2007. LNCS, vol. 4793, pp. 1–28. Springer, Heidelberg (2007) 13. Padovitz, A., Loke, S.W., Zaslavsky, A.: Towards a theory of context spaces. In: Proceedings of the Second IEEE Annual Conference on Pervasive Computing and Communications Workshops (2004)
Multichannel System of Audio-Visual Support of Remote Mobile Participant at E-Meeting Andrey L. Ronzhin, Victor Yu Budkov, and Alexey A. Karpov SPIIRAS, 39, 14th line, St. Petersburg, Russia {ronzhin,budkov,karpov}@iias.spb.su
Abstract. Web-based collaboration using the wireless devices that have multimedia playback capabilities is a viable alternative to traditional face-to-face meetings. E-meetings are popular in businesses because of their cost savings. To provide quick and effective engagement to the meeting activity, the remote user should be able to perceive whole events in the meeting room and have the same possibilities like participants inside. The technological framework of the developed intelligent meeting room implements multichannel audio-visual system for participant activity detection and automatically composes actual multimedia content for remote mobile user. The developed web-based application for remote user interaction with equipment of the intelligent meeting room and organization of E-meetings were tested with Nokia mobile phones. Keywords: E-meeting, smart space, remote collaboration, mobile communication, voice activity detection; multimodal interfaces.
1 Introduction Internet applications for teleconference and distant learning (E-meeting and E-lecture) become more popular in business, research, education and other organizations. Such systems allow us to save cost and provide self-paced education and convenient content access and retrieval. However the main part of the secretary work on documentation and connection of remote participants is performed by a human-operator. Another constraint of E-meeting systems is the capacities of the communication network and the capacities of the audio and video user devices that influence on the user interface features and sufficiency of remote participant possibilities. Key issue of remote communication is high uncertainty, caused by the spatial and temporal distance between co-participants [1]. The physical and psychological barriers that exist in hybrid meetings make difficult for remote partners to attend a selected conversational flow, which the participants share the same room and to initiate a new topic of discussion. Thus the main task of the research is to make remote meetings more engaging by giving remote participants more freedom of control in discussions and decision making processes. Research projects AMI [2], CHIL [3], AMIGO [4], CALO [5] were targeted to study various aspects of arrangement of meetings or teleconferencing in smart environments and development of meeting support technology, multi-modal meeting S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 62–71, 2010. © Springer-Verlag Berlin Heidelberg 2010
Multichannel System of Audio-Visual Support of Remote Mobile Participant
63
browsers, as well as automatic audio-, and video-based summarization systems. Meeting support includes (semi-) automatic retrieval of information needed for support remote participation in hybrid meetings, in which one or more participants are remote and others stay in a shared room [6]. Development of technologies for automatic selection of the best camera view, switching on the projector or whiteboard output and selection of microphone of the current speaker is capable to improve audio-visual support for a remote mobile participant. The novelty of the proposed web-based application for hybrid meeting consists in automatic selection of web-camera of active speaker by multichannel speech activity algorithm and designing a user interface adaptive to mobile device features of remote participant. Section 2 introduces the speaker diarization task and discusses algorithms for speech activity detection in multichannel audio stream. A technological framework of intelligent meeting room and a model of media stream fusion used for designing actual content of the web-based application are considered in Section 3.
2 Methods for Speech Activity Detection in the Multichannel System Audio recordings of meetings in most cases contain spontaneous speech that complicates their automatic processing because of: (1) "overlapped" speech when several persons talk simultaneously; (2) artefacts of speech (lip smack, tongue clucking) and nonverbal pauses (cough, laughter); (3) short remarks and frequent speaker changes. Besides, quality of recordings is strongly affected by environment, layout of speakers and characteristics of the recording equipment [7]. ICSI and CHIL European projects are devoted to the given problem, and the NIST RT-07S standard on evaluation of performance of the systems for meeting transcription [8] has been developed. At present there are some annotated corpora (for example, ISL, AMI, ICSI, NIST) containing up to tens of hours of speech, which have been recorded during formal meetings and impromptu meetings both in natural and informal conditions. The task of speaker diarization (SD), also known under the name «Who Spoke When» consists in detecting the speaker turns within an audio document and in grouping together all the segments belonging to the same speaker [8]. Most of the state-ofthe-art speaker diarization systems perform several key sub-tasks, which are: speech detection, speaker change detection, gender classification and speaker clustering [9]. In some systems the re-training of speaker’s models is made on-line taking into account last speech segments for improvement of system’s performance [10]. A preliminary segmentation of the signal on frames containing silence or speech allows the system to reduce considerably the level of speech recognition errors and to raise speed of processing. Unfortunately, the methods for voice activity detection (VAD) based on an estimation of the level of energy of the signal or its spectrum, well proved at the single channel speech recognition, give poor results at the processing of multichannel audio records with several speakers [11]. For solution of this problem the methods based on a normalization of energy of the multichannel signal [12], an estimation of channel cross-correlation, or Hidden Markov Models containing not 2 states (speech/silence) as usually in VAD methods, but 2K states,
64
A.L. Ronzhin, V.Y. Budkov, and A.A. Karpov
where K is the number of speakers [13], are used. The peculiarity of the latter approach is preliminary training of the models, therefore at the current stage of the research for speech detection in the multichannel system simpler approaches without any training of the models are used. Implementation of crosscorelation methods is possible with the synchronous multichannel recordings. The methods based on channel normalization, calculation of relative signal energy and its spectrum, considering the phonetic rules for speech activity detection are most effective in the case of distributed meetings and using independent devices for recording and processing of audio signals. The developed multichannel system uses a set of web-cameras with built-in microphones for recording speech of participants that provide automatic selection of the current speaker and transmit his/her image to remote participants. The proposed algorithm RESW (Relative Energy estimation in Sliding Window) determines the current active speaker (number of webcam) ωˆ t at the time t by calculating the relative channel energy in the sliding window, thus the random deviation of energy values in the particular channels are suppressed:
ωˆ t = arg max[log10 { n
1 N −1 n 1 M N −1 j ⋅ (∑ κ Amp ⋅ En (t + i ) − ⋅ ∑∑ κ Amp ⋅ E j (t + i))}] , N i =0 M j =1 i =0
n where κ Amp is an amplification of the channel n , which allows the system to take
into account the different gain levels of microphones, N is the size of the sliding window, M is the number of audio channels, En (t + i ) is the short-term energy of L −1
segment of speech: En (t + i ) = ∑ xL2 ( t +i )+ j . To improve the robustness of speech activj =0
ity detection, in the selected channel ωˆ t we use an additional analysis, in which an indicator W is calculated as the number of segments in a sliding window of length N with the value of energy Eωˆ exceeding the threshold E sil : t N −1 ⎧ 0, Eωˆt (t + i ) ≤ Esil . W = ∑ f (t , i ), where f (t , i ) = ⎨ overwise i =0 ⎩1, The threshold function f (t , i) preliminarily classifies audio segment as silence f (t , i) = 0 or speech f (t , i ) = 1 . Two cases for assessment of the indicator W were proposed. Decision on presence of speech in the current sliding window in the channel is made only if the indicator W : a) is greater than zero (an algorithm RESW1 ), or b) exceeds a certain value Wsil (an algorithm RESW sil ). A maximal pause d max between speech segments was taken into account for suppression of single false speech segments. If the number of silence segments between the current segment and the nearest speech segment from left or right exceeds value d max , then the current segment is classified as silence:
W sd
⎧ ⎡ i +d max ⎤ ⎪ 1, ⎢ ∑ f (t + l , i)⎥ − 1 > 0 . , where φ (t , i ) = ⎨ l =i−dmax = ∑ [ f (t , i) ∧ φ (t , i)] ⎣ ⎦ i =0 ⎪0, overwise ⎩ N −1
Multichannel System of Audio-Visual Support of Remote Mobile Participant
65
In the given algorithm ( RESWsil+dist ) the sliding window consists of speech if the following condition was is: W sd > Wsil . The performance of audio stream segmentation of speakers was estimated by calculation of miss rate ( MS ) and false alarm rate ( FA ). The estimates are summed by at analysis of the multichannel system [13]: M channels M
M
M
M
M
M
k =1
k =1
k =1
k =1
k =1
k =1
(S ) MS = ∑ Tk( MS ) /(∑ Tk( S ) + ∑ Tk( MS ) ) , FA = ∑Tk( FA) /(∑Tk( S ) + ∑Tk( FA) ) , where Tk is
quantity of speech segments in the channel k determined by the system as speech;
Tk( MS ) is quantity of speech segments in the channel k missed by the system;
Tk(FA)
is quantity of non-speech segments in the channel k determined by the system as speech. A trade-off between the miss rate and the false alarm rate is chosen at optimization of parameters of the speaker activity detection algorithm [8]. We use the detection error trade-off curve (DET) as the evaluation tool. The DET plot shows the miss rate MS as a function of the false alarm rate FA . For a detection error curve, we can also compute the equal error rate (EER), which corresponds to the threshold, where MS = FA . The database containing five-channel audio recording was prepared for experimental verification of the speech activity detection algorithms. The signal was digitized with the sampling rate of 16 kHz, then samples are combined in the segments (1600 samples per segment). The size of sliding window was 10 segments. The window was shifted with step of 1 segment. Total duration of the database was 28 minutes. In the experiment, five participants consistently said sentences of various lengths from the prepared text. The printed sheets of paper with the text laid on the table in front of each participant. Thus, in this experiment some artificial situation was modeled: participants did not interrupt each other, and read the sentences consistently; no obstacles (hand, paper or other items) arose between the microphone and participant’s mouth; the presenter's face was directed whole toward the microphone over the period of recording. The phrases boundaries in each channel with accuracy up to one audio segment were manually segmented listening all the records. The obtained labeling was used as a standard one for matching and assessment of the performance of automatic segmentation. The obtained dependencies for the error rates MS and FA at several values of E sil for the algorithms RESW1 , RESWsil and RESWsil +dist are coordinated with results of similar researches. In this experiment the phrase boundaries were determined by the algorithm RESW sil + dist more accurately ( EERRESW = 9.16% ). sil + dist
3 Web-Based Application for Organization of Hybrid E-Meetings The developed intelligent meeting room is equipped by projector, touchscreen TV for smart desk application, several cameras for video monitoring of audience and presentation area, personal web-cameras for analysis of behavior of participants sitting at the conference table, as well as three microphone array for sound processing. A combination of the desktop web-cameras and microphone arrays provides both spatial localization of
66
A.L. Ronzhin, V.Y. Budkov, and A.A. Karpov
sound sources and record of participants’ speech with high quality. Multimedia content compiled from audio and video signals captured by the referred devices are used in the web-based application for organization of hybrid E-meetings. Graphical interface of the web-page, on which remote participants could observe a meeting organized inside the intelligent meeting room, contains several basic forms F = {F1 , F2 ,...FN } , where N F is a number of the forms depending on current meeting F
state and features of browser used in a client device. Content of the forms could be changed during meeting, but it always includes a graphical component from a set G = {G1 , G2 ,...GNG } , where N G is a number of used components (in the current version N G = 10 ):
G1 is a component representing current image on the projector; G2 is a component representing current image on the smart desk; G 3 is a component representing current image captured by the video camera
directed to main speaker; G4 is a component representing current image captured by the video camera directed to audience; G5 is a component representing a assemble of current images captured by personal web-cameras directed on participants sitting at the conference table in the meeting room; G6 is a component representing current image captured by a web-camera assigned with a participant, which currently gives a speech comment; G7 is a component representing an indicator of speech duration; G8 is a component representing a clock with time labels of the current meeting; G9 is a component representing a logo of the current meeting; G10 is a component representing main data about the current meeting. The enumerated components connected with corresponding source, which transmits graphical data (the projector – a presentation slide; the smart desk – window with handwriting sketches; the video and web-cameras – frames with an image; the software services – time indicators, logo and other data about meeting). Receiving new data on a source leads to updating content of corresponding form in the web-page. Two main states in meeting process were selected and corresponding notation of forms was used for the current version of web-page software: (1) registration (preparations before meetings), forms F reg ; (2) presentations (main part of meeting), F meeting . Further the number of the meeting states will be increased taking into account peculiarities of participant behavior and necessity of use of specific technical equipment during the discussion, voting and other formal stages. Another important factor influencing on the web-page content is the display resolution and correspondingly maximal size of browser window used for remote view of the meeting. So two classes of device, which have especially different sizes of screen, and corresponding notation of the forms were selected: (1) personal computer, forms F (PC) , (2) mobile device, forms F (MD) . Table 1 shows basic variants of the webpage layout depending on the current state of meeting and type of the client device.
Multichannel System of Audio-Visual Support of Remote Mobile Participant
67
Table 1. The layout variants of the web-page for E-meeting translation
F PC
F MD
F reg
F meet ing
Symbol “/” designates that several variants of graphical content are possible in the form. For instance, the current image G1 on the projector or the current image G2 on the smart desk will be represented in fourth form F4meeting ( PC ) during presentations on the web-page browsed by a personal computer. A list of parameters of objects (equipment, software, participants), which are located inside the intelligent meeting room and influenced on changing the graphical content of the web-page, is presented in Table 2. Values of parameters of hardware and software are determined by a query of its states via TCP/IP protocol or by means of Object Linking and Embedding Automation. Behavior of participants sitting at the conference table, as well as the main speaker located in the presentation area is analyzed by developed technologies of sound source localization, video tracking of moving objects, seeking and tracking of human face.
68
A.L. Ronzhin, V.Y. Budkov, and A.A. Karpov Table 2. The list of parameters influenced on graphical content of the web-page
Object in the Parameters meeting room Notation Values Description Projector 0 Projector turned-off p1 1 Projector turned-on 0 Presentation is not started p2 1 Presentation is started 0 Current slide of a presentation is shown longer, than τ slide , p3 ( t cur
Smart desk
d1 d2
d3
1
Slide of a presentation was changed (time of the changing t slide is
0 1 0 1 0
saved) Wide touchscreen TV is turned-off Wide touchscreen TV is turned-on Smart desk application is not loaded Smart desk application is loaded Touch input was not used longer than τ desk , ( t cur − t desk > τ desk ).
1 Main speaker (presenter)
Personal webcameras assigned with participants sitting at the conference table
0 1
Personal web-camera
0
s2
1 0 1
s3
0 1
c1
0 1
c3i
c4i
c5i
Touch input was used (beginning time of touchscreen using t desk is saved) A speaker in the presentation area is not observed by the video monitoring system Speaker is found in the presentation area Speaker face is not found Speaker head is directed to (the face tracking system founded presenter face) Speech activity in the presentation area is not detected A presenter gives a speech (the sound source localization system detected an activity in the presentation area) Currently there are no speakers at the conference table Currently a participant at the conference table gives a speech comment Personal web-camera i is turned-off
s1
c2i
− t slide > τ slide , where tcur is current time).
i
is turned-on
0
No participant in front of the web-camera
1
There is a participant in front of the web-camera i (the video monitoring system estimates degree of changing image background recorded before the meeting) No speech activity of the participant sitting in front of the webcamera i
0
i
1
A participant sitting in front of the web-camera i gives a speech comment (the multichannel speech activity detection system determines useful signal in the audio channel of the web-camera i )
0
Face of the participant sitting in front of the web-camera i is not found Face position of the participant sitting in front of the web-camera i is detected (the face tracking system found the participant face)
1
Let’s consider the process of graphical content compilation in the forms. Each graphical form F j on the web-page is described by the following tuple
F j = l j , u j , w j , h j , g j , where l j is upper left corner position of the form at the
Multichannel System of Audio-Visual Support of Remote Mobile Participant
69
abscissas axis, u j is upper left corner position of the form at the ordinates axis, w j is the form width, h j is the form height, g j is a graphical content of the form, which is actual and was chosen from the set G . Sizes of the forms could be changed depending on the current features of browser used in the client device. In the forms meeting ( PC ) , F2meeting ( MD ) the number of graphical component is F2meeting ( PC ) , F4 changed depending on the parameter values mentioned in Table 3. In other forms the graphical component numbers are kept during the whole meeting. Selection of the current graphical component g ∈ G for the referred forms is realized by a logicaltemporal model of compiling the graphical interface web-page. The following set of logical rules is an essence of the model: ⎧G3 , s1 ∧ s 2 ∧ s3 ∧ ¬c1 , ⎪G , ¬s ∧ ¬c ∧ (( p ∧ p ) ∨ (d ∧ d )), , ⎪ 4 2 1 1 2 1 2 g 2meeting ( PC ) = ⎨ G s c , ¬ ∧ , 3 1 ⎪ 6 ⎪⎩G9 , overwise. ⎧G1 , ( p1 ∧ p 2 ∧ (¬d 1 ∨ ¬d 2 )) ∨ ( p1 ∧ p 2 ∧ p 3 ∧ d 1 ∧ d 2 ∧ ¬d 3 ) ∨ ⎪ ( p ∧ p ∧ p ∧ d ∧ d ∧ d ∧ (t slide > t desk )), 1 2 3 1 2 3 ⎪ , ⎪ , (( ) ) ( ¬ ∨ ¬ ∧ ∧ ∨ ∧ G p p d d p p 2 ∧ ¬p 3 ∧ d 1 ∧ d 2 ∧ d 3 ) ∨ ⎪ 1 2 1 2 1 g 4meeting ( PC ) = ⎨ 2 ⎪ ( p1 ∧ p 2 ∧ p 3 ∧ d 1 ∧ d 2 ∧ d 3 ∧ (t slide < t desk )), ⎪G 9 , (¬p1 ∨ ¬p 2 ) ∧ (¬d 1 ∨ ¬d 2 ), ⎪ ⎪⎩G 4 , overwise . ⎧G1 , (( p1 ∧ p 2 ∧ (¬ d 1 ∨ ¬d 2 )) ∨ ( p1 ∧ p 2 ∧ p 3 ∧ d 1 ∧ d 2 ∧ ¬ d 3 ) ∨ ⎪ ( p1 ∧ p 2 ∧ p 3 ∧ d 1 ∧ d 2 ∧ d 3 ∧ (t slide > t desk ))) ∧ ¬ s 2 ∧ ¬c1 , ⎪ ⎪G 2 , (((¬ p1 ∨ ¬ p 2 ) ∧ d 1 ∧ d 2 ) ∨ ( p1 ∧ p 2 ∧ ¬ p 3 ∧ d 1 ∧ d 2 ∧ d 3 ) ∨ . ⎪ ( p1 ∧ p 2 ∧ p 3 ∧ d 1 ∧ d 2 ∧ d 3 ∧ (t slide < t desk ))) ∧ ¬ s 2 ∧ ¬c1 , ⎪ meeting ( MD ) = ⎨ g2 ⎪G 3 , ¬ p 3 ∨ ¬ d 3 ∧ s1 ∧ s 2 ∧ s 3 ∧ ¬c1 , ⎪G 4 , ¬ p 3 ∨ ¬ d 3 ∧ ¬ s 2 ∧ ¬c1 , ⎪ ⎪G 6 , ¬ p 3 ∨ ¬ d 3 ∧ ¬ s 3 ∧ c1 , ⎪current component is saved , overwise . ⎩
The component G5 , which consists of actual images of participants sitting at the conference table, is compiled by an analysis of states of personal web-cameras and presence of participants and faces on frame. Let’s identify an set of images from the web-cameras as W = {W1 ,W2 ,...WN } , where N W is a number of the web-cameras W
mounted on the conference table (in the developed meeting room N W = 10 ). Then the component G5 consists of the images captured by turned-on web-cameras, in which a NW
participant is detected: G5 = ∪ (Wi c2i ∧ c3i = 1) . Taking into account limited sizes of i =1
the forms used for representing the component G5 , the number of displayed participants is reduced by an analysis of his speech activity c4 i and/or presence of his face
70
A.L. Ronzhin, V.Y. Budkov, and A.A. Karpov
in the frame c5i . Particularly, the form F1meeting ( MD ) for mobile device contains up to three participant images, so both parameters are used for selection of more active participants: NW
F1meeting ( MD ) = ∪ (Wi c2i ∧ c3i ∧ c4i ∧ c5i = 1) . i =1
The proposed logical-temporal model of compilation of web-page graphical interface was tested on a personal computer and several models of smartphones donated by the Nokia company. Table 3 presents some examples of web-page content during a meeting. The sound source localization system and multichannel speech activity detection system were used for selection of source of audio stream transmitted to remote participant. Speech of a presenter is recorded by the microphone of the web-camera closest to the presentation area. The built-in microphone of the web-camera assigned with the presently active participant sitting at the conference table is used for recording his/her speech. Table 3. Content examples of the web-based application for meeting Screen of client device Personal computer
Mobile device
Presentations
Registration
Meeting state
The developed web-page layout is oriented on passive remote participants. To enhance his potentials a toolbar allowing a participant located outside the meeting room to give a question to the presenter and to share the current discussion.
Multichannel System of Audio-Visual Support of Remote Mobile Participant
71
4 Conclusion Development of the multichannel system for speech activity analysis, which is used for preparation the multimedia reports of distributed meetings, contributes to saving costs of verbatim record preparation, improving quality of teleconferences, as well as provides statistics of meetings and convenient archive access and retrieval. The developed speaker diarization system uses the algorithm for speech activity detection in the multichannel audio stream that provides appropriate quality of phrase boundaries determination and automatic selection of the web-camera of the active speaker. The proposed logical-temporal model of compilation of web-page graphical interface allows remote participants to perceive whole events in the meeting room via a personal computer or smartphones. Acknowledgments. This work is supported by The Russian Program “Research and Research-Human Resources for Innovating Russia in 2009-2013” (contract П2360), RFBR (projects 08-08-00128-а, 08-07-90002-СТ_а) and Nokia.
References 1. Yankelovich, N., Kaplan, J., Simpson, N., Provino, J.: Porta-person: telepresence for the connected meeting room. In: Proceedings of CHI 2007, pp. 2789–2794 (2007) 2. McCowan, I., Gatica-Perez, D., Bengio, S., Moore, D., Bourlard, H.: Towards computer understanding of human interactions. In: Aarts, E., Collier, R.W., van Loenen, E., de Ruyter, B. (eds.) EUSAI 2003. LNCS, vol. 2875, pp. 235–251. Springer, Heidelberg (2003) 3. Waibel, A., Steusloff, H., Stiefelhagen, R.: CHIL—Computers in the human interaction loop. In: Proc. of 5th IAMIS Workshop (2004) 4. Danielson, T., Panoke-Babatz, U., et al.: The AMIGO project: Advanced Group Communication Model for Computer-based Communication Environment. In: Proc. of CSCW’86 (1986) 5. Kaiser, E.: Can Modeling Redundancy in Multimodal, Multi-Party Tasks Support Dynamic Learning? In: CHI ’05 Workshop: CHI Virtuality 2005 (2005) 6. Op den Akker, R., Hofs, D., Hondorp, H., op den Akker, H., Zwiers, J., Nijholt, A.: Supporting Engagement and Floor Control in Hybrid Meetings. In: Esposito, A., Vích, R. (eds.) COST Action 2102 2008. LNCS (LNAI), vol. 5641, pp. 276–290. Springer, Heidelberg (2009) 7. Fredouille, C., Evans, N.: The influence of speech activity detection and overlap on speaker diarization for meeting room recordings. In: INTERSPEECH 2007, pp. 2953– 2956 (2007) 8. The 2009 (RT-09) Rich Transcription Meeting Recognition Evaluation Plan (2009), http://www.itl.nist.gov/iad/894.01/tests/rt/2009 9. Tranter, S., Reynolds, D.: An Overview of Automatic Speaker Diarization Systems. IEEE Trans. ASLP 14(5), 1557–1565 (2006) 10. Markov, K., Nakamura, S.: Never-Ending Learning System for Online Speaker Diarization. In: IEEE ASRU Workshop, pp. 699–704 (2007) 11. Pfau, T., Ellis, D., Stolcke, D.: Multispeaker Speech Activity Detection for the ICSI Meeting Recorder. In: IEEE ASRU Workshop, pp. 107–110 (2001) 12. Dines, J., Vepa, J., Hain, T.: The segmentation of multi-channel meeting recordings for automatic speech recognition. In: ICSLP 2006, pp. 1213–1216 (2006) 13. Laskowski, K., Jin, Q., Schultz, T.: Crosscorrelation based multispeaker speech activity detection. In: INTERSPEECH 2004, pp. 973–976 (2004)
On-the-Fly Ontology Matching in Smart Spaces: A Multi-model Approach Alexander Smirnov1, Alexey Kashevnik1, Nikolay Shilov1, Sergey Balandin2, Ian Oliver2, and Sergey Boldyrev2 1 SPIIRAS, 39, 14 line, 199178, St. Petersburg, Russia {smir,alexey,nick}@iias.spb.su 2 Nokia Research Center, Itämerenkatu 11-13, 00180, Helsinki, Finland {sergey.balandin,ian.oliver,sergey.boldyrev}@nokia.com
Abstract. Proper functioning of smart spaces demands semantic interoperability between knowledge processors connected to it. As a consequence it is required to develop models that would enable knowledge processors to translate on-the-fly between the internal and smart space ontologies. This paper presents the developed multi-model approach to the above problem, where the major elements of the selected approach are described in detail. Keywords: Smart spaces, ontology matching, semantic similarity, semantic interoperability.
1 Introduction Smart-M3 is an open source software platform [1] that aims to provide "Semantic Web" [2] information sharing infrastructure between software entities and various types of devices. The platform combines ideas of distributed, networked systems and Semantic Web [3]. The major application area for Smart-M3 is the development of smart spaces solutions, where a number of devices can use a shared view of resources and services [4, 5]. Smart spaces can provide better user experience by allowing a user to flexibly bring in new devices and seamlessly access all the information in the multi-device system from any of the devices. The reference model of the Smart-M3 smart spaces is shown in Fig. 1 and it is close to the Linda ideology [6, 7]. The smart space is implemented by one or several Service Information Brokers (SIBs) connected to the common space. SIB is a part of the Smart-M3 platform and it is responsible for information management within the smart space. Knowledge Processors (KPs) represent different applications that use the smart space and implement protocols defined by the Smart-M3 platform for communicating with SIBs. The information exchange is organized through transfer of information units (represented by RDF triples “subject-predicate-object”) from KPs to the smart space and back. The information submitted to the smart space becomes S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 72–83, 2010. © Springer-Verlag Berlin Heidelberg 2010
On-the-Fly Ontology Matching in Smart Spaces: A Multi-model Approach
Application
KP
73
Smart Space
SIB …
Application
KP
Knowledge Base
Fig. 1. Smart space based on Smart-M3: reference model
available to all KPs participating in the smart space. The KPs can also transfer references to the appropriate files/services into the smart space, since not all information can be presented by RDF triples (e.g., a photo or a PowerPoint presentation). As a result the information is not really transferred but shared between KPs by using smart space as a common ground. However, real life implementation of smart spaces faces a number of problems. Let’s consider a simple case study when a user is having his/her mobile device with KP running on it. The user KP (UKP) is going to make a presentation. The LCD projector represented in the smart space by Projector KP (PKP) is a key enabler of this functionality. But in order for the presentation to be shown, the UKP has to share the information about the presentation location (URI) with the PKP. As a result the following conditions have to be fulfilled: 1. 2.
The UKP has to know that the PKP is a part of the smart space; The UKP has to share the presentation’s URI in such a way that the PKP can understand it.
Even from this simple example we can see that proper functioning of the smart space requires semantic interoperability between knowledge processors connected to it. As a result it is required to develop models that would enable knowledge processors to translate on-the-fly between their internal and smart space’s ontology to a certain extent. The paper presents the developed multi-model approach for the above stated problem. Section 2 introduces the main principle of the suggested approach. Sections 3 to 5 describe the major elements of the approach in more details. Section 6 presents the developed demo use case that illustrates the approach. The main results and findings are summarized in Conclusions.
2 Multi-model Approach for On-the-Fly Matching KPs and SIB Ontology In order to analyze the existing ontology matching techniques an extensive state-ofthe-art review has been done, which covered about 20 systems/approaches/projects related to ontology matching. Among them the following ones are worth to be mentioned: GLUE System 8, 9, Falcon-AO 10, MLMA 11, Hovy 12, SKAT 13, ONION
74
A. Smirnov et al.
14, Promt 15, H-Match 16, CTX-MATCH 17, SMART 18, Cupid 19, COMA 20, Similarity Flooding Algorithm 21, AgreementMaker 22, Pattern Based Approach 23, MinSMatch 24, OntoView 25, Chimaera 19. The below proposed approach allows matching of KPs and SIB ontology for the interoperability purposes and is based on the ontology matching model illustrated by Fig. 2. The approach takes into account that the matching procedure has to be done “on-the-fly” by mobile devices with limited resources and remembering the fact that knowledge processors are responsible for performing certain concrete and welldescribed tasks, which means that the corresponding ontology generally should be small – to – medium size and describe only very limited domains. Ontology is represented as RDF triples, consisting of the following ontology elements: subject, predicate, object. Degree of similarity between two ontology elements is in the range [0, 1]. The approach consists of the following steps: 1. Compare ontology elements taking into account synonyms of both ontologies. The degree of similarity between equal elements is set to 1 (maximum value of the degree of similarity). 2. Compare all elements between two ontologies and fill the matrix M using similarity-based model described in Section 2. Matrix M is of size m to n, where m is the number of elements in the first ontology and n is the number of elements in the second ontology. Each element of this matrix contains the degree of similarity between the string terms of two ontology elements using the fuzzy string comparison method described in Section 3.2. 3. For knowledge processors, which can access Internet, e.g. WordNet or Wiktionary, the model of searching semantic distances was developed and presented in Section 3. 3.1. Compare all elements of two ontologies and fill the matrix M’. Matrix M’ is of size m to n, where m is the number of elements in the first ontology and n is the number of elements in the second ontology. Each element of this matrix represents the degree of similarity between two ontology elements. Matching model
Method class
Comparison of elements of two ontologies using synonyms
Combined
Comparison of elements of two Comparison of elements of two ontologies using similarityontologies using semanticbased method based distances search method
Linguistic
Graph-based distance improvement
Contextual
Fig. 2. Multi-model approach to on-the-fly matching KP and SIB ontology
On-the-Fly Ontology Matching in Smart Spaces: A Multi-model Approach
75
3.2. Update values in matrix M, where each new value of elements of M is the maximum value of (M, M’) 4. Improve distance values in the matrix M using the graph-based distance improvement model described in Section 4. As a result the matrix M contains degrees of similarity between ontology elements of two knowledge processors. This allows determining correspondences between elements by selecting degrees of similarities which are higher than the threshold value. The next sections describe major elements of the proposed approach in details.
3 Similarity-Based Model for Matching Ontology The similarity-based model for the ontology matching is presented in Fig. 3. It contains a stemming procedure to normalize words, improved fuzzy string comparison procedure, and normalization procedure. The normalization procedure makes it possible to reduce the resulting similarity for its easier interpretation (Section 3.3). Improved FSC Stemming
Conventional Fuzzy string comparison (FSC)
Normalization
Fig. 3. Similarity-based model for the ontology matching
3.1 Stemming To improve the matching quality the application of the stemming procedure is proposed. This operation makes it possible to identify ontology elements even if they are written in different forms. The following conversions can be done: “looking” → “look”, “device” → “devic”, “vertical” → “vertic”, and “horizontal” → “horizont”. This procedure is uniquely tuned for each supported language. 3.2 Fuzzy String Comparison The basis of the string comparison algorithm is the well-known conventional algorithm that calculates occurrence of substrings from one string in the other string. The algorithm can be illustrated by the following example from matching the iCal and vCal formats. Table 1 presents the comparison of strings “DTSTART” and “START_D”. Number of substrings of the first string contained in the second string: 16 Total number of substrings: 28 The result: string “DTSTART” is contained in the string “START_D” with similarity of 0.57 or 57%. However, this algorithm does not take into account the length of the second string. As a result it was decided to introduce the following additional modifications:
76
A. Smirnov et al. Table 1. Fuzzy string comparison example
Substrings of the first string
Contained in the second string
Substrings of the first string
Contained in the second string
D
+
TST
-
T
+
STA
+
S
+
TAR
+
T
+
ART
+
A
+
DTST
-
R
+
TSTA
-
T
+
STAR
+
DT
-
TART
+
TS
-
DTSTA
-
ST
+
TSTAR
-
TA
+
START
-
AR
+
DTSTAR
-
RT
+
TSTART
-
DTS
-
DTSTART
-
1. Perform the comparison based on the above algorithm twice: FC1 = FuzzyCompare(Element1, Element2) and FC2 = FuzzyCompare(Element2, Element1). 2. Calculate the result as an aggregation of the above results in accordance with the following formula: Re’=n*FC1+(1-n)*FC2, where n is a weight, n∈[0;1]. n = 0.5 sets the same weight to the both strings, n = 0 searches only Request within Class, and n = 1 searches only Class within Request. It is proposed to set n = 0.5 . 3.3 Normalization of Results Since the similarity metrics are obtained by via different techniques they have to be normalized. This is proposed to be done via the following formula: ⎛1 Re = ⎜ − ⎜2 ⎝
1 1⎞ + ⎟ − 4 a ⎟⎠ a * Re ′+
1 1 ⎛1 ⎜ − ⎜2 ⎝
1 1⎞ + ⎟ 4 a ⎟⎠
,
On-the-Fly Ontology Matching in Smart Spaces: A Multi-model Approach
77
where a is a coefficient, a∈(0;+∞). Values of a close to 0 (e. g., 0.00001) produce almost no normalization, values of a more than 1 significantly decrease the resulting similarity level. The value of a should be set empirically.
4 Model of Searching Semantic Distances of Ontology Elements For measuring the semantic distances between ontology elements we use the machine readable dictionary extracted by direct access to Wiktionary and WordNet. This dictionary includes: 1) a set of words defined in dictionary along with 2) definitions given for each word, 3) a set of synonyms for each word, and 4) a set of associated words for each word. Words associated to a word are considered as hyperlinked words occurring in the Dictionary definition given for this word. The nodes of ontology are linked to nodes representing their synonyms and associated words as this is given in the machine-readable dictionary. The links between the nodes are labeled by the distance of relations specified between the concepts represented by these nodes in the machine-readable dictionary. Weight w of a relation specified between two ontology elements t i and t j is assigned as: ⎧0,5 − t i , t j are synonyms ⎪ w = ⎨0,3 − t i , t j are associated words ⎪∞ − t , t are the same word i j ⎩
The values for the weights were evaluated based on the following principles: 1. Semantic distances between synonyms are assumed to be smaller than semantic distances between associated words; 2. Semantic distance is proposed to be calculated as inversely proportional to weights raised to a power. The power is proportional to the path between the compared words. The longer path the greater the semantic distance for the two different words is expected to be. To meet this expectation with reference to the way of the semantic distance calculation, a weight of the relation between two different words should be in the range (0, 1) and ∞. Taken into account the first principle, we empirically selected the weights: 0,5 - for the relation between the synonyms; and 0,3 - for the relation between the associated words; 3. The semantic distance between the same words is equal to 0. For searching semantic distance between elements of two ontologies, nodes of the first ontology are checked for their similarity to nodes of the second ontology. As a measure of similarity the semantic distance (Dist) is used.
Dist (t i , t j ) =
1 sj
∑ ∏ wk S k = si
78
A. Smirnov et al.
where t i , t j – ontology elements; w – weight of lexical relation existing between t i and t j ; S – a set of paths from t i to t j , where a path s is formed by any number of links that connect t i and t j passing through any number of nodes. The degree of similarity depends inversely on distance.
5 Graph-Based Distance Improvement Model The graph-based improvement model for propagation similarities from one ontology element to another is presented in Fig. 4. The main goal of this model is to propagate the degree of similarity between closely matching ontology elements to ontology elements related to them through RDF triples. Ontology 1
Ontology 2 d(xi, xj)
xi
d(ri, rj)
ri
d(x’i, x’j)
x’i
xj rj x’j
Fig. 4. Matching of two ontology model
Set X=(x1, x2, ..., xn) is the set of subjects and objects in the ontology of two knowledge processors. Set Dx = (d(xi, xj), ...) is a degree of similarity between xi and xj. Set R = (r1, r2, ..., rn) is a set of predicates in the ontology of two knowledge processors. Set Dr = (d(ri, rj), ...) is a set of degrees of similarity between ri and rj. Constant Tr is a threshold value that determines whether two ontology elements mapped to each other or not. The following algorithm allows propagating similarity distance to RDF subjects and objects. d(xi, xj) = maximum(Dx) while (d(xi, xj) > Tr) do for each d(x’i, x’j) as xi rm x’i and xj rl x’j do if d(rm, rl) > Tr then d(x’i, x’j) = endif endfor Exclude d(xi, xj) from Dx d(xi, xj) = maximum(Dx) endwhile
2
d (x i , x j ) ∗ d (x i′ , x ′j )
On-the-Fly Ontology Matching in Smart Spaces: A Multi-model Approach
79
The following algorithm allows propagating similarity distance to RDF predicates. for each d(xi, xj) > Tr do for each d(x’i, x’j) > Tr as xi rm x’i and xj rl x’j do d(rm, rl) = 3 d (x i , x j ) ∗ d (x i′ , x ′j ) ∗ d (r m, r l
)
endfor endfor
6 Smart-Room Case Study This is an extended scenario originally proposed in one of our previous papers [6]. The meeting takes place in an “intelligent room” including LCD projector, whiteboard, and access to Internet-based translation service. Users that are planning to make presentation have the special knowledge processor (called User Knowledge Processor or UKP) on their Nokia MAEMO devices, that implements the required functionality as described below. Upon event of user entering to the smart space meeting room, at least the following information from users’ mobile devices become accessible for other smart space UKPs: -
the user profile information (name, photo, domain of interests, e-mail, and phone number, etc.); presentation information (title, keywords, URI).
Before the meeting starts the agenda has to be automatically built and shown on the whiteboard including the speakers’ names, photos, and presentation titles. The current presentation is highlighted on the screen. All meeting participants can see the detailed agenda on the screens of their personal mobile devices. Users can change their user profile items. When the user changes the information about his/her presentation in the profile, UKP changes the appropriate rules in the smart-space. A GUI interface for visualizing the detailed agenda in the screen of participants’ Nokia MAEMO devices has been implemented as well. At the scheduled time the appropriate presentation starts automatically, i.e. the LCD projector is switched ON and the appropriate presentation is shown. The user can control the slideshow directly from the mobile device. Five minutes before the presentation ending time and when the presentation time is about to be over the whiteboard reminds the speaker about the time restrictions. The architecture of this case study is presented in Fig. 5. It includes the following knowledge processors: KP1 – whiteboard (PC); KP2 – projector (PC); KP3 – translator (PC + Internet service); KP4 – coordinator (PC); KP5… N – UKPs (e.g. Nokia N810). The application of the matching procedure is shown in Fig. 6. Let’s consider the following example. The user having mobile device with a knowledge processor (User KP or UKP) running on it and he/she is going to give a lecture. The corresponding ontology is presented in Fig. 7.
80
A. Smirnov et al. Whiteboard
Projector KP1
KP2
Participants’ UKPs
Translator
SIB
KP5
KP3
KP…
Coordinator KP4
KPN
Fig. 5. The case study architecture
The LCD projector represented in the smart space by Projector KP (PKP) is capable of this function, as it is shown by ontology of the projector KP in Fig. 8. This ontology currently located in the smart space. In order for the presentation to be shown UKP has to share the information about the presentation location (URI) with PKP. Participants’ UKPs
Projector PKP SIB
UKP Ontology
PKP
Ontology Matching
Ontology
Matching
Fig. 6. The extended case study architecture user gives
lecture part of
current slide
is of has
type
is
number
file location
Fig. 7. Ontology of user KP
For this purposes the UKP and PKP ontology have to be merged. The element “lecture” from UKP is merged with the “presentation” from PKP as a result of the semantic-based distances search method. Distance between these elements is 0.3 since
On-the-Fly Ontology Matching in Smart Spaces: A Multi-model Approach
projector
81
has
state
show
presentation part of
slide
is of has
is
number
type URI
synonym
file location
synonym
URL
Fig. 8. Ontology of projector KP
they are synonyms according to the Wiktionary. The element “file location” from UKP is merged with the “URI” from PKP as a result of checking the synonyms rules of the PKP ontology. The element “Current slide” is merged with the element “Slide”. The degree of similarity between these elements estimated via the fuzzy string comparison method is 0.59. As a result of this matching UKP knows that the following rule has to be added to the smart space to start the lecture: (“URI”, “is”, “http://myexample.com/presentation1.ppt”).
7 Conclusion The paper proposes the multi-model approach to on-the-fly ontology matching in smart spaces. The approach has been developed integrating the most efficient techniques applicable to Smart-M3 and based on analysis of the state of art. It takes into account that the matching has to be done “on-the-fly” by mobile devices with limited capacities and uses the fact that knowledge processors are responsible for performing certain concrete and well-described tasks. The experiments showed that the matching procedure based on the proposed algorithm (without using on-line dictionaries) takes less than a second on a Nokia N810 mobile device. Any measurement of similarity comes with a certain probability. In this study the minimal probability when the nodes are considered to be the same is captured by comparison to a certain threshold value. The state-of-the-art study discovered that at the moment there are no methods for automatic (without involvement of experts) setting of the threshold value for the matching procedure. Hence, within scope of this project we had to spend significant efforts to minimize as much as possible the need for the expert involvement in the future. As a result, the developed model assumes involvement of experts only at two stages of the design phase and no expert involvement at the run time. First, the experts are obviously needed at the development of the ontology for KPs. At this stage they also define synonyms for the appropriate domain that will be used during matching.
82
A. Smirnov et al.
Another stage when the experts are required is at the setting of the threshold value. This could be done either during the ontology design or postponed till the designed ontology is matched against some other existing ontology from the appropriate domain. For example, it could be specially developed testbed ontology, or accumulated ontology from the real world, depending on the availability. If the threshold is defined when the KP ontology is designed, its quality would be usually worse than when its definition is postponed because of the lack of the matching results with other existing ontology. However, it is not always possible to postpone since the testbed or real world ontology is not be available in many cases, e.g. in case of developing KPs for new domains. In this study we could not find fully automated solution for defining threshold value, but we are continuing to think in this direction and your ideas on how it can be solved are very welcome.
Acknowledgement The presented work is a result of the joint project between SPIIRAS and Nokia Research Center. Part of the implementation work has been also supported by Open Innovations Framework Program FRUCT – www.fruct.org.
References 1. SourceForge, Smart-M3 Retrieved: 10.4, (2010), http://sourceforge.net/projects/smart-m3 2. Semantic Web site, http://www.semanticweb.org (retrieved 10.4.2010) 3. Smart-M3 Wikipedia page, http://en.wikipedia.org/wiki/Smart-M3 (retrieved 10.4.2010) 4. Oliver, I., Honkola, J.: Personal Semantic Web Through a Space Based Computing Environment. In: Middleware for Semantic Web 08 at ICSC’08, Santa Clara, CA, USA (2008) 5. Oliver, I., Honkola, J., Ziegler, J.: Localized Space Based Semantic Webs. In: WWW/Internet Conference, Freiburg, Germany (2008) 6. Carriero, N., Gelernter, D.: Linda in context. Artificial Intelligence and Language Processing 32(4), 444–458 (1989) 7. Wells, G.: Coordination Languages: Back to the Future with Linda. In: Proceedings of the Second International Workshop on Coordination and Adaptation Techniques for Software Entities (WCAT’05), Glasgow, Scotland, pp. 87–98 (2005) 8. AnHai, D., Jayant, M., Pedro, D., Alon, H.: Ontology Matching: A Machine Learning Approach. In: Handbook on Ontologies in Information Systems, p. 660. Springer, Heidelberg (2004) 9. Doan, A., Madhavan, J., Domingos, P., Halevy, A.: Learning to map between ontologies on the semantic web. In: Proceedings of the 11th international conference on World Wide Web, pp. 662–673 (2002) 10. Hu, W., Jian, N., Qu, Y., Wang, Y.G.: A Graph Matching for Ontologies. In: K-CAP Workshop on Integrating Ontologies, pp.43–50 (2005) 11. Alasoud, A., Haarslev, V., Shiri, N.: An Effective Ontology Matching Technique. In: 17th International Symposium ISMIS 2008, Toronto, Canada, May 20-23, pp. 585–590 (2008) 12. Hovy, E.: Combining and standardizing largescale, practical ontologies for machine translation and other uses. In: The First International Conference on Language Resources and Evaluation (LREC), Granada, Spain, pp. 535–542 (1998)
On-the-Fly Ontology Matching in Smart Spaces: A Multi-model Approach
83
13. Mitra, P., Wiederhold, G., Jannink, J.: Semi-automatic Integration of Knowledge Sources. In: 2nd International Conference on Information Fusion (FUSION 1999), Sunnyvale, CA (July 6-8, 1999) 14. Mitra, P., Kersten, M., Wiederhold, G.: Graph-Oriented Model for Articulation of Ontology Interdependencies. In: Zaniolo, C., Grust, T., Scholl, M.H., Lockemann, P.C. (eds.) EDBT 2000. LNCS, vol. 1777. Springer, Heidelberg (2000) 15. Noy, N., Musen, M.: Anchor-PROMPT: Using Non-Local Context for Semantic Matching. In: Workshop on Ontologies and Information Sharing at the Seventeenth International Joint Conference on Artificial Intelligence (IJCAI-2001), Seattle, USA (2001) 16. Castano, S., Ferrara, A., Montanelli, S.: H-Match: an Algorithm for Dynamically Matching Ontologies in Peer-based Systems. In: Proc. of the 1st VLDB Int. Workshop on Semantic Web and Databases (SWDB 2003), Berlin, Germany (2003) 17. Serafini, L., Bouquet, P., Magnini, B., Zanobini, S.: An algorithm for matching contextualized schemas via SAT. Technical report, DIT University of trento, Italy (2003) 18. Noy, N., Musen, M.: SMART: Automated Support for Ontology Merging and Alignment. In: 12th Workshop on Knowledge Acquisition, Modeling, and Management, Banff, Alberta (1999) 19. McGuinness, D.L., Fikes, R., Rice, J., Wilder, S.: An Environment for Merging and Testing Large Ontologies. In: Proceedings of the Seventh International Conference on Principles of Knowledge Representation and Reasoning (KR’2000). Breckenridge, Colorado, USA (2000), http://www.ksl.stanford.edu/software/chimaera/ (retrieved, 10.4.2010) 20. Aumueller, D., Do, H., Massmann, S., Rahm, E.: Schema and Ontology Matching with COMA++. In: Proceedings of the 2005 ACM SIGMOD International Conference on Management of Data, pp. 906–908 (2005) 21. Melnik, S., Garcia-Molina, H., Rahm, E.: Similarity flooding: a versatile graph matching algorithm and its application to schema matching. In: Proceedings of the 18th International Conference on Data Engineering, USA, pp. 117–128 (2002) 22. Cruz, I., Antonelli, F., Stroe, C.: Efficient Selection of Mappings and Automatic Qualitydriven Combination of Matching Methods. In: The Fourth International Workshop on Ontology Matching, Washington DC, USA (2009) 23. Ritze, D., Meilicke, C., Šváb-Zamazal, O., Stuckenschmidt, H.: A pattern-based ontology matching approach for detecting complex correspondences. In: The Fourth International Workshop on Ontology Matching, Washington DC, USA (2009) 24. Giunchiglia, F., Maltese, V., Autayeu, A.: Computing Minimal Mappings. In: The Fourth International Workshop on Ontology Matching, Washington DC, USA (2009) 25. Klein, M., Kiryakov, W., Ognyanov, D., Fensel, D.: Ontology Versioning and Change Detection on the Web. In: 13th International Conference on Knowledge Engineering and Knowledge Management (EKAW02), Sigiienza, Spain (2002) 26. Smirnov, A., Kashevnik, A., Shilov, N., Oliver, I., Lappetelainen, A., Boldyrev, S.: Anonymous Agent Coordination in Smart Spaces: State-of-the-Art. In: Balandin, S., Moltchanov, D., Koucheryavy, Y. (eds.) ruSMART 2009. LNCS, vol. 5764, pp. 42–51. Springer, Heidelberg (2009)
Access Control in Personal Localized Semantic Information Spaces Alexey Koren and Alexander Buntakov State University of Aerospace Instrumentation, Bolshaya Morskaya 67, Saint-Petersburg, Russia {alexey.koren,alexander.buntakov}@extendedmobile.net
Abstract. Leading by global convergency of devices and software from different domains (mobile, desktop, web) information exchange platforms are also evolve into form of smart spaces, personal localized semantic information clouds. New architectures appear, fulfilling needs of crossplatform interaction, semantic reasoning and many other novel functions. In this paper we discuss access control problem for such kind of platforms. Several achievements are described briefly highlighting features that are most interesting in given context, requirements for access control framework are suggested and finally we introduce model of access control framework for one of the most promising smart spaces architecture. Keywords: Smart spaces, access control, personal semantic web.
1
Introduction
Despite of tremendous growth of World Wide Web in last decades and appearance of huge number of social services that affect volumes of information shared on the Web, most information sources are still private and open to limited number of trusted users. That is in human nature and most probably situation will not change in short time. People are about to create personal spaces and share it only with chosen person. On the other hand there are blogs, online diaries, social networks where exactly the same people publish a lot of information with everybody. But during the sharing people still want to hold ownership and control of all published information. Explaining in terms of Tim Berners-Lee’s idea of Giant Global Graph [1]: actors (both corporate or individuals) want personal subgraph of it to be under their control. One of the most promising architectures for fulfilling such need is localized personal semantic spaces (we will use term ”smart space” in this paper) described in [2, 3]. It takes advantage of many concepts, which are now popular in discussions about semantic technologies: automated reasoning, context-awareness, personalization etc. Such technologies and platforms emerge rapidly and we can say that it is predictable and fits common trend of device and software domains convergency [4]. Basic architecture is simple and it is shown on figure 1. Each smart space obtains a shared place for information exchange called ”whiteboard”. This is a S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 84–91, 2010. c Springer-Verlag Berlin Heidelberg 2010
Access Control in Personal Localized Semantic Information Spaces
85
canvas for creating semantic subgraph. For representing information open standards such as RDF [5] and OWL [6] are used. Agents, also called ’knowledge providers’ (KPs), connect to SIB during simple protocol allowing ”Insert”, ”Retract”, ”Query”, ”Subscribe” and ”Unsubscribe” actions, where: Insert - insert a set of triples; Retract - remove a set of triples; Query - query information store for a set of triples; Subscribe - set up a subscription for a given query; Unsubscribe - terminate processing of the given subscription. This set of actions could be easily represented as traditional [SELECT, INSERT, REMOVE] or [GET, PUT, DELETE] actions set, which seems more clear and strict for defining access.
Fig. 1. Smart space architecture
Agent could potentially connect to any number of spaces, combining information from them for more complex reasoning or simple aggregation for user. 1.1
Smart Spaces’ Security Requirements
Such way of organizing information makes traditional access control methods not applicable for providing security in pervasive highly dynamic systems filled with semantic information. New model of information interaction imposes new security requirements. We consider following as basic ’must have’ features for smart spaces oriented access control methods: 1) Access control on information (RDF) level. Security administrator should be able to restrict or permit explicitly any atomic piece of information, in terms of RDF (as it is standard de-facto for semantic technologies) - any particular triple or a set of triples. 2) Flexible semantic policies definition. From the other hand ability to define access policies on high semantic level is also important. It is more handy way to manage security permissions when it is no need to work on information pieces
86
A. Koren and A. Buntakov
level but on information types level. For example instead of restricting access to every person’s credit card information for anonymous it is more correct way (both from usability and security points of view) to restrict access to all triples of type [*, ”hasCreditCardNumber” ,*]. On higher level it should be possible to group different triple patterns into sets according to its semantics and work with such semantic categories instead of single patterns. In this example all personal financial information which could consist of several card numbers, bank accounts etc. may be combined in one group and administrator will permit or restrict access to this high-level object. Common way for organizing this is using ontologies. 3) Context-awareness and dynamic permission management. In novel ubiquitous multi-agent systems environmental conditions are changing very rapidly. And the same time state of environment sometimes affects permissions of agents. Most usual example is location - mobile agents located in particular area, lets say hotel main hall, may be able to access hotel’s internal services and the same time agents located outside the building are not permitted. Security system must handle all possible context situation gracefully, associating rights to agents in real-time after context changing. 4) Support for reasoning. Many semantic platform gain advantage of reasoning process. During reasoning new portions of information may appear in the system. After this security system must perform secure reasoning to determine what security attributes should be assigned new objects. It should be done not only to prevent unwanted access to private information but also for measuring trust for newly appeared information: may other users take into account these information in some sensitive reasoning processes or not? Lets look at one more example from financial world. Knowledge providers perform reasoning to recalculate estimations of air transport company after messages about planes’ crashes. If somebody will add untrusted information about several incidents - it should not affect stock prices before information will be confirmed officially. 5) Simple lightweight design. It is worth to note that multi-agents environment such as smart spaces are often consist of small devices restricted on energy, memory and/or processing power like mobile phones or consumer electronics. In order to minimize resource consumption for security subsystem it is very important to reuse as much as possible existing infrastructure and make security solution as resource-efficient as possible.
2
Related Work
Rebecca Montanari, Alessandra Toninelli et al. in a series of works dedicated to security for mobile agents [7, 8] achieved significant results in observing area of semantically-rich context-aware security policies based on rules and onthologies. Authors proposed hybrid approach which combines description logic and logical programming for definition of security policies for ubiquitous dynamically changing multi-agent environments. Benefits of this approach is very well-reasoned and these results affects architecture proposed in this paper pretty much.
Access Control in Personal Localized Semantic Information Spaces
87
One more example of using logical programming of context-aware security policies is Cerberus [9], security service of Gaia project. Cerberus is a ubiquitous security mechanism integrating context-awareness and reasoning over security policies for providing access control in ubiquitous computing environments. Interesting idea is to use confidence values for different types of authentication and several probabilistic methods to combine them to net value. But theoretically interesting idea is difficult for implementation in real world. For every system security administrator should manually define confidence levels for every authentication method and their combinations. For really complicated system it might be painful and lead to multiple vulnerabilities (or will require development of verification process). And in most cases confidence levels will anyway be created by administrator which uses Boolean logical clauses to determine permissions in every case, so it is more convenient to don’t use fuzzy conditions instead of natural logical programming and strict statements for defining security. Covington et al. proposed a mechanism of environmental roles [10] as a method of assigning security permissions to subjects and groups basing on state of system (environment). An environmental role can be activated if set of environmental variables (day of week, time, location etc.) satisfies a policy defined by security administration. This set is stored in a role definition. Such kind of encapsulation seems reasonable in many cases but sometimes it could be not very handy in situation when there are many roles which are pretty similar in general but different in details. In this case administrator should either place piece of logic into role definition (not good semantically and from encapsulation point of view) or create a very big set of environmental roles each of them is a small modification of base one. That is one more argument for separation logic of assigning roles basing on system’s state and roles itself. This way usage of environmental variables together with logically programmed security policies is a better way. There were several attempts to describe security infrastructures for RDF stores. In [11] authors propose a policy based access control method for an RDF stores. Idea is clear and simple and most applicable architecture detail is that all metadata and security policies is stored into RDF store itself. In [12] it is proposed to store security object for every triple or triple pattern. This object will define access rights for given triple. Also two-level conflict resolution policy mechanism is described. Main disadvantage of RDF-based security approaches (in our case) is that there is no possibility to define policies on high semantic level using ontologies and context.
3 3.1
Access Control Model Access Control on Low Level
Main functionality of smart spaces is to provide information and knowledge exchange in unified open format. Thereby main functionality of its access control system is to manage access to these information and knowledge. As vice as information mainly represented in RDF format - security will also work with RDF format and RDF stores at lowest level.
88
A. Koren and A. Buntakov
Common representation of RDF data set is oriented graph. Security check for given user and given may be presented as taking a subgraph in accordance with user’s access rights for every vertex and edge. We can manage access to RDF graph by assigning access right to different triple templates. Vertices are represented as triples like [John Smith, ?, ?] or [?, ?, John Smith], which corresponds to ’subject’ or ’object’ position of Mr. Smith in triple accordingly. Edges are represented as triples like [?, foaf:knows, ?]. Given triple describes simple relation between two subjects in social network using FOAF ontology [13]. Managing access to such kind of triple it is easy to make all contacts of person invisible to any group of users, let say ’anonymous’, ’banned’ or ’not friends’. Also it is possible to define access to any particular triple using same notation: [John Smith, ”salaryIs”, ”2000000 euro cash”]. Triple templates may be grouped together by any thematic, access or other property to simplify policy definition and changing. For managing access in dynamically changing environments it is most reasonable to use role-based access control model (RBAC) [14], instead of mandatory or discretionary as most flexible. We suppose P to be set of possible actions [PUT, GET, REMOVE] for all triple templates and template groups. Roles could be assigned to user in two ways: statically and dynamically. We don’t distinguish common roles and environmental or context-based roles explicitly. Secure reasoner is just assigning common roles to user basing on its context and/or state of environment. User can not only gain roles during environment check, but also lose some of roles statically assigned to him/her earlier. Consider the following example. Mr. Smith could be member of ’sales managers’ groups and thereby have access to some sensitive company information. But if he will trying to access this information from public computer or through insecure connection, then during security reasoning process he will temporary lose ’sales managers’ privileges and gain weaker privileges from role ’sales manager in untrusted environment’ and all security check for his queries will be done against this role, instead of his membership statically assigned before. It will have place until he will return to trusted corporate network or will set up VPN connection. 3.2
High-Level Policies Definition
Common way to define high-level security constraints is using ontologies (most likely in OWL format). Security administrator can describe any clause relevant to his/her domain in semantic way, like ’colocatedWithUser’, ’customerOfOurCompany’ or ’memberOfDependentProject’. Roles should also be described in OWL because ownership of some roles could be part of another role’s or policy’s description. Alessandra Toninelli et al in [8] suggest architecture of policy framework for pervasive computing to exploit logical programming [LP] in addition to description logic [DL] for encoding strict and clear rules operating high-level constraints and entities derived from ontology. In such manner we separate and encapsulate 3 main domains:
Access Control in Personal Localized Semantic Information Spaces
89
1) Description of all possible constraints, entities, actors, environment states etc. given in form of ontology; 2) Set of roles, independent from any environmental or other constraints, defining access right for different types of users and/or automated agents; 3) Set of logical rules, defining which user will grant which permissions in current context. At the same time all of 3 domains could be expressed in RDF form and be put into regular RDF storage without need to upgrade its structure for storing new data formats, that is important for small weak devices. 3.3
Support for Reasoning
Dynamic rules-based policy also should be applied to newly added triples. If triple fits any template defined in access policy it automatically gains according information group membership and access constraints. In case when triple doesn’t fit any template its access constraints may be chosen basing on user’s roles set or it can be assigned to default category. Trust maintenance is organized via adding ’trust level’ attribute to information groups or triple templates. Once system controls access to information group it could guarantee that information in given group may be changed only by authorized entities (users or automated agents) with proper level of trust. If triple appears as a result of reasoning process - KP should take trust level of all information considered during the process and set the lowest level from presented to resulting triples. Problems may appear when KP aggregates information from different smart spaces to perform reasoning. They most probably will have totally different trust policies which have no common semantics. In this case KP could treat resulting information as having trust lowest level from different spaces, because at the time when they don’t have common semantics in general and can not be comparable, KP knows meaning of every trust level and is able to decide is information combined from pieces with given trust levels trusted enough or not. Consider example with 2 news resources, each has authorized information from its journalists, verified by editors, and forum where any guy could leave his/her message. Thus first type of information is trusted (has trust level = ”1”) for both resources and forum threads has no trust in general (trust level = ”0”). Mathematically they are equal but let us say first resource is very old and respectful periodical and second one has doubtful reputation. In this case user will treat information appeared by reasoning on main news lines of both resources as not trusted enough, as he knows reputation of both resources. 3.4
Summary
Summarizing all details described above we see effective access control framework for dynamic, localized space based semantic webs as it shown on figure 2.
90
A. Koren and A. Buntakov
Fig. 2. Smart space architecture with security modules
All system information is stored into regular RDF store. Logical programming rules are not RDF-based itself usually, but they can be serialized to unify storage mechanism. Context is integrated with secure reasoning module which analyzes system’s state and assign or remove roles to users. We don’t analyze authentication and authorization methods in this paper that’s why there are no changes at all at the agents’ side. Trust maintenance need some changes on agents’ side but it also not actually a part of access control architecture.
4
Conclusion and Future Work
This paper describes our vision smart spaces access framework architecture. Multi-agent pervasive environment and semantic personalized webs are extremely new and intensively developing areas. All trends in World Wide Web, mobile devices and consumer electronics faster or slower but going in these directions. As soon as pure information now is the only possible level of interaction, research and development in area of security should also evolve to fulfill novel needs. In this paper we done review of related work in these areas and tried to build solution utilizing some of achievements to apply them to providing access control in smart spaces based environments. Practically, this paper leaves too much interesting questions out of scope. Authentication and authorization in multi-spaces environment is very interesting area for research as well as advanced support of reuse and reasoning over information from different sources, which can be described using different ontologies and have totally different trust levels. Solution given in this paper is far too simplistic and we will work further to make this concept-level model to work in dynamic environment with high level of uncertainty.
Access Control in Personal Localized Semantic Information Spaces
91
Acknowledgement The authors would like to thank FRUCT (Finnish-Russian University Collaboration in Telecommunications) program [15] for support and assistance provided and also would like to acknowledge importance of the financial help provided by Nokia and Nokia Siemens Networks.
References 1. Shadbolt, N., Berners-Lee, T., Hall, W.: The Semantic Web Revisited. IEEE Intelligent Systems 21(3), 96–101 (2006) 2. Oliver, I., Honkola, J., Ziegler, J.: Dynamic, Localised Space Based Semantic Webs. In: WWW/Internet Conference, Freiburg, Germany (2008) 3. Oliver, I., Honkola, J.: Personal Semantic Web Through A Space Based Computing Environment. In: Middleware for Semantic Web 08 at ICSC’08, Santa Clara, CA, USA (2008) 4. Koren, A., Balandin, S.: The Road to Smart Spaces: Convergence of Consumer Electronics with a Change of Content Management and Application Design Principles. In: Proceedings of 6th FRUCT Seminar, Helsinki, Finland (2009) 5. Resource Description Framework (RDF): Concepts and Abstract Syntax. In: W3C Recommendation, http://www.w3.org/TR/rdf-concepts/ (retrieved 03-08-2009) 6. OWL Web Ontology Language Overview, W3C Recommendation, http://www.w3.org/TR/owl-features/ (retrieved 03-08-2009) 7. Montanari, R., Toninelli, A., Bradshaw, J.M.: Context-Based Security Management for Multi-Agent Systems. To be published Proc. of the Second IEEE Symposium on Multi-Agent Security and Survivability. IEEE Press, Philadelphia (2005) 8. Toninelli, A., Kagal, L., Bradshaw, J.M., Montanari, R.: Rule-based and Ontologybased Policies: Toward a Hybrid Approach to Control Agents in Pervasive Environments. In: Proc. of the Semantic Web and Policy Workshop (SWPW), in conj. with ISWC 2005, Galway, Ireland (2005) 9. Al-Muhtadi, J., Ranganathan, A., Campbell, R., Mickunas, M.D.: Cerberus: A Context-Aware Security Scheme for Smart Spaces. In: Proceedings of 1st IEEE Annual Conference on Pervasive Computing and Communications (PerCom 2003), Fort Worth, TX, pp. 489–496 (2003) 10. Covington, M.J., Long, W., Srinivasan, S., Dey, A.K., Ahamad, M., Abowd, G.D.: Securing Context-Aware Applications Using Environment Roles. In: SACMAT’01, May 3-4, Chantilly, Virginia, USA (2001) 11. Dietzold, S., Auer, S.: Access Control on RDF Triple Stores from a Semantik Wiki Perspective 12. Jain, A., Farkas, C.: Secure Resource Description Framework: an Access Control Model. In: SACMAT’06, Lake Tahoe, California, USA (2006) 13. FOAF Vocabulary Specification, http://xmlns.com/foaf/spec/ (retrieved, 10-042010) 14. Sandhu, R., et al.: Role based access control models. IEEE Computer 29(2) (February 1996) 15. Finnish-Russian University Collaboration in Telecommunications (FRUCT) program official webpage, http://www.fruct.org (retrieved, 10-04-2010)
Integration of an Answer Set Engine to Smart-M3 Vesa Luukkala and Jukka Honkola Nokia Research Center, Itämerenkatu 11, Helsinki, Finland
[email protected],
[email protected]
Abstract. We present our work in integrating an answer-set engine smodels to Smart-M3 interoperability platform. This gives user a possiblity of programming and trialing logic program reasoning in Smart-M3 environment. The smodels programming model guarantees that evaluation of rules is terminating. We add reactive features on top of the answer-set programming model and discuss its implications.
1
Introduction
Nowadays, a lot of devices with considerable computing power and connectivity mechanisms are present in the everyday environment. The potential of these devices has also increased the interest in getting them to interoperate. Currently, interoperability standards mostly apply for single domains, such as UPnP and DLNA for home entertainment, or are controlled by a single company, such as the Apple ecosystem. The domain specific interoperability standards are challenging for nomadic devices such as smart phones, which ideally should be able to interoperate with any device it can connect to at any given time. A nomadic device will currently have to implement multiple standards to be able to participate in the different domains. Furthermore, the existing standards often target specific use cases instead of attempting to specify a more general interoperability framework. One initiative to target a generic interoperability framework is the semantic web [1]. The goal of the semantic web is to provide machine readable information about the World Wide Web in order to allow automating many tasks that the web is currently used for manually. Eventually this would result in one giant global graph describing the resources of the web in RDF [10] according to ontologies defined in dedicated languages such as in OWL [9]. However, the web is not the best platform for sharing the rapidly changing, dynamic local information about the immediate environment of a device. Smart-M3 is an interoperability platform that allows devices to easily share and access local semantic information, while also allowing the more global semantic information to be available. The information is represented by using same mechanisms as in semantic web, thus allowing easy exchange of global and local information. The RDF representation also allows extremely easy linking of S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 92–101, 2010. c Springer-Verlag Berlin Heidelberg 2010
Integration of an Answer Set Engine to Smart-M3
93
data also between different ontologies, thus making cross-domain interoperability straightforward. While the used semantic web technologies have been designed to allow reasoning over the information, Smart-M3 currently supports only limited reasoning. Queries in Smart-M3 understand subclass relations, and the query engine also understands the owl:sameAs property. The implemented reasoning mechanisms in Smart-M3 are currently domain-independent, that is, they can take into account properties defined in RDFS or OWL, but not information defined in domain ontologies. However, in many applications creating domain-specific reasoners would be useful. We present an approach where we use logic programming for defining the domain specific reasoning rules. As each RDF triplet can be interpreted as a fact of arity two, there is a straightforward link between RDF content and rulebases. Therefore, various logic programming approaches can be used in a natural manner to deduce new information by means of user constructed rules executed over the fact base. The logic programming approach is useful in creating domain specific instructions for searching and abstracting over the RDF content. Also searching for configurations and policies are natural to express using logic programming means. Furthermore it is possible to generate consitency rules based on ontologies. In short, a rule mechanism can be used to provide additional functional semantics to accompany ontologies. Rules can also be thought of as views in the underlying RDF-base. In this way the logic programming mechanism provides a flexible alternative to query languages like SPARQL [12] or Wilbur Query Language [5]. This approach is not new, for instance Wielemaker et. al. [13] have proposed Prolog to be fundament for application development for semantic web for similar reasons. The smodels [6] is a system for answer set programming. It consists of lparse front end which transforms rule language to input suitable for smodels, which is a solver based on stable model semantics of logic programming. Here we refer to the combination of lparse front end and smodels solver simply as smodels. smodels allows constructing programs using extended logic programming concepts, atoms and inference rules, but by language construction the programs are always decidable. ssls 1 is a command-line tool giving access to Smart-M3 operations with some additional convenience features as well as a possiblity of interfacing external tools to operate on the results of the operations. We use ssls to integrate smodels with Smart-M3 as a node of the system. We do not expect this work to provide a complete programming environment for applications (even though it in principle could be one), but rather as a component in Smart-M3 technology stack. In section 2 we introduce the Smart-M3 interoperability platform, in section 3 we present the integration between smodels and ssls, in section 4 we give an example of use and finally in section 5 we present our conclusions and possibilities for future work. 1
Available at http://sourceforge.net/projects/ssls
94
2
V. Luukkala and J. Honkola
Smart-M3
Smart-M3 is a space-based interoperability platform consisting of two main components: semantic information broker (SIB) and knowledge processor (KP). A smart space is defined as a named search extent of information, where the information is stored in one or more SIBs. The architecture of the system is presented in Figure 1. In the simplest case, one SIB will store all information in a smart space, but there is a possibility of connecting multiple SIBs to make up a smart space. The SIBs making up a smart space will be connected with a protocol that provides distributed deductive closure [2]. Thus, any KP sees the same information content in the smart space regardless of the SIB it connects to2 . The information in the smart space is stored as an RDF graph, usually according to some defined ontology. The use of any specific ontology is not mandated, however. Neither is the consistency of the stored information guaranteed in any way. The KPs may modify and query the information using the insert, remove, update, query and subscribe operations by using the Smart Space Access Protocol (SSAP). Join Leave
: Join a KP to a named space : Leave a named space. After leaving, no more operations may be performed until a join operation Insert : Atomically insert a graph in the space Remove : Atomically remove a graph from the space Update : Atomically update a graph in the SIB. Update is a combination of remove followed by insert, executed atomically Query : Query for information in the space using any supported query language Subscribe : Set up a persistent query in the space; changes to the query results are reported to the subscriber Unsubscribe : Cancel an existing subscription The communication between KPs and SIB may be implemented by using any SOA style service network such as the Network on Terminal architecture [7], or by using a suitable transport protocol such as XMPP or TCP/IP. This approach allows using already deployed communication mechanisms and protects previous investments. Furthermore, it also means that KPs can connect to smart spaces by using the mechanism most suited to them. 2
Distributed deductive closure is not implemented in the current Smart-M3 implementation.
Integration of an Answer Set Engine to Smart-M3
95
Agent Agent
Agent
Agent
M3 Space SIB SIB SIB
Fig. 1. A diagram of the general system architecture: Agents, M3 spaces and SIBs
2.1
Notion of Application
The notion of application in a smart space differs from the concept of traditional application. Instead of a monolithic application running on a single screen, the smart space applications are better seen as scenarios that can be executed to meet the goals of the user. The scenario emerges from the observable actions, taken by the participating knowledge processors, based on the information in the smart space, and also from the use of available services. The scenarios may also be transient: the scenario will change as the participating KPs join and leave the smart space, and also as services become available or unavailable. One of the targets of Smart-M3 has been to make combining the scenarios easy. This is achieved by the loose coupling between the KPs, as they only communicate by modifying and querying the information in the smart space. Thus, any effect that appearance or disappearance of KPs may have on the rest of the environment is limited to the information seen in the smart space. KPs may, of course, communicate with each other by any available means. but this is outside the scope of Smart-M3. A KP understands its own, non-exclusive set of information. This information may be thought of as the ontology of a KP. It is rarely defined formally, and is mostly an implicit concept which can be useful in some situations. Overlap of the sets of information understood by KPs is an essential precondition for achieving interoperability, as otherwise the KPs will never see each others actions. Smart-M3 has been used as an interoperability platform for a number of case studies. The case studies illustrate the applicability of the concept to a variety of areas. A case study of cross domain interoperability is described in [4]. The scenario involved a wellness domain represented by SportsTracker application, home entertainment domain represented by music streaming using a UPnP service, gaming domain represented by SuperTux game, and telecom domain represented by a phone call observer application. All domains share information using a M3 smart space, resulting in improved user experience compared to the case where the components operate independently. For example, when a call is received, the
96
V. Luukkala and J. Honkola
game and music player see the information that a call is ongoing in the smart space and can take appropriate action, in this case pause the music and game. When the call ends, music continues automatically. Furthermore, the played music changes according to the state of the game, for example, when the player loses lives, the music changes appropriately. Finally, the game may award extra lives if the player has been exercising lately. Other case studies include a building automation case [3], a smart meeting room case [11], a home sensor network case [8], and a health care case developed by University of Bologna. In the building automation case, information from the installed sensors and systems is shared for others by using Smart-M3, allowing also devices that do not implement the oBIX or other building automation protocols to access the information. In the smart meeting room case, Smart-M3 is used to coordinate access to the resources of a meeting room, such as a projector for presentations. The home sensor network case is remarkable in that all the hardware used is commercially available. The demo shows input from several sensors on multiple devices, such as Apple iPhone, Nokia N810 and laptop. The health care case uses information from temperature and humidity sensor and patient’s heartrate monitor to determine if the external conditions may be hazardous for the patient. Furthermore, a demonstration showing a combination of the home sensor network and healthcare demos where the information from the sensors used in home sensor network demo was used in the healthcare system, illustrating the ease of creating mash-up applications, has been created. All of these scenarios have been implemented by using various kinds of wrappers on top of SSAP protocol and ontological concepts on procedural languages, like C, C# and Python. All of these scenarios contain KPs whose essential behaviour can easily be expressed as a set of rules and a part of the effort involves re-implementing a specific ruleset and its support mechanisms in the host language.
3
Integrating smodels Using ssls
For this work the purpose of ssls is to integrate the smodels system as a node local rule execution environment. This allows us to easily trial various functionalities, which may later on be integrated to SIB itself. We assume that at least some part of the SIB contents is fetched to the node for the duration of the rule execution. The basic operation of rule execution is that given a command, ssls fetches the contents of the SIB and generates a rulebase from them. The rules themselves have been defined locally in a file or within ssls and they are executed against the rulebase using smodels. The result will be a set of triples to be inserted in the SIB and set of triples to be deleted from the SIB, which are then committed to
Integration of an Answer Set Engine to Smart-M3
97
the SIB. There are mechanisms for limiting the amount of fetched information as well as adding a degree of reactivity, which are described later on in this section. The conversion of the SIB contents is straghtforward: the SIB is queried for all triples and they are converted from subject, predicate, object triplet to fact predicate(subject, object). In order to satisfy the lparse syntax checker all URIs are quoted, which poses some problems for distinguishing between literals and URIs. This is solved by doublequoting the URIs with < and >. For example, a triplet :abcd-2ew4, rdf:type, wp1:Person would produce a fact "
"("<:abcd-2ew4>", "<wp1:Person>"). The rules are written in a text file, which is given to ssls as a parameter. It is also possible to define rules within the ssls interpreter, but only a subset of lparse language features are supported. The result of the smodels execution over the fact base and the rules is parsed for predefined facts which trigger adding content to insert and delete buffers, which are then committed to SIB. The facts for adding triples to insert and delete buffers are correspondingly i and d, both of arity three. Note that both i and d are ssls commands for adding triples to the buffers, which are then committed by the SSAP command update. After all generated facts have been parsed the update command is issued which will cause atomically the deletions to occur, followed by the insertions. In addition to the above i and d there are specific facts which cause ssls to print their arguments. During the rule execution several facts beside the ones which are interpreted (described above) may have been deduced. Unless these facts have been “marshalled” by means of i and d to the SIB, they will disappear after the rule execution. In this way the node with the rule engine is stateless. Of course it may be that the SIB is modified inbetween two rule executions and thus the results will be different for the same rules. However, it may be useful to have a hidden state, which is not published to the SIB. This may be due to security issues or performance reasons. This can be achieved by adding facts to the file with rules, but there is also a mechanims which allows to create a new persistent fact by means of rules themselves. If the fact ssls_fact with arity two is deduced, ssls calls its own rule command to add a new fact to its internal rulebase with the given arguments. The downside of introducing hidden state is that the state is local and the distribution of rules which use ssls_fact may be harder. Above we mentioned that the whole SIB is transferred to the node as the factbase for rule execution. Since the transferral is done by means of the SSAP query command, it is possible to limit the amount of information transferred. ssls contains a view mechanims which allows constructing a query with a set of triple patterns. So far we do not have any mechanism to check whether a view enables all rules, so this is an ad-hoc mechnism of reducing the amount traffic and requires an understanding of the particular rules to be safe. Finally, we may automatically trigger execution of rules by using the SSAP subscription mechanism. The mechanism allows setting up a persistent query and whenever there are changes in SIB pertaining to the query, the node is informed
98
V. Luukkala and J. Honkola
about them. ssls allows naming subscriptions and whenever a subscription with its name prefixed by smls fires, the rule execution is initiated. This provides for a simple reactive mechanism to execute the rules. Note that so far each single execution of the rule-engine is decidable, but the above mechanism together with the notion of state (either in SIB or locally in the node) makes it impossible to determine the behaviour of such a chaining of single rule-engine executions. On the other hand this enables more generic programming, but the required mechanisms and sensibility of this approach needs further research.
4
A Rule Example
We have chosen smodels over other similar alternatives (like Prolog) for couple of reasons: firstly, the execution is decidable, removing a whole class of errors. Secondly, the execution order of the rule body is not relevant. This enables future distribution strategies for rule execution. Thirdly, the system is well established with several implementations. Finally, the smodels language contains several features, which are very useful in constructing rules, namely: possiblity of choosing a defined number of facts, a negation which works as set negation and weighing facts. const threshold = 10. % Rule 1 3 { power_save_on(X),i(X,"<mob:pmode>","low"),d(X,"<mob:pmode>","high") } 3 :""(X,"<mob:Device>"), "<mob:battery_level>"(X,Y), not connection_active(X), lt(Y,threshold). % Rule 2 connection_active(X) :1 {"<mob:gsm>"(X,"on"), "<mob:wlan>"(X,"on")}. % Rule 3 3 { power_save_off(X),i(X,"<mob:pmode>","high"),d(X,"<mob:pmode>","low") } 3 :""(X,"<mob:Device>"), "<mob:battery_level>"(X,Y), ge(Y,threshold). Fig. 2. smodels rules for a simple power manager
We give a simplistic example highlighting the two first features. In this case we have a mobile device, which monitors its battery level and if the level falls
Integration of an Answer Set Engine to Smart-M3
99
under a preset value, puts the device to a power saving mode unless a connection is active. We define connection as either GSM being active or a WLAN connection being active. Figure 2 shows three rules to achieve this. Rule 1 derives three facts power_save_on, i and d for a device instance X, if the battery level is less than threshold and the fact connection_active does not exist in the rulebase. The head has three facts surrounded by minimum and maximum bounds, here both are three. This means that if the body matches, smodels should choose precisely three facts from the three possible choices. Here this is used as shorthand to avoid writing the same body for three different heads, but with different bounds we could choose subset(s) of the facts. Rule 2 states that we can derive connection_active if at least one of the listed possibilities exists. Rule 3 acts as a complement of Rule 1, turning power saving off when needed. Note, that power_save_on and power_save_off facts are not used anywhere in here. They are redundant as we expect that the information produced by i and d will trigger the appropriate behaviour by some other node in the system. However, if there will be other rules, these two facts can be used as components in those. In a way these facts act as an interface that this set of rules is offering for other rules.
5
Conclusions and Future Work
We have presented an integration of an answer-set programming system smodels to Smart-M3. The mechanism we have presented is simple and not specific to smodels, any other logic-programming system could be integrated by similar means. smodels does not as such contain any reactive features but Smart-M3 applications are by their nature reactive. This is why we have introduced a simple reactive mechanism in our system, which allows us the possiblity of implementing those kinds of programs using logic programming mechanisms. This comes at a price as the behaviour of the system when chaining several rule executions may not be easily predictable. One of our future research items is to understand and solve the challenges arising from this. As Smart-M3 does not currently have advanced reasoning capabilities, we use this approach to trial possible solutions to be included in the Smart-M3 system. One interesting possibility is to embed the rule engine in the SIB, and define an ontology for expressing the rulesets. This would allow executing rules defined by KPs in the SIB. For KPs with limited computing power this could be used as a mechanism to offload some of the computation from a small device to a more powerful device. Furthermore, as mentioned in section 2.1, in most scenarios there seems to be a need to utilize reasoning which is well suited to be expressed succinctly using rules. This reasoning could be performed conveniently in the SIB with the embedded rules engine. However, the exact benefits, e.g. less network traffic, and tradeoffs, e.g. performance of SIB, need to be further researched.
100
V. Luukkala and J. Honkola
The previous issues yield more particular technical research topics and work items pertaining to our rule based approach, such as: – how to derive a suitable query expression from the rules to reduce the amount of traffic needed – how to parallelize the execution of rules – implement publishing and reading in rules from SIB, enabling reflective creation of rules – how to derive rules from an ontology to enforce consistency of SIB contents – implement an ssls primitive to start subscriptions from the rules We also aim to reimplement parts of the existing scenarios using the rule based approach.
Acknowledgement This work was supported by SOFIA (Smart Objects For Intelligent Applications) project and funded by Tekes (the Finnish Funding Agency for Technology and Innovation) and the European Commission, and DIEM (Devices and Interoperability Ecosystem) funded by Tekes.
References 1. Berners-Lee, T., Hendler, J., Lassila, O.: The semantic web. Scientific American (May 2001) 2. Boldyrev, S., Oliver, I., Honkola, J.: A mechanism for managing and distributing information and queries in a smart space environment. In: Proceedings of MDMD 2009 (May 2009) 3. Främling, K., Oliver, I., Honkola, J., Nyman, J.: Smart spaces for ubiquitously smart buildings. In: Proceedings of UBICOMM 2009 (October 2009) 4. Honkola, J., Laine, H., Brown, R., Oliver, I.: Cross-domain interoperability: A case study. In: Balandin, S., Moltchanov, D., Koucheryavy, Y. (eds.) ruSMART 2009. LNCS, vol. 5764, pp. 22–31. Springer, Heidelberg (2009) 5. Lassila, O.: Programming Semantic Web Applications: A Synthesis of Knowledge Representation and Semi-Structured Data. PhD thesis, Helsinki University of Technology (November 2007) 6. Niemelä, I., Simons, P.: Smodels – an implementation of the stable model and wellfounded semantics for normal logic programs. In: Fuhrbach, U., Dix, J., Nerode, A. (eds.) LPNMR 1997. LNCS, vol. 1265, pp. 420–429. Springer, Heidelberg (1997) 7. Network on terminal architecture (November 2008), http://www.notaworld.org 8. Openm3 demonstration release, http://sourceforge.net/projects/smart-m3/files/OpenM3.tar.gz/download 9. Web ontology language, http://www.w3.org/2004/OWL/ 10. Resource description framework, http://www.w3.org/RDF/ 11. Smirnov, A., Kashevnik, A., Shilov, N., Oliver, I., Balandin, S., Boldyrev, S.: Anonymous agent coordination in smart spaces: State-of-the-art. In: Balandin, S., Moltchanov, D., Koucheryavy, Y. (eds.) ruSMART 2009. LNCS, vol. 5764, pp. 42–51. Springer, Heidelberg (2009)
Integration of an Answer Set Engine to Smart-M3
101
12. W3c recommendation: Sparql query language for rdf, http://www.w3.org/TR/2008/REC-rdf-sparql-query-20080115 13. Wielemaker, J., Hildebrand, M., van Ossenbruggen, J.: Using Prolog as the fundament for applications on the semantic web. In: Heymans, S., Polleres, A., Ruckhaus, E., Pearse, D., Gupta, G. (eds.) Proceedings of the 2nd Workshop on Applicatiions of Logic Programming and to the web, Semantic Web and Semantic Web Services, Porto, Portugal. CEUR Workshop Proceedings, vol. 287, pp. 84–98. CEUR-WS.org (2007)
A Video Monitoring Model with a Distributed Camera System for the Smart Space Andrey L. Ronzhin, Maria Prischepa, and Alexey Karpov SPIIRAS, 39, 14th line, St. Petersburg, Russia {ronzhinal,prischepa,karpov}@iias.spb.su
Abstract. The developed model of video monitoring based on distributed camera system is intended for automation of registration of meeting participants. The problem of detecting position of participants simultaneously attended in the room and their faces is solved by joint use of wide-angle, omni-directional and PTZ cameras located on walls and ceiling of the room, as well as implementation of face detection technology for photographing the zones of possible occurrence of participants faces. The quality of photos was estimated by accuracy of pointing the PTZ camera and the diagonal value of a face in the captured image. The deviation of face in the frame relatively the center averaged 8% and the square of face was no less than 7% of the image. Also it was observed that the mean time of registration increases, when the number of participants increases and the level of illumination decreases. Further development of the model is aimed at the automation of capturing the main speaker, discussion, vote and other key phases of events. Keywords: Multi-camera tracking, pointing PTZ camera, face detection, meeting support technology, smart space.
1 Introduction Due to the rapid development of broadcast networks, advances in processing and transmitting multimedia information, creation of Internet applications for videoconferencing and distant education, the so-called systems of E-meeting and E-lecture become more popular in business, academic institutes and universities at organization of distributed events. Such systems allow us to save on transportation costs, to choose an individual way of learning and to provide convenient facilities for searching and accessing information. Technological advances in recording, analysis, searching and transmission of multimedia data are already used in several research systems for video conferencing. Below, we analyze the range of problems holding the development of remote learning and collaboration, and methods for their solutions implemented so far in research systems only. Distributed events organized via specialized web-applications are real alternative to traditional meetings and lectures, where participants interact "face to face." Development of multimedia technologies allows video conference systems not only recording and output of audio and video data, but they also use more sophisticated S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 102–110, 2010. © Springer-Verlag Berlin Heidelberg 2010
A Video Monitoring Model with a Distributed Camera System for the Smart Space
103
techniques, such as analysis, pattern recognition and structuring of multimedia data, that certainly enhances services for participants and leads to new ways of access to events in real-time and archive processing [1]. The most of the research, conducted in this area, was devoted to development of software and hardware for audio- and videoprocessing. At present, panoramic camera, tablet for handwritten notes, whiteboard, tools for multimedia presentations, technology of synchronization and integration of data and an analysis of behavior and ways of cooperation between the participants during the event are widely employed. The automatic analysis of audio-visual data of meetings or lectures is complicated by the fact that such events are usually held in large halls with lots of participants, who arbitrarily change positions of their body, head and gaze. To improve the capturing and tracking of many participants, arrays of microphones, panoramic cameras, intelligent cameras (PTZ - Pan / Tilt / Zoom) and distributed camera systems are used. In the system Cornell Lecture Browser [2], two video cameras with subsequent synchronization and integration of video streams are used. In the eClass, also known as Classroom 2000 [3], videos of lectures were combined with the handwritten notes on a whiteboard. The system AutoAuditorium [4] detects participants by the PTZcamera, as well as carries out an automatic selection of video from one of three cameras, installed in the room. In the system [5], it is proposed to use the spatial sound source localization to control the PTZ-cameras and to track speakers and listeners. Also a list of rules and recommendations for professional operators, assisting to select optimal positions of the cameras in the hall, is defined. In the system [6], eight PTZcameras are controlled by video stream analysis, sound source and data localization from ultrasonic motion sensors. In the system FlySpec [7], the PTZ and omnidirectional cameras, management of which is remotely carried out by several participants with the automatic control system adjusting the direction of PTZ-cameras, are applied. Application of the panoramic camera allows us to capture images of all the events taking place in the room and to find locations of each participant [8]. Motion sensors [9] and microphone arrays are used additionally to video monitoring, in order to detect positions of participants and the active speaker. Sound source localization with the microphone arrays is effective in small lecture or conference rooms only. To record audio signals in a large room, participants and speaker often use personal microphones [4] or apply a system of microphone arrays, distributed in the room [6]. Various approaches have been proposed to record presentation slides projected on the screen during the event. Some systems require presentation slides loaded in advance or special software installed on user's computer, which says the number of the current slide to the server. In papers, in order to capture and record the presentation slides, a separate video camera, directed to the projection screen, is used. Another approach is to automatically capture video data directly from the VGA output of the computer or the projector, and to save data in a separate thread [8]. Whiteboards and blackboards play important role in meetings and lectures for making handwritten notes using a special pen or a hand with the sensor surface [10]. In the paper [11], image from the board is captured by the PTZ-camera. The system of image capturing, presented in [12], automatically identifies most interesting areas of the board and scales them for a better representation of information. Automatic handwriting recognition is used in the system [13] for processing sketches made on whiteboards.
104
A.L. Ronzhin, M. Prischepa, and A. Karpov
2 The Video-Monitoring Model of Meeting Participants The given research is focused on solution of the following problems: (1) finding and tracking active speaker with PTZ-cameras; (2) analysis of human beings’ motion for gesture recognition and activity classification; (3) registration of event participants; (4) detection and identification of users’ faces; (5) detection of gaze direction to find an object of attention of participants. The efficiency of events and conferences is improved with the development of hardware for recording and output of multimedia data. At the same time, a new range of unresolved issues was identified; so, development of methods for searching, tracking and recognition of objects by means of multichannel processing still remains very important. While designing the smart meeting room, ergonomic aspects of use of multimedia equipment have been taken into account, as well as location of audio and video recorders has been chosen that which enables to capture many participants at once. Choosing the number of cameras, their location, resolution, viewing angles and other settings for the video monitoring system, coverage zone, the number of objects that require simultaneous monitoring, degree of details of analyzed objects, the level of illumination have to be taken into account. Figure 1 shows places of seats, multimedia equipment (TV set, Projector), five AXIS Internet-cameras (PTZ-camera Cam3, Cam5, wireless cameras Cam2, Cam4, camera with wide angle lens Cam1, installed on the ceiling in the center of the room),10 personal webcams Logitech AF Sphere, four groups of lighting. Three microphone arrays located in the center of the left and right walls and over the sensor plasma (touch screen) serve for sound sources localization and recording phrases of participants. Each array of microphones has T-shaped configuration [14]. The aim of this paper is description of the developed system for video monitoring; so, the microphones are not shown in figure. Analysis of model-algorithmic software for processing multi-channel audio streams is used at development of multimodal information kiosk and smart rooms [15]. The conference table with installed personal webcameras for placement of participants of small meetings (round tables) up to 10 people is located on the left side of the hall. The right side of the hall contains rows of seats, which can accommodate up to 32 participants, tracking of which is implemented by the distributed system of cameras and microphone arrays. Three non-overlapping areas were identified, which require non-stop video monitoring: (1) the main speaker zone, (2) zone of participants, sitting at the conference table, (3) zone of participants in seats. Video monitoring of all three zones is carried out with the camera Cam1 having the viewing angle of 140 degrees and the resolution of 2048x1536 pixels. The stationary cameras Cam2, Cam4 have the viewing angle of 74 degrees and the resolution of 1280x1024 pixels. Two cameras Cam3, Cam5 with viewing angles of 51.6 degrees and the resolution of 704x576 pixels, equipped with the functions of tilt, rotation and scaling make capturing of any point of the space in the smart room.
m3 Ca
C C am
C
C
C
Third group of light
Second group of light
5
7150мм
105
C
C
m4 Ca
A Video Monitoring Model with a Distributed Camera System for the Smart Space
Cam2
Fig. 1. Scheme of the smart room and positions of cameras
The camera Cam2 installed at the height of 2 meters on the opposite wall of the projection screen is used for recording audio-visual data of events. The camera Cam1 has the wide-angle lens and locates on the ceiling in the center of the room. It covers the entire space of the room and allows to determine coordinates of all the participants in the horizontal plane. The stationary camera Cam4 was installed on the left from the door and designed in such a way, in order to cover all the users on seats at once. PTZcamera Cam3 and camera Cam2 were installed near each other and work simultaneously. The analysis of frames from the camera Cam2 allows to determine position of an observed object and to generate a command for rotation of the camera Cam3 in needed direction. The PTZ-camera Cam5 was installed in the center of the left wall at the height of 2 meters from the floor level and serves to capture video-data of the active speaker. The developed multi-functional model carries out the video monitoring of the event and allows us to automate main modes, such as: registration of participants, taking pictures of the speaker, active participants in the room during the discussion and vote. Based on the key stages of the events, different modes of the multifunctional model have been developed. Table 1 describes main functions in three basic modes: observation, registration of participants, event support. There are 3 cases in the mode “Event support”. The first case is the “Speaker’s talk”, where the system tracks movements of the speaker analyzing changes in neighboring frames received from the camera Cam1. On the basis of the speaker coordinates in the horizontal plane, angles of rotation and zoom are calculated to control the camera Cam5. The mode "Discussion" begins at the end of the speaker’s talk. In this mode, the control system of the intelligent room is managed by the sound sources localization module and determines active participants in the seat zone and directs the
106
A.L. Ronzhin, M. Prischepa, and A. Karpov
camera Cam3 there. The camera Cam5 keeps tracking of the presenter during the given mode. In the mode "Vote", the camera Cam1 determines participants in the seat zone, and counts raised hands of participants of the event using the camera Cam4. At the same time, the camera Cam3 with a minimum scale factor records the process of voting. The camera Cam2 directed to the projection screen is used for recording of the event. Table 1. Camera’s functions in various modes of video monitoring Camera
Mode Observation
Cam1
Tracking changes in the entrance zone
Registration
Tracking of movements and detection of seated participants
Speaker’s talk Tracking of movements of speaker
Event support Discussion
Vote
Detection of seated participants
Detection of seated participants
Cam4
Detection of faces of seated participants
Identification of the active speakers
Calculation of votes
Cam3
Photographing of the participants
Recording of the discussion of active speakers
Recording of the voting process
Cam5 Cam2
Recording of an active speaker
Recording of an active speaker
Recording of the screen and the room
Recording of the screen and the room
Figure 2 shows the scheme of transitions from one mode to others, which are initiated by the operator with the help of the control system of the intelligent room. The system changes its mode to "Observation", if a moving object is found in the entrance zone, located in front of the entrance door. Also, the system performs tracking of user movements and monitoring of seats. The system changes its mode to "Registration", when one of the participants sits in the chair. The system changes its mode to "Event support" with the sub-mode “Speaker’s talk”, when all the participants of the event have been registered and the command on appearance of the first speaker has been received. When the presentation of the speaker has been completed, the system changes the mode to "Discussion". The system transmit to the mode “Speaker’s talk”, when the command on starting a new presentation has been received. The mode
A Video Monitoring Model with a Distributed Camera System for the Smart Space
107
Fig. 2. Scheme of mode transitions of the video monitoring model
“Vote” starts, when the system finds raised hands. The model goes to the sleep mode, when the system receives a command on the end of event and this mode works until starting of a new event. In the mode "Registration", three cameras are used for monitoring of each seated participant, so the algorithm can be divided into 3 phases. At the beginning of the first phase, the frame is captured by the camera Cam1, after which a cycle with the number of seats in the hall starts and a fragment from the frame corresponding to the concrete seat is extracted. Then, for each fragment colors distribution histogram is calculated. Decision on presence of a person in the chair is made depending on the value of correlation between histograms of the current fragment and of the original fragment, created for the given empty seat in advance. After processing all the seats in the room the frame is captured by the camera Cam4, in which the search of a face is performed. The zone of possible occurrence of a face increases by 60 pixels, if a face is not found during the processing of 30 frames and the second search is made. Then, the Cam3 is directed to each person, so that to make picture of his/her face with a large resolution. If a face is found, the control system receives the photo of the participant and the number of his/her chair. The model goes into the standby mode after processing of all the participants.
3 Experimental Results Series of experiments with different numbers of participants (1, 3, 5, 10) and four variations of illumination: (1) groups of light 1, 2, 3, 4, are turned on; (2) groups of light 1, 2, 4 are turned on; (3) groups of light 3, 4, are turned on; (4) group of light 4 is turned on, were made for testing the algorithm. The results were evaluated by two criteria: (1) the accuracy of the model, which is equal to the ratio of the total number of registered participants to the number of participants in the chair zone; (2) the average time of registration.
108
A.L. Ronzhin, M. Prischepa, and A. Karpov
The results of preliminary experiments show that the accuracy deteriorates and the average time of registration increases, when the number of participants increases and the level of illumination decreases. The model performance was higher with lighting options 1 and 3 that can be justified by the given location of groups of light; for example, when the projector for displaying presentations is used, the first two groups of light should be switched off for better visibility of slides. Two classes of problems affecting the accuracy of the algorithm of the registration have been revealed: (1) the system-independent errors such as personal hairstyles of participants, active movements, (2) technical limitations, such as the channel bandwidth transmitted by the video stream, as well as the technical characteristics of the PC, where the model is installed. Figure 3 shows an example of the model work in the mode "Registration", where (1), (2), (3) are frames taken from Cam1, Cam4, Cam3, respectively. Here the camera Cam1detects 6 participants in the zone of seats (one false object was detected as a participant). Seat numbers with participants were used for the analysis of the respective zones in the frame recorded by the camera Cam4. In this example, the frame analysis shows the presence of four faces in the areas assigned to these seats. The resulting list of seats controls the PTZ-camera Cam3, which is consistently directed in such a way, in order to photograph the face of each participant with a required quality. Several Frames are recorded and a face is searched in them, since the participants randomly change their positions. The frame is stored only after detection of an object with the dimensions that satisfy with the model of a face.
Fig. 3. Model work in the mode “Registration”
The quality of photos taken by the model in the mode "Registration" depends on the accuracy of the PTZ-camera Cam3 and can be estimated by two criteria: (1) precision of pointing the camera to the face, (2) the dimensions of the photos. The first test shows: how accurately were selected angles of rotation, and the second test is responsible for the correctness of calculation of the scaling factor. The deviation D between the center of the face and the center of the frame is calculated. The deviation is determined in percents to avoid the impact of changes in scale. The relative size R of face is calculated as the ratio of the diagonal of the face image to the diagonal of frame. In the case, if no face in the frame, the deviation is set to 100% and the relative size of the face is 0%. Relative and absolute squares of the face (S and A, respectively) were calculated in addition to the relative size of the face and the deviation. Table 2 shows the results of evaluation of photographing accuracy.
A Video Monitoring Model with a Distributed Camera System for the Smart Space
109
Table 2. Assessment of face detection accuracy of the model in the "Registration" mode R,% Min Max 27
53
D,%
S,%
A, Mpixel
Mean
Min
Max
Mean
Min
Max
Mean
Min
Max
Mean
38
0
23
8
7
29
14
0.03
0.12
0.06
These experiments show that the majority of errors in the camera pointing are connected with detection of fake face objects. As the result, the camera focuses not on a face, but on an object, which looks like a human being’s face. A minimum size of a face is taken into account for the face detection in order to overcome this limitation. Most photos from false targets have been identified after this modification of the algorithm. Another problem is motion of people during the photographing that leads to blurred photos. In most cases, recording a series of frames and subsequent filtration allow to get photos with the optimal quality. For camera status monitoring, all the information is sent to the control system of the intelligent room, in which the dialog window displays registered objects, including participants seated at the conference table and in the zone of seats, as well as moving objects. Photos of the registered participants are displayed in the dialog window in accordance with the occupied seats.
4 Conclusion Tracking of moving objects is difficult and important task, solution of which allows automating support of meetings, teleconferences and other events. In the developed model of video monitoring, the technologies for detecting and tracking the participants are implemented and investigated. The developed multi-functional system of Internet cameras is able to work in three modes: “Registration”, “Observation” and “Event support”. Currently, the mode is manually selected by the operator, as well as the analysis of events, factors, equipment states and other situational information, which determines the transition to a particular stage and time of the switching on the cameras, is made. All the modes of operation have been tested in the course of lectures and meetings in the smart room of SPIIRAS. A particular attention was paid to the mode “Registration”. The influence of lighting level, the number of participants and their positions on the accuracy and speed of face searching and the subsequent photographing has been analyzed. At the next stage of the development of the model, other work modes will be tested and a method for automatic selection of the modes of cameras will be offered, as well as mathematical and software tools will be analyzed, and a system for automatic counting of the votes based on recognition of gestures will be investigated. Acknowledgments. This work is supported by The Russian Program “Research and Research-Human Resources for Innovating Russia in 2009-2013” (contract П2360), RFBR (projects 08-08-00128-а, 08-07-90002-СТ_а) and Nokia.
110
A.L. Ronzhin, M. Prischepa, and A. Karpov
References 1. Erol, B., Li, Y.: An overview of technologies for e-meeting and e-lecture. In: IEEE International Conference on Multimedia and Expo., pp. 6–12 (2005) 2. Mukhopadhyay, S., Smith, B.: Passive capture and structuring of lectures. ACM Multimedia, 477–487 (1999) 3. Brotherton, J.A., Bhalodia, J.R., Abowd, G.D.: Automated capture, integration, and visualization of multiple media streams. IEEE Multimedia (1998) 4. Bianchi, M.: AutoAuditorium: A fully automatic, multicamera system to televise auditorium presentations. In: Joint DARPA/NIST Smart Spaces Tech. Workshop (1998) 5. Rui, Y., Gupta, A., Grudin, J., He, L.: Automating lecture capture and broadcast: Technology and videography. ACM Multimedia Systems Journal (2004) 6. Kameda, Y., Nishiguchi, S., Minoh, M.: CARMUL: Concurrent automatic recording for multimedia lecture. In: ICME (2003) 7. Liu, Q., Kimber, D., Foote, J., Wylcox, L., Boreczky, J.: FLYSPEC: A multi-user video camera system with hybrid human and automatic control. ACM Multimedia (2002) 8. Lee, D.S., Erol, B., Graham, J., Hull, J.J., Murata, N.: Portable meeting recorder. ACM Multimedia, 493–502 (2002) 9. Sun, X., Foote, J., Kimber, D., Manjunath, B.: Panoramic video capturing and compressed domain virtual camera control. ACM Multimedia, 229–238 (2001) 10. Friedland, G., Knipping, L., Rojas, R., Tapia, E.: Teaching with an intelligent electronic chalkboard. In: ACM Workshop on Effective Telepresence (2004) 11. Saund, E.: Image mosaicing and a diagrammatic user interface for an office whiteboard scanner. Technical Report, Xerox Palo Alto Research Center (1999) 12. Onishi, M., Izumi, M., Fukunaga, K.: Production of video image by computer controlled camera operation based on distribution of spatiotemporal mutual information. In: ICPR, pp. 102–105 (2000) 13. Wienecke, M., Fink, G., Sagerer, G.: Towards automatic video-based whiteboard reading. In: ICDAR (2003) 14. Maurizio, O., Piergiorgio, S., Alessio, B., Luca, C.: Speaker Localization in CHIL Lectures: Evaluation Criteria and Results. In: Renals, S., Bengio, S. (eds.) MLMI 2005. LNCS, vol. 3869, pp. 476–487. Springer, Heidelberg (2006) 15. Ronzhin, A.L., Budkov, V.Y.: Multimodal Interaction with Intelligent Meeting Room Facilities from Inside and Outside. In: Balandin, S., Moltchanov, D., Koucheryavy, Y. (eds.) ruSMART 2009. LNCS, vol. 5764, pp. 77–88. Springer, Heidelberg (2009)
Physical Approach in Smart Homes A Proposition and a Prototype Michele Dominici, Giulio Zecca, Fr´ed´eric Weis, and Michel Banˆ atre INRIA, Rennes-Bretagne Atlantique, Campus Universitaire de Beaulieu 35042 Rennes Cedex, France {Michele.Dominici,Giulio.Zecca,Frederic.Weis,Michel.Banatre}@inria.fr http://www.irisa.fr/
Abstract. The state-of-the-art solutions in the Smart Home domain rely on a logical approach, based on a heavy instrumentation of the environment and on complex techniques that analyze very large amounts of data, collected by sensing devices disseminated in the environment. These aspects negatively influence the delivery of transparent and effective user services. This paper proposes the adoption of a physical approach, in which the information and the computations are carried and executed directly by augmented physical entities, allowing small, meaningful exchanges of data that need less complicated processing. The result is a seamless delivery of useful, transparent and effective user services. The paper describes this approach in detail, analyzes some drawbacks of the state-of-the-art Smart Homes, shows how the physical approach can address those issues and illustrates a prototype that demonstrates the feasibility of the proposed solution. Keywords: Smart Homes; Physical approach; Ubiquitous Computing; Augmented objects; Home automation.
1
Introduction
The 20th century saw a dramatic revolution in domestic technology, a revolution that culminated at the close of the century with the emergence of the concept of Smart Home. A Smart Home is a residence equipped with computing and information technology devices conceived to collaborate in order to anticipate and respond to the needs of the occupants, working to promote their comfort, convenience, security and entertainment while preserving their natural interaction with the environment [1]. When talking about natural interaction, one of the most precious resources is user attention: during their activities, users should be assisted invisibly, reducing interruptions and explicit interactions with the system as much as possible.
The authors would like to thank EDF that has funded this research.
S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 111–122, 2010. c Springer-Verlag Berlin Heidelberg 2010
112
M. Dominici et al.
A possible way to achieve the goals of this scenario is the application of the human-computer interaction paradigm called Ubiquitous Computing. The aim of this paradigm is to seamlessly and invisibly integrate in the physical environment a multitude of digital devices that provide services to the users without asking for their attention [2]. To this end, Ubiquitous Computing applications are typically context-aware. It has already been highlighted in [3] that the notion of context is not unambiguous and depends on the application domain. Generally speaking, it can be defined as the execution environment of applications, represented as a collection of information regarding the digital, the physical and the user-related environments. When applications are aware of the context, they can easily provide much more useful services, because they “penetrate” their environment and recognize the situations. For example, if a PDA application can sense that a user is currently driving his car, it can automatically switch from visual to audio output [4]. The idea of using the Ubiquitous Computing paradigm in the Smart Home domain is not new. However, the state-of-the-art solutions only partially adhere to its principles. Often the adopted approach consists in a heavy deployment of sensor nodes, which continuously send a lot of data to a central elaboration unit, in charge of the difficult task of extrapolating meaningful information using complex techniques. This is what we call a logical approach. In this paper, we propose instead the adoption of a physical approach, in which the information is spread in the environment, carried by the entities themselves, and the elaboration is directly executed by these entities “inside” the physical world. This allows performing meaningful exchanges of data that will thereafter need a less complicate processing compared to the current solutions. The result is a Smart Home that can, in an easier and better way, integrate the context in its functioning and thus seamlessly deliver more useful and effective user services. Our contribution aims at implementing the physical approach in a domestic environment, showing a solution for improving both comfort and energy savings. The goal of our proposal is twofold. From the one side, it aims at showing the open issues and possibilities in this domain of the ubiquitous computing. From the other side, we present the implementation of a prototype, which intends to be a first step towards the distribution of the information in the environment following a physical approach. Our work is divided as follows. In Section 2 we describe the physical and the logical approaches to the Ubiquitous Computing, explaining how the proposed physical approach can address some open issues of the logical one. In Section 3 we introduce some examples of the logical approach in the Smart Home domain, showing its limits. In Section 4 we describe in detail how the physical approach can be advantageously used in the Smart Home domain, we talk about the rationale that brought us to such kind of solution and we present a prototype that we developed, together with the technologies adopted to implement it. Finally, in Section 5 we draw the conclusions of our study and then lay the foundations for our future research.
Physical Approach in Smart Homes
2
113
Logical vs. Physical Approach in Ubiquitous Computing
As we introduced in the previous Section, we can identify two main approaches to the Ubiquitous Computing: the logical and the physical one. In the logical approach, the participating entities are well identified and the elaboration of the collected data is centralized, decoupling the representation and the elaboration from the physical world. In the physical approach, the information is carried by the entities themselves, and the computation is directly executed by them “inside” the physical world. As an example of logical approach in the Smart Home domain, we can choose the monitoring of the heating conditions in a room. Consider a group of sensors that frequently send surveys about the temperature (see Fig. 1.a), and compare that solution to the corresponding physical one, made of an augmented heater that can publish sensitive information about its status (goal temperature, consumption, heating mode, etc.) to other devices in its proximity (see Fig. 1.b). The logical approach relies on a heavy deployment of sensors in the environment, which continuously collect a lot of information that is sent to a central elaboration unit to extrapolate meaningful data. Following a physical approach, information is spread in the environment, distributed closer to the real entities that compose the system, and the objects can carry different kinds and granularity of information [5]. With a physical approach, sensitive information is brought directly in the objects and devices composing the environment. This allows having meaningful exchanges of data that will thereafter need a less complicate computation compared to a complete feedback from the sensors in the environment. What makes this approach doable is the large number of common objects than can be modified to provide augmented information without changing the way a user employs it. The above-cited example of the heater shows how easier it is to exploit meaningful information provided by the entity itself, instead of having to parse raw data in order to extract a context representation (see Fig. 1.b).
3
Current Approach in the Smart Home Domain
In this section, we identify three main structural and functional components of a Smart Home and present some state-of-the-art prototypes from the point of view of these dimensions. The goal is to characterize the logical approach in the Smart Home scenario and show its limits. 3.1
Characterization of Smart Home Solutions
We can identify three main components of a Smart Home system: Architecture – To reach the goal of assisting and helping inhabitants, Smart Homes are instrumented with the necessary technological equipments. These can
114
M. Dominici et al.
Fig. 1. Logical (a) and physical (b) approach
include communication infrastructures, processing units, sensing and actuating devices (often equipped with computation and wireless communication capabilities), “augmented” appliances, etc. Sensing devices are used to capture context information from the environment and actuating devices are in charge of reflecting on the environment the decisions of the application logic or to provide notifications to the users. Sensing capabilities can include user detection, localization [6, 7] and identification [8], user movements and activity recognition [9–11], as well as monitoring of the physical condition of the house (temperature, light, humidity, etc.). Actuators include lights, heating, ventilation, and air conditioning systems, alarm triggering mechanisms, but also displays, voice synthesizers and other user output devices. Augmented (or smart ) devices are everyday appliances equipped with computational capabilities and communication interfaces. We will refer to these aspects as the architecture of prototypes of Smart Homes. The typical architecture of systems adopting the logical approach is characterized by a heavy instrumentation of the environment (in terms of number of deployed sensing devices), of the users (in terms of imposed constraints and equipments, provoked distractions and privacy invasion) and by the presence of a single, central processing unit. Context Acquisition – The systems have to collect data from the sensing devices in order to use them, in a later phase, to gain some knowledge about the context. The choices that can be made to support this task mostly concern the sensor query algorithms, including the raw sensor data preprocessing, filtering and in-network aggregation techniques [12]. We will refer to these aspects of the
Physical Approach in Smart Homes
115
systems as the context acquisition choices. Generally, systems adopting the logical approach continuously collect all the available raw sensor readings without preprocessing them, delegating their elaboration to the central processing unit. Context Representation and Exploitation - This functional block of Smart Home systems is in charge of promoting the acquired sensing device data to exploitable context information, in order to learn about behavior, choices and preferences of the users and possibly to predict the context changes. The complexity of this task directly depends on the choices adopted in the previous dimensions. Possible approaches consist in building and reasoning on model-based context representations [13, 14] or in directly analyzing raw sensor readings [9–11, 15]. Systems that adopt the logical approach generally analyze the collected raw sensor readings using machine learning techniques with some use of probability, like Bayesian rules, Markov chains, pattern recognition, adaptive control and so on. 3.2
Critical Analysis of State-of-the-Art Smart Homes
We now introduce some prototypes of Smart Homes that adopt the logical approach and analyze them from the point of view of the proposed characterization, highlighting the emerging drawbacks. Starting from a large literature, we selected three projects that, in our opinion, represent good examples that show the principles of the logical approach and its limits. They in fact share common aspects that are typical of the logical approach: i) they adopt an architecture that includes infrared motion detectors, used to localize inhabitants, and a single central unit; ii) to acquire context, the central unit of each prototype continuously collects raw sensor readings from the whole house; iii) no structured representation of the context is built and its exploitation is made applying machine learning and statistical techniques directly to the raw sensor readings. The PROSAFE project [16, 17] proposes a prototype system capable of monitoring elderly or disabled people and of triggering an alarm when a dangerous situation is detected. The approach is based on thresholds, used for calculating and analyzing user habits. The testing of the prototype showed a high frequency of false alarms, the most impacting cause being the difficulty to calculate trustworthy thresholds and to build a truthfully representative model of user behavior, which can be in practice very unpredictable. The ERGDOM project [18, 19] proposes a solution that manages the house heating system in order to create a comfortable environment for the inhabitants while reducing energy consumption and user intervention. The system predicts user occupation and calculates the comfort temperature analyzing the history of detections and user choices. Tests of the ERGDOM prototype showed that, due to technological limits of the sensors, the system fails to correctly detect user presence in many situations. The Adaptive House [20, 21] aims to automatically manage the lighting, heating and ventilation systems in an energy-efficient way. The core of the system is the capability of determining and predicting the user occupation of each area of the house. Tests performed on the prototype showed that, due to the complexity
116
M. Dominici et al.
of the sensor reading analysis, prediction errors and unmotivated actions of the system are frequent and cause user discomfort and frustration. Analyzing the results of the proposed prototypes, we understand that the logical approach, based on the analysis of continuously collected raw sensor readings, shows important drawbacks in terms of complexity of instrumentation, high cost, low reliability and usability. In the following section, we show how a physical approach can deal with these limitations.
4
Physical Approach in Smart Homes: Benefits and Feasibility
In this section, we propose to adopt the physical approach to the Smart Home domain in order to overcome the highlighted issues. To this end, we present the numerous benefits of this approach and show its feasibility illustrating a prototype. 4.1
Physical Approach in a Smart Home Scenario
In a classical approach, all the intelligence of the Smart Home is condensed in a single entity that takes care of every device in the house. The sensors distributed in the environment have to send back all the gathered data to the central entity, that takes all the burden of parsing the sensitive information and infer the policies to be implemented. Our vision is instead focused on a physical approach, where every device carries a part of the global intelligence: every single entity can analyze the part of information sensitive for its goal, derive useful data, and communicate meaningful information to the other devices. Considering a home scenario, we discover that many of the daily living appliances and objects can be augmented with computational, communication or sensing capabilities without much effort. This results in a new potential for application development and deployment, without an increase in the perceived “complexity” of the environment from the inhabitant point of view. Appliances that can be augmented with communication and computational capabilities in a typical home scenario include, among others, electric heaters, lights and white goods (ovens, refrigerators, washing machines, dishwashers, etc.). Even parts of the house like doors (see Sect. 4.2), floors [7, 8] or electrical systems [6] can be augmented with sensing capabilities. Leveraging these smart objects, we can move the complexity of the system from a central unit (where it is localized in the prototypes showed in Sect. 3.2) to several, distributed devices. The application logic is thus performed directly by the entities of the real world. This approach has the following important characteristics and advantages: 1. There is no more need for an exhaustive collection of information coming from sensors disseminated in the whole house, but a local processing can be performed by the smart appliances. This allows using lighter and less expensive communication infrastructures. Furthermore, this results in a decentralization of the system, which allows users to interact directly with the augmented appliances, reducing the need for a central management unit.
Physical Approach in Smart Homes
117
2. The fact that information is collected locally and comes directly from the physical objects enhances its value. A new importance can be given to every communication and new criteria can be adopted to filter the events: information acquires a new, physical meaning. Therefore, the computation, the application logic and the entire system “enter” inside the physical world, becoming a part of it. The processing of sensor readings and events becomes easier, more immediate and there is no more need of complex machine learning and statistical analysis techniques. 3. The environment and inhabitants are instrumented in a lighter way but, exploiting the augmented objects, the system is still able to retrieve the needed context information. The system is therefore characterized by an easier and less costly deployment and by a higher degree of acceptance by the inhabitants. The design choices involved in the adoption of the physical approach mostly refer to the instrumentation and depend on the desired user services and scenarios. The selection of the appliances to instrument and in which way and the choices of the equipments used to sense the environment and to recognize user activities have to consider the possible user scenarios and situations. The next sections present a prototype that we realized following the principles of the physical approach and discuss the issues encountered during its design and implementation. The prototype has been realized in collaboration with EDF (Electricit´e De France) group, the leading electricity producer in France. 4.2
Analysis of the Constraints
The realized prototype had to face the problem of the management of the heating system in a domestic environment; a few issues arose when we evaluated the requirements. First of all, thanks to some of our previous works in the ubiquitous computing domain [22–24], we could state that a normal user is not keen on being instrumented for accomplishing everyday tasks. Furthermore, having to make explicit actions or movements to trigger the response of the system would distract the user from acting as naturally as possible. Planning the interaction of the user with the environment had thus to consider these constraints to build a usable system where the transition from the real to the virtual world is quite seamless. Having in mind these criteria, we moved on searching a way to bring some of the intelligence closer to the physical world. The goal was obtaining a home automation system that could autonomously manage the main consumer of energy in the domestic environment: the heating system. Indeed, a clever management of the heaters can bring to significant energy saving just by optimizing the timers to switch them on and off. To obtain such a goal, the devices must interact one with the other, so we needed communication capabilities. In order to exploit the spatial configuration and relative positions of the devices, we relied on a light version of a tuple communication engine, SPREAD [3]. This allows any device to communicate ordered information to other entities within its communication
118
M. Dominici et al.
range (or bubble) and thus publish useful content in its vicinity. This is a first, basic step to bring capabilities directly into the objects in the environment: as we explained in the above section 4.1, there are a lot of commonly used objects that can be augmented to bring meaningful information that are directly accessible. Once the possibility of information exchange was in place, we needed the objects to provide useful data to describe the environment and the current context. To manage the heating system with a good granularity, we wanted to know the number of users in a room, in order to associate an absence timer that will gradually lower the heating as the room remains empty. A timer has been coupled with each heater, so that the temperature does not change rapidly, but gracefully. This choice has a double overall impact: on the one hand, it avoids continuously switching heaters on and off as a user goes in and out of a room several times, which brings to a energy waste; on the other hand, it increases the perceived comfort, since the room temperature will not instantly decrease just because the user leaves it for a few minutes. In order to fulfill the global goal, different technologies have been analyzed, but we were looking for simple and cost-effective solutions. For this reason we finally adopted a quite novel approach based, on the contrary, on a well-known technology: Infrared (IR) sensors. This approach allowed us to augment a simple and common object, the door, by hiding IR sensors in the frame, which is another step for accomplishing what we are proposing, i.e., exploiting objects in the environment to provide meaningful information. Once provided the infrastructure, we had to take care of the real core of the system, made by the heaters. A way to implement a physical approach to analyze the context was by providing heaters augmented with a little intelligence, needed both to compute the status and to communicate with other neighbors. We equipped each heater with the capability of knowing its location, the ongoing consumption, the temperature and some configuration parameters. Thus, differently from the classical Home Automation systems, part of the intelligence and decision mechanism of our system is executed by the distributed devices. In a “pure” physical approach, the augmented heaters would receive the user presence information directly from the IR sensors. Because of time and resource constraints, however, we decided to use an IR sensor technology that is not equipped with wireless communication interface or computation capabilities. Thus, we introduced an additional device that we call box, which controls the heaters and receives, interprets and publishes the signals from the infrared sensors. This choice doesn’t influence the validity of our prototype and should be seen as a limit that we will overtake in our future work. Nevertheless, the box can perform important tasks that will be kept in our future prototypes: first of all, it can publish in the environment useful information about, e.g., electricity price or meteorological conditions, that it can retrieve from the Internet, acting as a gateway; second, it is suited to our demonstration purposes because it allows having a coherent view of the number of users in each room of the habitat (see Fig. 2). We used it to provide a graphical interface to ease the visual comprehension of the system at runtime, where each room is shown together with
Physical Approach in Smart Homes
119
the number of occupants and the heating mode of the corresponding heater. In order to represent in a simple way the actual heating mode, we chose a color for each heating level (from colder to hotter: blue, green, orange and red). Therefore, at every instant, a user can visually figure out the temperature range just by looking at the interface (see Fig. 2). Furthermore, every heater has a LED in front of it to show the same color code, so as to ease the user in intuitively accessing heating information distributed in the environment.
Fig. 2. Overview of the prototype
4.3
Prototyping
Implementation. Having in mind the principles illustrated in the previous Sections, we decided to implement a prototype to show which capabilities of the physical approach can be put into practice. The configuration of the system was thus put in place as follows: in the environment we have three rooms, and to enter a room a user has to go through the door, which has two couples of infrared (IR) sensors to detect the movement. One couple is in fact adequate to detect someone crossing the IR flow, but not enough to understand the direction of the user. So, if for example the system detects that the IR couple A has been crossed
120
M. Dominici et al.
before the IR couple B, this means that a user is going in the direction from A to B (see Fig. 2). The heater receives then just a tiny communication about the state change, and applies the agreed policy for changing the heating mode, computing locally the necessary information. An additional feature allows the user to retrieve information on his Personal Digital Assistant (PDA) just by entering the communication bubble of a heater, leaving the possibility of changing the heating mode at will. The devices distributed in the environment are: 1. Infrared Sensors – the movement sensors, directly connected to the box, to detect when a user passes through a door, and in which direction. 2. Heaters – the actuators. In our configuration, each room has a single heater, but this is not a constraint, since the wireless communication capabilities allow a good fine-tuning of their behavior. 3. PDA – the portable device used for having general information, statistics, and to remotely modify the behavior of the heater. In the next future, a common Smartphone could play this role. 4. Box – the central entity that collects readings from IR sensors, sends control messages to heaters and logs all the activity. For the evolution of our solution this component could disappear or just act as a gateway to the Internet. It should be noticed that the real implementation followed some practical constraints of resources and time, but it has to be seen as the first step towards the realization of our vision. Hardware. The choice of the hardware has been made according to our needs, so the box is simulated by a common Laptop Computer, each heater is a mini-pc Norhtec Microclient Jr, and the infrared sensors are Cedes ELS-300 coupled with an acquisition module LabJack U12. In addition to that, an optional functionality is offered by an HP iPAQ 214 Enterprise PDA. The PDA can be used to obtain information of a single heater in proximity. This is possible by combining the power of the 802.11 Wi-Fi communication with the spatial hints provided by RFID tags coupled to each heater.
5
Conclusions and Open Issues
In this paper we proposed a novel way of using a physical approach to develop a Smart Home. As a first step, we analyzed the existing solutions, and we realized that most of them were based on a logical approach. This method relies on lots of sensors that send raw data to a central entity, which in turn takes care of digitally representing the environment. In this case the physical world is not directly coupled with its representation. The physical approach, instead, exploits devices that carry their own part of information, so that meaningful communication occurs among entities and local computation is performed whenever a relevant event is detected. Moreover, we exploit physical properties of the environment and physical proximity between entities to enrich communications and events with an additional value, which simplifies information processing.
Physical Approach in Smart Homes
121
We developed a first prototype using simple, cost-effective devices and augmented everyday objects distributed in the environment. This led to achieve natural, context-sensitive and implicit interaction with the inhabitants, which in our proposition are not instrumented with wearable sensors or tags and don’t have to face the privacy concerns of video cameras or microphones as in other solutions. Our work lays the foundations for further enhancements of the implementation, so as to strengthen the validity of our vision. The physical approach demonstrated to be not only feasible, but also suitable for the Home Automation domain, validating our research and motivating us to continue delving in the same direction. We will explore new techniques and technologies that allow exploiting the contextual information implicit in domestic interactions and events. We are particularly interested in modeling and recognizing inhabitant activities, which can allow realizing transparent and assistive user services.
References 1. Harper, R.: Inside the smart home. Springer, London (2003) 2. Weiser, M.: The computer for the 21st century. SIGMOBILE Mob. Comput. Commun. Rev. 3(3), 3–11 (1999) 3. Couderc, P., Banˆ atre, M.: SPREADing the web. In: Conti, M., Giordano, S., Gregori, E., Olariu, S. (eds.) PWC 2003. LNCS, vol. 2775, pp. 375–384. Springer, Heidelberg (2003) 4. Schiele, G., Handte, M., Becker, C.: Good manners for pervasive computing–an approach based on the ambient calculus. In: Proc. Fifth Annual IEEE International Conference on Pervasive Computing and Communications Workshops PerCom Workshops ’07, March 19-23, pp. 585–588 (2007) 5. Lee, H., Choi, J.S., Elmasri, R.: A classification and modeling of the quality of contextual information in smart spaces. In: PERCOM ’09: Proceedings of the 2009 IEEE International Conference on Pervasive Computing and Communications, pp. 1–5. IEEE Computer Society, Washington (2009) 6. Patel, S.N., Truong, K.N., Abowd, G.D.: PowerLine positioning: A practical subroom-level indoor location system for domestic use. In: Dourish, P., Friday, A. (eds.) UbiComp 2006. LNCS, vol. 4206, pp. 441–458. Springer, Heidelberg (2006) 7. Valtonen, M., Maentausta, J., Vanhala, J.: Tiletrack: Capacitive human tracking using floor tiles. In: Proc. IEEE International Conference on Pervasive Computing and Communications PerCom 2009, March 9-13, pp. 1–10 (2009) 8. Orr, R.J., Abowd, G.D.: The smart floor: a mechanism for natural user identification and tracking. In: CHI ’00: CHI ’00 extended abstracts on Human factors in computing systems, pp. 275–276. ACM, New York (2000) 9. Gu, T., Wu, Z., Tao, X., Pung, H.K., Lu, J.: epSICAR: An Emerging Patterns based approach to sequential, interleaved and Concurrent Activity Recognition. In: Proc. IEEE International Conference on Pervasive Computing and Communications PerCom 2009, March 9-13, pp. 1–9 (2009) 10. Gu, T., Wu, Z., Wang, L., Tao, X., Lu, J.: Mining emerging patterns for recognizing activities of multiple users in pervasive computing. In: 6th Annual International Mobile and Ubiquitous Systems: Networking & Services, MobiQuitous, MobiQuitous ’09, July 2009, pp. 1–10 (2009)
122
M. Dominici et al.
11. Zhang, Z.: Ubiquitous human motion capture using wearable micro-sensors. In: Proc. IEEE International Conference on Pervasive Computing and Communications PerCom 2009, March 9-13, pp. 1–2 (2009) 12. Yao, Y., Gehrke, J.: The cougar approach to in-network query processing in sensor networks. SIGMOD Rec. 31(3), 9–18 (2002) 13. Boytsov, A., Zaslavsky, A., Synnes, K.: Extending context spaces theory by predicting run-time context. In: Balandin, S., Moltchanov, D., Koucheryavy, Y. (eds.) NEW2AN ’09 and ruSMART ’09. LNCS, vol. 5764, pp. 8–21. Springer, Heidelberg (2009) 14. Weis, T., Becker, C., Br¨ andle, A.: Towards a programming paradigm for pervasive applications based on the ambient calculus. In: International Workshop on Combining Theory and Systems Building in Pervasive Computing, part of PERVASIVE, Citeseer (2006) 15. R¨ omer, K., Mattern, F.: Event-based systems for detecting real-world states with sensor networks: a critical analysis. In: Proceedings of the 2004 Intelligent Sensors, Sensor Networks and Information Processing Conference, December 2004, pp. 389– 395 (2004) 16. Campo, E., Chan, M.: Detecting abnormal behaviour by real-time monitoring of patients. In: Proc. of the AAAI-02 Workshop Automation as Caregiver, pp. 8–12 (2002) 17. Chan, M., Hariton, C., Ringeard, P., Campo, E.: Smart house automation system for the elderly and the disabled. In: IEEE International Conference on Systems, Man and Cybernetics, Intelligent Systems for the 21st Century, October 1995, vol. 2, pp. 1586–1589 (1995) ´ Chan, M., Est`eve, D.: L’apprentissage des modes de vie: une base 18. Campo, E., indispensable au d´eveloppement d’un habitat “intelligent”. Annals of Telecommunications 58(5), 850–865 (2003) 19. Bonhomme, S.: M´ethodologie et outils pour la conception d’un habitat intelligent. PhD thesis, Institut National Polytechnique de Toulouse (2008) 20. Mozer, M.C.: Lessons from an adaptive home. In: Cook, D.J., Das, S.K. (eds.) Smart Environments, pp. 271–294. John Wiley & Sons, Inc., Chichester (2004) 21. Mozer, M.: The neural network house: An environment that adapts to its inhabitants. In: Proceedings of the American Association for Artificial Intelligence Spring Symposium on Intelligent Environments, Citeseer, pp. 110–114 (1998) 22. Le Bourdon, X., Couderc, P., Banˆ atre, M.: Spontaneous hotspots: Sharing contextdependant resources using bluetooth. In: International Conference on Autonomic and Autonomous Systems (ICAS’06) (July 2006) 23. Couderc, P., Becus, M., Banˆ atre, M.: Ubi-board: A smart information diffusion system. In: Balandin, S., Moltchanov, D., Koucheryavy, Y. (eds.) NEW2AN 2008. LNCS, vol. 5174, pp. 318–329. Springer, Heidelberg (2008) 24. Couderc, P., Banˆ atre, M.: Ubi-check: a pervasive integrity checking system. In: Balandin, S., Moltchanov, D., Koucheryavy, Y. (eds.) ruSMART 2009. LNCS, vol. 5764, pp. 89–96. Springer, Heidelberg (2009)
SMEO: A Platform for Smart Classrooms with Enhanced Information Access and Operations Automation Akshey Jawa1, Sudip Datta2 , Sujeeth Nanda1 , Vishal Garg3 , Vasudeva Varma4 , Suresh Chande5 , and Murali Krishna Punaganti Venkata5 1
Centre for IT in Building Science, IIIT Hyderabad, Hyderabad, India {aksheyjawa,sujeeth}@research.iiit.ac.in 2 Search and Information Extraction Lab, IIIT Hyderabad, Hyderabad, India [email protected] 3 Centre for IT in Building Science, IIIT Hyderabad, Hyderabad, India [email protected] 4 Search and Information Extraction Lab, IIIT Hyderabad, Hyderabad, India [email protected] 5 Nokia Devices R&D Helsinki, Finland {suresh.chande,murali-krishna.punaganti}@nokia.com
Abstract. This paper explores the area of creating smart spaces using mobile Internet devices to develop intelligent classrooms. We propose a suite of applications that leverage the recent progress made in the domains of mobile computers and information access, resulting in a richer classroom experience where knowledge is dispensed with greater efficiency while also making it possible to access it efficiently from the Internet as well as peers. We attempt to achieve this by introducing novel means of classroom teaching and management and an intelligent information access system while harnessing the computational capabilities of mobile Internet devices. Though the current work is still in progress, this paper elaborates on our attempts in reducing the gap between technological progress in various domains and the existing pedagogy. Keywords: Smart Spaces, Intelligent Classrooms, Teaching Methodologies, Information Access.
1
Introduction
The last couple of years have seen advent of a number of novel and powerful mobile computers which have revolutionized the mobile market. A couple of years back mobile devices had low processing power, limited multimedia functionalities, poor web connectivity, and restricted memory and storage capacities, S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 123–134, 2010. c Springer-Verlag Berlin Heidelberg 2010
124
A. Jawa et al.
leaving a wide gap between the capabilities of a mobile device and that of a desktop PC. In recent times, handy mobile Internet devices with higher processing powers and availability of a large array of features has largely bridged this gap for a number of functionalities, opening new vistas for application of these capabilities. At the same time, rapid growth of Internet has resulted in an unprecedented increase of content on the web. Availability of large amounts of information on the web resulted in a pressing need for development of ‘Information Access’ systems that would assist users with an information need in identifying relevant information and producing it in a concise form. This led to research and development in various modes of Information Access such as Information Retrieval, Text Categorization, Text Summarization, among others. Over the years, these generic systems have matured considerably leading to opportunities for their application in new scenarios and systems. While there has been remarkable growth in technology, the classroom pedagogy has been largely oblivious of these technological gains, with the instructors still employing boards and presentations while the students take notes on paper notebooks. In the current teaching methodology, a students learning is constrained by the knowledge of the instructor while the opportunities for learning from peers remain largely untapped. Also, the vast pool of knowledge that exists on the web is not effectively consumed because it is not available on the go, coupled with issues of retrieving the needed information in a precise and swift manner. In this work we attempt to address the stated issues by introducing smart mobile Internet devices in a classroom environment where efficient classroom teaching and management, and intelligent information access can be provided using the 3Cs of the device namely, context, communication and computation. We next elaborate on the 3Cs of the device, claiming that their presence can be utilized to harness the technological growth in enhancing learning. The context of classroom environment helps us in knowing that only documents that are academic in nature should constitute the repository. Moreover, knowledge about the topic to be discussed in next class can be taken as a factor to determine the temporal importance and relevance of a document. In fact, the context of which user makes a query is used as a parameter to customize the choice and ordering of results. Communication capabilities of the device are used extensively for the project. To cite a few examples, it is used to connect devices over remote framebuffer protocol using VNC. Similarly, course content sharing both in real time as well as through archive happens over the network. From the computation perspective, the device’s touchscreen capability allows the instructor to annotate over the slides during the presentation, students to view slides, make notes and pass their queries vocally to the instructor, making it particularly useful when they are remotely connected. In future, with improved Optical Character Recognition (OCR) capabilities, annotations will be converted into text, thus making it searchable.
SMEO: A Platform for Smart Classrooms
125
Recent years have seen a number of attempts to technologize the classroom pedagogy. Some of these systems, like the closed source Blackboard1 system, have been commercially used in niche classroom management market, providing functionalities for course and content management system. Classroom presenter [1], [2] is an open source research oriented system largely focusing on distance learning. It also provides functionalities for lecture archiving, including voice and annotations. One drawback of this system is that it does not work on mobile devices. Ubiquitous [3], is a system that attempts to get over this drawback by using platform independent web-based front end while still depending on classroom presenter in the back end. DyKnow [4], another closed source commercial product, in addition to classroom teaching functionalities, also provides the instructor with ability to monitor student devices. Online conferencing systems like Dimdim2 are also occasionally used in classrooms providing functionalities like collaborative document viewing and annotations with voice streaming. In this paper we propose SMEO, a system that in addition to classroom teaching and management using mobile devices also provides functionalities for smart information access. While, the classroom teaching and management module provides tools to stream and archive lecture, and to manage attendance, classroom facilities, queries, and quizzes, the most unique contribution of this work is integration of smart information access techniques which to the best of our knowledge is the first such attempt. Focusing on contextual personalized search, summarization and collaborative learning, it aims at providing improved means of learning in a classroom environment. While the current work is still under progress, we present the inspiration for this work along with it current status, besides stating the goals of this work. The remainder of this paper is organized as follows: in Section 2 we discuss the architectural setup that we used. We follow this with a broad outline of the proposed platform in Section 3. Section 4 elaborates our ideas on improving classroom teaching and management using the mobile computer devices while Section 5 expands on how intelligent information access techniques could enhance learning. Finally, in Section 6 we state the conclusions drawn from this work along with suggestions for future improvements.
2
Architecture
SMEO requires the following infrastructure to be present in the classroom: 1. 2. 3. 4. 5. 6. 7. 1 2
A Linux server for handling the classroom teaching and management module A Linux server for running the information access module A projector High speed Wi-Fi Internet connection A mobile computer for the instructor A mobile computer for each student
http://www.blackboard.com http://www.dimdim.com
126
A. Jawa et al.
Fig. 1. Architectural Setup
As shown in Fig. 1 the classroom teaching and management Linux server is directly connected to the projector, so the slides which the instructor wants to project on to the projector are kept on this server. But the instructor views, controls and annotates the slides from the mobile computer which is connected to this server through VNC which shows the remote computer’s display on the local computer which is the mobile computer in this case. All the communication between the instructor and student mobile computers, whether it is student queries to the instructor or conducting of quiz by the instructor, happens through the classroom teaching and management server. The information access module, on the other hand is responsible for running all search related jobs, such as crawling, indexing, maintenance of profiles, among others. This should be accessible to the devices and connected to the Internet. Both the servers are internally connected because sharing of information among them, is required at various steps, such as extending the operations of search and summarization to the course content.
3
The Application
SMEO is a platform for creating smart spaces in a classroom environment providing a suite of applications on high performance mobile Internet devices that can broadly be categorized into - Classroom teaching and management: focusing on smarter delivery of lectures and Intelligent information access: focusing on smarter means to access information. We attempt to enhance classroom learning by providing relevant applications from both these class of applications through a simple interface to the instructor and the students. In the following sections we elaborate on the methodology and work-flow of each of these applications. Because of the large number of tools and limited space we show the screenshots of only few of these applications. The set of applications and the underlying functionalities to which an individual has access, varies according to their privileges, depending on whether the
SMEO: A Platform for Smart Classrooms
Fig. 2. Instructor’s Interface of Applications
127
Fig. 3. Manage Lecture Display
individual accessing the application is an instructor or a student. The start interface for the instructor is shown in Fig. 2. Student interface, though similar, is not shown because of paucity of space.
4
Classroom Teaching and Management
Once SMEO authenticates a user through a pre-registered username and password, the classroom teaching and management module provides interface for all interactions between the user and the application. There exist separate interfaces for instructors and students and corresponding to their roles and privileges a set of applications are displayed. While we discuss most applications provided by SMEO (from instructor’s perspective as well as student’s perspective) in this section, we devote a separate section for the information access functionalities because of the uniqueness of its applicability in a classroom environment. 4.1
Lecture Delivery/Attendance
This module allows the instructor to use the mobile computer to navigate the slides and annotate over them. The lecture is streamed to the students in real time and is also archived so that students can download it for offline use. Students can also make private annotations which can serve as their notes. Before the teacher starts the lecture, he needs to upload the presentation to the classroom management server. The system ensures that the instructor has filled meta-fields of title and keywords, which are required by the information access module, before uploading. Fig. 3 shows the screen for managing lectures. The instructor can either add or remove a lecture, publish (making it accessible to students) or unpublish it, or request retrieval and indexing of documents related to the current lecture. As soon as lecture is published, crawling and indexing of documents related to the topics to be covered, is started. Thus, an instructor is required to publish the lecture content, a couple of hours before the lecture to allow crawling and indexing of relevant documents, ahead of the lecture, enabling the availability of updated information access applications. When the teacher wants to take a lecture, he connects to the server using VNC (Virtual Network Computing) system. Next, controlling the server through VNC,
128
A. Jawa et al.
Fig. 4. Lecture streaming
instructor opens the presentation on the server with FreOffice (koffice port for Maemo). The original version of FreOffice did not have the capability to annotate but the extended version on which we are working, allows annotations on slides. The transmission of server’s display, annotations and audio over the network is explained in Fig. 4. Through VNC, when the instructor annotates the slides by scribbling over them using the stylus, each annotation stroke is stored as a separate file. The directory in which the annotation stroke files are created is kept in sync with a directory on student side using rsync. Also, instructor’s voice is streamed to student devices, besides being recorded for archival purposes. On the server side, an XML file is maintained, which stores the names of the annotation stroke files and the time stamps of the annotation stroke with the associated slide number. When the lecture finishes, this XML file and the annotation stroke files are pushed to the archive so that students or the instructor can download them for offline use. When working in offline mode, our extended FreOffice parses the XML containing the time stamps and the annotation stroke file names, and displays them over the slides in a time sequence. Students are also allowed to make their own annotations which can be shared among peers, thus allowing community sharing of notes. For reducing clutter on the displayed presentation, students can switch on/off one or more of the annotation layers. If a student only wants to view the instructor’s annotations with the slides, he can simply connect to the VNC server running on the server machine in ‘view only mode’. This can be done anytime during the course of a lecture. This allows a student to observe activities on the display of the server (which is also displayed on the projector screen) by running VNC server in ‘view-only’ mode. Note: The tool described in this Section can also be used by the instructor to correct assignments by making annotations or by recording vocal comments,
SMEO: A Platform for Smart Classrooms
129
which are sent to students once the correction is done. This makes the assignment evaluation more interactive and swift. 4.2
Intelligent Information Access
This is a web based suite of tools for efficiently accessing contextual information available on the web along with that generated in the course. It has tools for contextual personalized search, summarization and collaborative learning, enabling access to relevant information in a well presented format. While it provides an interface for quick search and accessing other ‘information access’ services to students, the instructor’s interface is supplemented with options to specify indexing process, corresponding ‘seed topics’, besides other functionalities. Services provided by the information access suite are further elaborated in Section 5. 4.3
Classroom Question Answering
This application provides an efficient question answering mechanism for the classroom. During the lecture, students can send requests to ask queries. These requests are queued on the server. The instructor can look at the set of queued queries and approve acceptance of one request at a time. When a request is approved, a message “Ask your question!” is flashed on the referred student’s device. When the question is asked, the voice is forwarded to all the students devices which are part of that course. This enables the discussion in the class to be audible, making it suitable for large classes to be handled well, as many times the queries as well as the responses are very useful learning experience for the listeners. Since we have the voice channel open between several devices, it makes the overall session audible to all the students connected to the lecture. 4.4
Design/Attempt Quiz
This module helps the instructor to create a password protected quiz and share it with the students. It also allows the student to open the quiz, answer it using a user friendly quiz form and view the grades once it is graded. An instructor can create a quiz using the ‘quiz creator’, either on laptop or a mobile computer. It creates an encrypted file containing the questions and the answers in an XML format, which is uploaded on the server and a start time for the quiz is announced. The encryption key is known only to the instructor. The instructor then uploads this file on to the server and announces a start time for the quiz. Students download the quiz file at their convenience and at the start time, the key is made public. This key needs to be fed to the quiz client for accessing the quiz. The quiz client decrypts the file using the key, and creates a user friendly form to allow the students to answer the quiz and submit the answers to the server. It allows the students to mark certain questions for review,
130
A. Jawa et al.
filter questions and search questions. Another thing to note is that this quiz XML follows Moodle quiz XML schema so it can also be used with Moodle [5]. At the finishing of the quiz duration the grades are calculated by the client, sent to the server for archiving and displayed to the student on his mobile computer. 4.5
Classroom Feedback
One unique feature of our project is the feedback system. It allows the instructor to have real-time feedback on how many students are understanding the presentation. This feedback is integrated with our extended FreOffice. It allows the student to rate any particular slide for its difficulty. This gives the instructor a real-time feedback if students are finding some topic difficult to comprehend. Students also have an option to give feedback for the whole lecture. The difficulty rating is kept anonymous, but for the lecture feedback student has a choice to reveal his identity. 4.6
Facility Control
This module enhances classroom comfort by controlling classroom facilities, like fans, lights, A/Cs, projectors, window films, and dimmable lights, automatically or by minimal manual intervention. We are working on a building automation gateway that connects with any building automation backends which can work with known building automation protocols such as LonTalk, or bacnet, and can connect to various facilities through relays, Wi-Fi, Zigbee [6] or IR. The gateway, which is an embedded server, stores the coordinates of available facilities and different mode settings for the classroom in an XML file which the instructor can download. Using the XML file, the instructor side application constructs a map of the classroom, showing the facilities and their on/off status. Clicking on any of the buttons in the map switches the appliance on or off and also changes the color of the button. The instructor can also select one of the various modes, “Presentation” mode, “All lights off” mode, etc, to switch on/off a number of appliances at a single click. The gateway also has an access control mechanism which does not allow anybody other than the instructor to control the facilities. For making the classroom energy efficient, the gateway dynamically controls the operating parameters based on the current needs and also uses feed forward and feedback controls. The devices help in getting a feedback in terms of number of people present and their comfort requirements which helps the system to optimize the energy consumption while still maintaining the comfort requirements. Methods such as demand based fresh air, enthalpy based control, etc are also used. 4.7
Remote Classroom Presence
Another interesting feature of the system is that the students or the instructors can attend or give a lecture from any corner of the world. They just need a
SMEO: A Platform for Smart Classrooms
131
working Internet connection on their mobile computers which can connect them to the classroom over a Virtual Private Network. This makes all the above mentioned tools accessible to them. This feature can also allow the subject matter experts to give lectures remotely or even take a whole course remotely. Similarly, students from different universities can be given access to attend the lectures remotely. 4.8
Classroom Attendance
This is a simple application that allows the instructor to know the number of students connected to the server, either remotely or locally.
5
Intelligent Information Access
The most unique aspect of this project is the incorporation of ‘Intelligent Information Access’ in a classroom environment and its integration with classroom management modules. By ‘Intelligent Information Access’ we imply the ability to retrieve, extract and access the information as needed in the context of a classroom. We provide the stated capability through a wide-range of information access techniques, primarily focused on contextual search, personalization and summarization technologies while also exploring the domain of collaborative learning. We next elaborate on each of these techniques along with a discussion on their adaptation to the classroom environment. 5.1
Corpus Building and Contextual Search
By contextual search we imply that the system is aware that it is catering to queries given in a classroom environment and hence has to produce results that are academic in nature. Moreover, the system also takes into consideration the courses currently being studied by a student while producing search results for a user query. In fact, it attempts to provide results that are contextually more relevant to the topics covered in recent classes. To achieve this we used a twopronged approach of selectively constructing a corpus of relevant documents and its deep-indexing which is complemented by personalization (explained in section 5.2) of results. This module also builds the corpus by indexing relevant documents retrieved from the web along with course content stored in classroom management folder, making it searchable. The first step to contextual search is corpus building. It is depicted in Fig. 5 and works in the following manner: as mentioned in Section 4.1, with each lecture presentation, the instructor must fill the meta-fields of title and keywords. These keywords serve as the ‘seed topics’ for retrieving other related topics. These topics are given to Wikipedia Miner [7], a toolkit for navigating and making use of the structure and content of Wikipedia, to retrieve semantically related topics. A combination of ‘seed’ and related topics, serving as queries, are submitted to generic search engines and top-hits are crawled. These documents are then
132
A. Jawa et al.
Fig. 5. Contextual Search: Flow Diagram
deeply indexed for classroom consumption. By deep-indexing we imply that the index contains much richer information than a conventional inverted index, such as named entities, other semantic entities and meta-information like the course and lecture associated with it. This index can now be searched and the search returns much more contextually relevant results. 5.2
Personalization
Personalization aims to sort search results based on the specific needs and interests of individuals, instead of producing same results to anyone giving an identical query. Personalization of search tools adds an extra step to the search process. Thus, the query is first matched against the corpus of documents to retrieve relevant results. This is followed by matching results with user profiles to sort the results according to user preferences. The profile of a user contains explicitly gathered information such as the content of courses done in the past and those that are currently being pursued along with implicitly gathered dynamic information such as search history consisting of queries and the corresponding hits. This information is used by the system to customize the search results so as to produce more relevant results for a user. We also attempt at extending personalization to a group level because individuals with similar profiles might benefit from the search history of each other. Thus we also attempt at maintaining group profiles and customizing results for users with similar profiles at a group level, as well. 5.3
Summarization
Document summarization is defined as an automatic procedure aimed at extraction of information from multiple text documents. It is the process of condensing text information to its most essential facts. Thus, a well composed and coherent summary is a solution for information overload. In the current work, while we do not make claims about improving the document summarization algorithms, we worked on employing existing summarization systems in a smart way. While we used [8] in this work, any other high precision generic multi document summarizer can be substituted as a replacement to our summarizer. Besides providing an interface for conventional multi-document summarization we also provided two novel manifestations of text summarizers. In the first of these, a user expresses information need in the form of a query for which the contextual search engine displays results. The user can seek a summary of any subset of these
SMEO: A Platform for Smart Classrooms
133
results by selecting check-boxes provided next to the results and clicking on the summarize button. In the second case a user expresses information need in the form of a set of questions, and the system produces a single text as the summarized version of a single or multiple documents containing the relevant information. That is, given a user’s information need the system identifies a set of relevant documents from the corpus and further creates, from the document set, a summary which answers the expressed information need. 5.4
Collaborative Learning
In this module we explored group learning aspects wherein knowledge acquired by one student could be utilized by the student community using the system. In the current work we introduced some simple yet effective features for collaborative learning. For example, we took explicit (in the form of link recommendation) and implicit (in the form of page hits for a given query) feedback from the search module to improve the results. We also collected statistics such as the most queried terms and the most viewed documents for each course, over different time periods, to make recommendations. We also had a feature for collaborative bookmarking and their tagging. Making this information searchable came handy while looking for links pertaining to topics identified by tags. We also attempted to make the annotations made by students, searchable. This would have helped students in getting better insights to the text mentioned in a slide utilizing the comprehension of their peers. Unfortunately, this was hampered by the limited OCR capabilities of the mobile computers that we used in our work. Future devices, with improved OCR capabilities should make it feasible to convert annotations into text which can easily be made searchable, thereby greatly enhancing the scope of collaborative learning. We believe that we only touched the surface of group learning and there is considerable scope of enhanced learning in this domain.
6
Conclusion and Future Work
We believe that the system which we have described is yet another step in the direction of digitizing the classrooms. Since the whole system is open source it can be extended to support the future needs of the classrooms. There still remain a number of issues and challenges to overcome in the attempt to digitize classrooms. While technical advances will happen and newer functionalities and features will be introduced, probably the greatest challenge is the introduction and acceptance of such means of teaching and learning in the classroom setup. But, we should remember that it was not too long ago that the community was apprehensive about the success of teaching through presentation slides but now their use is widespread. While presentation slides only made classroom teaching more structured and orderly, development of classrooms on our lines might influence and enhance learning more drastically. We believe that further experiments and evaluative studies are required in this direction to ascertain their influence.
134
A. Jawa et al.
In the current work we proposed a prototype for improving and enhancing classroom teaching and learning, there still remain some critical issues that need to be worked on, before the success of current work can be ensured. As the next step, we need to work on issues such as ensuring confidentiality and reliability of the system while identifying alternative means of working, in cases of device failures. We also need to employ the system in an actual classroom environment to determine the resource requirements of the system and to resolve issues of scalability, should it arise. As the mobile devices become more powerful and technologies like OCR help replace pen and paper with digital pen (stylus) and digit paper (touch screen) we hope that the classrooms of tomorrow, in addition to being user friendly, environmental friendly and energy efficient, will be fully digital, remotely accessible and will have efficient techniques for retrieving and presenting relevant information.
References 1. Anderson, R., Anderson, R., Simon, B., Wolfman, S.A., VanDeGrift, T., Yasuhara, K.: Experiences with a tablet pc based lecture presentation system in computer science courses. In: SIGCSE ’04: Proceedings of the 35th SIGCSE technical symposium on Computer science education, pp. 56–60. ACM, New York (2004) 2. Anderson, R.J., Anderson, R.E., Linnell, N., Pervaiz, M., Saif, U., Videon, F.: Collaborative technologies in international distance education. In: CSCWD, pp. 522– 527 (2009) 3. Wilkerson, M., Griswold, W.G., Simon, B.: Ubiquitous presenter: increasing student access and control in a digital lecturing environment. In: SIGCSE ’05: Proceedings of the 36th SIGCSE technical symposium on Computer science education, pp. 116– 120. ACM, New York (2005) 4. Dave, B.: Pushing forty(courses per semester):pen-computing and dyknow tools at depauw. In: The Impact of Tablet PCs and Pen-based Technology on Education, pp. 31–39. Purdue University Press (2006) 5. Dougiamas, M., Taylor, P.: Moodle: using learning communities to create an open source course management system. In: Proceedings of World Conference on Educational Multimedia, Hypermedia and Telecommunications, AACE 2003, vol. (1), pp. 171–178 (2003) 6. Fang, A., Xu, X., Yang, W., Zhang, L.: The Realization of Intelligent Home by ZigBee Wireless Network Technology. In: PACCS, pp. 81–84. IEEE Computer Society, Los Alamitos (2009) 7. Milne, D., Witten, I.: An open-source toolkit for mining wikipedia (2009) 8. Bysani, P., Bharat, V., Varma, V.: Modeling novelty and feature combination using support vector regression for update summarization. In: 7th International Conference on Natural Language Processing, NLP Association of India (2009)
Creative Approach to the Design and Prototyping of Experimental Smart Spaces, Case Studies from the Interactive Environments Minor Tomasz Jaskiewicz1, Walter A. Aprile2, and Aadjan van der Helm2 1
Faculty of Architecture, Delft University of Technology Julianalaan 134, 2628 BL, Delft, The Netherlands +31 15 2785954 [email protected] http://www.hyperbody.nl 2 Faculty of Industrial Design Engineering, Delft University of Technology Landbergstraat 15,2628 CE, Delft, The Netherlands +31 15 2784966 [email protected], [email protected] http://studiolab.io.tudelft.nl
Abstract. This paper attempts to challenge the established practice of design and engineering of smart environments in two ways. Its first premise is that smart spaces should be formed by systems that comprise not only home or office appliances, but also embedded building component agents. The second premise of this paper is a consequent call for an interdisciplinary approach to creation of smart spaces. Experimental undergraduate course is used to provide a set of case studies to illustrate benefits and threats of such approach, as well as the relevance of the integration of iterative prototyping already in the earliest phases of design processes. Keywords: Context-aware systems, interactive architecture, interaction design, swarm modularity, prototyping.
1 Introduction 1.1 Smart Buildings The sister notions of smart homes, smart buildings or more generally; smart spaces or smart environments have become synonymous to the concept of "a physical world that is richly and invisibly interwoven with sensors, actuators, displays, and computational elements, embedded seamlessly in the everyday objects of our lives, and connected through a continuous network"[1]. The common justification for much of the research in this domain, as well as for numerous commercial projects in the field of home automation is the technological facilitation of everyday chores of typical users of such environments. Consequently, a “smart home” can be defined as “a residence equipped with computing and information technologies which anticipates and responds to the needs of the occupants, working to promote their comfort, convenience, S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 135–147, 2010. © Springer-Verlag Berlin Heidelberg 2010
136
T. Jaskiewicz, W.A. Aprile, and A. van der Helm
security and entertainment through the management of technology within the home and connections to the world beyond”[2]. In larger and non-residential buildings, building energy efficiency, security, as well as in many cases also building flexibility become main drives, whereas user comfort maintains its relevance, but is not paramount. Overall, it is commonly acknowledged that “the essence of the smart building is comprised of advanced and integrated systems for building automation, life safety and telecommunications systems. (…) smart buildings are integrating these systems from a physical and logical perspective.” [3]. Definitions given to this point do not fully justify the use of the term “smart”. It is commonly acknowledged that users should be able to interact with building systems in “an intelligent and unobtrusive way” and in order to achieve this kind of interaction “these environments should be aware of the needs of people, customizing requirements and forecasting behaviours” [4]. Achieving this is the goal of the domain of ambient intelligence (AmI), which provides solutions for achieving the said “smartness”, often through application of multi-agent, adaptive computational models. There are many clichés that can be commonly encountered around the domain of automated/smart buildings. These can be illustrated by a quote from the popular publication “Smart Homes for Dummies”; “Your smart home can seep into all aspects of your life. It helps you to choose day-to-day tasks that can take up so much time, such as opening the draperies, dimming the lights, and flipping on the Weather Channel to see whether the kids have a snow day.” [5]. The fallacy in this example is the assumption that an activity of dimming the lights or changing channels on television is indeed a notable burden to home inhabitants. Typically, solutions attempting to automate such trivial tasks tend to be over-complex, relatively costly and can ultimately create more annoyance than actual benefit to the users. Clearly, the real drive behind many projects, including do-it-yourself smart homes hinted by “Smart Homes for Dummies” is their technological “coolness”, rather than real daily-life benefits for their users. This paper attempts to challenge the established practice of design and engineering of smart environments in two ways. Its first premise is that smart spaces should be formed by systems that comprise not only home or office appliances, but also embedded building component agents. It is common to neglect architectural building components as potential smart embedded agents of building systems (with the exception of few unique experimental projects such as “The Media House”[6]). Such approach is not only expected to deliver unprecedented range of sensing and actuating possibilities to enhance smart building systems. It also opens new doors between the domains of embedded systems and architectural design. The second premise of this paper is a consequent call for an interdisciplinary approach to creation of smart spaces. It is clear to us that in order to design and engineer successful smart environments it is necessary to integrate knowledge of different disciplines in order to address not only technological, but also cultural, social, structural and aesthetical aspects of such systems that are all inherently interdependent on each other. 1.2 Designing Buildings as Systems Considering buildings to be dynamically performing entities, engaging multiple users and external factors in interactive exchange of information means that architecture has
Creative Approach to the Design and Prototyping of Experimental Smart Spaces
137
to be treated as a system. Thinking of architecture as a system inevitably opens the issue of drawing border, that’s to say defining where the system ends. Contemporary design of complex entities brings in the concept of systems being made up of hierarchies and graphs of interacting smaller and bigger systems. Defining the edges and the reach of the system depends entirely on the designer’s purpose: there are no “natural” borders, since what could be outside of a system from an electrical engineer’s point of view may very well be a key constituent from the point of view of an economist. The systemic way of dealing with architecture and architectural design implies taking the approach of treating architectural constructs not as finite singularities, but as multidimensional multiplicities. These multiplicities or “systems of systems” are the field of inquiry of systems theory and cybernetics (the study of regulatory systems). These fields have much to give to architecture. Traditionally, architects are limited to providing only a very limited number of variants of their designs for each project, with no more than few scenarios of how it could change over time. Creating buildings as systems means delivering wide and flexible ranges of design solutions depending on multiple parameters such as environmental conditions or the development of socio-spatial ecologies. It also means accepting the transitory nature of a building, its site and its pattern of use: it is a way of increasing the flexibility and the future survivability of the chosen architectural solution. One may be tempted to create a building system from a constrained set of logical or physical elements and a mesh of formal relations between them. However, the intricacy of problems that architecture has to deal with makes that simplification unlikely to succeed, as only a very limited amount of design factors can be accounted for in this way. Therefore, architecture has to be seen as a complex system - a system composed of a very high number of interconnected parts. Such parts can be nested (sets of parts may constitute higher order parts). What is also important to note here is that such complex systems may exhibit properties (including behavior) not evident from the properties of its individual parts. Architectural systems, particularly when their users are brought into the picture, are prime candidates for phenomena of “emergence”1, in which very complex behavior materializes out of very simple rules. We can also expect “strange loops” in buildings, a phenomenon where an abstract look crosses levels of abstraction as in an Escher drawing. For instance, in a building the lowest level of architectural detail (a molding, a handle) can influence sharply emotions and development of the building users. Conversely, the moods, beliefs and behaviors of inhabitants can destroy or modify even the best built apartment block. 1.3 Problem There are no established methodologies for creative design of architectural structures as complex interactive systems, however many lessons can be learned from the domains of human-computer interaction and interaction design [7], [8], [9], [10], [11]. 1
For a history of the fortune of the concept, see Corning, P. A. (2002). “The re-emergence of emergence: A venerable concept in search of a theory”. Complexity, 7(6), 18-30.
138
T. Jaskiewicz, W.A. Aprile, and A. van der Helm
Numerous relevant projects exist that explore the overlap of art, design and technology by means of creation of complexly interactive spatial installations, such as Philip Beesley’s “Hylozoic Soil” or Usman Haque’s “Open Burble”, typically developed for art-technology festivals, exhibitions and other public events. However, in such projects emphasis is put on creativity and rarely on direct practical applicability of proposed solutions. These projects are being developed following a subjective artistic vision or concept. On the other hand, typical engineering projects involved in creation of “smart spaces” are limited to technological facilitation of generic user activities, without consideration to the larger context of cultural or social problems that may be of significant relevance to the ultimate success of these projects. What’s more, typically “smart spaces” augment existing building spaces with technology, rather than being inherently integrated into building structures. In this way they are not having an active, conscious role in creation of resulting architectural qualities. A new approach is needed to merge these two trends, promote and encourage a creative attitude to design and engineering of “smart spaces”. Such an approach requires integration of knowledge and skills from disparate fields, including but not limited to; human-computer interaction (HCI), interaction design (IxD), architectural design, industrial design, embedded systems and structural engineering. A novel strategy should facilitate out-of-the-box design of “smart spaces” with emphasis on both; inventive problem posing and their creative solving using state-of-the-art technology.
2 Case Study Project At the Delft University of Technology, a “minor” is a six-month project that occupies groups of students in the last semester of their BA. The university encourages the creation of minors that include students and staff from more than one faculty. In the particular case of the Interactive Environments minor, students came from Architecture, Industrial Design and Engineering, while the teaching staff was from Architecture (research group Hyperbody2) and Industrial Design (ID-StudioLab3). It has been coordinated, co-organized, and co-taught by the authors. The main purpose of the programme was to create an experimental framework where interdisciplinary researchers, practitioners and students could be brought together to work on the ideas of embedding interaction in architecture. Rather than working on these ideas on a purely theoretical level, the goal was to design and build in full-scale an operational, spatial interactive environment prototype. Without neglecting conceptual validity and development, we decided to insist on the concept of “prototyping an environment”, as a way to bring as soon as possible into the design process as much reality as possible, a very important practice when dealing with speculative forms and new and uncertain 2
Hyperbody is a research group at the Faculty of Architecture at the Delft University of Technology directed by prof. ir. Kas Oosterhuis. The goals set for the group’s research are to explore techniques and methods for designing and building of non-standard, virtual and interactive architectures. Cutting edge techniques and methods are taught and applied by researchers and students.” http://www.hyperbody.nl 3 “The ID StudioLab is a group of designers, researchers, and students in the department of Industrial Design […] The StudioLab aims at integrating multidisciplinary knowledge on user, technology, and the product usage context.” http://studiolab.io.tudelft.nl
Creative Approach to the Design and Prototyping of Experimental Smart Spaces
139
technologies [12]. This setup has become an ultimate test field for verifying the applicability of various design methods for design and creation of architectural interactive systems. 2.1 Minor Setup, Brief and Design Process The minor has been a semester long activity, divided in two parts. In the first two months students have been engaged in various skill- and knowledge building assignments, while teachers have been closely monitoring the students, as well as exchanging knowledge and design approaches. Throughout the whole semester, five Delft teachers4 have been continuously involved in the project; their backgrounds included architecture, industrial design, computer science, interaction design, new media and digital music. In addition to the regular faculty, during the course many other specialists were invited as lecturers, workshop teachers and consultants5. The brief given to the students was “the lounge space”: a building or a part of a building where people interact casually and informally, listen to music, eat, drink and relax. In the first part of the semester students were engaged in a series of short design and prototype assignments where they could build up their skills and experiment on simple interactive objects for specific functional or experiential purposes. Gradually, the scale of their design was shifted from individual objects to networks of objects interacting with each other and with their users. In parallel to these assignments, students were also conceptually designing an interactive lounge environment, based on the ideas explored in their quick prototypes. The rationale behind this course organization was, on one hand to allow informed and playful exploration of a variety of concepts, while achieving situated learning of technological and technical abilities in a designerly context (i.e. not technology driven). The first half of the semester ended with the delivery by each of the three student groups of a general design for an interactive lounge installation. During the second half of the semester, the three groups were helped by the teaching staff to realize their design visions as small pavilion structures. As we have mentioned, students arrived to the minor with very diverse backgrounds. Among 21 students, one third were students of architecture, one third of industrial design and engineering and the remaining ones were studying at faculties including aerospace engineering, computer science, applied physics and mechanical engineering. This mix of experiences allowed (or even mandated) a process of creative rethinking of the design approach. One of the early issues was the lack of compatibility between very directed, waterfall type engineering and scientific development processes and more iterative, loop-oriented approaches typical of designers and 4
Main studio teachers were: Walter Aprile, Aadjan van der Helm, MarkDavid Hosale, Tomasz Jaskiewicz, Dieter Vandoren. 5 Responsible professors and guest critics of the course are: prof. Kas Oosterhuis and prof. David Keyson. Guest consultants and workshop teachers include: Ruairi Glynn(interactivearchitecture.org), Jerome Decock (lab[au]), Denis Oudendijk(Refunc), Jan Korbes(Refunc), Dan Overholt, Daan Roosegaarde(Studio Roosegaarde), Marco Verde, Kees Baardolf, Rob Luxen, guest lecturers include: prof. Tetsuo Tomiyama, Alisa Andrasek, Axel Killian, Philippe Rahm, Christian Derickx.
140
T. Jaskiewicz, W.A. Aprile, and A. van der Helm
architects. Just like the groups had to work out their social structure and process, a common language of interactive architecture had to emerge from the process, to make collaboration possible. It was empirically proven very early in the process that the typical architectural design approach is not suitable for an interactive design assignment. Even though the function of the space that students had to create has been defined as a “lounge”, the interaction requirements made it impossible to design fixed pavilion forms that would allow for maintaining a continuous reciprocal interaction between users and the pavilion. As an alternative process, the students have proceeded by defining lists of user activities that their pavilions should accommodate. Following that, lists of specific spatial affordances were created. To help with achieving design coherence, each group defined a concept that would in an abstract way guide the experience that each installation was trying to provide for their users. These mottos, later on in the process put aside, were “parallel universe”, “artificial nature” and “immersive ecology”.
Fig. 1. Students engaged in building a “distributed ecology” of interacting robotic agents during workshop with Ruairi Glynn
A big change could be clearly observed throughout the skill-building workshops in the way students were thinking and talking about their projects. In the beginning of the course their descriptions and ideas about their design’s behaviour were rather naively approaching stated problems, even the most technologically demanding ones were not going beyond the reactive manner of operation that could be entirely described using a series of if... then... statements. Gradually the students have gotten to understand the systemic nature of their designs. An important trigger for this understanding was a three day workshop with Ruairi Glynn6, where the students in sub-groups had to design small, light-sensitive robotic “creatures” and build a “performative ecology” out of all robots combined together (see Figure 1). The horizons of the students became broader, and their thoughts more complex, after a group visit to the Ars Electronica exhibition. This provided a series of very important common references of classic interactive pieces and a useful snapshot of the state of the art. While of course a common background can be acquired also from a textbook, a visit to an event could prove capable of forming much stronger memories – not 6
Ruairi Glynn is a lecturer at the Bartlett School of Architecture and Central Saint Martin college in London, he runs the online blog interactivearchitecture.org.
Creative Approach to the Design and Prototyping of Experimental Smart Spaces
141
to mention the fact that interactive pieces, obviously, are made to be interacted with, not so much read about. Gradually the descriptions of projects became more oriented towards explaining the experiences of users in their space and attempting to define those experiences through a multitude of localized interactions between users and the designed installation components, among the components and, what’s important, also among the users. In this way all designs have drifted towards becoming ecologies in which both users and installation components are actors. The step in which student projects have shifted from top-down and centralized ideas of interaction to the understanding of their projects as complex, adaptive ecologies has been in all three cases a noticeable breakthrough. The profoundness of the considered interactions and resulting formal complexity of projects has quickly increased and the projects presented at the midterm review were very satisfactory. 2.2 Case 1 - Odyssey The project of the group of the students7 who named themselves the “Odyssey” team, envisioned a setup where the space of the installation has a clearly differentiated outside and inside character, creating a surreal feeling of an immersive, continuous space on the inside and a crude, mechanical form on the outside of the pavilion (see Figure 2). The behaviour of the pavilion is organized by the concept of virtual waves emitted by people entering the space of the pavilion. These waves would be received by the kinetically actuated structure of the installation, the distributed ambient lighting elements and 40 small actuators embedded in the floor of the space. The centrally placed, large sitting cushion connected to the ceiling of the pavilion would act as a heart of the system, collecting signals from all dynamic installation components and based and translating their
Fig. 2. Design, building and user testing of the “Odyssey” group’s prototype 7
Students in the Odyssey group are: Govert Flint, Lieke Kraan, Bob Groeneveld, Jesse Timmermans, Merijn Pen, Thomas van Oekelen, Melisa Garza Vales.
142
T. Jaskiewicz, W.A. Aprile, and A. van der Helm
behaviour into continuously generated sound, while occasionally creating an energy explosion and sending out its own wave. It became empirically verified upon the completion of the project that as envisioned, this behaviour leads to the perception of the space as intelligent and that through repeated interactions users can learn how to meaningfully engage in a dialogue with the Odyssey installation. 2.3 Case 2 – GEN The project of the second group8, called “GEN”, includes a static canopy structure, kinetically actuated vertical spatial separators that resemble leaves and a complex pneumatic floor “landscape” (see Figure 3). The group intended to create an installation that would display a non-repetitive, yet cyclical behaviour in which the space would constantly try to create conditions that it perceives as most favourable by its occupants. By tracking the faces of people inside and outside the installation area, the installation maintains a continuous record of occupant activity. Components of the installations that are in use (e.g. being sat on) are seen as successful and gain virtual “kudos”. In the process they can trade kudos among each other to overrule the behaviour of their neighbours. The kudo economy is a way to optimize the system in a computationally light and fairly robust way. The installation also included a small amount of random perturbation factors, to make sure that new behavioural patterns can spontaneously evolve from the process.
Fig. 3. Design, building and the final prototype of the “GEN” group
2.4 Case 3 – sCAPE The third project, for which the students9 chose the name “sCAPE” aims at creating a pavilion based on a fully distributed system. “LEDwork” computation and display nodes can be freely connected to each other to create a three dimensional spatial network that is supported by and integrated with the pavilion (see Figure 4). Each element has its own simple behaviour and can locally exchange information with other elements it is physically connected to. The basic elements are light-emitting ones, free to be moved around. All other parts of the installations are mutations of those. The 8
Students in the GEN group are: Altynay Imanbekova, Joris Hoogeboom, Ben van Wijk, Hanneke Hoogewerf, Tino de Bruijn, Patrick Pijnappel, Alexander de Mulder. 9 Students in the sCAPE group are: Iris van Loon, Marieke Dijksma, Teun Verkerk, Fons van der Berg, Tom Goijer, Cees-Willem Hofstede.
Creative Approach to the Design and Prototyping of Experimental Smart Spaces
143
Fig. 4. Design and building of the “sCAPE” group’s prototype
structure of the pavilion is built out of struts and nodes, where each node is regarded as a LEDwork node fixed in place that can be connected to all mobile nodes. Other fixed nodes include additional lighting elements, sound emitting components and more. The intention is to create a dynamic ecosystem in which the visitor to the installation can submerge himself completely. The family mutation resemblance among the components of the system has been observed to stimulate the right behaviours in the users, such as rearranging the LEDwork nodes or attaching them to the pavilion walls for recharging (see Figure 5).
Fig. 5. Autonomous node prototypes of the “sCAPE” group’s design
The second part of the semester has been entirely devoted to building the installations in full-scale. It has been explicitly stated that projects upon which the designs were based were not to be seen as final blueprints, but to the contrary, they were supposed to be modified and evolve throughout the entire building and testing process.
144
T. Jaskiewicz, W.A. Aprile, and A. van der Helm
The construction of interactive environments cannot be, currently, detached from the process of prototyping. The technology of interaction is developed and integrated at construction time: the traditional split between architecture, engineering and design cannot hold at this level of innovation. If the first quarter could be described as an iterative skill building period, the second quarter has been devoted to the iterative building of complete design prototypes. Students had to fit their installations in a tight budget, thus they had to experiment with various materials, many of which were recycled waste or leftovers from industrial production. Their designs had to be constantly adjusted, based on the structural and aesthetic properties of the used materials. For this, invaluable support was provided by quest teachers Denis Oudendijk and Jan Korbes from the Refunc (http://www.refunc.nl) group. The interactions have been tested and adjusted on the fly, based on ongoing experiments with embedding sensors, actuators and effectors into the built structures. To facilitate the prototyping process, the groups were further subdivided and each subgroup of two or three students that were made responsible for a different part of the installation. In this way, installation elements were prototyped individually and gradually integrated into a bigger system. The process of building the installations was thus interactive in itself. By interacting with the materials and component prototypes, students were adapting their designs and adjusting what was being built. In this way many creative solutions were found for difficult problems. All installations were finished in time, and are already partly operational while still being built.
3 Evaluation 3.1 Multi-agent Design Systems What can be observed in the developed installations is the logical application of distributed systems to interactive architectural applications. Each interactive installation component may be seen as a node in a complex network of interactions with other components and users. Such strategy allows developing installations iteratively and permits simultaneous working on their different parts. What’s more, distributed systems yield many advantages over centralised ones when it comes to resulting behaviours. An interactive installation without a centralized controlling core naturally becomes developed as an adaptive system, which in turn results in its nondeterministic operation. Applying such models to architecture means that buildings can be seen as distributed networks of dynamically interrelated building components. Such networks in their principles are easily extensible and adaptable. However, their most important feature is capability of exhibiting what is referred to as “swarm intelligence”. It is a holistic concept of intelligent behaviour that can emerge from systems which consist of a high number of simple interconnected agents. Those agents in case of buildings are active building components communicating with each other, with users of building spaces and with their environment. Complex adaptive system models applied to architectural design can lead to formulating a new methodology for creation of architectural processes. Such a new approach could lead to combining multiple current, yet still separate trends that are
Creative Approach to the Design and Prototyping of Experimental Smart Spaces
145
currently emerging on the border of architecture and information technology and to creating architecture that is inherently dynamic and adaptive in the most efficient manner. 3.2 Computer Aided Interactive Architectural Design It has been observed among the students of the Interactive Environments Minor that despite general proficiency with the use of computer aided design (CAD) software; the use of this software did not have any explicit effect on the course of student design processes. It became clear that students would greatly benefit from an integrated software toolkit that would have allowed them to create a virtual model of their installations and test the designed interactions and behaviours, as well as structural performance of designed installations virtually on that model before its physical realisation. Looking at commonly used digital design tools in architecture, even though achieving interactive quality of architecture in itself is not a direct goal for most practicing architects, contemporary digital design tools to some extent already allow creation of building designs as dynamic systems. An example here can be a parametric building design, storing all design data in shared building information model (for example in Gehry Technologies Digital Project CAAD environment). As a result of employment of those new technological means, we can already witness a radical shift in architectural design methodology. Linear and centrally steered “top-down” designing becomes gradually replaced or supplemented by creation of parametric, procedural and relational digital design models. Consequently, those models become final design products themselves, making traditional, fixed plan drawings less important or even completely redundant. We can imagine that in the next future, mass production will be replaced by the mass customization of building elements, made possible with datadriven manufacturing technologies and building environment. In many cases, it will not make a difference whether a building consists of repetitive modular components, or if its every single component is a different custom part. Ultimately after being built buildings are often also equipped with sophisticated control systems that dynamically govern HVAC installations, lighting, security, accessibility, media systems, and many other aspects of building’s functionality. This shows that although they are hardly interactive, contemporary buildings are already commonly designed, constructed and used as dynamic systems. However the structure of these systems tends to repress any degree of indeterminacy, thus interactive qualities cannot emerge.
Fig. 6. Swarm Toolkit design platform prototype
146
T. Jaskiewicz, W.A. Aprile, and A. van der Helm
The research work of one of us (Jaskiewicz) required the development of a design software application prototype under the working name of SwarmToolkit. The prototype includes a graphical interface and an open framework allowing virtual creation of autonomously operating elements and execution of their behaviour in real-time10. This solution allowing for integrated design and behavioural operation of a virtual model would seamlessly complement the workflow in projects similar to ones presented, allowing for a radical increase of component and installation design. Direct link to component fabrication can be established. What’s more, the virtual model can operate alongside the physical prototype in a real-time feedback loop, making it possible to fine tune interactions and instantly simulate proposed modifications. Controllers embedded in the physical installation may be early on in the prototyping process controlled by this software and ultimately they can be detached and operate autonomously, communicating only locally with each other11. 3.3 Future Prospects Interactive architecture as a domain is still in its infancy. Only continuous exploration of new methods, tools and techniques can ultimately lead to creation of full featured interactive buildings. Developing interactive installations in an iterative adaptive manner has proven successful and approaching interactive architecture as an adaptive multi-agent system appears as a promising strategy. In his manifesto Bruce Mau has written: "Make your own tools. Hybridize your tools in order to build unique things. Even simple tools that are your own can yield entirely new avenues of exploration. Remember, tools amplify our capacities, so even a small tool can make a big difference.” [13]. It becomes clear that architecture, as never before, is tied to digital tools that we develop to open up new possibilities for architectural design. Nevertheless, it’s not the digital tools that are the true essence of the new kind of “digital architecture”. It is architecture’s ability to read, process and communicate information that’s about to revolutionise the architectural profession.
References 1. Cook, D., Das, S.: Smart Environments: Technology, Protocols and Applications. WileyInterscience, Hoboken (2004) 2. Aldrich, F.K.: Smart Homes: Past, Present and Future. Inside the Smart Home, For Dummies (2003) 3. Sinopoli, J.: Smart Buildings (2006) 4. Ramos, C.: Ambient Intelligence – A State of the Art from Artificial Intelligence Perspective. In: Neves, J., Santos, M.F., Machado, J.M. (eds.) EPIA 2007. LNCS (LNAI), vol. 4874, pp. 285–295. Springer, Heidelberg (2007) 10
By real-time is meant an iterative process operating at more than 15 iterations per second, therefore perceived as continuous operation. 11 Arduino microcontrollers are used in the current setup. They can operate as devices slaved to a PC through the Firmata protocol, or they can be directly programmed to operate autonomously. Scripts written to control parts of the virtual model in Swarm Toolkit can be translated to Arduino code and seamlessly ported to the fully autonomous physical node. The solution is not microcontroller specific, other microcontrollers can be in further versions integrated in the system.
Creative Approach to the Design and Prototyping of Experimental Smart Spaces
147
5. Briere, D., Hurley, P.: Smart Homes For Dummies (2007) 6. Guallart, V.: Media House Project: The House Is The Computer The Structure The Network. Actar (2005) 7. Laurel, B.: The Art of Human-Computer Interface Design. Addison-Wesley Professional, Reading (1990) 8. Lidwell, W., Holden, K., Butler, J.: Universal Principles of Design. Rockport Publishers (2003) 9. Sharp, D.H., Rogers, P.Y., Preece, D.J.: Interaction Design: Beyond Human-Computer Interaction. Wiley, Chichester (2007) 10. Buxton, B.: Sketching User Experiences: Getting the Design Right and the Right Design. Morgan Kaufmann, San Francisco (2007) 11. Moggridge, B.: Designing Interactions. The MIT Press, Cambridge (2007) 12. Kelley, T.: Prototyping is the shorthand of innovation 12, 35–42 (2001) 13. Mau, B.: An Incomplete Manifesto for Growth (1998)
Event Recognition via Energy Efficient Voting for Wireless Sensor Networks Mohamed Baqer Department of Computer Engineering, College of Information Technology, University of Bahrain, Kingdom of Bahrain [email protected]
Abstract. Physical world event monitoring and detection are two of the most dominating applications of wireless sensor networks. Combining sensor networks with artificial intelligence and pattern recognition is envisaged to deliver smart application to end-users. In this paper, a new distributed energy efficient pattern recognition approach is proposed to first depict events of interest as patterns and then detect the occurrence of events of interest, namely: the Voting with Random Node Selection (VRNS) approach. Sensor nodes may leverage their processing and storage capabilities by collectively handling sensory data to translate local sensory information of individual sensor nodes into meaningful results that depict the global status of the environment. In contrast to classical pattern recognition approaches, the VRNS approach operates within the constrained sensor network’s resources and infrastructures. Instead of utilising the entire sensor network, events of interest are recognised by employing an arbitrary sample of sensor nodes. The results show that the VRNS approach is capable of prolonging the longevity of the network’s lifetime, recognising event patterns effectively, and avoiding over-utilisation hotspots in the network. Keywords: Wireless sensor networks, energy conservation, lifetime, pattern recognition, voting, distributed detection.
1
Introduction
Wireless sensor network research is a discipline that prospered with the increase in users that need to understand their physical world and be alerted with changes in their surroundings. Sensor nodes are envisaged to bridge the physical world with the human-driven context of the Internet [1], [2], [3]. Battery operated sensor nodes are being deployed in the environment to ubiquitously convey sensory information [4]. Sensory applications are event-driven applications used for inferring the physical world’s status from sensory data [5], [6]. Sensor networks are envisaged to facilitate smart living by seamlessly providing a constant flow of information about the environment to end-users and machines to improve our lifestyle. Information from sensor networks will allow us to depict our physical S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 148–159, 2010. c Springer-Verlag Berlin Heidelberg 2010
Event Recognition via Energy Efficient Voting for Wireless Sensor Networks
149
world surroundings in highly sophisticated relationships and to optimise these relationships to attain efficient and effective performance. The processing and storage capabilities of sensor nodes facilitate the implementation of complex sensory applications and allow sensory data to be processed within the network close to their sources. Generally, replacing or recharging the sensor node’s battery is infeasible; hence the services that the sensor node provides are restricted by the depletion of the sensor node’s battery. A typical Mica2 sensor node has about 4Kbytes of RAM and 128Kbytes of flash memory and operates on two AA batteries [7]. Thereby, sensory applications need to be designed whilst considering the resource constraints of the sensor nodes. Two primary energy conservation models are employed in sensor networks, namely: information processing and sleep mode strategies. Communication is the highest energy consumer in sensor networks [8]. The processing capability of sensor nodes is utilised to process sensory data whilst being routed to its destination, and consequently reduce the amount of energy consumed in communication [9], [10]. Moreover, information processing approaches are utilised to produce global results beyond the capability of any individual sensor node. Innetwork processing and collaborative signal and information processing (CSIP) approaches are commonly used to establish node collaboration for processing data whilst en-route to the base-station [9], [10]. The design of sensor node hardware incorporates various energy modes: active, idle, and sleep modes [11], [7]. It is generally desirable to switch off sensor nodes by setting them to the sleep mode since non-negligible amounts of energy are consumed in the active and idle modes [12], [13]. In sensor networks a sensory event pattern could be a weather map, the behaviour data of sea birds, or stress levels in a bridge [14], [15]. Pattern recognition approaches may be employed for automatic extraction and discovery of valuable information from the constant flow of sensory data [16]. Furthermore, pattern recognition techniques can detect interesting phenomena in the environment by using spatio-temporal patterns that depict the global status of events of interest. Using sensory patterns instead of handling individual sensory data points provides a practical method for capturing multidimensional and complex events of the physical environment [17], [18]. Classical pattern recognition approaches, however, are designed for typical computers with ample processing, storage, and power supply, and are not designed for the ad hoc and dynamic nature of the sensory infrastructure. Therefore, it is necessary to examine the pattern recognition approaches beyond their classical algorithm efficiency to incorporate their demand on the resources of the sensory infrastructure.
2
Related Work
Pattern recognition and neural network techniques may detect phenomena of interest in the environment by using spatio-temporal patterns that encapsulate the features and attributes of events of interest. Pattern recognition approaches for sensor networks operate to detect large non-local events. Sensor nodes within
150
M. Baqer
a network collaborate amongst each other to translate their local sensory data into global patterns. Two neural networks for data processing using sensor networks were proposed by Kulakov et al. [19]. The authors argue that classical neural network algorithms are well suited for sensor networks for data dimensionality reduction. Adaptive Resonance Theory (ART) and FuzzyART are implemented using sensor nodes for digital signal and analogue signal processing, respectively. A complete ART neural network is implemented on a single sensor node to cluster data from various sensor modules. Input sensory data are categorised based on their similarities to the stored reference patterns. Moreover, the authors then propose topologies that support different distributed data fusion schemes for in-network data processing. In essence, this approach functions as an information fusion approach commonly used in sensor networks. Although the authors discuss neural networks as a distributed approach, the implementation of the ART neural network is limited to individual nodes. The approach uses three topologies to improve data reduction, however, it does not discuss the time overhead required to cluster the data using the various topologies, and the correctness of the sensory data clusters. The user may not be able to correctly capture the status of the physical environment due to information loss resulting from the dimensionality reduction of sensory data. Finally, the approach consumes additional processing power and time by processing all of the sensory data despite their correlation or redundancy. Oldewurtel et al. [20] employed Hopfield Network and self organising maps (SOM) to process sensory data within the network. First, Hopfield Network (HN) was implemented on a single node to make the most of the parallelism and low computation costs of neural networks to replace resource demanding traditional signal processing algorithms. The node uses HN to deal with erroneous data and loss of data to avoid wasting energy in retransmissions. Information is processed within the network by means of node collaboration using SOM and in-network processing. SOM is implemented in a distributed manner over the network to reduce the dimensionality of the sensory data and thus reduce the energy consumed for transmissions. Finally, an in-network data processing approach is proposed as an alternative to the SOM approach. The authors utilised in-network approaches for data reduction and filtering and employed several approaches to process sensory data. Despite the analogy presented in the aforementioned papers between sensor networks and neural networks, the implementation of neural networks on sensor nodes is not trivial. The authors have implemented off-the-shelf neural network algorithms on sensor networks without incorporating any energy conservation mechanisms. For instance, SOM and ART algorithms require a fully-connected network which may not be feasible in sensor networks and demands a significant amount of network communication. Consequently, these algorithms consume non-negligible amounts of energy and may reduce the lifetime of the sensor network drastically.
Event Recognition via Energy Efficient Voting for Wireless Sensor Networks
151
Previously we have proposed the Voting Graph Neuron, VGN, approach as an energy efficient distributed event recognition model for wireless sensor networks in [21]. Initial research with respect to designing pattern recognition approaches that can operate within the resource-constraint and energy limitations of sensor networks was proposed. Event patterns that describe events of interest were employed for event monitoring. The VGN approach proposed a model for node collaboration where sensor nodes may exchange their results to reach a global consensus that reflects the status of the environment. The VGN approach’s performance was affected by the similarity amongst patterns. Patterns of high similarity consumed more energy than other patterns. Moreover, the model involved all nodes in every pattern recognition cycle which reduced the lifetime of the network. Finally, the VGN approach suffered from performance hotspots that showed that some sensor nodes are over-utilised more than others. This paper contributes by proposing a pattern recognition approach that suits the resource-constrained infrastructure of sensor networks. First, sensory event patterns are proposed and defined for sensory applications. Classical pattern recognition approaches do not take into consideration the dynamic and ad hoc nature of sensor networks and were originally designed for computers with ample processing and storage capabilities. Pattern storage and recognition is attained in a distributed manner to balance the operations load evenly throughout the network. As a result, the energy consumption is reduced by reducing the amount of communicated sensory data and balancing the sensor node utilisation in the network.
3
The VRNS Approach
The VRNS approach is proposed to perform distributed in-network pattern recognition. Events of interest are depicted as reference patterns and stored in a distributed manner in the sensor network. The pattern recognition operations are preformed in a distributed manner where each sensor node produces votes - the result of matching the local sensory measurement with the locally stored sub-patterns. The global event is matched with the predefined pattern of interest that receives the largest number of votes. The following present the main components and operations of the VRNS approach. 3.1
Sensory Event Patterns
The VRNS approach assumes that a sensory event pattern is represented by a M × N matrix. Each cell of the matrix is associated with one sensor node and corresponds to a specific region of the monitored area. Moreover, the number of active sensor nodes is equal to the number of cells (M × N ). In scenarios where the number of deployed sensor nodes might be greater than M × N, cell leaders may be elected to represent the cells and aggregate the sensory data of sensor nodes belonging to their cell [9]. Consequently, a matrix of sensor nodes of size M × N is created to correspond to event patterns. The matrix, however, can be
152
M. Baqer
of regular or irregular shape depending on the deployment scheme. Therefore, an event pattern may be defined as an M × N snapshot matrix of sensory data at a particular time t in a specific area A monitored by M × N matrix of sensor nodes, as illustrated in Figure 1.
Fig. 1. Mapping the status of the real world using event patterns
3.2
Pattern Storage
A set of reference patterns are used as a training set to detect events in the environment. In classical approaches the natural choice will be to store the training patterns in a centralised manner in the base-station. In sensor networks, as a result of the limited storage capacity of individual sensor nodes, a single sensor node cannot store all reference patterns, and storing the reference patterns at the base-station is not desirable due to the problems associated with centralised designs in sensor networks [22], [10]. The VRNS approach overcomes this problem by partitioning the patterns into sub-patterns. A sub-pattern is the fundamental pattern element comprising sensory information of a particular location. Each sub-pattern represents the local physical world status and is assigned to a dedicated sensor node deployed in same geographical location. The implementation details of the memory and data structures used for storing the patterns are out of the scope of this research. Nevertheless, the patterns should be stored in a manner which optimises the space and time required to store and to retrieve them, respectively. 3.3
Pattern Recognition
Event patterns are recognised by a voting mechanism. Input event patterns are recognised and matched to the winning reference pattern in a distributed manner. Each sensor node produces a vote set comprising the labels of reference
Event Recognition via Energy Efficient Voting for Wireless Sensor Networks
153
patterns that matches the local sensory measurements. Votes sets from various nodes in the network are collected and aggregated into vote polls. An information aggregation approach that allows the fusion of data enroute should be utilised to improve the longevity of the network [23], [24]. Amongst m stored patterns, the winning reference pattern is the pattern from the stored training set of pattern label Li that received the highest number of votes and the received votes count exceeds a threshold value, as depicted in Formula 1. Li if maxm i=1 (P olli ) ≥ α · M M atch = (1) Lm+1 otherwise The threshold value α provides a guarantee that the winning reference pattern received sufficient votes from the sensor nodes of the network. For instance, setting α=0.5 or α=1.0 implements simple majority and unanimity voting, respectively. On the other hand, the input pattern is rejected by setting the winning vote to Lm+1 . Furthermore, input patterns may be rejected or mismatched when the correct pattern label does not receive the largest number of votes and the number of votes received by any label is less than the confidence threshold value. Input patterns are rejected when none of the vote polls have satisfied the confidence threshold. Formula 2 describes the states of the pattern recognition conditions of the VRNS approach in terms of the number of votes and the value of α, where Pollcorrect and Pollincorrect ≥ α · M. ⎧ P ollcorrect > P ollincorrect ⎨ match Result = mismatch P ollcorrect ≤ P ollincorrect (2) ⎩ reject otherwise 3.4
Node Selection
The node selection technique incorporated in the VRNS approach leverages the benefits of the sleep mode. The sensor nodes may be switched entirely or partially by switching the radio antenna to conserve energy. In either situation, significant amounts of energy can be conserved. The VRNS employs a subset of sensor nodes to recognise patterns. A sample of sensor nodes is selected from the network instead of involving the entire network in the voting and pattern recognition process. Thereby, the selected nodes will actively cooperate to recognise the input patterns whilst setting the rest of the network into the sleep mode. Additionally, the sensor nodes enters the sleep mode after communicating their vote sets. There have been many node selection techniques proposed for sensor nodes which may be integrated with the VRNS approach. The node selection technique, however, should be implemented in a distributed manner to avoid any dependency on any centralised entity. As a result, each sensor node should be able to autonomously determine whether to participate in the voting process or to enter the sleep mode. Moreover, the selection criteria should be highly arbitrary and
154
M. Baqer
nodes should be selected in a fair manner from the entire network to attain uniform energy consumption across the sensor network.
4
Results
In order to explore the efficiency of the VRNS approach, a number of simulations were conducted using MATLAB [25] and tested using patterns from the MNIST pattern library [26]. Patterns of the MNIST are patterns of digit patterns of numbers from 0 to 9. The simulation evaluated the VRNS approach with respect to pattern recognition performance and energy consumption. The advantage of employing performance patterns is to exploit them to visually discover locations of unbalanced energy consumption. The simulation results whilst using a training set of 512 patterns are presented in this paper. 4.1
Pattern Recognition Performance
An input pattern may be matched, mismatched, or rejected. In the following simulations, the true positive and true negative tests were used to explore the pattern recognition performance. The true positive experiments explored the ability of the VRNS approach to recognise unknown input patterns when they are selected from the training set. On the other hand, the true negative experiments simulate the ability of the VRNS approach to reject patterns. In the true negative experiments, the unknown input patterns were selected from patterns not included in the training set. Therefore, it is desirable to attain maximum true positive results while reducing the true negative outputs. True Positive. Figure 2 comprises 6 sub-graphs which depict having the input pattern affected by 0% to 50% variability (noise). Each sub-graph plots the successful recognition rate with the increase in the number of selected nodes, from 10% to 100%. The results show that the pattern recognition performance decreases with the increase in the amount of variability and more variability is tolerated whilst using small α values. In the figure, sub-graphs depicting low variability influence show better pattern recognition performance than sub-graphs with high variability influence. Moreover, the sub-graphs show that a variety of pattern recognition performances is attained whilst using various α values. The VRNS approach, whilst selecting all sensor nodes, α of 1.0, fails entirely when 10% or more of any input pattern is affected by variability, as shown in Figure 2-2. Other α values show better variability robustness. For instance, variability of 20% is shown in Figure 2-3 and when using an α value of 0.5, the pattern matching the VRNS approach attains pattern recognition performance above 0.6. When the variability is 30%, however, the approach whilst using α of 0.5 is entirely unable to recognise any patterns as shown in Figure 2-4. All α values fail to recognise any patterns when the variability is ≥ 50%.
Event Recognition via Energy Efficient Voting for Wireless Sensor Networks
155
Fig. 2. True positive for a sensor network storing 512 patterns while various α and values. Figures 1 to 6 depict the network true positive performance while having 0.0% till 50% variability incremented by 10%.
True Negative. In event monitoring and detection settings, not all events occurring in the environment are of interest to end-users. The VRNS approach is designed to reject patterns when the number of votes received by any reference pattern does not satisfy the confidence threshold of α. The simulated network utilised digit patterns of number 3 as a training set and used patterns of number 1 as input test patterns. The true negative simulations follow the simulation settings as the true positive settings. Figure 3 shows that the pattern recognition performance of 1.0 is attained when the VRNS approach utilises α value of 1.0, regardless of the amount of variability. The pattern recognition performance whilst using other α values improves with the increase in the amount of variability. For instance, utilising α value of 0.5, the pattern recognition starts improving when 20% variability is affecting the patterns. All α values except 0.1 attain pattern matching of 1.0 when the variability is ≥ 50%. The value of α of 0.1 is significantly small to reject any input pattern and hence fails to successfully recognise any patterns. Node Selection and Pattern Recognition Performance. The number of nodes selected to recognise events is an important factor influencing the longevity of the sensor network. Instead of using all nodes, as in the base-station model, the sample size specifies the number of nodes randomly selected to recognise the event patterns. The true negative and true positive simulation results of only using 20% of nodes are approximately equal to the results attained when all
156
M. Baqer
Fig. 3. True negative for a sensor network storing 512 patterns of number 3 and tested with patterns of number 1 while utilising various α and values. Figures 1 to 6 depict the network true positive performance while having 0.0% to 50% variability incremented by 10%.
nodes (100%) are used to recognise patterns, as shown in all Figures 2 and 3. The figures show that there is no improvement attained while using all sensor nodes instead of only 20% of the nodes. In addition to attaining a pattern recognition performance equal to utilising all nodes by using only 20% of the network, the network can significantly prolong the lifetime of the network by 5 times by switching off the rest of the sensor nodes. 4.2
Energy Consumption
The average node communication, ANC, is proposed to provide energy consumed in communication. In addition to studying the performance of the VRNS approach in respect to classical pattern recognition measurement, it is essential to study the energy consumption of the approach. The ANC measures the amount of energy consumed in communicating vote sets for recognising event patterns. ANC Simulations. Figure 4 shows the ANC energy distribution in the sensor network depicted in colour maps. In each of these figures, an increasing trend in the ANC value with the increase in the sample of selected sensor nodes can be observed, as seen in the colour maps 1 to 4 of each of the figures. The ANC value is increased with the increase in the sample size as the result in the increase in the probability of reselecting nodes to recognise patterns. When the sample
Event Recognition via Energy Efficient Voting for Wireless Sensor Networks
157
size is large enough to include all nodes of the network, all nodes have ANC = 1.0. This means that all nodes are chosen to communicate their vote sets for each event pattern. The figures show that the node selection technique of the VRNS approach provides fairness in the communication and processing loads amongst nodes. The majority of nodes have approximately equal ANC values proportional to the sample size. Sensor nodes are evenly selected and rarely over or under-utilised and the network does not suffer from hotspots.
(1)
(2)
(3)
(4)
Fig. 4. ANC of 32×32 nodes storing 512 patterns and employing a sample of sensor nodes of sizes 64, 128, 512, and 1024 nodes
5
Conclusion
The VRNS approach was proposed to provide energy efficient and decentralised pattern recognition for event monitoring applications using sensor nodes by employing in-network information processing and sleep-mode techniques. The pattern storage and pattern recognition operations are evenly performed over the network. Moreover, energy distribution maps are utilised to visually evaluate the energy consumption performance of sensor networks, namely the ANC metric. These patterns are beneficial to highlight any redundancy or hotspots in the sensor network. The ANC results show that the VRNS approach provides balanced node utilisation and thereby is able to prolong the sensor network’s lifetime. The effectiveness of the energy conservation is further improved by using a sub-set of randomly selected sensor nodes instead of involving the entire network. Consequently, the VRNS approach attained an effective pattern recognition performance whilst prolonging the lifetime of the network. Acknowledgments. The author would like to thank Dr. A. I. Khan and Prof. Bala Srinivasan from Monash University for their input and review of this work.
158
M. Baqer
References 1. Estrin, D., Culler, D., Pister, K., Sukhatme, G.: Connecting the physical world with pervasive networks. IEEE Pervasive Computing 1(1), 59–69 (2002) 2. Tolle, G., Polastre, J., Szewczyk, R., Culler, D., Turner, N., Tu, K., Burgess, S., Dawson, T., Buonadonna, P., Gay, D., Hong, W.: A macroscope in the redwoods. In: Proc. ACM Conference on Embedded Networked Sensor Systems (SenSys’05), San Diego, California, November 2005, pp. 51–63 (2005) 3. Baqer, M., Kamal, A.: S-sensors: Integrating physical world inputs with social networks using wireless sensor networks. In: Proceedings of the 5th International Conference on Intelligent Sensors, Sensor Networks and Information Processing (ISSNIP), pp. 213–218. IEEE, Los Alamitos (2009) 4. Akyildiz, I., Su, W.S., Sankarasubramaniam, Y., Cayirci, E.: A survey on sensor networks. IEEE Communications Magazine 19(2), 102–114 (2002) 5. R¨ omer, K., Mattern, F.: The design space of wireless sensor networks. IEEE Wireless Communications 11(6), 54–61 (2004) 6. Karl, H., Willig, A.: Protocol and Architecture for wireless sensor networks. Wiley, Chichester (June 2005) 7. Crossbow: Mica2 datasheet, http://www.xbow.com/Products/Product pdf files/Wireless pdf/ MICA2 Datasheet.pdf (last accessed June 21, 2009) 8. Raghunathan, V., Schurgers, C., Sung Park Srivastava, M.: Energy-aware wireless microsensor networks. IEEE Signal Processing Magazine 19(2), 40–50 (2002) 9. Krishnamachari, B., Estrin, D., Wicker, S.: The impact of data aggregation in wireless sensor networks. In: Proceedings of the 22nd International Conference on Distributed Computing Systems (ICDCSW ’02), pp. 575–578. IEEE Computer Society Press, Los Alamitos (2002) 10. Madden, S., Franklin, M.J., Hellerstein, J.M., Hong, W.: Tag: a tiny aggregation service for ad-hoc sensor networks. In: 5th Annual Symposium on Operating Systems Design and Implementation (OSDI), pp. 131–146 (2002) 11. Ye, W., Heidemann, J., Estrin, D.: An energy-efficient mac protocol for wireless sensor networks. In: Proceedings of the 21st International Annual Joint Conference of the IEEE Computer and Communications Societies (INFOCOM), vol. 3, pp. 1567–1576. IEEE, Los Alamitos (2002) 12. Cao, Q., Abdelzaher, T.F., He, T., Stankovic, J.A.: Towards optimal sleep scheduling in sensor networks for rare event detection. In: Proceedings of the Fourth International Conference on Information Processing in Sensor Networks (ACM/IEEE IPSN), April 2005, pp. 129–143. IEEE, Los Alamitos (2005) 13. Keshavarzian, A., Lee, H., Venkatraman, L.: Wakeup scheduling in wireless sensor networks. In: Proceedings of the seventh ACM international symposium on Mobile ad hoc networking and computing (MobiHoc ’06), pp. 322–333. ACM, New York (2006) 14. Mainwaring, A., Culler, D., Polastre, J., Szewczyk, R., Anderson, J.: Wireless sensor networks for habitat monitoring. In: WSNA ’02: Proceedings of the 1st ACM International Workshop on Wireless Sensor Networks and Applications, pp. 88–97. ACM Press, New York (2002) 15. Kim, S., Pakzad, S., Culler, D., Demmel, J., Fenves, G., Glaser, S., Turon, M.: Wireless sensor networks for structural health monitoring. In: SenSys ’06: Proceedings of the 4th International Conference on Embedded Networked Sensor Systems, pp. 427–428. ACM Press, New York (2006)
Event Recognition via Energy Efficient Voting for Wireless Sensor Networks
159
16. Bishop, C.M.: Pattern Recognition and Machine Learning. Springer, Heidelberg (2006) 17. Xue, W., Luo, Q., Chen, L., Liu, Y.: Contour map matching for event detection in sensor networks. In: Proceedings of the 2006 ACM SIGMOD international conference on Management of data (SIGMOD ’06), pp. 145–156. ACM, New York (2006) 18. Li, M., Liu, Y., Chen, L.: Nonthreshold-based event detection for 3d environment monitoring in sensor networks. IEEE Educational Activities Department 20, 1699– 1711 (2008) 19. Kulakov, A., Davcev, D.: Distributed data processing in wireless sensor networks based on artificial neural-networks algorithms. In: In proceedings of the 10th IEEE Symposium on Computers and Communications (ISCC’05), pp. 353–358. IEEE, Los Alamitos (2005) 20. Oldewurtel, F., M¨ ah¨ onen, P.: Neural wireless sensor networks. In: Proceedings of the International Conference on Systems and Networks Communication (ICSNC ’06), pp. 28–36. IEEE, Los Alamitos (2006) 21. Baqer, M., Khan, A.I.: Energy-efficient pattern recognition approach for wireless sensor networks. In: Proceedings of the 3rd International Conference on Intelligent Sensors, Sensor Networks and Information (ISSNIP’07), pp. 509–514. IEEE Computer Society, Los Alamitos (2007) 22. Ye, W., Heidemann, J., Estrin, D.: An energy-efficient mac protocol for wireless sensor networks. IEEE 3, 1567–1576 (2002) 23. Madden, S., Franklin, M.J., Hellerstein, J.M., Hong, W.: Tag: a tiny aggregation service for ad-hoc sensor networks. In: 5th Annual Symposium on Operating Systems Design and Implementation (OSDI), pp. 131–146 (2002) 24. Boulis, A., Ganeriwal, S., Srivastava, B.: Aggregation in sensor networks: an energy - accuracy tradeoff. In: Proceedings of the International Workshop on Sensor Network Protocols and Applications, May 2003, pp. 128–138 (2003) 25. MATLAB: Matlab, http://www.mathworks.com/ (last accessed July 2009) 26. MNIST: Mnist database, http://yann.lecun.com/exdb/mnist/ (last accessed July 2009)
Evaluation of Multi-service CDMA Networks with Soft Blocking Villy B. Iversen Department of Photonic Engineering, Technical University of Denmark Building 343, 2800 Kongens Lyngby, Denmark [email protected]
Abstract. This paper presents a new approach for calculating the capacity of multi-service CDMA networks with soft blocking using general insensitive traffic models. The system is modeled as a multi-rate traffic flow model with state dependent blocking probabilities which have to fulfil specific requirements for maintaining reversibility of the model. By a new state-based algorithm performance measures are obtained for each individual service. An example for solving a realistic case is given. The granularity of the basic bandwidth unit can be chosen arbitrarily. Keywords: CDMA, soft blocking, state-based algorithm, granularity, BPP multi-rate traffic.
1
Introduction
Universal Mobile Telecommunication System (UMTS) networks, being new entrants on the market, are trying to prove their existence and secure a position in the future. One of the innovations UMTS brings is multi-band Wide-Band Code Division Multiple Access (WCDMA), which allows many users to transmit simultaneously within the same frequency band. Novelty in WCDMA compared with GSM networks systems is that single-user transmission in the system to all other users located around the air-interface is noise. Every time a new call is accepted, the signal-to-noise ratios for all other users are decreased. Because of that, WCDMA systems have no hard limits on call capacity. In order to preserve the quality of already accepted calls, a new call should not be accepted by the system if this call increases the noise for any other existing call above the tolerable level. Staehle & M¨ ader [11] have dealt with the same problem in a different approximative way. This paper presents a powerful and flexible model for evaluation of blocking probabilities of WCDMA system and related teletraffic parameters as traffic, call and time congestion. At the end, the paper gives an example of how to use the described model and algorithms. An earlier model was described in a conference paper [8]. In this paper we have modified the state dependent blocking probabilities and introduced a new numerical stable algorithm for BPP (Poisson - Binomial - Pascal) multi-rate traffic, which is a generalization of the classical recurrence Erlang-B formula, and a generalization of earlier algorithms S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 160–171, 2010. c Springer-Verlag Berlin Heidelberg 2010
Evaluation of Multi-service CDMA Networks with Soft Blocking
161
by Fortet and Grandjean (otherwise known as Kaufman and Roberts’ algorithm) and Delbrouck. This new algorithm includes global-state-dependent blocking probabilities. In section 2 we review the basic principles of calculating the capacity of WCDMA for services with different bandwidth and Quality-of-Service (QoS) requirements. In section 3 we introduce state dependent blocking probabilities as they appear in WCDMA. Section 4 presents a new compact recursive algorithm. New results on conditions for product-form and reversibility are presented, and the above algorithm is generalized to global-state-dependent blocking probabilities. A realistic large scale case is presented in section 5, and conclusions are given in section 6.
2
WCDMA Capacity
WCDMA networks are designed to provide multi-rate services with diverse Quality-of-Service (QoS) parameters as different speed and bit error rates. In the following we consider a single UMTS cell for capacity analysis. Influence from neighbor cells is modeled by the noise, which is expressed by neighbor cell interference ratio ι introduced below. The usual way to describe WCDMA capacity is through signal and noise power levels and their ratio. Such modeling comes very close to physical network layer and has been used by radio engineers ([5] [12]). However, for teletraffic calculations, it is preferable to convert all power levels and decibels into channels, offered traffic and blocking probabilities. Furthermore, only the up-link traffic direction (from mobile station towards the base station) will be considered. The down-link can be modeled in similar way. For that we need to express UMTS service definition by bandwidth resources needed from the particular traffic channel by the considered service. The relevant WCDMA cell capacity defining parameters are the following [6]: – WCDMA chip rate, W = 3.84 Mcps. – Noise-rise is defined as the ratio of the total received wide-band power to the noise power. It is functionally related to the cell up-link utilization factor ηUL ([6] formula 8.9: Noise rise = 1/(1 − ηUL )). The value of 3 dB noise-rise corresponds to ηUL = 50% utilization. – Neighbor cell interference ratio ι: cell interference ι = other own cell interference Interference ratio depends on cell environment, type of antenna used, and other factors. Common assumed values are 0.55 or 0.65. This reduces the cell capacity n by a factor 1/(1 + ι). In this paper we include other cell interference by state dependent blocking probabilities bx , discussed further below. Service classes in UMTS are described by following three parameters:
162
V.B. Iversen
– Service bit-rate Rj . – Signal energy per bit divided by noise spectral density level Eb /N0 that is required to provide predefined QoS. – Activity factor νj . For data services this equals 1, for voice 0.67 (50% voice activity plus overhead). Let N denote the total number of active calls (or users) in the cell for all services. The mathematical relation between above entities is ([6] formula 8.12): ηUL =
N j=1
1 1+
Eb N0
W Rj νj
.
(1)
j
Let us denote the service-related entities product by κj : Eb κj = · Rj · νj . N0 j
(2)
Then the maximum number of channels of service j (alone) in one cell is: W Nmax,j = ηUL 1 + . κj
(3)
Let us denote by Rs,j the spread bit rate of service j, which is the proportion of W utilized by one connection of service Rj (the chip rate of the connection): κ2j W 1 . (4) Rs,j = = κj − Nmax,j ηUL κj + W The formula above provides the technique to obtain unified measure unit for calculating traffic in multi-service and multi-QoS WCDMA systems. An example of calculations using above formulæ is shown in the Table 1. In the following we need to specify the total capacity and bandwidth requirement by a basic bandwidth unit (BBU) which we name a channel. The higher the required accuracy, the smaller is the unit we have to choose. As an approximation we may choose the unit-channel to be equal to 13.5 kcps, and Table 1. Capacity of a WCDMA cell. Assumptions for calculations for cell parameters: ηUL = 0.5 and W = 3840 kcps. Eb Eb j Service Rj [kbps] νj [dB] N κj Nmax,j Rs,j [kcps] N0 0 j
1 2 3 4
Voice Voice/moving Data Data
7.95 7.95 32 64
0.67 0.67 1 1
4 7 3 2
j
2.51 5.01 2.00 1.58
13.38 144.0 26.70 72.4 63.85 30.6 101.43 19.4
27 53 126 198
Evaluation of Multi-service CDMA Networks with Soft Blocking
163
then approximate the bandwidth of the above services by 2, 4, 3, 5, 10, 16, 32 channels, respectively. The cell capacity is then 3840/13.5 = 284 channels. In principle, the performance of a system should be independent of the granularity chosen.
3
State-Dependent Blocking
The blocking probability of a call attempt should be independent of the granularity chosen if the Basic Bandwidth Unit is a integral multiple of the largest common divisor of the bandwidth demands. In practice a rough granularity may waste more bandwidth than a fine granularity because we will overbook the capacity needed. So if a call with a given granularity is a single-slot connection, then with the double (finer) granularity the same call becomes a two-slot connection. Denoting by bx,x+1 the blocking probability for a call arriving in state x and requiring one slot, then for these two cases the acceptance probability for a call attempt becomes (1 − bx,x+2 ) respectively (1 − bx,x+1 )(1 − bx+1,x+2 ) In CDMA, the capacity limiting factor is the power transmitted by user terminals and antennas. The total power is made up of contributions from own cell, other cells, and background noise. The contribution from other cells is typically around 35–40 % (with i = 0.55 – 0.65), and it is often assumed to be an independent Log-Normal distributed random variable. Therefore, the blocking probability of a new connection is a random variable depending on the state of the system (own cell, neighbor cells) and the bandwidth (noise-rise) of the new connection. We have to assume that the neighbor cell interference is varying slowly as compared with the mean holding times, so that we don’t risk that already accepted connections run out of capacity. Thus we assume that if we are in state x, then the neighbor cell interference at most occupy the bandwidth n − x. If the variations were fast, then we would not be able to guarantee any quality-ofservice. If our own cell is in state x then the remaining capacity is n − x and the bandwidth d is either available for the new connections or used by connections in neighboring cells. Let us denote the distribution function of the random variable describing the neighbor cell interference by F (x) (density function f (x). Conditioning on being in state x we know the inter-cell interference is within the interval [0, n − x]. If we request the bandwidth d, then a call attempt will be blocked if the neighbor cell interference is within [n − x − d, n − x]: n−x f (u) du (5) bd (x) = u=n−x−d F (n − x) F (n − x) − F (n − x − d) = (6) F (n − x) F (n − x − d) =1− . (7) F (n − x)
164
V.B. Iversen
In a similar way we get for a single-slot call in state x + d: bd (x + d) = 1 −
F (n − x − 2d) . F (n − x − d)
(8)
A call attempt requesting bandwidth 2d in state x experiences the blocking probability: F (n − x − 2d) b2d (x) = 1 − . (9) F (n − x) It is easy to se that this is the same as the blocking probability for two call attempts each requesting one bandwidth unit d: F (n − x − 2d) F (n − x) F (n − x − d) F (n − x − 2d) = · F (n − x) F (n − x − d) = {1 − bd (x)} · {1 − bd (x + d)}
1 − b2d (x) =
(10) (11) (12)
Thus a two-slot call attempt has the same blocking probability as two single-slot calls. The same results was obtained by a different approach for multi-rate traffic in [9].
4
Algorithms for Traffic Performance
We consider the BPP traffic paradigm. BPP traffic models include Binomial (finite source, Engset) traffic, Poisson arrival traffic, and Pascal traffic. Binomial traffic is more smooth than Poisson traffic. Pascal traffic is more bursty than Poisson and is equivalent to Poisson batch arrival with geometric batch size distribution. The state of the system x is defined as the number of busy channels. The arrival rate of service j (j = 1, 2, . . . , N ) is supposed to depend on the number of connections of this type. So the arrival rate of service j is λj (x) when we have x channels occupied by this type. The bandwidth demand of service j is dj , so that each connection requires dj channels (= Basic Bandwidth Units = BBU). The holding time of a connection of type j is exponentially distributed with rate dj μj (the factor dj is chosen only for convenience, the connection terminates all channels at the same time). In the mode considered (reversible scheduling), this model will be insensitive to the service time distribution, so that results obtained for exponential distributions are valid for more general distributions. For service j, the offered traffic in channels is Aj = λj /μj , and each connection needs di channels. Finite source traffic is characterized by number of sources Sj and offered traffic per idle source βj . Alternatively, we in practice often use the offered traffic Aj and the peakedness Zj . We have the following relations between the two representations: Aj = Sj ·
βj , 1 + βj
Zj =
1 , 1 + βj
(13)
Evaluation of Multi-service CDMA Networks with Soft Blocking
βj =
γj 1 − Zj = , dj μj Zj
Sj =
Aj . 1 − Zj
165
(14)
dj is the data rate required by service j, and bj (x) is the blocking probability in state x for a call of type j requesting dj channels (soft blocking), which characterizes the current other-cell interference level. We have: ⎧ 0 x<0 ⎪ ⎪ ⎪ ⎪ ⎪ ⎨ p(0) x=0 p(x) = (15) N ⎪ ⎪ ⎪ ⎪ pj (x) x = 1, 2, . . . , n ⎪ ⎩ j=1
where pj (x) denotes the contribution of service j to the global state probability p(x): pj (x) =
dj Sj γj x − dj γj · p(x − dj ) − · pj (x − dj ) · · x μj x μj
pj (x) = 0
x < dj .
(16) (17)
The state probability p(0) is obtained by the normalization condition: n
p(x) = p(0) +
x=0
n N
pj (x) = 1 ,
(18)
x=1 j=1
as pj (0) = 0, whereas p(0) = 0. Above we have used the parameters (Sj , βj ) to characterize the services. Alternatively we may also use (Aj , Zj ) related to (Sj , βj ) by the formulæ (13). Then (16) becomes: pj (x) =
dj Aj x − dj 1 − Zj · · · p(x − dj ) − · pj (x − dj ) x Zj x Zj
(19)
Therefore, we may normalize the state probabilities after each step in the iteration to avoid numerical problems as described in [7] [10]. 4.1
CDMA Traffic Model
In Fig. 1 we show a system with two multi-rate services. Let us denote the global state by x (e.g. x = i + j in state (i, j)). If the state-dependent blocking probability bx in state x for a single slot call is zero, then the state transition diagram is reversible and has product form. The reversibility is ensured when the flow among the four neighbour states is the same clockwise and counter-clockwise (Kolmogorov cycles). The passage factor is defined as 1 − bx . When bx is greater than zero, then we may choose bx so that the diagram is still reversible, but the product form will be lost. For a d–slot call we have to choose the passage factor in state x as
166
V.B. Iversen
.. .
.. .
.. .
.. .
... ........ ... ... ... ... ..
... ... ... ... ... .. ........ ... .
. .. ........ .... .. ... ... ..
... ... ... ... ... .. ......... ..
.... .... .. .. ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... . ......... ..
.... .... .. .. ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... . ......... ..
(1−b 1 i+j+1 )(1−bi+j+2 ) λ ............................................................................................................................................................ ...................................... · · · .............................................. ··· i, j +1 i+2, j +1 .. .......................................................................................................................................................... .................................... · · · ........................................... ··· ... ... ... .... i+2 .... .... ........ ........ μ . ... ... 1 . .... . 2 .. .. .. .
(1−bi+j ) λ2
· · · .............................................. i, j .. · · · ........................................... ... .. . ........ ... .. ... ... ..
.. .
... ... ... ... ... ........ .. .
(j +1) μ2
(1−bi+j+2 ) λ2
(1−bi+j )(1−bi+j+1) λ1
............................................................................................................................................................ ..........................................................................................................................................................
i+2 μ1 2
.. .
(j +1) μ2
i+2, j
. .... ........ .... ... .. ... ..
.. .
... ... ... ... ... .. ........ ...
··· ···
....................................... ....................................
.. .
Fig. 1. State-transition diagram for state-dependent blocking probabilities for a multirate traffic. In this example the arrival processes are Poisson processes (λ1 , λ2 ), and the slot size is d1 = 2, d2 = 1, respectively.
a function of number of channels occupied in the cell and the bandwidth of the call attempt: x+d−1 1 − bx,d = Πj=x (1 − bj )
= (1 − bx )(1 − bx+1 ) . . . (1 − bx+d−1 ) . This corresponds to a d-slot call choosing one single channel at a time (d times), and the call is only accepted if all d channels are successfully obtained. This is a quite natural requirement as we assume full accessibility to idle resources, and it can be shown to be a necessary and sufficient condition for maintaining the reversibility of the process. If the process is not reversible, then we have to solve a very large set of linear equations to find the state probabilities, and only very small systems can be solved. The product form will be lost. As the blocking probability only depends on the global state and the QoS & bandwidth requirements (noise-rise) of the new connection, we may introduce the statedependent blocking probability by modifying (19) as follows: dj Aj x − dj 1 − Zj · · p(x − dj ) − · · pj (x − dj ) · (1 − bx−dj ,dj ) . pj (x) = x Zj x Zj (20) (16) is modified in a similar way.
Evaluation of Multi-service CDMA Networks with Soft Blocking
4.2
167
Performance Measures
By this algorithm we are able to obtain performance measures for each individual service as described in [7]. Time congestion: Call attempts of service j require dj idle channel and will be blocked with probability: n Ej = bi,i+dj · p(i) . (21) i=0
Traffic congestion: From the state probabilities pj (x) we get the total carried traffic of service j: Yj =
n
i · pj (x) .
(22)
x=1
Thus the traffic congestion of service j becomes: Cj =
Aj · dj − Yj . Aj · dj
(23)
The total carried traffic is Y =
N
Yj ,
(24)
A−Y , A
(25)
j=1
so the total traffic congestion becomes: C=
where A is the total offered traffic measured in channels: A=
N
dj Aj .
j=1
Call congestion: This is obtained from the traffic congestion by using the general formula: Bj =
(1 + βj ) Cj . 1 + βj Cj
(26)
We are thus able to obtain the exact global state probabilities for a system with global-state dependent blocking probabilities as they appear in CDMA systems, even if the system does not have a product-form.
168
V.B. Iversen
Table 2. Input parameters for the case considered. A is offered traffic, Z peakedness and d bandwidth requirement in channels. The total number of channels is 284. Class 1 2 3 4
5
A 30.00 15.00 6.00 3.75
Z 2.00 1.00 0.40 0.25
d 2.00 4.00 10.00 16.00
Case Study
We consider an example with 4 services from table 1 with the parameters shown in table 2. The offered traffic A is given in number of connections, and the bandwidth demand d in number of bandwidth units (channels). The maximum number of channels is n = 284. In addition to these parameters, the model and program also allows for minimum guaranteed allocation of capacity and maximum allowed capacity for each service and other features not included here. We introduce log-normal distributed random variable for the neighbor cell interference with parameters: ι ·n (27) μ= ι+1 σ=μ The mean value of the interference process μ is equal to the average capacity lost in our cell because of the neighbor cell. σ is chosen to be equal to the μ as proposed by (Staehle & M¨ ader [11]). Then bx is expressed by (7). F (x) is the cumulative distribution function of the log-normal distribution: 1 ln(x) − M √ F (x) = 1 + erf (28) 2 S 2 where M and S are corresponding parameters of normal distribution and are obtained from μ and σ 2 by the following calculations: μ2 M = ln μ2 + σ 2 σ2 2 S = ln 1 + 2 μ We choose the other cell interference factor ι = 0.55 and the cell capacity n = 284 (channel rate - 13.5 kcps). Then the interference process mean value μ = 100.7 and we assume multiplicative variance σ 2 = 10140.495. In Fig. 2 the blocking probabilities are shown for different bandwidths for parameters given in the case study. The performance measures are shown in Table 3 for a full accessible system with no state-dependent blocking. In table 4 the same model is considered with state dependent blocking. We consider three congestion measures. Numerical results are obtained in [1].
Evaluation of Multi-service CDMA Networks with Soft Blocking
169
1 Class 1 Class 2 Class 3 Class 4
0.9 0.8
Blocking probability
0.7 0.6 0.5 0.4 0.3 0.2 0.1 0
0
50
100 150 State of the system
200
250
Fig. 2. State-dependent blocking probabilities for slot sizes 1, 2, 5, 8
– The time congestion E is the proportion of time a service is blocked. – The call congestion B is the proportion of call attempts which are blocked. – The traffic congestion C is the proportion of offered traffic which is blocked, where we define the offered traffic as the traffic carried when the capacity is unlimited. For Poisson arrival processes (Z = 1) we have the PASTA–property and the three measures are identical. In all other cases the traffic congestion is the most relevant. The carried traffic is measured in channels. We notice that the four services have almost the same performance because Z · d = 4 is constant. If we choose another granularity, then we get the same blocking probabilities. Thus we have solved the granularity problem raised in [4]. Table 3. Performance measures for the parameters given in table 2 and without statedependent blocking Class Time cong. E 1 0.010234 2 0.021427 3 0.061116 4 0.110452 Total
Traffic cong. C 0.022448 0.021427 0.018435 0.015695 0.019502
Call Cong. B 0.011352 0.021427 0.044847 0.059957
Carried Traffic 58.6531 58.7142 58.8939 59.0583 235.3195
170
V.B. Iversen
Table 4. Performance measures for the parameters given in table 2 and with statedependent blocking Class Time cong. E Traffic cong. C 1 0.046072 0.090925 2 0.091624 0.091624 5 0.224254 0.093372 6 0.349032 0.094529 Total 0.092613
6
Call Cong. B 0.047628 0.091624 0.204753 0.294578
Carried Traffic 54.5445 54.5026 54.3977 54.3283 217.7730
Conclusions
The paper presents a new and innovative approach to evaluate CDMA systems. We first show a way to calculate Rs using a common unit and describing speed and QoS of WCDMA services in a particular cell. Then we discuss statedependent blocking probabilities and show how they should be chosen to conform with reality and at the same time maintain reversibility of the process. Even if the product-form of the model is lost by introducing blocking, we are able to calculate the exact state probabilities by a new algorithm applicable for BPP (Poisson - Binomial - Pascal) multi-rate traffic. The generalized state-based algorithm is presented in a modified form only requiring a minimum of memory and maintaining full numerical accuracy when we normalize in each step. The model described is flexible and can be applied for different services and state dependent blocking probabilities for any system size.
References ´ 1. Che´cko, A., Sniady, A.: State-dependent blocking probabilities for W-CDMA systems. Student report. Photonic Engineering, Technical University of Denmark (2010) 2. Delbrouck, L.E.N.: On the steady–state distribution in a service facility carrying mixtures of traffic with different peakedness factor and capacity requirements. IEEE Transactions on Communications COM-31(11), 1209–1211 (1983) 3. Fortet, R., Grandjean, C.: Congestion in a loss system when some calls want several devices simultaneously. Electrical Communications 39(4), 513–526 (1964); Paper Presented at ITC–4, Fourth International Teletraffic Congress, London, England (July 15-21, 1964) 4. Garcia-Roger, D., Casares-Giner, V.: Teletraffic analysis of the uplink–WCDMA networks with soft capacity. In: HETNET Conference, Karlskrona, Sweden, February 18-20, p. 7 (2008) 5. Gilhousen, K.S., Jacobs, I.M., Padovabi, R., Viterbi, A.J., Weaver, L.A., Wheatley, C.E.: On the capacity of a cellular CDMA system. IEEE Tranasactions on Vehicular Technology 40(2), 303–312 (1991) 6. Holma, H., Toskala, A. (eds.): WCDMA for UMTS: Radio Access for Third Generation Mobile Communications, 2nd edn., p. 412. Wiley, Chichester (2002) 7. Iversen, V.B.: Teletraffic Engineering and Network Planning. Photonic Engineering, Technical University of Denmark, p. 374 (2010), http://oldwww.com.dtu.dk/education/34340/material/telenook2010pdf.pdf
Evaluation of Multi-service CDMA Networks with Soft Blocking
171
8. Iversen, V.B., Benetis, V., Ha, N.T.: Evaluation of Multi-Service CDMA Networks with Soft Blocking. In: Proceedings of ITC 16th Specialist Seminar on Performance Evaluation of Mobile and Wireless and Mobile Systems, August 31-September 2, pp. 212–216, 297. University of Antwerp, Belgium (2004) 9. Iversen, V.B.: Modelling restricted accessibility for wireless multi-service systems. In: Cesana, M., Fratta, L. (eds.) Euro-NGI 2005. LNCS, vol. 3883, pp. 93–102. Springer, Heidelberg (2006) 10. Iversen, V.B.: Reversible fair scheduling: The teletraffic theory revisited. In: Mason, L.G., Drwiega, T., Yan, J. (eds.) ITC 2007. LNCS, vol. 4516, pp. 1135–1148. Springer, Heidelberg (2007) 11. Staehle, D., M¨ ader, A.: An analytic approximation of the uplink capacity in a UMTS network with heterogeneous traffic. In: Proceedings of ITC, Berlin, September 2003, vol. 18, pp. 81–91. Elsevier, Amsterdam (2003) 12. Viterbi, A.M., Viterbi, A.J.: Erlang capacity of a power controlled CDMA system. IEEE Journal on Selected Areas in communications 11(6), 892–900 (1993)
Design of MPLS over DWDM Architecture for Unicast and Anycast Flows Jakub Gladysz and Krzysztof Walkowiak Chair of Systems and Computer Networks, Faculty of Electronics, Wroclaw University of Technology, Wybrzeze Wyspianskiego 27, 50-370 Wroclaw, Poland [email protected], [email protected]
Abstract. In this work we present models and computational results of CFA (Capacity and Flow Assignment) problem in two-layer networks based on MPLS over DWDM architecture. We assume that unicast and anycast demands are used in the upper layer and the lower layer DWDM is responsible for physical transmission. The unicast (one-to-one) is the most popular traffic in the Internet. The anycast (one-to-one-of-many) has the goal to deliver a packet to or from one of many hosts. To obtain optimal solution we intend to use CPLEX linear programming package. The considered problem is NP-complete - with a growing size of the network, finding the optimal solution may be difficult in reasonable time. Therefore, to solve larger problem instances we propose new heuristic algorithms. To our best knowledge this is the first paper that applies heuristic algorithms for unicast and anycast traffic in multi-layer networks.
1
Introduction
Recently we can observe a growing of optimization problems of multi-layer networks. Multi-layer modeling across the network layers (at least 2) consists of different technologies, protocols and functionalities (e.g. IP oved DWDM, IP over ATM over SONET etc.). In the literature there are many research works touching optimization of single-layer networks. Because in single-layer method each layer is optimized separately, global optimality of the solution cannot be guaranteed. In recent years we can also witness an increasing popularity of network services using anycast flows. Common examples of network services using anycasting are: Domain Name Service (DNS), Web Service, overlay network, peer-to-peer (P2P) systems, Content Delivery Networks (CDN), video streaming, software distribution, sensor networks [9], [19]. Unicast - defined as an one-to-one transmission - is the most popular transmission approach in the Internet. Anycast one-to-one-of-many transmission technique - has the objective to send a packet to one of many hosts, since the same information is replicated in many replica servers located in the network, the user can select one of these servers according to some criteria including also QoS parameters. Consequently, the anycasting can reduce the network traffic and avoid congestion causing big delays in data delivery. For these two reasons, this work concentrates on multi-layer computer S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 172–183, 2010. c Springer-Verlag Berlin Heidelberg 2010
Design of MPLS over DWDM Architecture for Unicast and Anycast Flows
173
networks using simultaneously unicast and anycast flows. As a model of multilayer network we propose two-layer, based on MPLS over WDM architecture. The idea of two-layer, based on MPLS over DWDM architecture, is as follows. The logical links given by paths allocated to demands of the upper layer are constructed using lightpaths of the lower layer. In the upper layer we introduce two kinds of traffics: unicast and anycast. First time MPLS over WDM model for unicast and anycast flows was formulated in [19] as a FA (Flow Assignment) problem - the capacity of lower layer is assumed to be fixed. In our work we are not given capacity of physical links and the main goal of the paper is to minimize linear cost function of operating upper and lower layer. Model of MPLS over DWDM network for modular links was showed in work of authors [3]. We focus on connection-oriented networks. Note that connection-oriented network techniques like Multi-Protocol Label Switching (MPLS) and Dense Wavelength Multiplexing (DWDM) gain much attention especially in transport backbone networks [14]. This follows from the fact that connection-oriented transmission enables delivering of traffic engineering capability and QoS performance including reliability issues [7]. Wavelength Division Multiplexing (WDM) is a technology, which multiplexes multiple optical carrier signals on a single optical fibre by using various wavelengths (colors) of laser light to carry different signals. Since a single fiber using WDM can carry many (e.g. 128) wavelengths 40 Gb/s each, the overall capacity of a fiber grows to terabits per second. Because the majority of Internet traffic is now IP, it is an substantial issue to examine various aspects of network architectures which transport IP traffic on WDM networks. Due to the growing demand for QoS (Quality of Service) and traffic engineering functionality we assume that MPLS technique is applied to carry IP traffic [19]. The MPLS proposed by the Internet Engineering Task Force (IETF) [15] is a networking technology that enables delivering of traffic engineering capability and QoS performance for carrier networks. MPLS node that is capable of forwarding IP packets and supports MPLS is called a label switching router (LSR). The path through one or more LSRs at one level of the hierarchy followed by a packet in a particular FEC (Forwarding Equivalence Class) is known as a label switched path (LSP). MPLS and constraint-based routing (CR) enables traffic engineering operations in the network. The major objective of CR is to find a network path that meets a set of requirements or constraints and optimizes some scalar metric, e.g. the number of hops. The particular route starts at an ingress/source router and ends at an egress/destination router. The result of a CR operation is a constraint-based routed LSP (CR-LSP) - an LSP that is subjected to a set of constraints [18]. Because in multi-layer architecture more layers are considered, the size of the optimization problem grows harder that in single-layer network. Because both of presented models are NP-complete, the heuristic algorithms can be used to find solution for larger networks. We propose two heuristic algorithms: first is based on Flow Deviation method, the second is based on tabu-search algorithm. Because our problems are linear - to find optimal solution we use CPLEX linear programming package [10]. The first model uses modular link modeling, the second applies candidate link modeling. The
174
J. Gladysz and K. Walkowiak
results of algorithms will be compared with optimal solution yielded by CPLEX solver. We want to examine the performance of two-layers networks as a function of anycast traffic percentage, various number of distribution centers (servers or replicas) and the different size of network (number of nodes, links). Moreover, we report results showing that the use of anycast paradigm can reduce the network cost. The rest of this paper is organized in the following way. In the next section we present briefly the related work on multi-layer networks and anycasting. In section 3 we formulate and discuss the MPLS over DWDM two-layer architecture for modular and candidate type of links. Next two points state on two heuristic algorithms - flow deviation and tabu-search method. Section 6 includes results of computational results. The last section summarizes this work.
2
Related Work
In the literature there are many papers touching anycast paradigm. During few last years have been published papers that address locating and forwarding network traffic to any one of servers in network, especially for mobile or optical networks [1], [12], [17]. Most of interest in the context of QoS dynamic routing has been focused on the unicast traffic. This is obvious, since unicast routing between a specified pair on network nodes is relatively well understood in best effort networks. However, various techniques applying anycast flow paradigm have gained much attention in recent years. Anycast is a one-to-one-of-many technique to deliver a packet to one of many hosts. Comparing to unicast transmission, in anycasting one of the endpoints of the transmission must be selected among many possible nodes. One of the most well-known technologies that applies anycast traffic is Content Delivery Network (CDN). CDN is a mechanism to transport a range of content to end users on behalf of the origin Web servers. Information is offloaded from source sites to other content servers located in different locations in the network. For each request, CDN tries to find the closest server offering the requested Web page. CDN delivers the content from the origin server to the replicas that are much closer to end-users. The set of content stored in CDNs servers is selected carefully [13]. Other applications of anycast paradigm in computer networks are Domain Name Service, Web Service, Distributed Database System, host auto-configuration, overlay network, peer-topeer (P2P) systems, sensor networks [3]. Most of previous work on anycasting concentrates on IP networks using connection-less transmission modeled as bifurcated multicommodity flows [6],[8],[13]. Since we consider a connection-oriented network (e.g. MPLS), we model the network flow as non-bifurcated multicommodity flow. Consequently, the anycast request (demand) must consist of two connections: one from the client to the server (upstream) and the second one in the opposite direction (downstream). Upstream connection sends user’s requests. Downstream connection carries the requested data. Each anycast demand is defined by client node, volume of upstream and volume of downstream demand. In contrast, a unicast demand is defined by a following triple: origin node, destination node and volume of demand. Both connections (upstream and downstream)
Design of MPLS over DWDM Architecture for Unicast and Anycast Flows
175
associated with a particular anycast demand must connect the same pair of network nodes and one of these nodes must host a server. The MPLS layer consists of nodes - MPLS routers and logical links which are formed from lightpaths. The lower DWDM layer is responsible for physical transmission - in this layer we assume only one-to-one connection which are realized logical links in upper layer. In work [1] is formulated WDM anycast routing problem (WARP). The problem consists in finding a set of lightpaths, one for each source, for anycasting messages to one of the member in the anycast destination group such that not any path using the same wavelength passes through the same link. The objective of the WARP is to minimize the number of used wavelengths.
3
Optimization Models
The network model addressed in this paper is a two-layer model: MPLS over DWDM. The lower layer - optical transport layer applying DWDM - consists of nodes represented by optical cross-connects (OXCs) that perform wavelength routing operations and optical links - fibers. The upper layer - MPLS layer includes nodes represented by MPLS routers. A set of lightpaths (wavelengths) provisioned by WDM layer forms a logical topology for the MPLS routers. i.e. lightpaths represent in MPLS layer. In Fig. 1 we show a simple example to illustrate MPLS over DWDM architecture. The logical link between LSR4 and LSR3 consists of two lightpaths (wavelengths). These two lightpaths are routed in two various paths in the DWDM layer: OXC4-OXC2-OXC3 and OXC4-OXC5OXC3 [11]. The network is modeled as two graphs consisting of nodes and links. Nodes represent network devices like routers, switches in upper layer or optical cross-connects in lower layer. Links e = 1, 2, . . . , E denote logical links of MPLS network or physical links of lower layer, e.g. fibers. We are given the cost of one capacity module on link e in upper layer, cost of one module capacity on link g in lower layer and set of connections denoted by index d = 1, 2, . . . , D. We assume that connections a = 1, 2, . . . , A are anycast connections including both upstream and downstream connections. If connection a is an upstream
Fig. 1. MPLS over WDM architecture
176
J. Gladysz and K. Walkowiak
(downstream) connection, connection tau(a) denotes the associated downstream (upstream) connection. Connections u = A + 1, . . . , D are unicast. Notice that to distinguish anycast and unicast connection we use indices a and u, respectively. Let hd denote the volume of connection d = 1, 2, . . . , D [3]. In this paper we assume that network topology of both layers, localization of server-replicas, unicast and anycast demand, set of routes in MPLS upper layer and set of lightpaths for each MPLS logical links are given. indices: d = 1, 2, . . . , D connections (directed demands) both unicast and anycast a = 1, 2, . . . , A anycast connections (directed demands) u = A + 1, . . . , D unicast connections (directed demands) p = 1, 2, . . . , Pd candidate paths for demand d e = 1, 2, . . . , E network links in upper layer q = 1, 2, . . . , Qe candidate paths for link e in lower layer g = 1, 2, . . . , G network links in upper layer constants: δedp = 1 if link e belongs to path p realizing demand d, 0 otherwise = 1 if link g belongs to path q realizing capacity of link e, 0 otherwise γgeq M size of the link capacity module in upper layer N size of the link capacity module in lower layer volume of demand d hd ke cost of one capacity module on link e in upper layer κg cost of one capacity module on link g in lower layer o(p) origin node of path p t(p) destination node of path p τ (d) index of the anycast upstream (downstream) demand associated with anycast downstream (upstream) demand d variables: = 1 if path p is chosen to realize demand d, 0 otherwise (binary) xdp zeq number of paths q selected to realize capacity of link e, 0 otherwise (integer, non-negative) number of modules M to be installed on link e ye in the upper layer (integer, non-negative) number of modules N to be installed on link g ug in the lower layer (integer, non-negative) objective min subject to
p
d
p
p
e
ke ye +
g
κg u g
xdp = 1 d = 1, 2, . . . , D
δedp xdp hd ≤ M ye e = 1, 2, . . . , E
xap o(a, p) =
p
xτ (a)p t(a, p) a = 1, 2, . . . , A
(1)
(2) (3) (4)
Design of MPLS over DWDM Architecture for Unicast and Anycast Flows
q
e
q
zeq = ye e = 1, 2, . . . , E
γgeq zeq ≤ N ug g = 1, 2, . . . , G
177
(5) (6)
The objective (1) is to minimize the cost of operating two layer. Constraint (2) guarantees that only one route can be chosen for one connection (one for unicast connection, one for anycast connection upstream and one for anycast connection downstream) in upper layer. Condition (3) states that flow in each arc can’t be bigger than its capacity. Equation (4) guarantees that two routes associated with the same anycast demand connect the same pair of nodes. (5) is a demand flow constraint, i.e. the upper link is realized by a set of lower layer paths. Condition (6) states that flow in each link in lower layer can’t be bigger than its capacity. An important aspect of the presented model is modularity. Module size M is a capacity of one wavelength. For instance, if demands of MPLS layer are presented in STM-1 size (155.52 Mbps) and the wavelength has capacity STM-64 (9.952 Mbps), than M = 64. The module size N can be interpreted as the number of wavelengths in one fiber [11]. The next model is very similar to the former one, but uses different modeling of link costs, i.e. we are given a set of link proposal and we must select only one of them. This formulation denotes the situation that many telecom operators offer price list including links with decreasing costs of unit capacity with the increase of overall link capacity. For instance, link 10 Mb/s costs 1000 USD, while link of capacity 30 Mb/s costs 2000 USD. Note that in the first model the cost of link 30Mb/s would be 3000 USD. Decreasing link cost is introduced in MPLS upper layer, in DWDM layer the physical layer is realized using modular link cost. indices (additional) l = 1, 2, . . . , Ze candidate link types for link e constants (additional) capacity of link type k for link e cel cost of link type k for link e kel variables (additional) yel = 1 if link of type l is selected for link e, 0 otherwise (binary) objective min
e
l
kel yel +
κg u g
(7)
cel yel e = 1, 2, . . . , E
(8)
g
subject to (2), (4), (6) and d
p
δedp xdp hd ≤ l
q
l
yel = 1 e = 1, 2, . . . , E
zeq =
l
cel yel e = 1, 2, . . . , E
(9) (10)
178
J. Gladysz and K. Walkowiak
Comparing to the former model we modify the objective (7) and right-hand side of (8) and (10) way of calculating capacity in links. Condition (9) assures that only one value of capacity can be selected for each link.
4
Flow Deviation
In this section we present a heuristic algorithm developed for the problem (7)(11). The main idea of the algorithm is based on the Flow Deviation method. Our algorithm based on CFD LCF Algorithm [4]. Let r be the algorithm’s iteration number. Let fr = [f1r , f2r , . . . , fEr ] denote a vector of link flows calculated according to variables xdp obtained in the iteration r of the algorithm. Furthermore, we assume that g andv denote vectors of link flows, K(fr ) denote the first part of objective function ( l kel yel ) and ke (fr ) denote metric of link e in r iteration, B denote set including connections (unicast or anycast) that have not been already processed and SR(fr ) denote set of shortest path for each connection under metric ke (fr ) in upper layer. We assume that s is the algorithm’s iteration number in lower layer. For each links of upper layer we have given set of lightpaths in lower layer. Let hs = [h1s , h2s , . . . , hGs ] be a vector of link flows calculated according to variables zeg obtained in the iteration s of the algorithm for capacity of links in upper layer. Let c and n denote vectors of link flows in lowerlayer and |c| = |n| = G, K(hs ) denote the second part of objective function ( g κg ug ) and g(hs ) denote metric of link g in s iteration, D denote set including lightpaths that have not been already processed and SR(hs ) denote set of shortest path for each connection under metric κg (hs ). We can write our algorithm using the following steps: Step 1. Set r = 1. Compute initial selection f1 and metric k1 (f1 ). For each link e set k1 (f1 ) = ke1 . Then for unicast and anycast connection compute set SR(f1 ) using metric k1 (f1 ). For anycast demands, condition (4) must be satisfied. Then, for vector f1 find capacity of links in upper layer. Condition cel ≥ fe1 must be satisfied. Go to step (3). Step 2. Calculate metric ke (fr ). For each link e set ke (fr ) = min{kel } where cel ≥ fer . Then for unicast and anycast connection compute set SR(fr ) using metric ke (fr ). For anycast demands, condition (4) must be satisfied. Step 3. Let g = fr a) Find v from g by deviating flow of connection unicast d = A + 1, . . . , D or anycast d = 1, 2, . . . , A and τ (d) to the shortest path included in SR(fr ). Path for other connections remain unchanged. Compute K(v). Go to Step (5). b) If K(v) ≤ K(g) then set g = v. c) If B = ∅ go to step 4. Otherwise set B = B − {d} for unicast or B = B − {d, τ (d)} for anycast connection and go to step 3a. Step 4. If g = fr stop Algorithm. Since the solution cannot be improved. Otherwise set r = r + 1 and fr = g and go to step (2).
Design of MPLS over DWDM Architecture for Unicast and Anycast Flows
179
Step 5. Compute initial selection h1 and metric κ1 (h1 ). For each link g set κ1 (h1 ) = κg ug . Condition N ug ≥ hg1 must be satisfied. Then for each link of upper layer compute set SR(h1 ) using metric κ1 (h1 ). Go to Step 7. Step 6. Calculate metric κg (hs ). For each link g set κg (hs ) = min{ug } where N ug ≥ hgs . Then for each links of upper layer compute set SR(hs ) using metric κg (hs ). Step 7. Let c = hs a) Find n from c by deviating flow of link of upper layer e to the shortest lightpath included in SR(hs ). Path for other links remain unchanged. Compute K(n). b) If K(n) ≤ K(c) then set c = n. c) If D = ∅ go to step 7. Otherwise set D = D − {e} and go to step 7a. Step 8. If c = hs set K(v) = K(v) + K(c) and go to Step 3b. Since the solution cannot be improved. Otherwise set s = s + 1 and hs = c and go to step 6.
5
Tabu Search Algorithm
In this section we propose a new Tabu Search (TS) heuristic algorithm applied for the CFA problem with simultaneous unicast and anycast flows in two-layer, MPLS over DWDM architecture. The idea of this method was introduced in [2]. The first Tabu-Search method for unicast and anycast flows for CFA problem in single-layer network was presented in work of authors for linear function of cost. In this algorithm we extended the problem with optimization of the lower layer. The algorithm for lower layer uses the FD Algorithm, which was described in previous point. Our Tabu Search method uses the provided initial solution as a starting point and tries to improve this solution. First, using Top-Down and SRP algorithms we obtain an initial, feasible solution [5]. We assume that r denotes the number of algorithm’s iteration. Let IS denote the initial solution, CS denotes the current solution, BS denotes the best solution and let N S denote the neighborhood which is a set of neighbors N . As a neighbor we assume the solution similar to the current solution - it means that for each current solution the neighborhood is defined as a set of solution which has different selected paths for unicast or anycast demands. Let K(CS) denote a value of the objective (1) for the current solution CS. Our algorithm has three input parameters: number of iteration R, size of tabu-list L and maximal number of iterations with no improvement to the best solution K. The length of the tabu-list is an important parameter of our algorithm and it states for how many iteration given move (selected in last iteration unicast or anycast demand) is forbidden. To implement the tabu-list we use short-term memory. To evaluate each move we use the objective (1), i.e. if we switch the path of a selected demand and calculate the new objective function, which is compared against the previous value of the K(Z). The algorithm terminates according to one of two stopping conditions: (1) R iterations were run, (2) in subsequent K iterations there was no improvement of the solution.
180
J. Gladysz and K. Walkowiak
The main idea of Tabu Search algorithm can be described using the following steps. Step 1. Find an initial solution IS. Set CS = IS and BS = IS, r = 0. Calculate K(BS) as a cost of upper and lower layer (1). Go to step 2. Step 2. Set r = r + 1. Calculate N S: for each unicast and anycast demand which are not on the tabu-list change path included in CS (for anycast both upstream and downstream connection). Then for each change of path calculate k y . Then for each link in upper layer select light-path e e e in lower layer using FD Algorithms (Steps 5 - 8 in previous section). Calculate g κg yg and objective (1). Go to Step 3. Step 3. Select N from N S with minimal value of objective (1). If K(N ) ≥ K(BS), then BS = N , K(BS) = K(N ), k = 0 and put demand in selected N on tabu-list. Otherwise set k = k + 1. Go to Step 4. Step 4. If r = R or k = K then stop algorithm. Otherwise go to Step 2.
6
Computational Results
In this section we will show results related to both models introduced above. We run tests on the 3 networks - Poland, Germany and Atlanta. On Fig. 2 is presented upper layer of Topology Atlanta. Topologies of layers are taken from the library of test instances for telecommunication Network Design [16]. As it was described in previous points the capacity of links of the upper layer is realized by lightpaths flows in the neighboring nodes of lower layer. Poland Topology [16] has 12 nodes and 36 links. Nodes 1, 2, 3, 4, 6, 7, 8, 9, 11 are connected with nodes of upper layer. Nodes 5, 10, 12 are used in lower layer as a transit nodes. To obtain optimal solutions we used the CPLEX 11.0 [10] solver. Several demand patterns were created (e.g. for Polska Topology we created 50 unicast and 9 anycast demands). Various proportions between the summary volume of unicast demands and summary volume of anycast demands were used: 80%
Fig. 2. Topology Atlanta of upper layer
Design of MPLS over DWDM Architecture for Unicast and Anycast Flows
181
Table 1. Parameters of Tested Networks Network
Nodes
Polska Germany Atlanta
9 17 26
Polska Germany Atlanta
12 20 32
Links
Unicast
Upper Layer 20 50 52 119 82 234 Lower Layer 36 74 122
-
Anycast 9 13 22 -
unicast/20% anycast and 70% unicast/30% anycast. For each demand in the upper layer there are three proposals of candidate paths. Each link of the upper layer is constructed using two paths of the lower layer. In Table 1 we show main parameters of the networks and number of demands. The first aim of experiments was to tune the Tabu Search algorithm - we found the best values of tabu-list length L and the number of iterations R. The length of tabu-list was changed from 2 to 100 and the number of iterations was changed from 10 to 50 for each network. Results for Polska topology are presented on Fig. 3 and Fig. 4. Each curve represents results obtained with a particular number of iterations. We can notice that the cost decreases with the increase of iteration number. Taking into account the execution time of the Tabu Search algorithm, we suppose than we can obtain the most favorable values of objective for R between 20 and 40 and for L no less than 30 and no more than 40 [5]. According to results we set the number of iteration and size of tabu-list on 30. The next goal of experiments was to evaluate the Flow Deviation and Tabu Search approach against optimal solutions. Various proportions of the overall volume of unicast demands and anycast demands were used. In Table 2 we report the comparison between optimal results and Flow Deviation and Tabu Search for various scenarios in terms of the number of replicas and unicast/anycast proportion. The average gap of TS to optimal results is 2.44% and average gap
Fig. 3. The cost as a function of the tabu-list size and number of iterations
182
J. Gladysz and K. Walkowiak
Fig. 4. The execution time as a function of the tabu-list size and number of iterations Table 2. Avergae Gaps of Flow Deviation and Tabu Search Number of replicas
Optimal
FD
Gap
TS
Gap
70% unicast30% anycast 2 3 4 2 3 4 2 3 4 2 3 4
46 354 50 096 44 959 49 048 43 837 47 963 46 819 50 893 45 328 49 557 44 420 48 531 80% unicast20% 47 45 44 47 45 44
129 815 398 557 948 885
51 50 48 51 50 49
329 266 930 890 591 683
8,07% 47 9,09% 46 9,41% 45 8,70% 47 9,33% 46 9,25% 45 anycast
439 007 151 749 413 601
2,34% 2,33% 2,99% 1,98% 2,39% 2,66%
8,91% 9,71% 10,2% 9,11% 10,1% 10,68%
081 767 365 775 070 162
2,02% 2,07% 2,18% 2,56% 2,44% 2,85%
48 46 45 48 47 46
of FD to optimal is 9,1%. We can notice that execution time of CPLEX package is between 300 - 2400 seconds, execution time of FD is between 5 and 10 seconds and for TS time is about 30-60 seconds.
7
Conclusions
In this paper we have addressed the problem of flows and link capacity joint optimization with simultaneous anycast and unicast flows for two-layers, based on MPLS over DWDM architecture. The main contributions of this work are: presentation of two new optimization models, optimal solutions and new heuristic algorithms based on Tabu Search and Flow Deviation method. We can notice that for tested networks the TS algorithm provides results very close to optimal solutions - the average gap to optimality is 2-3%. The algorithm based on FD method departs about 9-10% from the optimal solutions. In the future we want to examine more, larger networks for different number of routes, more number of replicas and for different value of size of module - M and N .
Design of MPLS over DWDM Architecture for Unicast and Anycast Flows
183
References 1. Din, D.: Anycast Routing and Wavelength Assignment Problem on WDM Network. IEICE Transactions on Communications E88-B(4), 3941–3951 (2005) 2. Glover, F., Laguna, M.: “Tabu Search”. Kluwer Academic Publishers, Dordrecht (1997) 3. Gladysz, J., Walkowiak, K.: Optimization of cost function in mutli-layer networks for unicast and anycast flows. In: Proceedings of the 16th Polish Teletraffic Symposium PTS 2009, pp. 45–48 (2009) 4. Gladysz, J., Walkowiak, K.: A Flow Deviation Algorithm for Simultaneously Unicast and Anycast Routing in CFA Problem with Linear Cost Function. In: MOSIS 2009, MARQ 2009, pp. 121–128 (2009) 5. Gladysz, J., Walkowiak, K.: Tabu Search Algorithm for Survivable Network Design Problem with Simultaneous Unicast and Anycast Flows. Electronics and Telecommunications 56(1), 39–45 (2010) 6. Gouveia, L., Patricio, P., de Sousa, A.F., Valadas, R.: MPLS over WDM network design with packet level QoS constraints based on ILP models. In: Proceedings of INFOCOM 2003, pp. 576–586 (2003) 7. Grover, W.: Mesh-based Survivable Networks: Options and Strategies for Optical, MPLS, SONET and ATM Networking. Prentice Hall PTR, Upper Saddle River (2004) 8. Hao, F., Zegura, E., Ammar, M.: QoS routing for anycast communications: motivation and an architecture for DiffServ networks. IEEE Communication Magazine (6), 48–56 (2002) 9. Hofmann, M., Beaumont, L.: Content networking: architecture, protocols, and practice. Morgan Kaufmann, San Francisco (2005) 10. ILOG CPLEX 11.0 User’s Manual, France (2007) 11. Kubilinskas, E., Pioro, M.: An IP/MPLS over WDM network design problem. In: Proceedings of International Network Optimization Conference, INOC (2005) 12. Park, V., Macker, J.: Anycast Routing for Mobile Networking. Published in the Proceedings of MILCOM ’99, Atlantic City, USA, pp. 1–5 (1999) 13. Peng, G.: CDN: Content Distribution Network, Technical Report (2003), sunysb.edu/tr/rpe13.ps.gz 14. Perros, H.: Connection-oriented Networks, SONET/SDH, ATM, MPLS and Optical Networks. John Wiley & Sons, Ltd., Chichester (2005) 15. Rosen, E., Viswanathan, A., Callon, R.: Multiprotocol Label Switching. Architecture. RFC 3031 (2001) 16. SNDLIB Library of test instances for Survivable fixed telecommunication Network Design (2008), http://sndlib.zib.de/home.action 17. Szymaniak, M., Guillame, P., van Steen, M.: Versatile Anycasting with Mobile IPv6. In: ACM International Conference Proceeding Series, vol. 198(2) (2006) 18. Walkowiak, K.: Modelling of MPLS over WDM anycast and unicast flow allocation problem. Advanced Simulation of Systems, 45–50 (2007) 19. Wu, J.: Theoretical and Algorithmic Aspects of Sensor, Ad Hoc Wireless and Peerto-Peer Networks, Auerbach Publications 2006 Smith, T.F., Waterman, M.S.: Identification of Common Molecular Subsequences. J. Mol. Biol. 147, 195–197 (1981)
Comparative Analysis of Sleep Mode Control Algorithms for Contemporary Metropolitan Area Wireless Networks Alexey Anisimov1 , Sergey Andreev2 , Olga Galinina3 , and Andrey Turlikov4 1
4
H&NM Motorola Software Organization, Russia [email protected] 2 Tampere University of Technology (TUT), Finland [email protected] 3 Speech Technology Center, Russia [email protected] State University of Aerospace Instrumentation (SUAI), Russia [email protected]
Abstract. Recently, broadband wireless networks, such as IEEE 802.16 [1] and LTE, receive more and more attention from the researchers. Increasing the energy efficiency of the end clients in these systems is an important research task and the evaluation of the energy efficient mechanisms remains an open problem. In this paper we consider the sleep mode control algorithm of the novel metropolitan area networking standard, known as IEEE 802.16m. Also we introduce an alternative enhanced algorithm that contains the features described by the previous standard versions. We compare the sleep mode performance under the control of both standard and proposed algorithms for different arrival flow types and QoS restrictions. A relation between the parameters of the proposed algorithm and the standard IEEE 802.16m algorithm is also established. Keywords: IEEE 802.16, wireless network, energy efficiency, sleep mode.
1
Introduction and Background
Nowadays wireless networks receive increasing research attention due to the growing number of such networks and their clients. One of the core advantages provided by the wireless technology is the mobility of the end clients. However, mobile clients have limited battery power. For that reason, contemporary wireless networks impose additional restrictions on the energy efficiency of their clients. In this paper we conduct a comparative analysis between the various modifications of the sleep mode control algorithms for IEEE 802.16 standard designed specifically to increase the energy efficiency of the end clients. IEEE 802.16 standard defines a high speed wireless access system with support for various multimedia services. The standard contains specifications of S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 184–195, 2010. c Springer-Verlag Berlin Heidelberg 2010
Comparative Analysis of Sleep Mode Control Algorithms
185
Media Access Control layer (MAC) and of Physical layer (PHY). There are several possible realizations of the PHY layer. However, the most popular one is Orthogonal Frequency Division Multiple Access (OFDMA) [2]. Originally, IEEE 802.16 [3] has been designed for fixed Subscriber Stations (SSs), but the most recent IEEE 802.16-2009 standard [1] has support for mobile clients (Mobile Stations, MSs). Therefore, power saving is one of the constitutive issues and increasing client energy efficiency is an important objective. There are several proposals to make sleep mode operation more flexible and more effective [4], [5]. These proposals can be included into the future IEEE 802.16m standard [6], which is currently being processed for standardization. The most part of existing research papers considers sleep mode defined by IEEE 802.16-2009 standard. Zhang and Fujise [7] provide an analytical model to calculate the power consumption during the sleep mode. The model takes into account both types of traffic: downlink and uplink. However, the model estimates power consumption during a sleep period only (without awake periods) and packet delay is not taken into account. In [8] the authors consider the average power consumption and the average delay under the sleep mode operation (including awake period). Moreover some information is provided about sleep mode parameters influence on the average delay and on the average power consumption. Another research direction is summarized in [9]. The authors provide full analysis of the sleep mode operation for the efficient power saving mechanism and delay-guaranteed services. They use the M/GI/1/K queueing system with multiple vacations. Moreover, optimal parameters for sleep mode operation are presented. However, this analysis considers the sleep mode operation of IEEE 802.16-2009 standard. In [10] sleep mode operation proposed by Samsung for IEEE 802.16m is analyzed. There only power consumption is considered without any delay analysis. One more option to increase client energy efficiency is scheduling mechanism improvement. It is considered in [11]. The rest of the paper is organized as follows. In Section 2 we detail the sleep mode operation as described by various versions of IEEE 802.16 standard, including the proposed algorithm. Section 3 introduces the simulation methodology we follow to assess the performance of the sleep mode control algorithms. The obtained simulation results are presented in Section 4. Finally, Section 5 concludes the paper.
2
Sleep Mode Description
The most recent version of IEEE 802.16 standard [1] defines two energy efficient operation modes, namely, sleep mode and idle mode. Idle mode is used by the client’s MS in between data transmission sessions. By contrast, sleep mode is used during a data transmission session. In the idle mode an MS closes the network connection, which should be re-established to proceed with data transmission and/or reception. In what follows we concentrate on the sleep mode, whereas the idle mode is considered in [12]. The main property of the sleep mode operation is that an MS alternates listening and sleep periods with predefined durations. During a sleep period the
186
A. Anisimov et al.
MS temporarily switches off its radio interface and, consequently, reduces own energy consumption. The set of parameters for the sleep mode control algorithm is termed a Power Saving Class (PSC). According to the standard there are three types of PSC. PSC of type I defines the sleep mode with the variable sleep window. This type of PSC is recommended for Best-Effort (BE) and NonReal-Time Variable Rate (NRT-VR) connections and it specifies the following parameters: – Listening window size, L. – Initial sleep window size, S1 . – Maximum sleep window size, Smax . PSC of type II defines sleep mode operation with the constant sleep window size and is recommended for Unsolicited Grant Service (UGS) and Real-Time Variable Rate (RT-VR) connections. As such, the only parameters of this type of PSC are: – Listening window size, L. – Sleep window size, S. PSC of type III specifies a single sleep period after which an MS resumes its normal active operation. An example operation of the sleep mode for IEEE 802.16-2009 is given in Fig. 1. In order to initiate the sleep mode an MS sends a request to the Base Station (BS). In its response the BS specifies the time instant starting from which the MS may enter the sleep mode. During the listening periods the BS notifies the MS about the buffered data, if any, destined to this MS. If the BS outgoing buffer is empty, the MS may continue with the next sleep period. Therefore, for the PSC of type I the following sleep window size is given by: Si = min(2 · Si−1 , Smax ),
(1)
where Si−1 is the size of the previous sleep window and Smax is the size of the maximum sleep window. When BS notifies the MS about the buffered data, the MS exits the sleep mode and the downlink data transmission starts. In case of PSC of class II data transmission may take place during the listening period without explicit termination of the sleep mode by an MS. As such, the MS exits the sleep mode when the listening period duration is insufficient to transmit all the pending data packets. Today the novel version of the standard IEEE 802.16m is nearly being completed. It will incorporate several important extensions and amendments, including the advanced sleep mode control. An example operation of the modified sleep mode control algorithm is presented in Fig. 2. The operation time is broken into the sleep cycles. Each cycle comprises a listening period and a sleep period with the exception of the first cycle, which contains only a sleep period. Denote the duration of the i-th sleep cycle by Ci and the durations of listening and sleep periods by Li and Si , respectively. For PSC of type I the duration of the sleep
Comparative Analysis of Sleep Mode Control Algorithms
187
Sleep mode deactivation
1
2
3
4
5
6
7
9 10 11 12 13 14 15 16 17 18 19
8
Fig. 1. IEEE 802.16-2009 sleep mode operation example
1
2
3
4
5
6
7
8
9 10 11 12 13 14 15 16 17 18
Fig. 2. IEEE 802.16m sleep mode operation example
cycle is variable. The duration of the following sleep cycle is calculated exactly as in the legacy IEEE 802.16-2009 standard. One major improvement in the sleep mode operation of IEEE 802.16m is that the data transmission may occur without explicit termination of the sleep mode regardless of the PSC type. Therefore, the duration of the listening period increases either until all the pending packets are transmitted to the particular MS, or until the sleep cycle ends. In case of PSC of type I the duration of the sleep cycle is reset to its initial value of C1 . The MS enters the sleep mode either when BS notifies it that the outgoing packet buffer is empty, or after a time-out value T expires after the last data packet transmission. Below we propose and evaluate an alternative sleep mode control algorithm as a possible candidate for consideration by IEEE 802.16m standard. This algorithm is a combination of those defined by IEEE 802.16-2009 and IEEE 802.16m versions of the standard. An example operation of the proposed algorithm is shown in Fig. 3. On the one hand, the main difference between the new algorithm and the legacy one of IEEE 802.16-2009 is that an MS does not terminate
188
A. Anisimov et al.
the sleep mode during the reception of data packets. On the other hand, the difference from the IEEE 802.16m sleep mode control is that there is no explicit division into the sleep cycles. According to the IEEE 802.16m sleep mode control algorithm an MS always knows when the following sleep cycle starts. In the proposed algorithm the start time of the next sleep cycle is unknown. This is explained by the fact that for the IEEE 802.16m algorithm the data transmission time is included into the overall sleep cycle duration, whereas in the proposed algorithm the respective time is not included.
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
Fig. 3. Proposed IEEE 802.16 sleep mode operation example
Clearly, the sleep mode operation not only decreases the power consumption of an MS, but also increases the data packet transmission delay. Therefore, one should account for both performance metrics, when analyzing the efficiency of the sleep mode operation. Several metrics may be used to assess the energy efficient performance of the system. Below we consider two main options. Firstly, we account for the number of bits that may be received successfully by spending one Joule of energy. This value is measured in bits per Joule [13]. Additionally, we consider the reverse value, that is, the number of Joules to receive a bit reliably. Secondly, we account for the energy efficiency coefficient [14]. This coefficient shows, which part of total operation time an MS resided in the sleep state and may be calculated as follows: η = lim
t→∞
TS , TS + TA
(2)
where η is the energy efficiency coefficient, TS is the amount of time the MS spent in the sleep state and TA is the amount of time it spent in the active state. In order to simplify the subsequent derivations below we concentrate on the energy efficiency coefficient for the system energy efficiency evaluation. However, the considered model may be easily extended to allow for the consideration of
Comparative Analysis of Sleep Mode Control Algorithms
189
the actual energy efficiency value. To perform this, it is sufficient to account for the packet length value. Considering the QoS requirements predefined for a particular data flow, one may formulate several optimization problems. We consider a practical optimization task that accounts only for the restriction on the mean packet delay: Maximize fη (S1 , Smax , L, T ) under the restriction fD (S1 , Smax , L, T ) ≤ Dmax , where Dmax is the mean packet delay. However, some data flows are also sensitive to the packet delay variation (jitter) at the receiver side. As such, the above optimization task could be extended to account for the explicit restriction on the jitter value. There are also several alternative optimization task formulations. For instance, instead of the mean packet delay the maximum delay value could be subject to a restriction, or the probability of the event that the delay exceeds some threshold value. One may establish the maximum energy efficiency coefficient as: ηmax = 1 − ρ,
(3)
where ρ is the system load, that is the stationary proportion of time during which the server is busy.
3
Simulation Methodology and Analysis
In this section we detail the system model used for the development of the IEEE 802.16m MAC simulator. The model is based on the following assumptions. Assumption 1. Data transmission between the BS and a single MS is considered. Assumption 2. The BS has an outgoing data packet buffer of infinite size. Assumption 3. Only the downlink data flow is accounted for (from the BS to the MS). Assumption 4. Data packets are served by the BS in the order of their arrival. Assumption 5. The transmission time of a data packet takes exactly one frame. Assumption 6. The model accounts for two power consumption levels. Active state consumes the power PA and sleep state consumes the power PS . Below we discuss the assumptions of the simulation methodology. In practice the operation of an MS influences the work of the other MSs. However, this influence is dependent mostly on BS scheduling algorithms. Accounting for the
190
A. Anisimov et al.
fact that the scheduling algorithm is out of scope of the standard, there are numerous proposals of such an algorithm in the research literature, such as [15], [16] and [17]. All these algorithms are based on the particular set of input parameters. In order to reduce the number of parameters in the developed simulation model it was decided to focus on the system with one BS and one MS. The service discipline is FIFO and the transmission time of a packet equals to a frame duration for the sake of simplicity. Accounting for the Assumption 5 we rewrite expression (3) as: η ≤ ηmax = 1 − λ,
(4)
where λ is the mean arrival rate measured in data packets per frame. Below we introduce a technique to numerically evaluate the mean packet delay and energy efficiency coefficient for the proposed sleep mode control algorithm. This technique uses the regenerative approach from [18]. A regeneration cycle begins when time-out starts, conditioning on the fact that there was no data transmission during this time-out. A cycle ends when BS buffer empties. As such, there is at least one data packet transmission per regeneration cycle. For more details the reader is referred to our previous work [19]. 3.1
Mean Packet Delay Analysis
The value of the mean packet delay may be established by the following expression: E[W ] =
E[T 2 ] λ · E[X 2 ] + + Wt , 2 · (1 − ρ) 2 · E[T ]
(5)
where λ is mean arrival rate, E[X] is the service time, ρ is the system load, E[T ] is the estimated time interval between two consecutive data packet transmissions, which are separated by at least one sleep period and E[T 2 ] is its second moment. Wt is the transmission delay of a packet. The values of E[T ] and E[T 2 ] may be obtained as follows: E[T ] =
∞ i=1
E[T ] = 2
t
Π0i−1 · (1 − Π0L+Si ) · ti , and ∞
t
Π0i−1 · (1 − Π0L+Si ) · t2i ,
(6)
i=1
where ti stand for the possible duration of a regeneration cycle, that is t0 = 0, t1 = L + S1 , t2 = t1 + L + S2 , etc. Here Π0ti is probability that there are no packet arrivals during ti . In the case of Poisson arrivals it equals to: Π0ti = e−ti ·λ .
(7)
Comparative Analysis of Sleep Mode Control Algorithms
3.2
191
Energy Efficiency Coefficient Analysis
The value of the energy efficiency coefficient may be established by the following expression: TS TA −1 η= = (1 + ) = (1 + TS + TA TS
E[m] + ∞ i=1
∞ i=1
Si ·
t
i · Π0i−1 · (1 − Π0L+Si )
t Π0i−1
· (1 −
Π0L+Si )
)−1 , (8)
where E[m] is the mean number of packets transmitted per regeneration cycle.
4
Simulation Results
Poisson arrival flow. Consider Poisson arrival flow as an example. Fig. 4 shows the dependence of the energy efficiency coefficient on the mean data packet delay restriction for two sleep mode control algorithms. We notice that the two algorithms demonstrate nearly the same values of the energy efficiency coefficient. We, therefore, conclude that the analysis from our previous work [19] may be applied for both sleep mode control algorithms. However, for the case of the IEEE 802.16m algorithm it is not straightforward to obtain the optimal parameters.
η
0.85
0.8 IEEE 802.16, proposed IEEE 802.16m η
0.75
max
0.7
50
100 D max , ms
150
Fig. 4. Energy efficiency coefficient for Poisson arrival flow
200
192
A. Anisimov et al.
Below we introduce a simple expression to derive the optimal parameters of the IEEE 802.16m algorithm as a function of the optimal parameters of the proposed algorithm: ∞ (Se + 1) · λi+1 , C= (9) i=0
where Se is the optimal duration of the sleep period for the proposed algorithm obtained as shown in [19] and C is the optimal duration of the sleep cycle for the IEEE 802.16m algorithm. HTTP arrival flow. In order to compare the considered versions of the sleep mode control algorithms for different traffic arrival flows, we implemented the HTTP flow model from [20]. Fig. 5 demonstrates the dependence of the energy efficiency coefficient on the mean data packet delay restriction for HTTP arrival flow. As we can see, the proposed sleep mode control algorithm outperforms the standard IEEE 802.16m algorithm. However, increasing the mean delay restriction we notice the convergence between the two algorithms. We note that HTTP belongs to the BE QoS class, which imposes no limitations on the QoS parameters. Therefore, sleep period durations (and, consequently, the delay) may be considerably high. At the same time, the traffic of this QoS class uses the residual bandwidth after scheduling all the other higher-priority QoS classes. Consequently, if MS takes too long sleep periods, the amount of the unused residual bandwidth grows and, as such,
0.9
η
0.85
0.8
IEEE 802.16m IEEE 802.16, proposed ηmax
0.75 50
100 D max , ms
150
Fig. 5. Energy efficiency coefficient for HTTP arrival flow
200
Comparative Analysis of Sleep Mode Control Algorithms
193
system spectral efficiency drops. As a consequence, the economical attractiveness of the system decreases. By contrast, the proposed algorithm allows for the increase in the energy efficiency coefficient of end clients and at the same time accounts for the service provider interests. VoIP arrival flow. This flow type imposes a restriction not only on the data packet delay, but also on the jitter value. Accounting for the jitter restriction, the sleep mode control algorithm of IEEE 802.16m standard provides higher energy efficiency coefficient than the proposed algorithm.
5
Conclusions
In this paper we proposed a novel sleep mode control algorithm that is a combination of the algorithms proposed in IEEE 802.16-2009 and in IEEE 802.16m standards. Also we introduced a technique to evaluate the energy efficiency of the sleep mode operation accounting for the QoS restrictions. Additionally, we compared the two considered control algorithms for different traffic arrival flow types. We established that for the case of Poisson arrival flow the performance of the two algorithms is approximately the same. Therefore, the method to numerically analyze the performance of the sleep mode described in our previous work [19] may also be applied for the evaluation of the energy efficiency and the mean packet delay for the novel IEEE 802.16m standard. Moreover, a simple relationship between the optimal parameters of the proposed and IEEE 802.16m sleep mode control algorithms was established. Further, we conducted the comparative analysis of the two considered sleep mode control algorithms for the case of the bursty traffic. As follows from our results, for the case of HTTP traffic the proposed algorithm demonstrates the higher value of the energy efficiency coefficient. In particular, the highest gain of the proposed algorithm is noticed for the sufficiently small values of the mean packet delay restriction. Increasing the value of the mean delay restriction, the energy efficiency coefficients of the two algorithms converge and, in the end, become equal. We also note that HTTP traffic generally belongs to the best effort QoS service class and, as such, has no explicit QoS parameters. At the same time, the use of the high sleep mode durations leads to the decrease in the system spectral efficiency, which contradicts the service provider interests. Therefore, the proposed algorithm accounts for the interests of the end clients (in particular, the reduction in their power consumption and the increase in their operation time), as well as for the interests of the service providers (in particular, preserving the high value of the spectral efficiency). We also established that the use of the proposed algorithm for the VoIP arrival flow type is impractical, since IEEE 802.16m sleep mode control algorithm demonstrates higher energy efficiency coefficient for this case. We remind that this is due to the fact that VoIP traffic has strong restriction on the jitter value.
194
A. Anisimov et al.
Summarizing, we conclude that the proposed sleep mode control algorithm may be used for the bursty traffic without explicit restriction on the jitter value, or when this restriction is rather flexible.
Acknowledgments This work is supported by the Russian Foundation for Basic Research (projects # 10-08-01071-a and # 08-08-00403-a), as well as by the Branch of Nano- and Information Technologies of Russian Academy of Sciences (project 2.3)
References 1. IEEE 802.16-2009. IEEE Standard for Local and metropolitan area networks (May 2009) 2. WiMAX System Evaluation Methodology, Version 2.1, WiMAX Forum (July 2008) 3. IEEE 802.16-2004, Part 16: Air Interface for Fixed Broadband Wireless Access Systems (October 2004) 4. Sleep Mode Operation for IEEE 802.16m, C802.16m-08/721r1 (July 2008) 5. Sleep Mode for IEEE 802.16m System, C802.16m-08/688r1 (July 2008) 6. The Draft IEEE 802.16m System Description Document, IEEE 802.16m-08/003r5 (October 2008) 7. Zhang, Y., Fujise, M.: Energy management in the IEEE 802.16e MAC. IEEE Communications Letters 10(4), 311–313 (2006) 8. Han, K., Choi, S.: Performance analysis of sleep mode operation in IEEE 802.16e mobile broadband wireless access systems. IEEE VTC 3, 1141–1145 (2006) 9. Park, Y., Hwang, G.U.: An efficient power saving mechanism for delay-guaranteed services in IEEE 802.16e. IEEE VTC (2007) 10. Baek, S., Son, J.J., Choi, B.D.: Performance analysis of sleep mode operation for IEEE 802.16m advanced WMAN. In: MACOM (2009) 11. Kim, J.Y., Kwon, T., Cho, D.-H.: Resource allocation scheme for minimizing power consumption in OFDM multicast systems. IEEE Communications Letters 11(6), 486–488 (2007) 12. Kim, B., Park, J., Choi, Y.-H.: Power saving mechanisms of IEEE 802.16e: sleep mode vs. idle mode. In: Min, G., Di Martino, B., Yang, L.T., Guo, M., R¨ unger, G. (eds.) ISPA Workshops 2006. LNCS, vol. 4331, pp. 332–340. Springer, Heidelberg (2006) 13. Himayat, N., et al.: Improving client energy consumption in 802.116m, C802.16m09/107r6 (January 2009) 14. Kong, L.: Performance analysis and optimization for MAC-layer IEEE 802.16e power saving mechanism. Master’s thesis, Hong Kong University of Science and Technology (2007) 15. Wan, L., Ma, W., Guo, Z.: A cross-layer packet scheduling and subchannel allocation scheme in 802.16e OFDMA system. In: IEEE Wireless Communications and Networking Conference, vol. 1, pp. 1865–1870 (2007) 16. Singh, V., Sharma, V.: Efficient and fair scheduling of uplink and downlink in IEEE 802.16 OFDMA networks. In: IEEE Wireless Communications and Networking Conference (2006)
Comparative Analysis of Sleep Mode Control Algorithms
195
17. So-In, C., Jain, R., Tamimi, A.K.: Scheduling in IEEE 802.16e mobile WiMAX networks: Key issues and a survey. IEEE Journal on Selected Areas in Communications 27(2), 156–171 (2009) 18. Crane, M.A., Lemoine, A.J.: An Introduction to the Regenerative Method for Simulation Analysis, Berlin, Heidelberg, New York (1977) 19. Anisimov, A., Andreev, S., Turlikov, A.: IEEE 802.16m energy-efficient mode operation analysis with mean delay restriction. In: ICUMT (2009) 20. Traffic Model for 802.16 TG3 MAC-PHY Simulations. IEEE 802.16.3c-01/30r1 (March 2001)
Determining Normalized Measure of Dispersion for Evaluating the Performance of IEEE 802.11 Faisal Iradat and Sayeed Ghani Faculty of Computer Science, Institute of Business Administration, Karachi Pakistan {firadat,sghani}@iba.edu.pk
Abstract. In this paper we attempt to establish patterns for the Normalized Measure of Dispersion in order to compute the total average end-to-end packet delay in IEEE 802.11 wireless local area network. In order to achieve this, we adopt a reverse engineering approach in which the normalized measure of dispersion is used for determining variation in service times which when applied to the traditional M/G/1 queueing system points toward developing a complete model based on this normalized measure of dispersion and offered load dependency study. From this analysis we have driven nonlinear equations through best fit model for computing the average packet delay. Our analysis can further be extended by deriving nonlinear equations with network parameters for accurately modeling IEEE 802.11 DCF. Keywords: Coefficient of Variation, Delay, M/G/1, IEEE 802.11 DCF, Simulation.
1 Introduction Popular for its ease of deployment and lower costs, IEEE 802.11 based wireless local area networks (WLAN) are one of the most researched upon and widely used wireless networks. The IEEE 802.11 defines two channel access mechanisms, the Distributed Coordination Function (DCF) and the Point Coordination Function (PCF). In DCF, a mobile station ceases to transmit packets until it senses the channel idle. The DCF mechanism uses the CSMA/CA protocol with binary exponential backoff algorithm for contention based channel access. In this paper we limit our investigations to DCF only, as it is the most widely accepted mechanism by the research community. Existing work on the performance of IEEE 802.11 DCF has been limited primarily to throughput [1]. Recently the focus has shifted to analyzing the performance in terms of average end-to-end packet delay [2],[3],[4]. However due to the complexity and inaccuracies in these models it has lead us to further investigate the performance of IEEE 802.11 DCF. As an example, [2] and [3] have extended the existing work of [1] to analyze the average end-to-end packet delay performance of IEEE 802.11 DCF, however recent extensive studies [5] reveals that these models are inaccurate and also not conforming to each other. In [4] it has been shown that as the channel utilization is gradually increased to 100% the average end-to-end packet delay still remains S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 196–206, 2010. © Springer-Verlag Berlin Heidelberg 2010
Determining Normalized Measure of Dispersion
197
under 5 secs which is much lower than expected [6]. A detailed overview of the related work can be found in [5]. To improve the results, we have taken the average packet processing rate equation from [2] and used it in our model for computing total average end-to-end packet delay provided that the network is in saturation conditions. In this paper we compare the results of our model with Pham, Perreau, and Jayasuria [2]. In order to develop a model for computing the delay performance of IEEE 802.11 DCF, we have adopted a reverse engineering approach for the analysis. The advantage of this approach is that performance theory can be developed on the basis of results generated through simulations. The resulting model can then be used for accurately measuring performance. Our model is summarized below. Each node in the network is modeled as a traditional M/G/1 queue. To compute the average end-to-end packet delay we take the average packet processing rate equation from [2], and express the second moment of the service rate as a function of coefficient of variation , and average service time . We then apply these quantities to the waiting time equation of M/G/1 to determine average end-to-end packet delay. Now by varying in the range (0.0001 to 1.0), a set of values for average end-to-end packet delays are generated which are then compared with the actual simulation results. For an exact match, the value of and corresponding offered load are recorded. This process is repeated at different loads for packet sizes of 1000 and 1500 bytes, as well as with varying number of nodes. On plotting versus we find that the normalized measure of dispersion of and offered load have a mutual dependency. This service time distribution dependency results in a pattern to which we apply a best-fit-model. By this model fitting process we get a set of nonlinear equations which can be solved by varying the offered load for computing generic values of . We then use the computed , in the waiting time equation of the M/G/1 queuing system for computing the total average packet end-to-end delays. The results of our model have been extensively verified through simulations and are found to be better than those in [2]. However the results can be further improved by deriving equations in terms of network parameters in the future. The rest of the paper is organized as follows. In section 2 we provide all the necessary background for developing the analytical model. In section 3 we verify and present our results by comparison with simulation and finally conclude our paper in section 4.
2 Preliminaries In this section we present the model developed for determining the performance of IEEE 802.11 DCF. In our model we assume that each node behaves like a traditional / /1 queue. The network topology used consists of nodes surrounding a center node to which all nodes send data. Packets arrive according to a Poisson process with an arrival rate of and service time follows a general distribution with average packet processing rate . The normalized offered load of the system can now be expressed as ⁄ . To ensure saturation conditions we assume that the queue is never empty. For channel reservations RTS and CTS packets are exchanged.
198
F. Iradat and S. Ghani
2.1 Packet Processing Rate Derivation To determine the average packet processing rate we rely on Pham’s model [2] which is summarized below. Pham’s model complements Binachi’s model [1]. In [1], Bianchi has modeled the exponential backoff process of IEEE 802.11 DCF using a very simple analytical model. The key assumption in Bianchi’s model is that the retransmission suffered by a packet is modeled as constant and independent collision probability . A node in transmitting mode can be easily modeled if the probability that a node transmits in a given slot is known. In IEEE 802.11 DCF, the time after Distributed Inter Frame Space (DIFS) is slotted and a node transmits only at the beginning of each slot conditioned on its backoff timer value reaching zero. The backoff timer is generated from the range 0, 1 , where is the contention window size and depends on past failed transmissions. Details of IEEE 802.11 DCF mechanism and the exponential backoff algorithm can be found in [7]. To derive , consider a situation where the backoff timer for a particular node has decremented to zero. Regardless of the contention stage the node is in, the node transmits with probability under the assumption that the packet collides with a constant and independent probability . From [1], can be written as follows: τ
2 1
2p ⁄ 1
2p W
1
pW 1
2p
(1)
Now if we assume a situation in which nodes are contending for channel access and at least one node from 1 transmits in the same slot. This results in collision which can be expressed as follows: p
1
1
τ
(2)
Equations (1) and (2) are nonlinear with two unknowns, and . One can easily derive the values of and by applying numerical analysis techniques for different values of and . The values for and are taken from [7]. From [2], the average packet processing rate can now be expressed as follows: µ
τ 1
⁄σ
τ
(3)
Equation (3) can be described as a given node in saturation condition, successfully transmitting a packet in a given slot . Where is the average slot [2] and expressed as follows: σ
1
P N σ
P N P N T
P N 1
P N T
Following are the states of a slot: Table 1. States of Slot Idle slot Non-Idle slot
1 1 Collision
Successful
(4)
Determining Normalized Measure of Dispersion
199
As each node in the network transmits with the probability τ, P N and P N can be written as follows: P N
Nτ 1
⁄P N ; P N
τ
1
1
τ
is the probability that there is at least one transmission in a slot time, is the probability that exactly one station from successfully transmit on the is the average time when the channel is busy due to a successful channel, is the average time of collision. transmission, and Here
T
T
SIFS δ T DIFS δ T
SIFS
T
δ
DIFS
T
SIFS
δ
δ
T
(5)
(6)
, and are propagation delay, packetization delay and Here parameters , Short Inter Frame Space respectively. All quantities in (5) and (6) are expressed in the same unit. Having the complete set of equations we can now compute the average end-to-end packet delay . Pham [2] used / /1/ queue for modeling nodes in order to evaluate the performance of IEEE 802.11 DCF, where is the maximum number of packets in the system. In this queueing system packets arrive at the nodes according to a Poisson process and the service times are exponentially distributed. The following equations derived in [2] are used for computing the total average end-to-end packet delay :
⁄ 1
;
1
⁄
1
and 1 are average number of packets in the queue (One can easily derive through / /1/ queueing analysis as arrivals are Poisson) the equation for and effective packet arrival rate (packets that are not dropped) respectively, and ⁄ . 2.2 The Queueing Model To improve Pham’s [2] result, we change the queueing model and develop an analysis by employing a reverse engineering approach. In our model each node behaves like a traditional / /1 queue where packets arrive according to a Poisson process and service times have a general distribution. The reason for modeling nodes with a traditional / /1 queue is due to the fact that it gives rise to a solution that is better than / /1 queueing system and also approximates better at all points in time [8]. By using a reverse engineering approach and developing a model from it, we hope that it would provide a basis for determining a better service time distribution. However by modeling each node in the network as a traditional / /1 queue makes the analysis more difficult, due to the computation required of the second moment of the service time . The general method for computing the variance is by subtracting the average service time from each service time score, however due to the
200
F. Iradat and S. Ghani
unavailability of service time scores we have adopted a much simpler approach for computing variation in service time, which is the normalized measure of dispersion for service time distribution (or coefficient of variation, ). As each node is modeled as an / /1 queue, to compute performance we rely on the waiting time equations derived in [8]. Using the Pollaczek-Khinchin (P-K) formula in [8], we can express the total time that a packet has to wait in queue and in service as follows: T
X
λX
2 1
(7)
ρ
1⁄ µ Where In IEEE 802.11, the queue length for each node is finite (50 packets), hence we , packets which are not dropped from the queue, and ρ replace λ with 1 ⁄ . Equation (7) can now be rewritten as follows: (offered load) with 1 T
X
λ 1
p
X
2 1
λ 1
(8)
⁄µ
p
However, to determine the service time variation, we express X as a function of coefficient of variation and average service time (X ) which is as follows: X Substituting T
C X
in equation (8) we get X
λ 1
p
C X
2 1
λ 1
p
⁄µ
(9)
From equation (9), we can now generate a set of values for average end-to-end packet delay by varying from 0.0001 to 1.0 and comparing it with simulation results in order to establish the normalized measure of dispersion for service time distribution and offered load dependency study. We then best-fit a model to the pattern (dependency) and derive a set of nonlinear equations for different packet sizes, offered load and nodes.
3 Model Validation and Simulation Results To verify our findings, we have conducted extensive simulations in Qualnet [9]. Our simulation model consists of nodes topologically arranged in a circle around one node. Each node on the circle sends packets to the center node at a variable bit rate and saturation conditions are ensured i.e. the queue in never empty. All nodes are at a transmission range of 250 from the center node spread over an area of 400 400 . The value of the network parameters used in both theory and simulations are taken from [7]. All simulations results have been obtained with 95% confidence level with 3 repetitions with different seeds. In order to further strengthen the validity of our study we have conducted simulations for two different packet sizes, 1000 bytes and 1500 bytes.
Determining Normalized Measure of Dispersion
201
3.1 Normalized Measure of Dispersion and Offered Load Pattern In figures 1 and 2 we show on a linear scale the mutual dependency of the normalized measure of dispersion for service time distribution versus the offered load for packet size of 1000 and 1500 bytes respectively. We also observe that the curve for different nodes resembles an exponential curve.
Fig. 1. Packet size of 1000 Bytes
Fig. 2. Packet size of 1500 Bytes
In figures 3 and 4 we see a similar trend at different data rates and packet sizes, which proves that the the normalized measure of dispersion and offered load dependency study can be used for accurately computing the saturation performance of IEEE 802.11 DCF.
202
F. Iradat and S. Ghani
Fig. 3. Varying data rates for packet size of 1000bytes
Fig. 4. Varying data rates for packet size of 1500bytes
Our main objective is to show that normalized measure of dispersion and offered load have a mutual dependency. In the future if such a model is proposed based on this study one can determine accurate saturation performance of IEEE 802.11 DCF. 3.2 Average End-to-End Packet Delay As a simple example to prove the validity of this dependency, we show that if a single exponential fit is applied to all the curves in figure 1 and similarly in figure 2, where the exponential fit best approximates a curve for a particular value of offered load we see that the results are quite accurate in comparison to simulation as shown in figures 5, 6, 9, 10 and 11. In figures 7 and 8 we notice that the results are less accurate. This pattern has been observed in our results, that for smaller packet sizes (e.g. 1000 Bytes) the accuracy of the result reduces at very high loads (e.g. =0.95, 1.0). This study can be extended by expressing coefficients of the exponential fit in terms of
Determining Normalized Measure of Dispersion
203
network parameters, resulting in a model that will accurately determine the saturation performance of IEEE 802.11 DCF. Details of model fitting is described below. To determine average end-to-end packet delay we apply a single exponential fit to all the curves in figure 1 and similarly in figure 2. The following coefficients a and b are determined: (10) Value of is from the range (0.85 - 1.0 with an interval of 0.5) for case 1 and from this range (0.9 - 1.0 with an interval of 0.5) for case 2, as these are the offered loads in which the system is in saturation. Case 1(1000 Bytes) – coefficients with 95% confidence bounds and RMSE = 0.0399: 1.594
006
6.572
17.32
005, 3.846
006 ;
18.96, 15.68
The values in the bracket specify the lower and upper bound regions. Case 2(1500 Bytes) – coefficients with 95% confidence bounds and RMSE = 0.03668: 6.763
005
5.79
15.74
005, 1.932
006
17.78, 13.71
Substituting the generic values of C derived in the earlier section in equation (9), we then compute the average end-to-end packet delay. Figures 5 to 8 show the average end-to-end packet delay curves for packet size of 1000 bytes with varying load (refer to case 1).
Fig. 5. Average end-to-end packet delay (Packet size = 1000bytes and ρ=0.85)
204
F. Iradat and S. Ghani
Fig. 6. Average end-to-end packet delay (Packet size = 1000bytes and ρ=0.9)
Fig. 7. Average end-to-end packet delay (Packet size = 1000bytes and ρ=0.95)
Fig. 8. Average end-to-end packet delay (Packet size = 1000bytes and ρ=1.0)
Determining Normalized Measure of Dispersion
205
Figures 9 to 11 show the average end-to-end packet curves for a packet size of 1500bytes with varying load (refer to case 2):
Fig. 9. Average end-to-end packet delay (Packet size = 1500bytes and ρ=0.9)
Fig. 10. Average end-to-end packet delay (Packet size = 1500bytes and ρ=0.95)
Fig. 11. Average end-to-end packet delay (Packet size = 1500bytes and ρ=1.0)
206
F. Iradat and S. Ghani
Except for cases where the exponential fit is not so accurate, we have improved significantly the results of [2] in overall. Substituting the values of and in equation (10) and varying the offered load for each case, we are able to derive the generic values of . Our model is at a very preliminary stage, however it provides direction for accurately modeling IEEE 802.11 DCF using a simple approach.
4 Conclusion In this paper we present an alternative methodology as compared to [2] to evaluate the performance of IEEE 802.11 DCF in terms of average end-to-end packet delays in saturation conditions. We have used a reverse engineering approach to develop a model for computing average packet delays. Our main contribution is showing that normalized measure of dispersion for service time distribution and offered load have a mutual dependency. This dependency results in a pattern to which we apply a best fit model for developing equations which can be used for calculating average end-to-end packet delays through a simple method. Our analytical model has been extensively verified using simulations and shows significant improvement in results.
References 1. Bianchi, G.: Performance Analysis of the IEEE 802.11 Distributed Coordination Function. IEEE Journal on Selected Areas in Communication, vol 18(3m), 535–547 (2000) 2. Pham, P., Perreau, S., Jayasuriya, A.: Performance Analysis of the IEEE 802.11 DCF. In: IEEE Asia-Pacific Conference on Communications (2005) 3. Vardakas, J.S., Papapanagiotou, I., Logothetis, M.D., Kotsopoulos, S.A.: On the End to End Delay Analysis of the IEEE 802.11 Distributed Coordination Function. In: IEEE International Conference on Internet Monitoring and Protection (2007) 4. Linfang, D., Yantai, S., Haiming, C., Maode, M.: Estimation and Application of End-to-End Delay Under Unsaturation Traffic in Wireless and Adhoc Networks. In: 2nd International Conference on Mobile Technology Applications and Systems (2005) 5. Iradat, F., Ghani, S.: Limitations of Using Existing Queuing Models for Modeling IEEE 802.11 DCF. To appear in International Conference on Computer, Electrical, and Systems Science, and Engineering (ICCESSE 2010), Paris, France (2010) 6. Tickoo, O., Sikandar, B.: Queuing Analysis and Delay Mitigation in IEEE 802.11 Random Access MAC based Wireless Networks. In: IEEE INFOCOM (2004) 7. IEEE 802.11 Working Group, IEEE Std. 802.11-1999, Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) specifications, IEEE Std. (1999) 8. Betsekas, D., Gallager, R.: Data Networks, 2nd edn. Prentice-Hall Inc., Englewood Cliffs (1992) 9. Scalable Network Technologies. Qualnet Simulation 5.01, http://www.scalablenetworktechnologies.com
Development of a System to Promote Eco-Driving and Safe-Driving Ryosuke Ando1, Yasuhide Nishihori1, and Daisuke Ochi2 1
Research Department of TTRI (Toyota Transportation Research Institute), Wakamiya-cho 1-1, Toyota, Aichi 471-0026, Japan [email protected] 2 Trans Field, Inc.
Abstract. This study aims to develop a system by applying the mobile information and communication technology to promote eco-driving and safe- driving. A probe-person unit developed by author et al. is changed to be functional with the above purposes through adding some devices. Then the system is proposed and developed to network the operators and users. On the basis of the information provision through the mobile phone and website, the social experiments for the promotion of the eco-driving and the safe-driving are implemented. Keywords: Service and application, Eco-driving, Safe-driving, Green mobility and Probe-person.
1 Introduction 1.1 Background and Aim In Japan, 13 cities had been selected as the Environmental Model Cities by the central government by January of 2009. Toyota City is one of them. Toyota City is the city where the Toyota Motor Corporation was founded and located. Most of the residents drive cars everyday and the car-use shares the largest percentage of all travel modes. Hence, in order to approach to the goal set in the Action Plan of Toyota Environmental Model City, the eco-driving had been treated as one of the most important and effective measures. To promote the eco-driving is a very hard work. Up to now, the most widely used approaches may be just calling the people’s attention for the climate change problem/the global environment issue or providing the information on the reduced amount of the fuel consumed when making eco-driving. However, there is still no obvious effect in Japan. We think that one reason is because the drivers do not know what kinds of effects evidently. Thus we proposed our idea to the Ministry of Economy, Trade and Industry (METI) of Japan. And then we developed a system to promote the eco-driving by considering the promotion of the safe-driving under the funding from the METI. In this paper, the system we developed is introduced and its expected effects are reported. S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 207–218, 2010. © Springer-Verlag Berlin Heidelberg 2010
208
R. Ando, Y. Nishihori, and D. Ochi
A description of data collection unit is given in Section 1.2 as an introduction. Chapter 2 is the outline of the system. Chapter 3 is the results of the social experiment. Chapter 4 is the summary and conclusions. 1.2 Description of Data Collection Unit A unit called BCALs (Behavioral Context Addressable Loggers in the Shell, refer to Fig.1) was first developed by Trans Field, Inc. [1] several years ago for the probeperson survey and has been improved for this study by adding up the device to measure the accelerations. The sizes of the unit are 98 mm long, 61 mm wide and 18 mm high. Its weight is only 100 g. The operation needed is just only to switch power on or off. Therefore, the people can easily put it into their pockets like a mobile phone or put it on the dashboard of their cars. The power may be from the cigar-socket in the car or just from the rechargeable battery with the capacity of 750 mAh inside. As it can catch the GPS (Global Positioning System) signal, we can obtain the position and time information so that we can compute the travel speed, too. The sensor of the accelerations in three directions equipped in the BCALs let us be able of knowing the accelerations of the car in three directions. The accelerations in three directions may be used to understand the driving is smooth and safe or not. Furthermore, the communication module of a Japanese mobile phone carrier has been installed inside, too. This communication module makes us be able to get the real time data about the driving when the BCALs unit is equipped. In addition, the function of A-GPS (assisted GPS) can be applied for positioning even under the ground such as the subway station et al. The measuring time intervals can be set between 1 to 1800 seconds (2 seconds was used in this study). The communication time intervals can be set between 60 to 1800 seconds or before sleeping. The sleeping mode may be set to automatically occur after the certain time period since the engine-off of the car (1800 seconds after the engine-off was adopted in this study). Moreover, all parameters given here may be changed on-line and remotely.
2 Outline of the System 2.1 Communication Network and Data Transmission Communication network of the system is depicted in Fig. 1. The driving data are collected by the BCALs put on the dashboard of the cars. Reasons for that we adopted the BCALs are its relative low cost and its relative high performance. The data include the longitude, the latitude, the time, the acceleration in the three directions etc. of the car. The collected data are sent to server PC by the packet transmission through the mobile phone communication module. The received data in the server PC are processed automatically by program which has been prepared by managers in advance and then some of them are sent to the mobile phones of users and upload to website. Therefore, the users may access the website and check all respective with the defined indicators, too.
Development of a System to Promote Eco-Driving and Safe-Driving
209
System manager
④
In driving
At home or office
Collection of data on driving Network of data transmission
Internet
①
③ Server PC
②
BCALs
After driving Mobile phone By e-mail: visualization of driving -record of driving -evaluation of eco-driving & safe-driving etc.
Through website: visualization of driving ・record of driving in detail ・ evaluation of eco-driving and safe-driving ・result of ranking ・eco-points etc.
Fig. 1. Depiction of communication network of system
2.2 Indicators for Evaluating Eco-Driving What should be done for the eco-driving? In Japan, 10 recommendations are normally listed to be good for the eco-driving [2] although some of them are different with that in Germany [3]. 1. 2. 3. 4.
Tenderly starting: to limit starting speed to be 20 km/h in the first 5 seconds. Less change of speed: to drive without speed change too often as possible. Early accelerator off: to use engine brake as possible. Limitation of using air conditioner: to make use of air conditioner by considering weather conditions. 5. Idling stop: to switch engine off when stopping. 6. Warming engine stop: it isn’t necessary to warm engine before starting. 7. Making use of traffic information: to check the traffic information and choose route without traffic jam. 8. Frequent checking air pressure of tires: to keep air pressure in an adequate level. 9. Lifting down unnecessary load: to keep car not to transport unnecessary load. 10.Attention for parking: to park car without influencing on traffic flow. Among the above recommendations, three of them, 1.tenderly starting, 2.less change of speed and 5.idling stop can be evaluated directly by using the data collected by the BCALs. We define three indicators respective with these three recommendations as the followings.
210
R. Ando, Y. Nishihori, and D. Ochi
• Starting indicator = (number of starts have been accelerated faster than 20 km/h in five seconds) / (total number of starts) • Travel indicator = (accumulated time to change speed faster than 20 km/h in five seconds) / (total travel time) • Idling indicator = (accumulated time of engine on when stopping) / (total stopping time) Furthermore, to evaluate the CO2 emission for each trip, the following indicator is proposed. • Emission indicator = (estimated CO2 emission amount per kilometer) / (standard CO2 emission amount per kilometer) Here, the estimated CO2 emission amount is calculated by the following equation proposed by Oguchi et al. in 2002 [4]. ( .&7'ȊțN9N9N
(1)
Where E = CO2 emission amount (kg- CO2) T = Travel time (sec) D = Travel distance (m) k = Number of points where the speeds are observed δk= 1 (when speed is greater than that at the previous point) or 0 (others) Vk = Travel speed at point k (m/sec) KC = Coefficient of CO2 emission (0.002322kg- CO2/gasoline (cc)) On the other hand, the standard CO2 emission amount is obtained as the computed amount when the car runs by following JC08 mode. The JC08 mode is a test run mode of fuel consuming newly defined by Japanese Government in 2006 and is shown in Fig. 2. This newly defined mode has been evaluated much more suitable for the real driving conditions than the old specified mode by the Japanese government. Speed (km/h)
Time (sec)
Fig. 2. JC08 mode of test runs for fuel consuming defined by Japanese government [5]
Finally, evaluation indicator of eco-driving is defined as the summation of points respective with each indicator given above. The points of 5 to 1 are converted from the grades of A to E evaluated by each indicator. Then the eco-driving evaluation indicator can be ranked by five grades in terms of the total points.
Development of a System to Promote Eco-Driving and Safe-Driving
211
2.3 Indicators for Evaluating Safe-Driving In order to evaluate safe-driving, three indicators have been proposed on the basis of the data collected by the BCALs. • Steep acceleration = when an acceleration being bigger than 0.2G (G=0.98m/s2) is detected in the direction of moving forward, the place and the action is recorded. • Steep deceleration = when a deceleration being smaller than -0.2G is detected in the direction of moving forward, the place and the action is recorded. • Steep handling = when the absolute value of an acceleration or deceleration being bigger than 0.2G is detected in the left or right direction when moving forward, the place and the action is recorded. 2.4 Tools and Contents of Information Provision As explained in 2.1, information is provided by two tools. One is e-mail by the mobile phone. Another one is the website. Considering the communication speed etc. of mobile phone and the data transmission cost, contents of the e-mail are limited to be as the followings. Here, all are about the trip. − − − − − − − − − − −
Name of user Starting time of the trip Ending time of the trip Grade evaluated by the emission indicator Travel distance (km) Average travel speed (km/h) Travel time (min) Driving time (min) Number of steep acceleration Number of steep deceleration Number of steep handling
On the other hand, the information provided in the website is quite much. Fig. 3 is the main page when the user login the website. Part A shows a calendar by month. The user may click on the day to see the driving records of that day. Part B gives the list of the trips on the day specified by a click in Part A. Part C is the grade by the eco-driving evaluation indicator and the radar-chart of the four other ecodriving indicators with a comparison with the average evaluation. Part D is the advice for the user in terms of the evaluation by four eco-driving indicators. The last part, Part E is the gate going to answer questionnaire where the user can answer the predesigned questions and write down his/her requests and comments. Fig. 4 is to show trends of the evaluations by the indicator and by day for a specified month. Part F allows the user to specify the month and indicator. Part G shows the result respective with the specified indicator only. And Part H gives the results in detail for all indicators. Fig. 5 shows the user’s position when ranking up over all users, and the standard scores and their trends for all indicators of the eco-driving.
212
R. Ando, Y. Nishihori, and D. Ochi
Part C Part A
Calendar
Radar chart of evaluation results
Part D
Part B List of trips Advice for driving Gate of questionnaire
Part E
Fig. 3. Main page of eco-driving evaluation
Part F Choosing month and contents to be shown Part G Change of evaluation during the specified month Part H
Fig. 4. Historical data and trends of eco-driving evaluation
Fig. 6 gives the comparison of all eco-driving indicators between the normal driving and the eco-driving by the evaluations and the standard scores together with comments. Fig. 7 is about each trip. Part I shows the driving route drawn on the basis of GPS data. The places of the steep acceleration, the steep deceleration and the steep handling are depicted in the map by different colors. Furthermore, Part J lists the detail information of the specified trip including the origin, the destination, the starting time, the ending time, the travel distance, the average travel speed, the percentage of the driving time, the percentage of the stopping time. There are also numbers of the steep acceleration, the steep deceleration and the steep handling, and their numbers per kilometer as well as the average numbers over all users.
Development of a System to Promote Eco-Driving and Safe-Driving
Change of ranking results
Fig. 5. Ranking results and standard scores by eco-driving indicators
Comparison results and comments
Fig. 6. Comparison results of all eco-driving indicators
Part I Travel route of a specified trip
Part J Description of the specified trip
Evaluation results of three safe-driving indicators
Fig. 7. Travel route and results of steep acceleration, deceleration and handling
213
214
R. Ando, Y. Nishihori, and D. Ochi
2.5 Definition of Grades Respective with All Indicators Although we have not described in detail in the above sections, all evaluation respective with each eco-driving indicator shown in Fig. 3 to Fig. 6 are expressed by Grade A (the best) to E (the worst). The introducing of the grades is to make the users understand the evaluation results easily. On the other hand, the reasonable evaluation and advice based on the evaluation are very important to affect the users to improve their driving. To define the grades logically, we divide the groups in terms of the normal distribution of the values of each indicator. As we have no any data at the beginning to construct system, we made a test for a small group with 3 monitors and then defined the grade. However we found the definitions not having been good enough to fit the real situation after we began our services for all users (refer to Chapter 3). Thus, the all grades have been re-defined according to the enough data to draw a quite beautiful line of the normal distribution. 350
120%
300
100%
250
80%
200
60%
150 40%
100
20%
50 0
0.5
0.55
0.6
0.65
0.7
0.75
0.8
0.85
0.9
0.95
1
1.05
1.1
1.15
1.2
1.25
1.3
1.35
1.4
1.45
1.5 1.5~
0%
Fig. 8. Distribution of rates respective with definition of emission indicator (line is the accumulated percentage) 900
120%
800
100%
700 600
80%
500
60%
400 300
40%
200
20%
100 0
A
B
C
D
E
0%
Fig. 9. Distribution of numbers respective with five grades of emission indicator (line is the accumulated percentage from Grade A to Grade E)
For example, regarding the emission indicator, in terms of the distribution of the rates as given in Fig. 8, the A grade is defined as being smaller than 0.78. Consequently, the B grade is between 0.78 and 0.88, the C grade is between 0.88 and 1.05, the D grade is between 1.05 and 1.32, and the E grade is bigger than 1.32. Then the numbers of all 5 grades are distributed as shown in Fig. 9.
Development of a System to Promote Eco-Driving and Safe-Driving
215
Similarly, the grades respective with the starting indicator, the travel indicator and the idling indicator have been defined as A to E. Finally, when we express the grades of E to A by the score 1 to 5 respectively, then the eco-driving evaluation indicator can be defined to be expressed by the total score of the above four indicators as an integrated evaluation indicator. Accordingly, the grades of A to E are defined to make its distribution be near to the normal distribution. [6]
3 Results of Social Experiment By using the system stated in Chapter 2, we have conducted a social experiment in Toyota City during October 1, 2009 to January 31, 2010. Regarding the total number of the monitors (users), 146 vehicles have been finally participated our project. Here that we don’t use the word “person” but the word “vehicle” is because some vehicles are the companies owned ones so that many different persons may drive the same cars. As a result, we collected the data of 7,900 vehicle-days totally over 519,000 kilometers and 21,000 hours. The monitors can be divided into two different groups: one is the normal monitors with the 50 persons and the other one is the unspecified monitors who made use of the companies owned cars, 96 vehicles in total. For the former group, all information provision has been carried out as we described in Chapter 2. However, regarding the latter group, the information provision was sent to a specified person or the clerk being charge in the management of the companies owned cars as the drivers would be different everyday. Considering the behavior of the monitors made use of the companies owned cars is quite different with that of the normal monitors, we report the results of the social experiment in terms of the analysis for the normal monitors here and leave that referring to the other monitors for another opportunity. 3.1 Results on Eco-Driving The changes of the eco-driving evaluation indicator, the emission indicator and the idling indicator are shown in Fig. 10 to 13 respectively. The values of the vertical axis (y) in Fig. 10 mean the average grades during one week when we express the grade E to A as 1 to 5 respectively. The values of the vertical axis (y) in Fig. 11 to 13 are respective with the definitions in Section 2.2. Then we can understand that all four indicators have shown the better values as the progressing of the project. This means the provision of the information on the monitors’ driving has made the monitors improve their driving behaviors. However, regarding the starting indicator, the score was changing to be a little worse although we do not show the graph here. The reasons can be searched from the answers for the questionnaire we implemented at the end of the social experiment. The people thought that they had influenced the cars following them in the traffic flow. The tenderly starting was felt as the slow starting and the slow starting may make the following drivers to claim to the monitors. This is why the monitors changed not doing the tenderly starting.
216
R. Ando, Y. Nishihori, and D. Ochi
)y 4.0 r(o ta ci dn i 3.5 no tia ul av e 3.0 ngi vir doc 2.5 E
↑ good
bad ↓ 1
y=0.019x+3.071
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 18 x(week)
Fig. 10. Change of values of eco-driving evaluation indicator 1.00
↑ bad
)y (r ot ac 0.95 din i no is 0.90 si m E
good ↓
y=-0.002x+0.935
0.85 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 18 x(week)
14
15
16
17 18 x(week)
Fig. 11. Change of values of emission indicator 0.0300
)y (r ot 0.0275 ac id inl ev 0.0250 ar T
↑ bad
good ↓
y=-0.0001x+0.027
0.0225 1
2
3
4
5
6
7
8
9
10
11
12
13
Fig. 12. Change of values of travel indicator
Of the monitors, about 62% answered they checked the email having been sent to their mobile phone and 78% said they checked the website about their driving. As a result, 82% have become practicing with the eco-driving and 54% have improved their driving techniques to be effective with the eco-driving. All of these results told us the system had been functional by the information provision. Furthermore, as the purposes to do the eco-driving, the top answer by 65% of the monitors is “to cut the fuel cost”.
Development of a System to Promote Eco-Driving and Safe-Driving
217
0.30 ) y ( r o t a ic d in g in l d I
↑ bad 0.25 y=-0.005x+0.295
0.20 good ↓ 0.15 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
x(week)
Fig. 13. Change of values of idling indicator
3.2 Results on Safe-Driving The safe-driving is evaluated by three indicators, the steep acceleration, the steep deceleration and the steep handling. The changes of the three indicators are expressed in Fig. 14 to Fig. 16 respectively. Here, the values of the vertical axis (y) are as described by the definitions in Section 2.3. 0.020
no it ar lee cc a pe et S
↑ bad
0.015
y=-0.0004x+0.0130
) m k/ se 0.010 im t( 0.005
good ↓
0.000 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
x(week)
Fig. 14. Change of steep acceleration indicator 0.0750
no tia re le ce d pe et S
↑ bad
0.0625
) m k/ se 0.0500 im t( 0.0375
y=-0.0001x+0.0454
good ↓
0.0250 1
2
3
4
5
6
7
8
9
10
11
12
13
Fig. 15. Change of steep deceleration indicator
14
15
16
17 18 x(week)
218
R. Ando, Y. Nishihori, and D. Ochi 0.20
gn lid na H pe et S
↑ bad
) 0.15 m k/ se m ti( 0.10
good ↓
y=-0.0005x+0.1267
0.05 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 18 x(week)
Fig. 16. Change of steep handling indicator
Each indicator has shown a satisfactory result that tells us the users tend to be safer than before although there are some unexpected variations. In fact, the second top answer for the question why to practice the eco-driving is to realize the safe-driving which shared 52%. About the change of their driving behaviors, 42% told us they had behaved much safer.
4 Summary and Conclusions In this paper, the authors report on the study having been implemented during March 2009 to March 2010. This study is to develop a system and then apply it as a trial for promoting the eco-driving and the safe-driving. The system makes use of BCALs that is a unit to collect data and to make the data transmission through the module of a mobile phone carrier. In the study, eight (five for the eco-driving and three for the safe-driving) evaluation indicators have been proposed on the basis of the data collected. As the results of the social experiment, it can be conclude that this system is effectively accepted by the users and is functional to change the people’s behaviors to be much greener and safer. Surely, a detail analysis should be carried out to make the relationship among the factors such as the characteristics of the users and the information provided as the further studies.
References 1. Trans Field, Inc., http://probe-person.jp/?page_id=188 (in Japanese) 2. Association for Promotion of Eco-Drive, http://www.ecodrive.jp/eco_10.html (in Japanese) 3. Ford, http://www.ford-eco-driving.de/ (in German) 4. Oguchi, T., Katakura, M., Taniguchi, M.: Carbon-dioxide Emission Model in Actual Urban Road Vehicular Traffic Conditions. Journal of Infrastructure Planning and Management (JSCE) 695/IV-54, 125–136 (2002) (in Japanese) 5. Carview Corporation, http://www.carview.co.jp/green/ecoword/20/83/ (in Japanese) 6. Council for Green Mobility: Report on Green Mobility Model Project for Constructing a Low-Carbon Transport System, Ch. 2, Outline of the Technical Development (by Trans Field, Inc.) & Ch. 4, The Social Experiment in Toyota Area, by TTRI (2010) (in Japanese) 7. Beusen, B., et al.: Using On-board Logging Devices to Study the Longer-term Impact of an Ecodriving Course. Transportation Research Part D 14, 514–520 (2009)
Oligopoly Game Modeling for Cognitive Radio Environments Ligia C. Cremene1, D. Dumitrescu2, and Réka Nagy2 1
Technical University of Cluj-Napoca, Memorandumului, 28, 400114, Romania 2 Babes-Bolyai University, Kogalniceanu, 1, 400084, Cluj-Napoca, Romania [email protected], [email protected], [email protected]
Abstract. The problem of dynamic spectrum access in cognitive radio environments is addressed using a game theoretic approach. In order to investigate the relevance of certain equilibrium concepts for this problem, two oligopoly game models – Cournot and Stackelberg – are considered. For a more realistic formulation of the game, a modified rationality paradigm is considered. Within this paradigm agents may have approaches and biases towards different equilibrium concepts. We investigate the Pareto equilibrium and a new equilibrium concept – the joint Nash-Pareto equilibrium. Keywords: Cognitive radio, dynamic spectrum access, joint equilibria, metarationality, adaptive strategies.
1 Introduction Game Theory has recently emerged as an effective framework for the design of wireless networks. The suitability of using game theoretic concepts to model some problems in communications systems has been well argued during the last decade [1], [2], [6], [7]. Seen as a promising approach for analyzing the interactions of adaptive and cognitive radios, Game Theory can address important issues such as: steady state existence, steady state identification, convergence and steady state optimality [1] in cognitive radio environments. The problem of dynamic spectrum access in cognitive radio environments is addressed. Standard Game Theory deals with the study of strategic interactions between rational agents. For a more realistic modeling, a modified rationality paradigm is considered here. Within this paradigm agents/players may have several approaches and biases towards different equilibrium concepts [4]. Radio resource allocation and dynamic spectrum access may be described as a game between cognitive radios [1], [12]. We consider some well known oligopoly game models such as Cournot and Stackelberg. Several equilibrium concepts are studied as game solutions. The aim is to investigate the relevance of certain equilibrium concepts for spectrum access and resource allocation in cognitive radio environments. The standard Nash-equilibrium approach has been extensively studied [1], [4], [6]. In our approach we go beyond and investigate the Pareto equilibrium and a new equilibrium concept – the joint Nash-Pareto equilibrium [5]. The considered generalization S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 219–230, 2010. © Springer-Verlag Berlin Heidelberg 2010
220
L.C. Cremene, D. Dumitrescu, and R. Nagy
involves heterogeneous players that are allowed to be biased towards different equilibrium types. In other words, players may act based on different rationality types [4]. The paper is structured as follows: Section 2 provides some basic insights to game equilibria generation and detection. The game theoretic approach in analyzing cognitive radio interactions is detailed in Section 3. Section 4 presents spectrum access scenarios that are formulated using Cournot and Stackelberg oligopoly game models; numerical results are discussed. The paper conclusions are presented in Section 5.
2 Game Theory. Equilibria - Generative Relations and Detection A game may be defined as a system G = ((N, Si, ui), i = 1,…, n) where: (i) N represents the set of n players, N = {1,…, n}. (ii) for each player i є N, Si represents the set of actions Si = {si1, si2, …, sim}; S = S1 x S2 x … x SN is the set of all possible game situations; (iii) for each player i є N, ui :S → R represents the payoff function. A strategy profile (strategy or action vector) is a vector
s = ( s1 ,..., sn ), where
si ∈ S i is a strategy (or action) of the player i. By
( si , s −*i ) we denote the strategy profile obtained from s* by replacing the strat-
egy of player i with si, i.e.
( si , s −*i ) = ( s1* , s2* ,..., si*−1 , si , si*+1 ,..., s1* ). 2.1 Nash Equilibrium Game Theory provides a number of tools for analyzing games. The most frequently used steady-state concept is the Nash Equilibrium (NE). Informally, a strategy profile is an NE if no player can improve her payoff by unilateral deviation. Formally, a strategy profile, x is an NE if and only if
ui ( x ) ≥ ui ( yi , x −i ), ∀i ∈ N , yi ∈ S i . An NE may be interpreted as “A steady state where each player holds a correct expectation of the other players’ behavior and acts rationally.” [6]. 2.2 Generative Relation for Nash Equilibrium A particular relation between strategy profiles can be used to describe Nash equilibrium. We consider here two generative relations. Let us consider the quantity
a ( x ) = card {i : ∃t ∈ Si , ui (t , x −i ) > ui ( x )} a(x) is the number of players improving strategy x by unilateral deviation.
Oligopoly Game Modeling for Cognitive Radio Environments
221
Definition. Strategy x dominates strategy y, and we write x
k ( x, y ) = card {i : ui ( xi , y −i ) ≥ ui ( y ), xi ≠ yi } The generative relation induced by k is defined as
x < y <=> k ( x, y ) < k ( y , x ) . 2.3 Generative Relation for Pareto Equilibrium Let us consider two strategy profiles x and y from S. Definition. The strategy profile x Pareto dominates the strategy profile y (and we write x < P y) if the payoff of each player using strategy x is greater or equal to the payoff associated to strategy y and at least one payoff is strictly greater. More formal we can write x < P y iff ui ( x ) ≥ ui ( y ) , for each i = 1, ... , n, and there is some index j that
u j ( x) > u j ( y) . The set of all non-dominated strategies (Pareto frontier) represents the set of Pareto equilibria of the game [5]. 2.4 Generative Relation for Joint Nash-Pareto Equilibrium Consider a game with n players. Consider that each player acts based on a certain type of rationality. Let us denote by ri the rationality type of the player i = 1,…, n. We may consider a two-player game where r1 = Nash and r2 = Pareto. The first player is biased towards the Nash equilibrium and the other one is Pareto-biased. In this case a new type of equilibrium, called the joint Nash-Pareto equilibrium, may be considered [5]. Let us consider an n player game where each player may be either Nash or Paretobiased. Let us denote by IN the set of Nash biased players (N-players) and by IP the set of Pareto biased players (P-players). Therefore we have
I N = {i ∈ {1,..., n}: ri = Nash},
I P = {j ∈ {1,..., n}: rj = Pareto}. An operator for measuring the relative efficiency of profile strategies has been introduced [5].
E : S × S → N,
222
L.C. Cremene, D. Dumitrescu, and R. Nagy
defined as
E ( x, y ) = card {i ∈ I N : ui ( xi , y −i ) ≥ ui ( y ), xi ≠ yi }
+ card {j ∈ I P : u j ( x ) < u j ( y ), x ≠ y}.
E(x, y) measures the relative efficiency of the strategy profile x with respect to the strategy profile y. The relative efficiency enables us to define a generative relation for the joint Nash-Pareto equilibrium. Consider a relation
E ( x, y ) < E ( y , x ). The relation
3 Game Theoretic Approach of Cognitive Radio Environments Game Theory is a powerful tool in developing adaptive strategies in multiagent environments where multiple agents interact trying to achieve their own interests. In many cases their objectives conflict with each other. Cognitive radio environments are such environments – where the problem of dynamic spectrum sharing and issues of planning and decision-making have to be addressed. Eventually, adaptive strategies enable system components to learn a satisfactory policy (equilibrium) for action through repeated interaction with their environment [7]. WRAN IEEE 802.22 is the first wireless standard based on cognitive radios. The 802.22 groundbreaking wireless air interface is defined for use by license-exempt devices in the spectrum that is currently allocated to the Television service. In this range there is much unused or underused frequency spectrum. Since the new air interface is required to reuse the fallow TV spectrum without causing any harmful interference to incumbents (i.e., the TV receivers), cognitive radio techniques are of primary importance in establishing/supporting adaptive strategies that facilitate coexistence. Such adaptive strategies regard dynamic spectrum access and radio environment characterization [9].
Oligopoly Game Modeling for Cognitive Radio Environments
223
Cognitive radios (CRs) are seen as the solution to the current low usage of the radio spectrum [9], [10], [13]. CRs have the potential to utilize the large amount of unused spectrum in an intelligent way while not interfering with other incumbent devices in frequency bands already licensed for specific uses [9]. Mechanisms based on frequency hopping have been widely used to enable wireless networks to use resources from the unlicensed spectrum without frequency planning [8]. A cognitive radio has to manage a dynamic interaction profile. In the radio environment this is reflected in the interference profile that may be prompted to change whenever another radio changes its profile. Such an interactive decision process can be analyzed using Game Theory models and techniques [2], [3]. We can assume that the cognitive radios know the form of the other cognitive radios’ utility functions if all the interacting radios have the same objective (e.g., maximizing SINR) or if the radios can poll the other radios in the environment. However, due to the variability of channel conditions it is unlikely that a cognitive radio will know the precise values of other radios’ utility functions. Even without any ability to infer other players’ utility functions, the equilibrium concept has a significant implication for cognitive radio algorithms modeled as a repeated game [1]. A CR is defined as a radio that can sense its environment and then modify its behavior, based on a set of rules (policy), and without operator intervention [13]. Reaction to the changes in the operation environment may be modeled as a game against nature but this is not the approach in this paper. Instead we chose to model the interactions between cognitive radios as interactions between players on an oligopoly market, which in this case is the frequency spectrum. For a more realistic formulation of the game, a modified rationality paradigm is considered. Within this paradigm radios may have several approaches and biases towards different equilibrium concepts [4]. We investigate the Pareto equilibrium and a new equilibrium concept – the joint Nash-Pareto equilibrium.
4 Oligopoly Game Modeling of Cognitive Radio Environments In order to assess dynamic spectrum access scenarios of cognitive radios, two oligopoly game models are considered: Cournot and Stackelberg. The commodity of this oligopoly market is the frequency spectrum. These models are computationally simple and therefore suitable for implementation in resource-limited software-defined radio transceivers. To illustrate the oligopoly environment models we consider an environment with only two radios (duopoly) so that the radios’ strategies and their equilibria can be represented two-dimensionally. However, the same approach can be applied to the case of more than two radios. 4.1 Cournot Game Modeling of a Cognitive Radio Access Scenario We consider a cognitive radio access scenario that can be modeled as a simple reformulation of the Cournot oligopoly game. Suppose there are n cognitive radios attempting to access the radio environment. Each radio i is free to decide the number ci ∈ 0, ∞ ) of simultaneous frequency hopping channels the radio implements. How
[
224
L.C. Cremene, D. Dumitrescu, and R. Nagy
many simultaneous channels should each radio implement in order to maximize its operation efficiency? Based on the above scenario, a Cournot game can be formulated as follows: The players are the cognitive radios attempting to access a certain frequency band. The strategy of each player i is the number ci of simultaneous implemented (active) channels. A strategy profile is a vector c = ( c1 ,..., cn ) . The payoff of each player is the difference between a function of goodput and power consumption (cost of implementing ci simultaneous channels). Let us denote by P(c) the fraction of symbols that are not interfered with. The goodput for radio i is P(c)ci . Radio i cost for supporting ci simultaneous channels is Ci(ci) . The payoff of player (radio) i is thus:
ui ( c ) = P( c )ci − Ci ( ci ) . In general, P decreases with the total number of implemented channels and Ci increases with ci (more bandwidth implies more processing resources and more power consumption). If these effects are approximated as linear functions, the payoff function can be rewritten as n ⎛ ⎞ ui ( c ) = ⎜ B − ∑ ck ⎟ci − Kci k =1 ⎝ ⎠
where B is the total bandwidth available for frequency hopping, K is the cost of implementing a channel. The Nash equilibrium is considered as the solution of this game
ci* = ( B − K ) /( N + 1), ∀i ∈ Ν . 4.2 Numerical Experiments – Cournot Modelling Numerical performance evaluation results are presented for the Cournot duopoly competition to illustrate emerging behavior in cognitive radio environments. We consider a linear inverse demand function in which the number of noninterfered symbols P(c) is determined from the total number ci of implemented channels (occupied bandwidth). This function can be defined as:
⎧ B − C , ifC < B, P (C ) = ⎨ ⎩0, otherwise, where B > 0 is the parameter of the inverse demand function and n
C=
∑c
i
, is the aggregate number of implemented channels.
i =1
The Cournot model simulation parameters are B = 10 and K = 1. For equilibria detection the evolutionary technique from Section 2 is considered. A population of 100
Oligopoly Game Modeling for Cognitive Radio Environments
225
strategies has been evolved using a rank based fitness assignment technique. In all experiments the process converges in less than 20 generations. The detected Nash, Pareto, Nash-Pareto, and Pareto-Nash equilibria are depicted in Figure 1. These equilibria have been obtained in four separate runs. c2
c1 Fig. 1. Detected strategies representing Nash, Pareto, Nash-Pareto, and Pareto-Nash equilibria. Cournot modeling (B = 10, K = 1).
NE corresponds to the scenario where each CR activates three channels. The Pareto equilibrium describes a more unbalanced situation where the number of active channels lies in the range [0, 4.5] for each CR. Although each CR tries to maximize its utility, none of them can access more than half of the available channels. Moreover, the sum of active channels is less than that for the NE. In some cases, the Nash-Pareto strategy enables the CR to access more channels than for the NE strategy. In this particular case, the PN equilibrium is symmetric to the NP equilibrium with respect to the first bisecting line. It is interesting to notice that none of the NP strategies can reach NE. The corresponding payoffs of the four detected equilibria are depicted in Figure 2. The payoffs of P-players (payers from the Pareto front) are in the range [0, 20] and their sum is always larger than NE payoff. For each strategy of the Nash-Pareto equilibrium the Pareto-player has a higher payoff. The Nash-player payoff is smaller in a Nash-Pareto situation than in a case where all the players play Nash (are Nashbiased). Even if the NP strategies allow the CRs to access more channels, the payoffs are smaller than for the Pareto strategies. This is due to interference increasing with the number of accessed channels.
226
L.C. Cremene, D. Dumitrescu, and R. Nagy
u2(c1,c2)
u1(c1,c2)
Fig. 2. Payoffs corresponding to the detected equilibria. Cournot modeling (B = 10, K = 1). In this case the Pareto-Nash equilibrium is symmetric to the Nash-Pareto equilibrium.
The evolutionary method for detecting equilibria is scalable with respect to the available frequency spectrum. Figure 3 illustrates the results obtained for a larger hopping bandwidth (B=100), keeping the same cost of implementing a channel (K=1). Similar results are obtained by increasing the magnitude degree of B (103, 104…) – no bandwidth constraints. c2
c1
Fig. 3. Detected strategies representing Nash, Pareto, and Nash-Pareto equilibria. Cournot modeling (B = 100, K = 1).
Oligopoly Game Modeling for Cognitive Radio Environments
227
u2(c1,c2)
u1(c1,c2)
Fig. 4. Payoffs of the detected equilibria – Cournot modeling (B = 100, K = 1)
4.3 Stackelberg Modeling of a Cognitive Radio Access Scenario The traditional spectrum access approach ensures co-existence of multiple systems by splitting the available spectrum into frequency bands and allocating them to licensed (primary) users. The dynamic spectrum access in cognitive environments improves the spectrum utilization by detecting unoccupied spectrum holes or whitespaces and assigning them to unlicensed (secondary) users. This situation, where we have incumbent monopoly and new entrants, may well be modeled using a Stackelberg game model. The players are the cognitive radios – licensed and unlicensed (primary and secondary) users. The strategy of player i is the number ci of simultaneous implemented channels. The payoff of each player is the difference between the goodput and the power consumption (cost of implementing ci simultaneous channels). Using the same notations as for Cournot modeling, the payoff function of player i can be defined as
ui ( c1 , c2 ) = ci Pd ( c1 + c2 ) − Ci ( ci ), for i = 1,2. considering c2 = b2(c1) as the output of the secondary user for primary user’s output c1 [6]. We consider a constant unit cost and a linear inverse demand function Pd(c) with the same definition as for the Cournot model. The outcome of the equilibrium [6] is that radio 1 activates c1* = taneous channels and radio 2 activates c2* = b2 ( c1* ) =
1 ( B − K ) simul2
1 ( B − K ) simultaneous channels. 4
4.4 Numerical Experiments - Stackelberg Modeling The simulation parameters of the Stackelberg model are C1(c1) = C2(c2) = 1 and B = 10. Detected Nash, Pareto, NP, and PN equilibria are depicted in Figure 5.
228
L.C. Cremene, D. Dumitrescu, and R. Nagy
We may notice that any strategy from the Pareto front is also an NP strategy. If the primary user plays Nash then the secondary user may maximize its payoff by choosing any strategy. If the secondary user plays Nash then the maximum payoff of the primary user is NE.
c2
c1 Fig. 5. Detected strategies representing Nash, Pareto, Nash-Pareto, and Pareto-Nash equilibria Stackelberg modeling ( C1(c1) = C2(c2) = 1 and B = 10 )
u2(c1,c2)
u1(c1,c2) Fig. 6. Payoffs of the detected equilibria – Stackelberg modeling. Payoffs are maximized for all users if the incumbents are Nash oriented and the new entrants are Pareto driven.
Oligopoly Game Modeling for Cognitive Radio Environments
229
Even if the secondary user can access less than three channels (Cournot NE), its maximum payoff remains un affected (20). Instead, the primary user’s payoff is half. For Stackelberg formulation of the game, the NE payoff for the secondary user is less then in the Cournot case (5,5 instead of 9). For the primary user it is slightly increased (10 instead of 9). This situation is relevant for interference control in dynamic spectrum access scenarios. The Stackelberg modeling of such a scenario may provide particular answers to the fundamental question [10] of autonomy versus regulation in heterogeneous radio environments.
5 Conclusions Two oligopoly game models have been considered in order to investigate the relevance of certain equilibrium concepts for the problem of dynamic spectrum access in cognitive radio environments. Besides standard Nash equilibrium and Pareto equilibrium a new approach based on heterogeneous players has been considered. In this last model players are biased towards several equilibrium types. This is a more realistic game formulation for interactions in cognitive radio environments. Numerical experiments indicate the effectiveness of the proposed approach. The observations may be especially relevant for designing new rules of behavior for heterogeneous radio environments. Acknowledgments. This paper was supported by the project "Develop and support multidisciplinary postdoctoral programs in primordial technical areas of national strategy of the research - development - innovation" 4D-POSTDOC, contract nr. POSDRU/89/1.5/S/52603, project co-funded from European Social Fund through Sectorial Operational Program Human Resources 2007-2013. This research was supported by project PNCDI2 – Program 4 – Parteneriate 2120/2007 of the NURC Romania.
References 1. Neel, J.O., Reed, J.H., Gilles, R.P.: Game Models for Cognitive Radio Algorithm Analysis (2004), http://www.mprg.org/people/gametheory/presentations.shtml 2. MacKenzie, A., Wicker, S.: Game Theory in Communications: Motivation, Explanation, and Application to Power Control. In: Globecom 2001, pp. 821–825 (2001) 3. Huang, J.W., Krishnamurthy, V.: Game Theoretic Issues in Cognitive Radio Systems. J. of Comm. 4(10), 790–802 (2009) 4. Dumitrescu, D., Lung, R.I., Mihoc, T.D.: Evolutionary Equilibria Detection in NonCooperative Games. In: Giacobini, M., Brabazon, A., Cagnoni, S., Di Caro, G.A., Ekárt, A., Esparcia-Alcázar, A.I., Farooq, M., Fink, A., Machado, P. (eds.) EvoStar 009. LNCS, vol. 5484, pp. 253–262. Springer, Heidelberg (2009) 5. Dumitrescu, D., Lung, R.I., Mihoc, T.D.: Generative relations for evolutionary equilibria detection. In: Genetic and Evolutionary Computation Conf GECCO ’09, pp. 1507–1512 (2009)
230
L.C. Cremene, D. Dumitrescu, and R. Nagy
6. Osborne, M.J.: An Introduction to Game Theory. Oxford Univ. Press, Oxford (2004) 7. Maskery, M., Krishnamurthy, V., Zhao, Q.: Game Theoretic Learning and Pricing for Dynamic Spectrum Access in Cognitive Radio. In: Hossain, E., Bhargava, V.K. (eds.) Cognitive Wireless Communication Networks. Springer, New York (2007) 8. Popovski, P., Yomo, H., Prasad, R.: Strategies for Adaptive Frequency Hopping in the Unlicensed Bands. IEEE Wireless Communications, 60–67 (2006) 9. Cordeiro, C., Challapali, K., Birru, D.: IEEE 802.22: An Introduction to the First Wireless Standard based on Cognitive Radios. J. of Comm. 1(1), 38–47 (2006) 10. Srinivasa, S., Jafar, S.A.: The Throughput Potential of Cognitive Radio: A Theoretical Perspective. IEEE Communications Magazine, 73–79 (2007) 11. Niyato, D., Hossain, E.: Microeconomic Models for Dynamic Spectrum Management in Cognitive Radio Networks. In: Hossain, E., Bhargava, V.K. (eds.) Cognitive wireless communication networks. Springer, New York (2007) 12. Luise, M., Bacci, G.: A Noncooperative Approach to Joint Rate and Power Control for Infrastructure Wireless Networks. In: Proc. of ICST Int. Conf. on Game Theory for Networks, Istanbul, pp. 33–42 (2009) 13. Mitola, J.: Cognitive radio: An integrated agent architecture for software defined radio, PhD Dissertation Royal Inst. Technol. (KTH), Stockholm, Sweden (2000) 14. Deb, K., Agrawal, S., Pratab, A., Meyarivan, T.: A Fast Elitist Non-Dominated Sorting Genetic Algorithm for Multi-Objective Optimization: NSGA-II. In: Schoenauer, M., Deb, K., Rudolph, G., Yao, X., Lutton, E., Merelo, J.J., Schwefel, H.P. (eds.) PPSN 2000. LNCS, vol. 1917, pp. 849–858. Springer, Heidelberg (2000)
Reducing the Number of States for Markovian Model of Optical Slotted Ring Network Mateusz Nowak and Piotr Pecka Institute of Theoretical and Applied Informatics Polish Academy of Sciences ul. Bałtycka 5, 44-100 Gliwice, Poland [email protected], [email protected]
Abstract. Modelling with use of Markov chains is difficult from computational point of view, because of a rapid increase in the number of states occurring even when there is only a slight increase in the model’s scale. However, thanks to the appropriate description of the model the number of states can be significantly reduced. This paper discusses a synchronous slotted-ring network with optical packet switching modelled by means of markovian chains with continuous time. Simplifying the description has made it possible to significantly reduce the model’s dimension without significantly diminishing the results’ accuracy.
1
Introduction
Computer networks are examined in theory with various modelling methods. The most common method is simulation, which reproduces the system’s way of operating in the computer’s memory step by step. It is also necessary to apply analytical methods, whose primary task is to verify the results obtained in simulations. One of the popular methods of analytical modelling is modelling with use of Markov chains. In the markovian model the system is described with states, which the modelling process can occupy. Each event influencing the system’s stateis reflected in the transition to another state in the markovian chain. In the model possible transitions between states are described with their intensity in time (in models with continuous time) or with probability (in models with discreet time). Each increase of the model’s scale causes a rapid increase in the number of possible model states. In the case of computer networks adding a network node operating independently of other nodes, which can be in one of k states, causes the previous number of the system’s possible states to be multiplied by the factor k. A lot of relatively small network models are described by means of dozens or a dozen hundred millions of states. The markovian method presumes the solution of the system of algebraic linear equations, which, even considering that the majority of the system’s coefficients equals zero, is a difficult task from the computational point of view. Therefore each method of reducing the number
The work was sponsored by MNiSW grant no. N N516 407138.
S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 231–241, 2010. © Springer-Verlag Berlin Heidelberg 2010
232
M. Nowak and P. Pecka
of states in a given model’s description is valuable since it makes it possible to describe a bigger model accelerate the calculation and diminish the impact of numerical errors on the result.
2
Optical Synchronous Slotted Ring Network
Modern computer networks of a medium and big range usually use optical fibres to transmit data. They are usually built on the basis of such technologies as SONET/SDH or the optical Ethernet and employ the optical fibre as a medium transmitting digital signals encoded by means of a modulated light wave. The transmitted information can be managed in intermediate nodes only after the light wave has been transformed into an electrical signal. It is only then that the information can be read, interpreted, processed in routing and movement management algorithms and subsequently, after a possible modification, sent to the next network segment or to the final client. Farther transmission usually requires another conversion, in this case from the electrical into the optical form. Many centres around the world conduct research on fully optical networks. Switching of packets, that is directing them to subsequent network segments, takes place without the optical-electrical conversion and the other way round. Such networks are defined as networks with the optical packet switching (OPS networks). Optical switching involves large hopes, as it is much faster than the electronic one. OPS technology already turned from the theoretical stage to the construction of prototype devices. In Europe a number of companies and research organisations are engaged in both construction of OPS devices and in working out management methods, i.a. gathered in research projects like ECOFRAME or CARRIOCAS[1]. In the paper we present research, which concern synchronous slotted-ring networks. Ring-type architecture is easy to configure and manage, as opposed to complex mesh-type networks, and it is often applied in metropolitan networks (MANs). It originates from Cambridge-Ring architecture[2] whose successors are the widely used networks like Token-Ring[3], FDDI[4] or ATMR[5]. The network subjected to modelling is based on proposals presented within the framework of the ECOFRAME project, described among others in [6], [7], and also [8],[9] and [10]. It consists of a fully optical ring which connects a certain number of access nodes. Nodes of access to the network are an interface between the electronic and optical network. They are equipped with buffers collecting data from the client (connected electronically) arriving asynchronously to the node. The node is equipped with separate buffers for traffic of various QoS classes, corresponding to different priorities. The buffers are of the dimension of Bi blocks, each containing b bytes. At optical side of the nodes work in synchronous way, which means that optical frames arrive at all the nodes simultaneously as well as leave them simultaneously, in equal intervals. The data-transmitting unit is a frame with a constant (in a given network) capacity of p blocks of data. The frame may transmit data
Reducing the Number of States for Markovian Model
233
of different priority, it can also be empty, if the nodes don’t have any data to transmit. At a given time in each segment of the network there is one frame. In a simplified model adopted for the purposes of presenting research it is assumed that the content of the frames has a homogeneous nature i.e. each non-vacant frame contains blocks of one class addressed to one recipient. Nodes are equipped with the Add/Drop[11] mechanism, which makes it possible to retrieve data from the frame and mark it as empty as well as send data by means of a frame, which arrived as empty. The Add/Drop mechanism is QoSaware, as data in the network can be of many QoS classes. There can be K≥2 QoS classes of data, from which highest priority class is defined as Premium, and lowest priority as Best Efforty (BE). Add/Drop mechanism is able to replace low-priority frame content with high-priority content. If in the buffer for a movement of given class in a given node there are p blocks of data, the node sends data by the next empty frame. If in several buffers there are data ready for transmission the highest-priority data are sent first. In addition BE content can be removed from the frame for the benefit of Premium traffic. What’s more, a mechanism defined as sending timeout [12] has been introduced. It guarantees that blocks awaiting transmission longer than a certain τ time will be sent even though a full frame has not been completed. However, this mechanism has not been used in the examined model.
3
The Model of the Optical Network
For the purposes of modelling the network’s operation it has been assumed that each node sends packets to other nodes, distributing the recipients evenly. This means that none of the packets returns to the transmitting node but is collected by one of the remaining nodes - with the same probability. The accurate model provided that each transmitted packet will be equipped with a counter c of passages with the initial value c = 0. When a packet with a counter of value c < N − 2 approached the node, it was removed from the frame (read) with the probability of pr = 1/(N − 1) and sent further with the probability of 1 − pr = N/(N − 1) whereas the counter c was increased by 1. When a packet with a counter of the c = N − 2 value approached the node, it was always read and removed from the network. When an empty frame arrived at the node, the node sent data, giving the meter a value of c = 0 as long as it had data to send. Furthermore, the expropriating mechanism caused the frame’s content of BE class to be replaced by new data of Premium class when BE class data arrived at the node and the node had Premium class data to send. A small model with the following parameters was used in researching the possibility of reducing the number of markovian chain states: – – – – –
number of nodes N = 3 size of frame p = 1 block size of block b = 50 bytes number of QoS classes K = 2 (Premium and BE classes only) buffer size for each class B1 = B2 = 4
234
M. Nowak and P. Pecka
The model was implemented with use of an object-oriented library OLIMP-2, beeing developed by the paper authors (previous version of the software, OLIMP, is described in [13]). The node’s state is described by buffer states for each class of services. The state vector for a node j with two buffers has the form (n1j , n2j ), whereas the buffer state can take the values 0≤nij ≤Bi . Accordingly, each node brings to the model Sj = (B1 + 1)(B2 + 1) states. The ring is described with the vector Vr = (f, v1 , v2 , v3 , c1 , c2 , c3 ), where vi means the frame state in the i segment and takes value 0 for an empty frame, 1 for a frame transporting the Premium packet and 2 for a frame transporting the BE packet, whereas ci means the state of the passage meter described above. The f variable, taking the values 1..5 is a number of Erlang’s distribution state, which approximates constant time between frame passages well for as few as 5 states. The number of vector states describing a ring equals then Sr = F · (N − 1)N · (K + 1)N , where F stands for a number of Erlang’s phases, N - number of nodes, K - number of packet classes. Data sources have Poisson’s distribution, which in the markovian model means that they don’t have a state vector and don’t contribute additional states to the model. However, thanks to the model’s object-oriented description replacing Poisson’s sources with sources of a different distribution is very simple (it should be borne in mind however that other types of sources have their own state vectors and the number of the entire model’s states should be multiplied by the number of each source’s states). Consequently, the complete vector describing the model has the following form: V = ((n11 , n21 ), (n12 , n22 ), (n13 , n23 ), (f, v1 , v2 , v3 , c1 , c2 , c3 ))
(1)
The total maximum number of model states equals: S = SnN ·Sr = ((B1 + 1)(B2 + 1))N ·F ·(N − 1)N ·(K + 1)N
(2)
which, for the adopted values, amounts to the value of S = 16, 875, 000. In fact, not all constituent value combinations of the state’s vector can be present. The actual number of states, which the system can occupy, is S = 9, 765, 625 Transitions description Let’s introduce a vector u = (u1 , u2 , u3 ), whose constituent parts assume the values of 0..2, in order to describe a change in the system’s state. The 0 value of the constituent part ui means that the frame has passed through the node i without any changes (transit), the value of 1 that the packet is collected by the node and the value of 2 that the node sent a packet. The probabilities of changing the node’s i state are as follows: – – – –
if if if if
ci < N ci < N ci = N vi = 0,
−2 − 2 and vi > 0, ui = 0 (transit) with probability N N −1 , − 2 and vi > 0, ui = 1 (packet reception) with probability N 1−1 , − 2 and vi > 0, ui = 1 (packet reception) with probability 1, ui = 2 (packet sending) with probability 1,
Reducing the Number of States for Markovian Model
235
– if vi = 2 and n1i > 0, ui = 2 with probability N1−1 (BE packet is expropriated by the Premium packet awaiting in the buffer). Probability of other state changes is equal to 0. When system is in Erlang phase F other than 5, only possible transition is change f → f + 1. When system is in last phase of Erlang’s generator (f = 5), possible transition, for all possible values of u, are enumerated below. In transitions description vi is a changed value of vector v, connected with receiving of the packet. After the transition all states of the ring are shifted right, because frames (changed or not) are passed to the next segment of the optical ring.
S(v1 ,v2 ,v3 ),(c1 ,c2 ,c3 )
S(v3 ,v1 ,v2 ),(c3 +1,c1 +1,c2 +1)with P(0,0,0) · μ for u = (0, 0, 0) with P(0,0,1) · μ for u = (0, 0, 1) S(0,v1 ,v2 ),(0,c1 +1,c2 +1) S(v3 ,v1 ,v2 ),(0,c1 +1,c2 +1) with P(0,0,2) · μ for u = (0, 0, 2) S(v3 ,v1 ,0),(c3 +1,c1 +1,0) with P(0,1,0) · μ for u = (0, 1, 0) with P(0,1,1) · μ for u = (0, 1, 1) S(0,v1 ,0),0,c1 +1,0) S(v3 ,v1 ,0),0,c1 +1,0) with P(0,1,2) · μ for u = (0, 1, 2) S(v3 ,v1 ,v2 ),(c3 +1,c1 +1,0) with P(0,2,1) · μ for u = (0, 2, 0) with P(0,2,1) · μ for u = (0, 2, 1) S(0,v1 ,v2 ),0,c1 +1,0) S(v3 ,v1 ,v2 ),0,c1 +1,0) with P(0,2,2) · μ for u = (0, 2, 2) S(v3 ,0,v2 ),(c3 +1,0,c2 +1) with P(1,0,0) · μ for u = (1, 0, 0) S(0,0,v2 ),(0,0,c2 +1) with P(1,0,1) · μ for u = (1, 0, 1) S(v3 ,0,v2 ),(0,0,c2 +1) with P(1,0,2) · μ for u = (1, 0, 2) S(v3 ,0,0),(c3 +1,0,0) with P(1,1,0) · μ for u = (1, 1, 0) with P(1,1,1) · μ for u = (1, 1, 1) ⇒ S(0,0,0),(0,0,0) S(v3 ,0,0),(0,0,0) with P(1,1,0) · μ for u = (1, 1, 2) S(v3 ,0,v2 ),(c3 +1,0,0) with P(1,2,0) · μ for u = (1, 2, 0) S(0,0,v2 ),(0,0,0) with P(1,2,2) · μ for u = (1, 2, 1) S(v3 ,0,v2 ),(0,0,0) with P(1,2,2) · μ for u = (1, 2, 2) S(v3 ,v1 ,v2 ),(c3 +1,0,c2 +1) with P(2,0,0) · μ for u = (2, 0, 0) S(0,v1 ,v2 ),(0,0,c2 +1) with P(2,0,1) · μ for u = (2, 0, 1) S(v3 ,v1 ,v2 ),(0,0,c2 +1) with P(2,0,2) · μ for u = (2, 0, 2) with P(2,1,0) · μ for u = (2, 1, 0) S(v3 ,v1 ,0),(c3 +1,0,0) S(0,v1 ,0),(0,0,0) with P(2,1,1) · μ for u = (2, 1, 1) S(v3 ,v1 ,0),(0,0,0) with P(2,1,2) · μ for u = (2, 1, 2) S(v3 ,v1 ,v2 ),(c3 +1,0,0) with P(2,2,0) · μ for u = (2, 2, 0) with P(2,2,1) · μ for u = (2, 2, 1) S(v3 ,v1 ,v2 ),(c3 +1,0,0) S(v3 ,v1 ,v2 ),(0,0,0) with P(2,2,2) · μ for u = (2, 2, 2)
In fact, above transitions represent only changes of optical ring state. Due to extensive description required, changes of nodes’ state are not included.
4
Reducing the Number of Markovian States
The OLYMP-2 library in the 32-byte version makes it possible to model systems described by the maximum number of about 30 mln states (this number depends
236
M. Nowak and P. Pecka
also on the possibilities of transitions between states which have an impact on the actual amount of the memory occupied by the transition matrix; because of the small number of non-zero elements the matrix is compressed). In order to decrease the size of the model description, which would enable us to model bigger systems, the passage counter has been abandoned. The probability of collecting a packet by a node should therefore be established on the basis of the knowledge of the model. Assuming that the model is homogeneous and consequently all nodes transmit with the same intensity and the traffic generated by a given node is evenly distributed between all other nodes we arrive at the values described below. Let’s mark the probability that a chosen node will collect a packet sent by a node lying in the distance of i network segments by p(i). The probability that a given node will collect a packet sent by the preceding node in the distance of i network segments is the Pt (i) probability of passing through i network segments N −i equalling Pt (i) = N −1 , multiplied by the probability of collecting the packet by the current node (after passing through i network segments), which equals Pc (i) = N1−i . The total probability P of the packet being collected by a node, taking account of the packets sent by all network nodes equals: N −1
P =
i=1 N −1
1
(N − i)
=
2 N
(3)
i=1
The probability P of the packet being collected is the same as in the accurate model presented above. The model employing the above values can be however described by means of a significantly smaller number of states. The number of the reduced model’s states is a product of the number of the node’s states, which did not change and the number of the ring’s states which is presently described by the vector: V rr = (f, v1 , v2 , v3 ), where f (Erlang’s phase) assumes the value of 1..5, whereas the vi (state of the frame in the i segment) assumes the value of 0..2. The total number of states with the same model parameters is: Sr = ((B1 + 1)(B2 + 1))N ·F ·(K + 1)N ,
(4)
which for the adopted data yields the value of Sr = 2, 109, 375. Consequently, the model has been reduced by the factor (N − 1)N Transitions in reduced model Detailed description of transitions in reduced model follows, using the same symbols as above. In all cases system is in the last phase of Erlang distribution (f = 5). Transition for v1 = 0, v2 = 0, v3 = 0: Sv1 ,v2 ,v3 ⇒ Sv3 ,v1 ,v2 with 1 · μ for u = (1, 1, 1)
Reducing the Number of States for Markovian Model
Transitions for v1 = 0, v2 = 0, v3 > 0: Sv1 ,v2 ,v3 ⇒
S0,v1 ,v2 with P · μ for u = (1, 1, 0) Sv3 ,v1 ,v2 with (1 − P ) · μ for u = (1, 1, 1)
Transitions for v1 = 0, v2 > 0, v3 = 0: Sv1 ,v2 ,v3 ⇒
Sv3 ,v1 ,0 with P · μ for u = (1, 0, 1) Sv3 ,v1 ,v2 with (1 − P ) · μ for u = (1, 1, 1)
Transitions for v1 = 0, v2 > 0, v3 > 0:
Sv1 ,v2 ,v3
S0,v1 ,0 with P 2 · μ for u = (1, 0, 0) S with P (1 − P ) · μ for u = (1, 0, 1) ⇒ v3 ,v1 ,0 S0,v1 ,v2 with P (1 − P ) · μ for u = (1, 1, 0) Sv3 ,v1 ,v2 with (1 − P )2 · μ for u = (1, 1, 1)
Transitions for v1 > 0, v2 = 0, v3 = 0: Sv1 ,v2 ,v3 ⇒
Sv3 ,0,v2 with P · μ for u = (0, 1, 1) Sv3 ,v1 ,v2 with (1 − P ) · μ for u = (1, 1, 1)
Transitions for v1 > 0, v2 = 0, v3 > 1:
Sv1 ,v2 ,v3
S0,0,v2 with P 2 · μ for u = (0, 1, 0) Sv3 ,0,v2 with P (1 − P ) · μ for u = (0, 1, 1) ⇒ S0,v1 ,v2 with P (1 − P ) · μ for u = (1, 1, 0) Sv3 ,v1 ,v2 with (1 − P )2 · μ for u = (1, 1, 1)
Transitions for v1 > 0, v2 > 0, v3 = 0:
Sv1 ,v2 ,v3
Sv3 ,0,0 with P 2 · μ for u = (0, 0, 1) S with P (1 − P ) · μ for u = (0, 1, 1) ⇒ v3 ,0,v2 Sv3 ,v3 ,0 with (1 − P )2 · μ for u = (1, 0, 1) Sv3 ,v1 ,v2 with (1 − P )2 · μ for u = (1, 1, 1)
Transitions for v1 > 0, v2 > 0, v3 > 0:
Sv1 ,v2 ,v3
S0,0,0 with P 3 · μ for u = (0, 0, 0) Sv3 ,0,0 with P 2 (1 − P ) · μ for u = (0, 0, 1) S0,0,v2 with P 2 (1 − P ) · μ for u = (0, 1, 0) S with P (1 − P )2 · μ for u = (0, 1, 1) ⇒ v3 ,0,v2 S0,v1 ,0 with P 2 (1 − P ) · μ for u = (1, 0, 0) Sv3 ,v1 ,0 with P (1 − P )2 · μ for u = (1, 0, 1) S0,v1 ,v2 with P (1 − P )2 · μ for u = (1, 1, 0) Sv3 ,v1 ,v2 with (1 − P )3 · μ for u = (1, 1, 1)
237
238
M. Nowak and P. Pecka
Due to extensive notation of transitions above, only changes of ring state were taken into consideration. Following transitions describe changes of state of nodes. In given node, n1 means the number of blocks in Premium queue, and n2 number of blocks in Best Effort queue. For n1 > 0 a block is collected from Premium queue: S(n1 ,n2 ) ⇒ S(n1 −1,n2 ) For n1 = 0 i n2 > 0 a block is collected from BE queue: S(n1 ,n2 ) ⇒ S(n1 ,n2 −1) After receiving a block from a ring state of node is not changed. State changes however after receiving a block from a network client. Queues are limited to lengths B1 and B2 . Premium class blocks are coming to the node with Poisson’s source intensity λ. If n1 < B1 S(n1 ,n2 ) ⇒ S(n1 +1,n2 ) If n1 = B1 packets are dropped and state does not change: S(n1 ,n2 ) ⇒ S(n1 ,n2 ) Best Effort client packets are also coming to the node with intensity λ, and are dropped when buffer is full. S(n1 ,n2 ) ⇒ S(n1 ,n2 +1) if n2 < B2 S(n1 ,n2 ) ⇒ S(n1 ,n2 ) if n2 = B2
5
Modelling Results
Results of modelling the optical slotted-ring network are shown in the tables 1-9. One can find there comparisons of values obtained by means of the two analytical models - complete and reduced. Client packets of constant size b=50 bytes (equal to optical block size) were coming to the nodes with Poisson distribution. Three scenarios were considered - with low network load, medium network load and very high network load. λ in Poisson sources had the values respectively: 0.01, 0.1 and 1.0. The distribution of probability of queue lengths is shown in following tables. As can be seen, the presented results differ only slightly. This indicates that the reduced analytical model is correct. Slight differences in the results stem from numerical errors, which are hoped to be reduced in next versions of OLYMP-2 libray, beeing still in experimental stage.
Reducing the Number of States for Markovian Model
239
Table 1. Probability of observation of given blocks number in Premium buffer for low load of the network (λ = 0.01) Number of blocks 0 1 2 3 4
Accurate model 0.993594 0.00625059 3.14366E-05 1.52735E-07 4.73649E-09
Reduced model 0.993611 0.00626032 3.15361E-05 1.41243E-07 5.92324E-10
Table 2. Probability of observation of given blocks number in BE buffer for low load of the network (λ = 0.01) Number of blocks 0 1 2 3 4
Accurate model 0.993396 0.00644566 0.000034151 1.77191E-07 5.38805E-09
Reduced model 0.993479 0.00638996 3.33749E-05 1.58267E-07 7.20769E-10
Table 3. Probability of incoming of different types of frame for low load of the network (λ = 0.01)
Premium packet Best Effort packet Empty frame
Accurate model 0.0149971 0.0149601 0.969919
Reduced model 0.0149983 0.0148428 0.970062
Table 4. Probability of observation of given blocks number in Premium buffer for medium load of the network (λ = 0.1) Number of blocks 0 1 2 3 4
Accurate model 0.897545 0.0888233 0.00851057 0.00084927 8.5963E-05
Reduced model 0.900988 0.0893426 0.00854319 0.000850526 8.5255E-05
Table 5. Probability of observation of given blocks number in BE buffer for medium load of the network (λ = 0.1) Number of blocks 0 1 2 3 4
Accurate model 0.854267 0.120134 0.0180126 0.00290282 0.000497642
Reduced model 0.87059 0.111132 0.0153258 0.00236012 0.000401648
240
M. Nowak and P. Pecka
Table 6. Probability of incoming of different types of frame for medium load of the network (λ = 0.1)
Premium packet Best Effort packet Empty frame
Accurate model 0.148735 0.143388 0.703692
Reduced model 0.149958 0.13091 0.718941
Table 7. Probability of observation of given blocks number in Premium buffer for high load of the network (λ = 1.0) Number of blocks 0 1 2 3 4
Accurate model 0.00936389 0.0276621 0.0848823 0.277069 0.602627
Reduced model 0.00500573 0.0221344 0.0852233 0.286962 0.600754
Table 8. Probability of observation of given blocks number in BE buffer for high load of the network (λ = 1.0) Number of blocks 0 1 2 3 4
Accurate model 6.12409E-06 4.37338E-05 3.25551E-04 0.00249682 0.998732
Reduced model 3.20845E-07 5.11516E-06 7.36048E-05 0.000981567 0.999019
Table 9. Probability of incoming of different types of frame for high load of the network (λ = 1.0)
Premium packet Best Effort packet Empty frame
6
Accurate model 0.598152 0.00329069 0.400161
Reduced model 0.598987 0.00106056 0.400032
Conclusions
Models based on markovian chains are usually of a small dimension since even a small model is described by means of a huge number of states which results in the big dimension of equations’ systems (along the lines of hundreds of thousands, or even millions) that have to be solved in order to obtain a modelling result. Therefore it is worth using the existing dependencies in each model even if they are not visible at the first glance. Even a simple transformation of the model can yield profits in terms of the model’s dimension. In the example discussed above the model’s scale decreased by a factor proportionate to the square of the model’s dimension, calculated in the number of network’s nodes. The combination of
Reducing the Number of States for Markovian Model
241
smart description methods with the tools which make it possible to use a bigger and bigger calculation capacity and calculation servers’ memory will allow us to apply the modelling based on Markov chains to networks not only of small dimensions (1-3 nodes) but also to slightly bigger ones (a dozen or so nodes), which are more in keeping with real networks. Therefore one can hope that markovian modelling can again play a role in the verification of results obtained in simulation models.
References 1. Calcul Réparti sur Réseau Internet Optique a Capacité Surmultipliée (CARRIOCAS), http://www.carriocas.org 2. Needham, R.M., Herbert, A.J.: The Cambridge Distributed Computing System. Addison-Wesley, Reading (1982) 3. IEEE Std. 802.5, IEEE Standard for Token Ring (1989) 4. Ross, F.E.: Overview of FDDI: The Fiber Distributed Data Interface. IEEE JSAC 7(7) (1989) 5. ISO/IECJTC1SC6 N7873, Specification of the ATMR protocol (v.2.0) (January 1993) 6. Eido, T., Pekergin, F., Atmaca, T.: Multiservice Optical Packet Switched Networks: Modelling and Performance Evaluation of a Slotted Ring 7. Eido, T., Nguyen, D.T., Atmaca, T.: Packet filling optimization in multiservice slotted optical packet switching MAN networks. In: Proc. of Advanced International Conference on Telecommunications, AICT’08, Athens (June 2008) 8. Nowak, M., Pecka, P.: Internet – Technical Development and Applications. In: Simulation and Analytical Evaluation of a Slotted Ring Optical Packet Switching Network, Advances in Soft Computing, vol. 64, Springer, Heidelberg (2009) 9. Nowak, M., Pecka, P.: Priority registers mechanism fo fair access to ring-type OPS networks. Theoretical and Applied Informatics 21(3-4), 181–191 (2009) 10. Nowak, M., Pecka, P.: QoS management for multimedia traffic in synchronous slotted-ring ops networks. In: Proceedings of 6th International Conference HETNETs 2010 (Zakopane) (January 2010) 11. Chiaroni, D.: Optical packet Add/Drop multiplexers: Opportunities and perspectives. Alcatel-Lucent R&I, Alcatel-Lucent Presentation (October 2006) 12. Haciomeroglu, F., Atmaca, T.: Impacts of packet filling in an Optical Packet Switching Architecture. In: Advanced Industrial Conference on Telecommunications, AICT (July 2005) 13. Pecka, P.: Obiektowo zorientowany wielow¸atkowy system do modelowania stanów nieustalonych w sieciach komputerowych za pomoc¸a łańcuchow Markowa. PhD thesis, IITiS PAN, Gliwice (2002)
Performance Modelling of Automatic Identification System with Extended Field of View Troels Laursen, Hans Peter Mortensen, Nikolaj Bisgaard Pedersen, Ulrik Wilken Rasmussen, Tatiana K. Madsen, and Jens Dalsgaard Nielsen Aalborg University, Department of Electronic Systems, Fredrik Bajers Vej 7C, 9220 Aalborg Ø, Denmark {trlau,hp000,markem,wilken,tatiana,jdn}@space.aau.dk http://www.space.aau.dk
Abstract. This paper deals with AIS (Automatic Identification System) behavior, to investigate the severity of packet collisions in an extended field of view (FOV). This is an important issue for satellite-based AIS, and the main goal is a feasibility study to find out to what extent an increased FOV is acceptable. To investigate this, a high altitude balloon was flown carrying two different AIS receivers to collect realistic data. A methodology for extracting the loss rate from the received data was developed, and a comparison of the theoretical collision rate and the experienced loss rate has been made. Keywords: AIS, modelling, balloon flight, data collection, collision probability, AAUSAT3.
1
Introduction
Automatic Identification System (AIS) is an additional system to conventional radar, designed to improve safety at sea by autonomously transmitting a ships traffic information to nearby ships. IMO (The International Maritime Organisation) requires all ships above 300 gross ton and passenger ships to carry an AIS transponder. This means that not all ships carries an AIS transponder and therefore AIS can not be a replacement of traditional collision avoidance systems, but more as an addition to existing systems. Authorities around the world uses AIS to monitor ship traffic and as additional information for search and rescue[7] and supervision in heavily traffic loaded areas. The ships are transmitting dynamic information such as their current position, heading, destination and a Maritime Mobile Service Identity (MMSI). The AIS transponders has a communication range limited by the curvature of the earth, which yields a range of approximately 50-60 km depending on the antenna position. The communication is carried out on two reserved maritime VHF channels. Two different transponder types are available, Class A and Class B transponders. The ships that are not required to carry an AIS transponder S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 242–255, 2010. c Springer-Verlag Berlin Heidelberg 2010
Performance Modelling of AIS with Extended Field of View
243
has the opportunity of using a smaller and cheaper AIS transponder, the Class B transponder. These only transmits with a power of 2.5 W instead of the Class A transponders transmitting with 12.5 W . Furthermore, class B transponders will back off if the channel load is to high. AIS uses a SO-TDMA (Self Organizing Time Division Multiple Access) scheme to share the time on the two channels which is used to improve system stability. The message reporting interval for AIS information is independently controlled by each AIS transponder, based on the ships conditions e.g. the speed and the rate of turn. The detailed technical characteristics of AIS can be found in the ITU-R standard [1]. Another important use of AIS is ship monitoring using ground stations along the coast, but due to earth’s curvature the range is limited. Recently, the interest of detecting and tracking ships far away from a coastline has increased. One of the main tasks of the Danish Maritime Safety Administration (DaMSA) is to monitor the Danish waters and to maintain the shipping routes. This is done mainly by using AIS ground stations located along the Danish coastline, but around Greenland which is also DaMSA’s jurisdiction, this is impractical because of the rough environment and missing infrastructure. The need to monitor AIS around Greenland is growing, due to an increase in ship traffic and the newfound interest in using the Northwest passage. Satellite-based AIS is a promising technology to overcome the coverage limitation experienced by ground stations. However, a number of technical issues needs to be addressed. The most important being 1. an increased collision probability of AIS messages and 2. the link budget (increased free space loss). SO-TDMA scheme used in AIS minimizes collisions among messages sent by different ships that are within communication range of each other. An AIS receiver carried by a satellite has a large field of view (FOV) covering many SO-TDMA zones leading to potential collisions of non-synchronized messages. This paper focuses only on the severity of collision probability. Previous work in this area has been presented in [5], [6] but the results were only based on analytical work and simulations. Currently one AIS satellite, CanX-6, has been launched into space, by a Canadian company, ComDev. Still the results such as detectability and reliability are not published. Among the planed satellites to monitor AIS from space is AISSat-1 from Norway, planed to launch in mid- to late-2009, and still not launched[8]. Furthermore ESA plans on using ISS (The International Space Station) for receiving AIS, but so far an antenna design is completed [9]. Our contribution is a field test with AIS receivers in extended FOV. A typical LEO satellite with low gain antenna experiences a FOV of ∼ 2500 km in radius and this experiment archived a FOV of ∼ 550 km with the help of a balloon. This is still a significantly larger FOV than on ground, even though the FOV is not that of a LEO satellite. In order to collect test data, a satellite prototype (AAUSAT3) has been developed and tested on a balloon flight. AAUSAT3 is the third student satellite from Aalborg University, and everything from project management, development, production and operations is carried out by students. The goal for AAUSAT3 is to investigate the possibilities of receiving AIS messages using a LEO (Low Earth
244
T. Laursen et al.
Orbit) satellite. A complete prototype of AAUSAT3 was used to collect data using a balloon flown in October 2009. The balloon flight was made possible through the BEXUS (Balloon EXperiments for University Students) program, sponsored by ESA, DLR and SNSB. The paper is organized as follows. Section 2 describes the developed methodology. In section 3, the results derived from the collected data set, are presented and discussed. Section 4 concludes these discussions.
2
Methodology
This paper presents the modelling of AIS transmission behaviour with extended FOV, using the data received from the balloon flight. To increase the FOV of an AIS receiver a stratospheric balloon was used. The balloon reached a float height of 24 km for more than 2 hours. With a half-wave dipole mounted on the balloon, the FOV was increased from 50 km to 550 km in radius. The AIS receivers developed for the balloon flight has delivered data for this analysis. One AIS receiver, referred in the following as AIS1 was developed as a hardware receiver based on the ADF7021 radio transceiver. The transceiver demodulates the radio signals from one of the AIS channels to a 9.6 kbaud data stream. This is transfered via a SPI-bus (Serial Peripheral Interface-BUS) to a MCU (Micro Controller Unit) processing the data. AIS packets are detected and stored on permanent memory, both with correct and incorrect CRC16-CCITT checksums [3]. The second AIS receiver, referred to as AIS2 was designed as a SDR (Software Defined Radio). Using a hardware down converter based on the ADF7020 family, the 200 kHz wide frequency spectrum around 162 MHz is down converted to a 200 kHz IF (Intermediate Frequency), which contains both AIS channels. The IF is simultaneously sampled using the AD7262 analog to digital converter with 1 MSPS on both the In phase and Quadrature components. Blocks of 2.175 s are sampled and stored in files of 16 MB each [4]. Covering the area where the balloon was flown, DaMSA was capable of providing reference data from multiple ground stations in the same time interval. The reference data is also included in the analysis. The data analysis has been divided into the following 4 steps: – – – –
Preliminary data analysis and comparison Interpolating transmissions and estimating loss rates Modelling transmission and collision rates Influence of TDMA Zones
Preliminary data analysis and comparison. The first step is a preliminary analysis of the balloon flight data: AIS1 data and AIS2 data. Reference data from the flight period are also analyzed. The number of AIS packets are extracted and the unique MMSI numbers in both reference data and AIS1 data are compared.
Performance Modelling of AIS with Extended Field of View
245
The data from AIS2 is analysed by taking all the ∼ 2 s samples and calculating the average channel use. This is done by counting the number of packets together with the length of them and dividing it by the total time AIS2 has samples from. A decoder has been implemented in MATLAB, to read and decode the raw data from AIS1. AIS uses HDLC to encapsulate message, which is illustrated in figure 1. The data field has different content, depending on the message ID (MSG ID). The AIS standard contains in total 26 different message IDs [2, pp. 93-97]. A message ID 1 packet is a position report from a Class A transponder, where 168 bits of data describes the ships MMSI number, speed over ground, course over ground, position and a communication state together with other position related information. E.g. the Longitude is a 28 bit signed integer, placed between bit 60 and 90, describing the longitude in 1/10000 minutes. Here is a value between ±180 deg valid, and the default value +181 is indicating no position available. The MATLAB script reads the first 6 bits of the data field, which is the message ID. Depending on the message ID the rest of the data is decoded and stored for further analysis. To confirm the AIS1 data set and the decoding, a comparison is made between unique MMSI numbers in AIS1 data and reference data.
Fig. 1. AIS data encapsulation based on HDLC[1, p. 32]
The TDMA zone sizes was estimated. This is done by analysing the number of ships within reach of each ship, which is contained in 3/8 of the AIS position reports according to the AIS standard[1, p. 34]. This data is read from ships and ground stations, to estimate the average number of transponders inside a TDMA zone. Interpolating Transmissions and Estimating Loss Rates. The AIS1 receiver assigns a sequence number to each received AIS packet. In order to create an interpolation of the AIS packets it is necessary to estimate the right timestamp of the packets received. Because the AIS packets from ships only contain the Coordinated Universal Time (UTC) second, it is necessary to estimate the hour and minute. These are estimated using the AIS packets from ground stations, since they contain the UTC hour, minute and second. However, this requires the amount of AIS packets from ground stations to be high enough.
246
T. Laursen et al.
The following three steps are executed to interpolate data from each ship: – Find the next packet from the given ship; – Estimate the condition of the given ship; – Calculate the number of missed packets between two received packets, assuming fixed reporting interval; This interpolated data is used to estimate the loss rate, per ship and averaging over all detected ships. This also allows for the average transmission rate to be estimated. The reporting interval, assuming only dynamic information from Class A transponders, is shown in table 1. Ground stations reporting interval is fixed at 10 s. Table 1. Class A transponder reporting intervals for dynamic information. cc = changing course. Ships dynamic conditions Reporting interval Ship at anchor or moored 3 min Ship 0-14 knots 10 s Ship 0-14 knots + cc 3 1/3 s Ship 14-23 knots 6s Ship 14-23 knots + cc 2s Ship > 23 knots 2s
Modelling Transmission and Collision Rates. In order to find an analytical expression for the probability of collision, certain assumptions has been made. – The ships are assumed to transmit uniformly distributed, based on a average transmit rate, according to tabel 1. – If only one packet is transmitted in a slot, it is assumed to be successfully received. – If more than one packet is transmitted in a slot, they are assumed to collide and to be lost. At first, a slot-based approach is taken, where the different probabilities of different events in a slot is calculated. The three events in a slot are: A) a free slot, B) one packet transmitted or C) packet collision. Under the listed assumptions, the number of packets transmitted in a slot can be calculated using the binomial distribution[10]: n fB (k, n, p) = · pk · (1 − p)n−k (1) k where k is the number of packets in a slot, n is the number of ships within FOV, p is the probability of one ship transmitting in a slot. The variable p can be calculated using the average ship transmission rate in FOV, divided by the
Performance Modelling of AIS with Extended Field of View
247
number of slots in a minute. Equation 1 is used to model the behavior of one channel. A packet-based approach is taken in order to investigate the probability of losing a packet, given that it is transmitted. The probability of sending a packet successfully, PT xok , is assumed to be the same as the probability of no other ships transmitting in the same slot: PT xok = fB (0, n − 1, p)
(2)
Another parameter, probability to detect a ship during an certain observation time, is of interest. The probability of detecting a ship is the probability of receiving at least one packet from the given ship within a predefined time interval: Pdetect = 1 − fB (0, t · tr, PT xok )
(3)
where t is the time observed in minutes, tr is the transmission rate of the observed ship in pck/minute. Influence of TDMA Zones. SO-TDMA protocol ensures that that the transmissions of messages from ships located in one SO-TDMA zone are done without collisions. This can be modelled by dividing the ships into zones. The binomial distribution is still used, but with a different parameters: m fZ (k, n, pz) = · pkz · (1 − pz )m−k (4) k where k is the number of packets in a slot, m is the number of zones within FOV, pz is the probability of one ship, within a given zone, transmitting in a slot. The probability pz can be calculate using the average transmit rate multiplied with the number of ships in a zone, and dividing with the number of slots. Calculating PT xok z taking into account SO-TDMA zones we can use the following formula: PT xok
z
= fZ (0, m − 1, pz )
(5)
The values for transmission rate and the size of zones is found from the collected data, and is used in the model.
3
Results
The balloon flight data was captured from the Northern Scandinavia the 11th of October 2009. The total flight time was from 9:23 to 13:16 UTC. The float period, where the height was ∼24 km, was more than 2 hours. This section shows the results of the analysis, according to the methodology described in the previous section.
248
T. Laursen et al.
Preliminary Data Analysis and Comparison. First, the channel usage is estimated based on AIS2 data from the float period. The average is observed to be reasonable fixed. chusage = 33.1 %
(6)
The channel usage is quite high compared to ground based monitoring there is however spare capacity left on the channel. Table 2 identifies the number of packets received by AIS1. This shows that AIS1 received on average almost 70 AIS messages per MMSI, while the reference data from DaMSA on average contained 9 AIS messages per ship. Table 2. The reference data and decoded AIS1 data Description AIS1 Data Ref. data # of packets 25196 2833 # of ships 339 309 # of ground station 24 -
Figure 2 illustrates the area around the balloon flight. The balloon trajectory is illustrated by the black line. Line of sight is indicated by a circle with 550 km in radius. AIS1 data is shown using blue circles illustrating ground stations and red crosses indicating ships. Here the theoretical FOV, limited by line of sight, seems to be a good fit. Only a few ground stations where observed outside the expected 550 km. This can be explained by a high position of the antenna at ground stations. The channel usage indicates that the AIS channel was not over loaded, and that there was spare capacity on the channels. Figure 3 shows the dynamic condition from the packets received by AIS1. Figure 3 shows that the most common dynamic condition is sailing at a speed up to 14 knots, dictating a reporting interval of 10 s. The second highest number of AIS messages are from ships, with the same speed, but changing their course at the same time. This dynamic condition dictates a reporting interval of 31/3 s. It is noticed that only a very few packets was received from ships at anchor, which is due to the low reporting interval of 3 minutes. Comparison of unique ships detected by AIS1 and located in the reference data from the ground stations, showed that 151 ships had the same MMSI. 158 ships were detected only by the ground stations, and 188 ships were only detected by AIS1. The 158 ships detected by the ground stations, but not by AIS1, can partially be explained by 20 ships outside FOV, 4 ships had Class B transponders and 14 Class A transponders were moored. The reasons for not detecting the rest of the ships are unknown. The data provided by DaMSA’s did not include whether the AIS data was received from Class A or B transponders. However there is a clear indication that not all ships within FOV were detected by AIS1. However, one should note that the presented values can not be used to estimate the detection rate, since the reference data did not only come from the FOV during the flight, nor did it cover the complete FOV.
Performance Modelling of AIS with Extended Field of View
249
Fig. 2. Balloon flight trajectory, AIS1 data and FOV < 1%
At Anchor 0−14 knots changing course 14−23 knots 14−23 knots changing course or >23 knots 0−14 knots
20%
2% 6%
72%
Fig. 3. Ships dynamic condition in the AIS1 received data
The ships detected by AIS1 that were not in the reference data, were mostly outside the range of the ground stations. Other ships that were only detected by AIS1 was because the reference data did not cover the far north of Norway, nor the Finnish coastline. However, the AIS1 receiver did detect ships within area of the reference data, that was not detected by the nearby ground stations. This also supports the claim that the landscape causes issues both for the ground stations and AIS1. The histogram in figure 4 illustrates the number of ships within reach of each ship, as reported by the ships in the AIS messages. The average number of ships within reach of a ship is found to be 12, and 21 for ground stations. The histogram shows that there are a large amount of ships, with very few ships within range. This can be the case for ships sailing on the open sea.
250
T. Laursen et al. 70
Experienced by # ships
60 50 40 30 20 10 0
0
20
40
60 Ships in TDMA zone
80
100
120
Fig. 4. Number of ships within range of each ship
Interpolating Transmissions and Estimating Loss Rates. The data interpolation is based on the AIS1 data received during the float period. The interpolation of ship data from AIS1 extended the data set from ∼17000 to ∼106000 AIS packets. A segment of the data interpolation done on the AIS packets received from one ship is shown in figure 5. The interpolated data is shown in the upper part of the figure as green lines and the received data is shown in the lower part.
Rx msg type 1 as expected Rx msg type 3 as expected Expected but missing msg
4.4
4.42
4.44
4.46 Time [sec]
4.48
4.5
4.52 4
x 10
Fig. 5. A segment of the interpolation done on the data received from the MMSI: 212390000. The figure contains 20 minutes of received data lower part, and interpolated data upper part. Each vertical line represents packets. The height of the lines are at a fixed value for illustration purpose.
The packet reception rate is estimated, using the received and interpolated AIS1 data: AIS1RXaverage =
Rsuccess = 15.9 % Rsuccess + Rmissed
(7)
Performance Modelling of AIS with Extended Field of View
251
where Rsuccess is the number of received packets, Rmissed is the number of packets missed, estimated by the interpolation. Table 3 identifies the number of packets interpolated divided into the different AIS reporting intervals. The estimated time an average ship is in the different reporting intervals is calculated and shown in figure 6. Comparison of the two pie plots, figure 3 and figure 6, shows that the interpolation resembles the received data. The main difference is the percentage at anchor. This is because the time between each packet is larger than the other dynamic conditions. Table 3. Number of packets divided into the different reporting intervals before and after the interpolation State AIS1 Interpolated R. Interval 1 14 68 3 min 2 11892 49971 10 sec 3 334 2428 6 sec 4 3302 41445 3.33 sec 5 924 10913 2 sec
During the balloon flight the average reporting interval observed was: a na · T a = 13.09 s/pck/ship Ps = a na
(8)
where indent na is the number of interpolated packets in state a, Ta is the reporting interval. The sums are taken varying index a that represents a state in Table 3. Since the transmission of AIS packet is done equally on both AIS channels, the AIS packet transmission rate is equal to AIST Xrate = P2s = 6.55 s/pck/ship. The measured average reporting interval of 6.55 s is not far from the 6 s assumed in similar studies[5]. 2%
At Anchor 0−14 knots changing course 14−23 knots 14−23 knots changing course or >23 knots 0−14 knots
20%
2% 3%
73%
Fig. 6. The AIS1 data interpolated and divided into the AIS standards different dynamic conditions, showing the average time spend by a ship in these
252
T. Laursen et al.
Modeling Transmission and Collision Rate. The values estimated from the measured data for the average reporting interval and the number of ships per zone are used in the input parameters for equations in Section 2.3. 1 Probability of empty/free slot A 0.5 0
0
1000
2000
3000
4000
5000
6000
7000
0.4 Probability for good transmission in a slot B 0.2 0
0
1000
2000
3000
4000
5000
6000
7000
1 Probability for collision in a slot C 0.5 0
0
1000
2000
3000
4000
5000
6000
7000
Fig. 7. Probability for (A) none, (B) one and (C) > 1 simultaneous transmissions in one slot, as a function of number of transponders within FOV
Using data from AIS2, the channel utilization was measured to around 33 % (equation 6). From Figure 7A, using the probability of a free channel being 0.67, we obtain a number of 195 ships within FOV. In the collected data there were registered messages from a larger number of ships, 336 ships. This can indicate that not all lost messages were lost due to collisions; some messages could be lost due to long distance between a transmitter and receiver. Using equation (2), the probability for a transmission being successful can be calculated. For 195 ships within FOV is found to be 0.68. With 336 ships within FOV (corresponding to AIS1 detected Class A transponders and ground stations), the probability for a transmission being successful is 0.51. Figure 8 presents the probability of detecting a ship during a limited period of time is found using the model. Here, detecting a ship that is moored or at anchor (3 min) is less likely than a ship on the way. This is due to the high difference in the reporting interval from 3 min to 2 s. Influence of TDMA Zones. To show the difference between the ship based and the zone based model, the probability of detecting a ship is calculated using both (see Figure 9). The figure shows that the difference when using the ship based model (equation 1) or the zone based model (equation 4) is minimal, especially in lightly sailed waters, like the one experienced during the balloon flight.
Performance Modelling of AIS with Extended Field of View
253
1 6.55 s 2s 3 min
Probability of ship detection
0.8
0.6
0.4
0.2
0 0
1000
2000 3000 4000 5000 Number of ships within FOV
6000
7000
Fig. 8. Probability of detecting a ship during 10 min when using different reporting intervals 1 Probability without zones Probability with zones 0.8
0.6
0.4
0.2
0 0
1000
2000 3000 4000 5000 Number of ships within range
6000
7000
Fig. 9. Probability of detecting a ship with and without zones
4
Conclusion
This paper has investigated the severity of the increased probability for packet collisions when receiving AIS with extended FOV. A high altitude Balloon has been flown with two AIS receivers gathering realistic data for extracting the loss rate. Since the reference data and received data does not cover exactly the same area, the detected percentage does not directly indicate the receiver performance.
254
T. Laursen et al.
But it can be seen that along the coast of Norway some ships has been missed by AIS1, and not by ground stations, and vice versa. This indicates that the fjords and mountains of Norway makes this data set non-ideal for comparison. The interpolation method proved to be working properly on the received packets and estimated the number of in-between transmissions. Of the interpolated data 15.9 % was actually received, indicating a loss rate of 0.841. The theoretical collision probability was found to be between 0.32 and 0.49. The difference between the loss rate and the collision probability is too significant to be neglected. This could partly be explained by low SNR causing packet errors. Also the previous mentioned fjords and mountains has influenced the line of sight, and the different experienced transponder qualities. The interpolation method does not only apply to the balloon experiment, but can also be used in a experiment where data from multiple ground stations is used to estimate the traffic, which then could be used for modelling collision probability in the given area. Furthermore, the link budget and collisions due to propagation delay should also be taken into account in the theoretical calculations. This paper concludes, that the most important parameter, when receiving AIS with extended FOV, is the number of ships within FOV. Hence, when designing a satellite to receive AIS signals in space, the first challenge is to design the antenna. The antenna should be designed to limit the FOV, depending on the expected number of ships in the region of interest, and the required probability of ship detection. According to this study a FOV around 1200-1500 ships is the maximum desired. The antenna design could e.g. be a helical antenna, with the length chosen to increase gain and reduce the FOV to an acceptable size before satellite launch, since a service visit to a satellite is undesirable.
Acknowledgements The authors would like to thank all colleagues from the Satellite group at Aalborg University and everybody who was involved in the development of the AAUSAT3 satellite. We also would like to thank the Danish Maritime Safety Administration for collaboration and providing us with the reference data.
References 1. ITU-R M.1371-2 Technical characteristics for an universal automatic identification system using time division multiple access in the VHF maritime mobile band (19982001-2006) 2. ITU-R M.1371-3 Technical characteristics for an universal automatic identification system using time division multiple access in the VHF maritime mobile band (19982001-2006-2007) 3. Andersen, M.H., Pedersen, N.B., Rasmussen, U.W., Laursen, T.: Satellite AIS Receiver. Technical Report (2009) 4. Jessen, T., Ledet-Pedersen, J., Mortensen, H.P.: Software Defined AIS Receiver For AAUSAT3. Technical Report (2009)
Performance Modelling of AIS with Extended Field of View
255
5. Cervera, M.A., Ginesi, A.: On the Performance Analysis of a Satellite-based AIS System. In: The Proceedings of the 10th International Workshop on Signal Processing for Space Communications (2008) 6. Cervera, M.A., Ginesi, A., Eckstein, K.: Satellite-based vessel Automatic Identification System: A feasibility and performance analysis. International Journal of Satellite Communications and Networking (2009) (Published Online December 8, 2009) 7. Danish Marime Safety Administration, http://frv.dk/Sejladsinformation/AIS/Pages/ Fordele begraensninger AIS.aspx 8. The AISSat-1 Mission, http://www.utias-sfl.net/nanosatellites/AISSat-1/ 9. Atlantis leaves Columbus with a radio eye on Earth’s sea traffic, http://www.esa.int/esaHS/SEMIHX49J2G_iss_0.html 10. Ross, S.M.: Introduction to Probability and Statistics for Engineers and Scientists, 3rd edn. (2004)
Performance Measures Computation for a Single Link Loss Network with Unicast and Multicast Traffics Irina Gudkova and Olga Plaksina Peoples Friendship University of Russia, Telecommunication Systems Department, Ordzhonikidze str. 3, 115419 Moscow, Russia {igudkova,oplaksina}@sci.pfu.edu.ru http://www.telesys.pfu.edu.ru
Abstract. The resource sharing is a fundamental issue for multirate loss networks, specially for multicast traffic with a huge number of recipients. In this paper, we give a generalized mathematical model to compute exact values of performance measures for unicast and multicast multirate traffics sharing a single link. We propose a recursive algorithm to obtain the normalization constant and the main performance measures, including blocking probabilities and link utilization factor. Keywords: Multiservice loss networks, multicast, unicast, blocking probabilities, recursive algorithm.
1
Introduction
The resource sharing problem is a key problem in multiservice loss networks. Multirate unicast loss models have been widely studied. An effective recursive algorithm to calculate blocking probabilities was proposed in [4], [5]. A set of works was devoted to multicast traffic models including [2], [3], [7]. Two different users’ behavior models were studied. The first one is based upon the assumption that all multicast users are involved in a session from the moment they join it until the user initiated this session departs. The second one assumes that all users depart independently and the session is active if there is at least one multicast user. The first model was introduced in [7] where the recursive formula for the main performance measures was proposed. Nevertheless, it has a limitation as it allows to compute characteristics for the one multicast service only. The second model was studied by a number of researchers. In [3] the multiservice loss model was introduced and the exact blocking probabilities were deduced. Then, based on this work in [2] a recursive algorithm for a multicast single link network was derived. There was also proposed a convolution formula for a model with a mixture of unicast and multicast traffic; however the use of convolution led to significant computational costs. The model [7] was extended for the case of two traffic types in [6] where a recursive algorithm was proposed. S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 256–265, 2010. c Springer-Verlag Berlin Heidelberg 2010
Performance Measures Computation for a Single Link Loss Network
257
In this paper, considering the results obtained in [6] and [2] we generalize a model of a single link loss network with unicast and multicast traffics independently of multicast users’ behavior. We present a new recursive algorithm to calculate a number of performance measures. Note that the proposed additional recursion enables to reduce computational time in comparison with [6]. The rest of this paper is organized as follows. In the next section, we present the mathematical model of a single link loss network with multicast and unicast traffics and its product solution form. The main performance measures are also described. In section 3, we present the recursive algorithm to calculate blocking probabilities and other characteristics. Then in section 4, an example is given to illustrate the use of the algorithm. A summary of this paper is discussed in section 5.
2 2.1
Model of a Multiservice Single Link Loss Network with Unicast and Multicast Traffics Single Link Model
We consider a single link multiservice network supporting unicast and multicast traffics. The link has C capacity units (c.u.) and supports K := {1, . . . , K} classes of unicast connections and M := {1, . . . , M } multicast services, as shown in Fig.1.
Fig. 1. Model of a multiservice single link loss network with unicast and multicast traffic
Class-k connections arrive according to independent Poisson process with rate νk and have requirements of dk c.u., ak is the offered load, k ∈ K. Multicast traffic has a bandwidth saving nature. Users requested the same service are served simultaneously without occupying additional network resources. Such service discipline we refer as “transparent”. Consider two transparent disciplines T1 and T2 corresponding to multicast users’ behavior models described in [7] and [2] respectively. User requests for service m arrive according to independent Poisson process with rate λm . A request for service m is blocked and
258
I. Gudkova and O. Plaksina
lost if both of the following conditions are true: service m is not provided to any user via the link and there are less than bm c.u. free. Otherwise the request is accepted. For the discipline T1 session duration equals service initiator residency time that is exponentially distributed with mean μ−1 m . During this period of time newly arriving users requested the same service are accepted without blockings, but they do not affect session duration. When this session ends all users depart together with the session initiator. For the discipline T2 session duration could be increased by newly arriving requests for service m. Each user request has exponential residency time with mean μ−1 m . Session ends when the last user departs. Let denote ρm := λm μ−1 m , m ∈ M. 2.2
State Probabilities
Firstly, we consider unicast traffic and introduce a process describing it. Let Nk (t) be the number of k-class connections in the system at time t, then the process {N (t) := (N1 (t) , . . . , NK (t)) , t ≥ 0} represents the states of unicast connections. Let d (n) := k∈K dk nk be the number of c.u. occupied in state n := (n1 , . . . , nK ), nk ∈ {0, . . . ,C/dk } =: Nk . The state space is given by N :=
n ∈ × Nk : k∈K
d (n) ≤ C . State probabilities for the process N (t) are
well known [1], [4]: π (n) = G−1 (N )
ank k , nk !
n∈N .
(1)
k∈K
In this paper, notation G (A) stands for a normalization constant for the corresponding process distribution with the state space A. Then, consider multicast traffic. In [2] the link states are described through the number of multicast users; in [6] they are described through the states of multicast services. The last approach let us to construct a general model independently of users’ behavior. Let Ym (t) equals 1 in the case when service m is active at time t, and 0 otherwise. The process {Y (t) := (Y1 (t) , . . . , YM (t)) , t ≥ 0} represents the states of multicast services. Let b (y) := m∈M bm ym be the number of c.u. occupied in state y := (y , . . . , y ), y ∈ {0, 1}. The state space is given by 1 M m M Y := y ∈ {0, 1} : b (y) ≤ C . From the global equilibrium balance equations it can be shown that state probabilities for process Y (t) are given by αymm , y ∈ Y , (2) π (y) = G−1 (Y) m∈M
with parameter αm := λm wm , where wm is the mean session duration for service m and depends on service discipline. For disciplines T1 and T2 (see Appendix) we have: −1 μm , for discipline T1 , wm = (3) , (eρm − 1) λ−1 m for discipline T2 .
Performance Measures Computation for a Single Link Loss Network
259
Finally, we consider the case of both unicast and multicast traffics sharing the link. The process {Z (t) := (N (t) , Y (t)) , t ≥ 0} represents the system states. Let c (z) := d (n) + b (y) , z ∈ N × Y (4) be the number of occupied c.u. in state z := (n, y). The system state space is given by Z := {z ∈ N × Y : c (z) ≤ C} . (5) The process Z (t) is a reversible Markov process with equilibrium distribution ank k π (z) = G−1 (Z) αymm , z ∈ Z , (6) nk ! k∈K
m∈M
where G (Z) = π −1 (0) is the normalization constant. 2.3
Performance Measures
The main model performance measures are the probability BkI := P z ∈ BkI II II := P z ∈ Bm that a that a k-class connection is blocked, the probability Bm user request for service m is blocked, the probability Hm := P {z ∈ Hm } that service m is not offered, but the link has enough c.u. to satisfy a user request for the service, the probability Fm := P {z ∈ Fm } that service m is offered via the link, where BkI := {z ∈ Z : II := {z ∈ Z : Bm
C − dk + 1 ≤ c (z) ≤ C} ,
k∈K,
(ym = 0) ∧ (C − bm + 1 ≤ c (z) ≤ C)} ,
Hm := {z ∈ Z :
(ym = 0) ∧ (0 ≤ c (z) ≤ C − bm )} ,
Fm := {z ∈ Z :
ym = 1} ,
m∈M, m∈M,
m∈M,
and the utilization factor of the link 1
UTIL := c (z) π (z) . C
(7) (8) (9) (10)
(11)
z∈Z
Calculating performance measures for links with large capacity serving a huge number of users leads to large state space dimension and significant computational costs. In the next section, we give a recursive algorithm to avoid difficulties in computing.
3 3.1
Recursive Algorithm for Performance Measures Computation State Space Partitioning
To derive a recursive algorithm we use the approach based on partitioning the system state space Z for the number of occupied c.u.: Z=
C c=0
Z (c) ,
Z (c) := {z ∈ Z :
c (z) = c} , c = 0, . . . , C .
(12)
260
I. Gudkova and O. Plaksina
The notation
Ai in this paper denotes that sets Ai are mutually disjoint.
i∈I
Then, for every service m subset Z (c) could be partitioned in two subsets according to its state – whether service m is active or not: Z (c) = {z ∈ Z (c) : ym = 0} m ∈ M, c = 0, . . . , C .
{z ∈ Z (c) :
ym = 1} ,
(13)
The first one subset we denote as Z−m (c) := {z ∈ Z (c) :
m ∈ M, c = 0, . . . , C .
ym = 0} ,
(14)
Now, sets (7) – (10) can be expressed through the defined subsets Z (c) and Z−m (c) as follows: BkI =
C
Z (c) ,
k∈K,
(15)
c=C−dk +1
II Bm =
C
Z−m (c) ,
m∈M,
(16)
c=C−bm +1
Hm =
C−b m
Z−m (c) , Fm =
c=0
C
Z−m (c) ,
m∈M.
(17)
c=0
II It is evident that Bm Hm Fm = Z. Taking into account that the link serves two different types of traffic, every subset Z (c) and Z−m (c) can be written down as a convolution Z (c) =
c
[Y (i) × N (c − i)] ,
c = 0, . . . , C ,
(18)
i=0
Z−m (c) =
c
[Y−m (i) × N (c − i)] ,
m ∈ M, c = 0, . . . , C ,
i=0
where N (c) := {n ∈ N : d (n) = c} , N =
C
N (c) ;
c=0
Y (c) := {y ∈ Y : b (y) = c} , Y =
C
Y (c) ,
c=0
Y−m (c) := {y ∈ Y (c) : ym = 0} .
(19)
Performance Measures Computation for a Single Link Loss Network
3.2
261
Recursive Formula for Multicast Traffic
Performance measures for unicast connections can be calculated by the well known Kaufman–Roberts recursive formula [4], [5] ⎧ 0 c < 0, ⎪ ⎪ ⎨ 1, c = 0, h (c) = 1
(20) ⎪ a d h (c − d ) , c = 1, . . . , C , ⎪ k k k ⎩c k∈K
where h (c) is the unnormalized probability that exactly c c.u. are occupied. The recursive solution (20) cannot be applied for multicast traffic. Other solution was proposed separately for disciplines T1 and T2 in [7] and [2] respectively. Here we generalize this approach. Let ym := (y1 , . . . , ym ) be the m-dimension vector of the first m multicast m b y be the number of c.u. occupied services states; then let b (ym ) := i=1 i i by the first m multicast services in the state ym . The set of all possible states ym when the number of occupied c.u. is equal to c we denote as Y (c, m) := {ym : y ∈ Y, b (ym ) = c}. Then ⎧ ∅, c < 0, m = 0, 1, . . . , M, ⎪ ⎪ ⎪ ⎪ c = 0, m = 0, 1, . . . , M, ⎨ {0} , c = 1, . . . , C, m = 0, Y (c, m) = ∅, ⎪ ⎪ ⎪ Y (c, m − 1) × {0} ⎪ c = 1, . . . , C, m = 1, . . . , M, ⎩ Y (c − bm , m − 1) × {1} , (21) where notation A1 × A2 denotes the product set of sets A1 and A2 . The last line in the formula (21) goes from Y (c, m) = {ym ∈ Y (c, m) : ym = 0} {ym ∈ Y (c, m) : ym = 1} . (22) Note that Y (c, M ) = Y (c) and it let us calculating blocking probabilities for unicast traffic. For multicast traffic we need another recursion for sets Y−m (c) that has the following form: ⎧ c<0, ⎨ ∅, c=0, (23) Y−m (c) = {0} , ⎩ Y (c) \ (Y−m (c − bm ) + em ) , c = 1, . . . , C , with the unit vector ei = 0, . . . , 0, 1, 0, . . . , 0 and A+ei = {a + ei : a ∈ A}. i
It could be simply obtained from Y (c) = {y ∈ Y (c) : ym = 0} {y ∈ Y (c) : ym = 1} = (24) = Y−m (c) (Y−m (c − bm ) + em ) . m Let’s define g (c, m) := ym ∈Y(c,m) i=1 αyi i be the unnormalized probability that first m services occupy exactly c c.u.; and g−m (c) := y∈Y−m (c) i∈M αyi i – the
262
I. Gudkova and O. Plaksina
unnormalized probability that exactly c c.u. are occupied and service m is not offered. Then from the definitions (21) and (23) the following theorem can be easily derived. Theorem 1. The unnormalized probabilities g (c, m) and g−m (c) are calculated by recursive formulas ⎧ 0, c < 0, m = 0, 1, . . . , M , ⎪ ⎪ ⎪ ⎪ c = 0, m = 0, 1, . . . , M , ⎨ 1, c = 1, . . . , C, m = 0 , g (c, m) = 0, (25) ⎪ ⎪ ⎪ g (c, m − 1) + ⎪ c = 1, . . . , C, m = 1, . . . , M , ⎩ +αm g (c − bm , m − 1) , ⎧ c<0, m = 1, . . . , M , ⎨ 0, c=0, m = 1, . . . , M , g−m (c) = 1, ⎩ g (c) − αm g−m (c − bm ) , c = 1, . . . , C , m = 1, . . . , M ,
(26)
where g (c) = g (c, M ). 3.3
Recursive Algorithm for Unicast and Multicast Traffics
Finally, we introduce the recursive algorithm for unicast and multicast traffics sharing the link. Let f (c, m) be the unnormalized probability that unicast connections and first m services occupy exactly c c.u.; and let f−m (c) be the unnormalized probability that exactly c c.u. are occupied and service m is not offered, then f (c, m) =
c
[g (i, m) · h (c − i)] ,
c = 1, . . . , C, m = 1, . . . , M ,
(27)
[g−m (i) · h (c − i)] ,
c = 1, . . . , C,
(28)
i=0
f−m (c) =
c
m = 1, . . . , M .
i=0
Theorem 2. The normalization constant G (Z) and performance measures BkI , II Bm , Hm , Fm and utilization factor UTIL can be computed as G (Z) =
C
f (c) ,
(29)
c=0
BkI = G−1 (Z)
C
f (c) ,
k∈K,
(30)
c=C−dk +1 II = G−1 (Z) Bm
C
c=C−bm +1
f−m (c) ,
m∈M,
(31)
Performance Measures Computation for a Single Link Loss Network
Hm = G−1 (Z)
C−b
m
f−m (c) ,
m∈M,
263
(32)
c=0
Fm = 1 − G−1 (Z)
C
f−m (c) ,
m ∈ M,
(33)
c=0
UTIL =
C 1
cf (c) , C c=0
(34)
where f (c) = f (c, M ); and f (c, m) is calculated by the recursive formula ⎧ 0, ⎪ ⎪ ⎪ ⎪ 1, ⎪ ⎪ ⎨1
f (c, m) =
c < 0, c = 0,
m = 0, 1, . . . , M , m = 0, 1, . . . , M ,
ak dk f (c − dk , 0) , c = 1, . . . , C, m = 0 , c ⎪ k∈K ⎪ ⎪ ⎪ ⎪ f (c, m − 1) + ⎪ ⎩ c = 1, . . . , C, m = 1, . . . , M , +αm f (c − bm , m − 1) ,
and f−m (c) is calculated by ⎧ c<0, ⎨ 0, c=0, f−m (c) = 1, ⎩ f (c) − αm f−m (c − bm ) , c = 1, . . . , C .
(35)
(36)
The proof follows from the convolution formulas (27) and (28) and the recursive formulas (20), (25) and (26). Table 1 illustrates computational complexities of three algorithms: given in this paper, [2] and [6].
Table 1. Computational complexities of the recursive algorithms Characteristic
Theorem 2
Paper [2]
Paper [6]
Normalization constant G (Z) O (C (K + M )) O C (K + M ) + C 2 O (C (K + M )) Blocking probabilities II Bm ,m∈M O (C (K + 2M )) O C (K + 3M ) + C 2 O (CM (K + M ))
Complexity of computation of the normalization constant G (Z) by the formula (29) and recursion in [6] are equal. Computation of blocking probabilities II Bm , m ∈ M, by the proposed algorithm requires less operations in comparison with the others.
264
4
I. Gudkova and O. Plaksina
Example
We give an example of a single link network serving unicast and multicast traffics to illustrate the use of recursive algorithm given in subsection 3.3. Let consider a link with capacity C = 1000 c.u. serving 3 unicast connection classes with requirements d = 1 c.u. and 7 multicast services with capacity requirements b = 100 c.u., ρ = 2. Varying unicast traffic load a from 0 to 400, we compute the performance measures (30)–(34) for unicast and multicast traffic. The results are plotted in Fig.2.
Fig. 2. Performance measures for an example of a multiservice single link loss network with unicast and multicast traffics. (1 ) probability BkI that a k-class connection is II blocked, k = 1, 2, 3; (2 ) probability Bm that a user request for service m is blocked, (3 ) probability Hm that service m is not offered, but the link has enough c.u. to satisfy a user request for the service, (4 ) probability Fm that service m is offered via the link, m = 1, 7; (5 ) utilization factor UTIL.
5
Conclusion
In this paper, we addressed the multirate resource sharing problem for unicast and multicast traffics. We give a generalized model of a single link loss network serving two types of traffic and give its product form solution. We propose a recursive algorithm to compute performance measures allowing avoiding the numerical problems that may arise when computing these quantities. Acknowledgments. The authors are grateful to prof. Konstantin Samouylov and associate prof. Yulia Gaidamaka for their advice and guidance.
Performance Measures Computation for a Single Link Loss Network
265
References 1. Basharin, G.P., Samouylov, K.E., Yarkina, N.V., Gudkova, I.A.: A New Stage in Mathematical Teletraffic Theory. Automation and Remote Control 70(12), 1954– 1964 (2009) 2. Boussetta, K., Belyot, A.-L.: Multirate Resource Sharing for Unicast and Multicast Connections. In: Proc. of the Fifth International Conference on Broadband Communications, Hong Kong, pp. 561–570 (1999) 3. Karvo, J., Virtamo, J.T., Aalto, S., Martikainen, O.: Blocking of Dynamic Multicast Connections in a Single Link. In: Proc. of the Fourth International Conference on Broadband Communications, Stuttgart, Germany, pp. 473–483 (1998) 4. Kaufman, J.S.: Blocking in a Shared Resource Environment. IEEE Transactions on Communications 29(10), 1474–1481 (1981) 5. Roberts, J.W.: A Service System with Heterogeneous User Requirements. In: Pujolle, G. (ed.) Performance of Data Communications Systems and Their Applications, vol. 29(10), pp. 423–431. North-Holland, Amsterdam (1981) 6. Samouylov, K., Yarkina, N.: Blocking Probabilities in Multiservice Networks with Unicast and Multicast Connections. In: Proc. of the 7-th International Conference on Telecommunications, Zagreb, Croatia, pp. 423–429 (2005) 7. Gaidamaka, Y., Samouylov, K.: Analytical Model of Multicast Network and Single Link Performance Analysis. In: Proc. of the 6-th International Conference on Telecommunications, Zagreb, Croatia, pp. 169–175 (2001)
Appendix Let describe the states of the link serving multicast traffic through the number of multicast users and show how it is associated with the distribution of multicast service states. Let Xm (t) be the number of users involved in multicast session of service m at time t, then the process {X (t) := (X1 (t) , . . . , XM (t)) , t ≥ 0} represents the number of multicast users. Let b (x) := m∈M bm u (xm ) be the number ofoccupied c.u. in state x := (x 1 , . . . , xM ). The state space is given M
by X := x ∈ {0, 1, . . .} : b (x) ≤ C . Note that u (·) is a Heaviside step function. Then for the discipline T1 state probabilities are given by ρm xm −1 π (x) = G (X ) , x∈X , (37) 1 + ρm m∈M
and for the discipline T2 π (x) = G−1 (X )
ρx m m , xm !
x∈X .
(38)
m∈M
Let us define sets X (y) := {x ∈ X : u (xm ) = ym , m ∈ M}, y ∈ Y. In order to get the probability distribution (2), (3) we need to sum up the corresponding probabilities (37) or (38) over the sets X (y):
π (x) , y ∈ Y . (39) π (y) = x∈X (y)
Realization of a Method of Matrix-Geometric Progression Yuri Ryzhikov Institute of computer science and automation of the Russian Academy of Sciences Saint-Petersburg, Russia [email protected]
Abstract. Ways of calculation of a denominator of a matrix-geometrical progression and initial vectors of probabilities of microstates are examined and compared at calculation of multi-phase multichannel queuing systems. Keywords: Queuing theory, matrix-geometric progression.
Introduction The entering of mankind into an era of information technologies determines growing interest to methods of designing and an estimation of data transmission and processing systems efficiency. Feature of a present situation — approaching of computer elements technology to fundamental physical restrictions. For this reason required parameters of productivity are achieved by creation of multiprocessor and multi-machine systems, which performance cannot be investigated sufficiently by modern methods of the queueing theory. The known useful results are exhausted by systems with constant service time (M/D/n, Ek /D/n) or to exponential service time (GI/M/n). We suppose the investigation and some modifications of the matrix-geometric progression method to compute a distribution of the number of demands in phase-approximated queueing systems. These modifications are illustrated on the M/H2 /n, but can be generalized easily.
1
Multiphase Representation of the Queueing Systems
The broad class of above mentioned problems can be solved by means of the multiphase approximations of initial distributions. Each combination of distributions (Erlangian, Coxian, hyperexponential, general Neuts’ distributions) and of theirs orders generates the specific transition diagram. Certainly, at the picture of diagrams the orders of distributions and number of channels must be concretized — see [1]. S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 266–274, 2010. c Springer-Verlag Berlin Heidelberg 2010
Realization of a Method of Matrix-Geometric Progression
267
For potential users the most interesting is the two-phase hyperexponential service time distribution, allowing to equal three moments of initial one. Parameters of this approximation depending on a variation factor can be real or complex and are computed easily by explicit formula. The working of M/H2 /3 system can be interpreted as process of service of a heterogeneous stream of demands [3], and the choice of its kind determines the parameter of exponentially distributed service time. The ”key” of a microstate specifies the quantity of each type demands being serviced (fig. 1, 2). The total entering stream has intensity λ; arriving (or chosen from the queue) demand belongs with probability yi to i-th type. Table 1. On arrival transitions
0
1
2
3
4
00 @ λy1 λy@ 2 @ 10 01 @ @ λy1 λy@ 2 λy1 λy2@ @ @ 20 11 02 @ @ @ λy1 λy@ 2 λy1 λy2@ λy1 λy@ 2 @ @ @ 30 21 12 03 λ
λ
λ
λ
30
21
12
03
Table 2. On service transitions
0
00 @ @ μ2 @ 10 01 @ @ 2μ1 μ2@ μ1 @ 2μ2 @ @ 20 11 02 @ @ @ 3μ1 μ2@2μ1 2μ2@ μ1 @ 3μ2 @ @ @ 30 21 12 03 y1 y2 y1 y2 y1 y2 @ @ @ @ @ 3μ1 μ1 @@3μ2 μ2@ 2μ1 2μ@ 2 30 21 12 03 μ1
1
2
3
4
268
Y. Ryzhikov
On the right figure at j > n parameter of an i-th type demands servicing stream is equal to mi μi , where mi is the contents of the i-th key position. End of servicing with probabilities {yi } depending on the type of demand chosen from queue results in one of microstates of an overlying lay. Calculation of multiphase systems consists in the solving of transition balance equations for probabilities of microstates. Included in them transition matrices can be constructed automatically. Let’s designate through Sj set of all possible microstates of system at which on service is equally j demands (lay j), and through σj — quantity of elements in Sj . Further according to the diagram of transitions for the chosen model we shall construct the matrices of transition intensities: Aj [σj × σj+1 ] — in Sj+1 (arrival of the demand), Bj [σj × σj−1 ] — in Sj−1 (end of the demand servicing), Dj [σj × σj ] — leaving from states of a lay j (in the brackets the size of matrices is inscribed). The equations of probabilities balance are γ0 D0 = γ1 B1 , γj Dj = γj−1 Aj−1 + γj+1 Bj+1 ,
j = 1, 2, . . .
(1)
The idea of iterative solving this system was proposed by Takahashi and Takami [2]. Its key elements are the transition to conditional (normalized to unity in the lay) probabilities of microstates and the supposition on the stabilization of them if the number of lay tends to infinity. This method was described in [3] in general and more elaborated form.
2
Matrix-Geometrical Progression
Idea of a method. To calculate queuing systems on suppose rather promising the method of a matrix-geometrical progression (MGP), offered by Evans [4] and developed by M.Neuts [5] and his followers (see, for example, [6]). Unfortunately, in the literature there is no distinct comparison of its possible variants, and the technology of calculating initial diagram lays is not discussed in general. These questions make the basic sense of report. Let’s write some equation of the system (1) for j > n, omitting indexes at the transition matrices stabilized to this lay: γj D = γj−1 A + γj+1 B.
(2)
Now we attempt to present probabilities of microstates of completely occupied n-channel system as a vector γj = γn Rj−n ,
j = n, n + 1, . . . ,
(3)
where R is a matrix denominator of a progression. Having substituted expressions of vectors of probabilities of states accordingly (3), it is possible to copy (2) as γj−1 RD = γj−1 A + γj−1 R2 B,
Realization of a Method of Matrix-Geometric Progression
269
whence follows, that the required denominator of a progression should satisfy to a matrix quadratic equation R2 B − RD + A = 0.
(4)
Having this denominator a vector pn of probabilities of the n-th lay microstates, it is possible to calculate probabilities of lay microstates for j > n according to (3). Variants of MGP realization differ with ways of calculation of a denominator of a progression R and technics of the calculation of vectors of probabilities. Calculation of a denominator of a progression. The basic problem of MGP realization consists in the finding of a denominator R of a progression The equation of a kind (4) can be solved by only numerical methods from which are really used only iterative ones. Methods of type of simple iteration can be applied in variants (5) R = R2 BD−1 + AD−1 or
R = A(D − RB)−1 .
(6)
Certainly, constant components of matrix products should be calculated unitary. One more variant of the iterative approach goes back to work [7], see also [6,8]. After addition Rω to both parts of the equation (4) we receive the formula R=
1 2 [R B − R(D − Iω) + A]. ω
(7)
The parameter ω in [8] was offered to be chosen equal to 3, and in [6] — as the minimal module of diagonal elements of a matrix Dn . During the numerical experiments carried out by the author these both approaches resulted in not-converging computing process. It was good luck to establish, that the comprehensible solving is the choice of mean geometrical of the Dn extreme elements. Let’s consider, at last, ”newtonian” (in linear approach) calculation of matrix amendment Δ to a denominator of a progression. We find Δ from equation (R + Δ)(R + Δ)B − (R + Δ)D + A = 0. Neglecting a member containing a square of the amendment, we have R2 B + ΔRB + RΔB − RD − ΔD + A ≈ 0, or Δ(RB − D) + RΔB ≈ RD − R2 B − A. Last equation rewrited in a kind ΔF + RΔB = G
(8)
also is linear concerning a correction matrix. However in one of its occurrences the correction matrix Δ participates in the product of three matrices as an internal factor that excludes its determination by standard methods. This difficulty
270
Y. Ryzhikov
is removed after expression of factors of the extended form of system of the equations (8) through elements of known matrices A, B and D. The number of unknown variables of resulting system for model M/H2 /n is (n + 1)2 . It is known that labor input of standard methods of the solving of the linear algebraic equations system is proportional to a cube of its size. Thus, labor input of Newton’s method of MGP denominator calculation has the order O(n6 ), that shows significant requirements to operative memory and makes very laborconsuming each step of iteration. However it is possible to hope for the total prize in labor input owing to sharp reduction of the number of iterations. Many authors recommend as initial approach to all considered variants R0 = xI,
(9)
where x is the limiting at j → ∞ relation of total probabilities of adjacent lays and can be approximated by 2
x = ρ2/(1+vB ) (in a denominator of exhibitor there is a square of a variation factor of the service time distribution). Reduction of the number of iterations is achieved by reception of best initial approach. In this sense Newton’s variant is especially critical for which the area of convergence is small. For this reason it was used in a combination with an anticipating second iterative variant. The amount of preceding refinement steps to reduce the number of Newton’s iterations at big n grew on n (it was set equal n/2). Calculation of starting microstate probabilities. At known R, we find the vectors {γj }, j = 0, n, solving the system of global balance equations for microstates of the corresponding lays, added with an equation of demand’s balance: n−1
j=0 (n − j)γj 1j = n − b/a, γ0 D0 − C0 ) = γ1 B1 , γj (Dj − Cj ) = γj−1 Aj−1 + γj+1 Bj+1 , j = 1, n − 1, γn (Dn − Cn ) = γn−1 An−1 + γn RBn+1 .
(10)
Practically before the solving it is necessary to expand this system on components of the mentioned vectors (in model M/H2 /n total number is (n + 1)(n + 2)/2). The subsequent vectors of probabilities are determined on a basis (3) recurrently — multiplicating the previous vector on a matrix R. There is,¡however, the best way. Let’s copy system (??) as γj Aj = γj+1 Dj+1 − γj+2 Bj+2 , − γn RBn+1 . γn−1 An−1 = γn Dn
j = 1, n − 2,
(11)
Realization of a Method of Matrix-Geometric Progression
271
Suppose A˜j a matrix complex conjugated with Aj and transposed. We multiply the equations (11) on the right on A˜j : γj Aj A˜j = γj+1 Dj+1 A˜j γj+2 Bj+2 A˜j , j = 1, n − 2, γn−1 An−1 A˜n−1 = γn Dn A˜n−1 − γn RBn+1 A˜n−1 .
(12)
With the help (12) we shall recurrently express initial vectors of microstate probabilities through γn : ˜n−1 (An−1 A ˜n−1 )−1 , γn−1 = γn (Dn − RBn+1 )A −1 ˜j (Aj A ˜j )−1 , γj = γj+1 Dj+1 A˜j (Aj A˜j ) − γj+2 Bj+2 A j = n − 2, n − 3, . . . , 0.
(13)
For simplification of designations we shall put A∗j = A˜j (Aj A˜j )−1 and shall introduce recalculation matrices {VJ } such that γj = γn Vj ,
j = 0, n.
(14)
Obviously, Vn = I (unity matrix of the corresponding size). Now it is possible to copy system (13) as γn Vn−1 = γn (Dn − RBn+1 ) A∗n−1 , γn Vj = γn Vj+1 A∗j − γn Vj+2 Bj+2 A∗j , j = n − 2, n − 3, . . . , 0. Let’s note (it is checked up experimentally), that all {A∗j } are submatrices of A∗n−1 . So, recalculation matrices can be determined recurrently with the help of system Vn = I, Vn−1 = (Dn − RBn+1 ) A∗n−1 , (15) Vj = (Vj+1 − Vj+2 Bj+2 )A∗j , j = n − 2, n − 3, . . . , 0. For the completion of calculation it is necessary to specify a way of γn calculation. We shall write down an equation of demands balance, believing total probabilities of the j-th lay pj = γj 1j : γn
n−1
(n − j)Vj 1j = n − λb.
j=0
Here 1j = {1, 1, . . . , 1}T . It can be copied as n−1
n−1
j+1 n+1
j=0
j=0
n+1 n−1
i=1 m=1 j+1
m=1 j=0
i=1
(n − j)pj = =
(n − j)
(n − j)
γn,m vj,m,i vj,m,i .
(16)
272
Y. Ryzhikov
Additional n missing equations we shall receive from equations of balance of transitions through vertical cuts on the diagram of transitions fig. 1, received of initial diagrams by their association and removing ”strictly vertical” transitions. For i-th vertical section we have a balance equation λy2
n−1 j=i−1 n
= iμ2
j=i
γj,i + (n + 1 − i)μ1 y2 γj,i+1 + iμ2 y1
∞ j=n+1
∞ j=n+1
γj,i+1 ,
γj,i i = 1, n.
Fig. 1. ”Diagonal” transitions
Let’s calculate the sums included in these equality with help of MGP: ∞ j=n+1
γj,i =
∞
γn Rij−n
j=n+1 ∞
= γn
j=n+1
(R)j−n = γn [R(I − R)−1 ]i i
(the bottom index at matrix multiplier specifies the number of a column). Accordingly the equation for the i-th section can be copied as n−1 γn λy2 Vj + (n + 1 − i)μ1 y2 [R(I − R)−1 ]i j=i−1 i (17) n −1 − iμ2 Vj + y1 (R(I − R) )i+1 = 0. j=i
i+1
Realization of a Method of Matrix-Geometric Progression
273
Solving system of the equations (16)–(17), we find components of a vector γn . Now vectors {γj } of the initial probabilities can be calculated according to (14), and for j > n — as MGP members.
3
Numerical Results
In the precedent tables ”S” means the solving of the united system of the equations for a components of initial vectors of probabilities, and ”N” — only for a components of a vector γn . Data in the tables comprise number of iterations/ compiting time in seconds. Zero times comprise values less than 0.01 second. Table 3. ”Progressive” calculation of the models M/E3 /n Number of channels n Method
2 3 5 10 20 30 S28/0 30/0 34/0 43/0.015 59/0.329 84/?
R2 BD−1 + AD−1 N 28/0 30/0 34/0 43/0.015 59/0.063 S14/0 15/0 17/0 23/0.015 32/0.32841/3.469 A(D − RB)−1 N 14/0 15/0 17/0 23/0.015 32/0.03141/0.156 S41/0 44/0 50/0 64/0.016 88/0.344 662/4.875 Ω N 41/0 44/0 50/0 64/0.016 88/0.078 662/1.516 S4/04/04/03/0.1093/7.422 — Newton N4/04/04/03/0.1103/7.203 —
Table 4. ”Progressive” calculation of the models M/H2 /n Number of channels n Method
2 3 5 10 20 30 S49/0 52/0 54/0 59/0.015 62/0.313 73/3.515
R2 BD−1 + AD−1 N 49/0 52/0 54/0 59/0.015 62/0.047 73/0.203 S35/0 36/0 37/0 39/0.016 41/0.328 43/3.468 A(D − RB)−1 N 35/0 36/0 37/0 39/0.016 41/0.047 43/0.141 S51/0 56/0 61/0 69/0.016 78/0.359 92/3.547 Ω N 51/0 56/0 61/0 69/0.016 78/0.063 92/0.265 S5/06/05/04/0.1563/7.4223/79.422 Newton N5/06/05/04/0.1563/7.0943/75.687
From tables follows: 1. All iterative versions of MGP method essentially differ on number of steps, but are rather close on labor consuming. 2. Their convergence appreciably worsens with growth of number of channels (iterations for model M/E3 /40 missed). 3. the N-variant of calculation of initial vectors of probabilities reduces time of the account in tens times.
274
Y. Ryzhikov
4. Newton’s variant, predictably, is characterized exclusive small number of iterations and fast growth of their labor consuming (for big n each doubling of the number of channels increases time of the account more than in 60 times). N -calculation of initial vectors only insignificantly reduces time of the account on Newton’s variant as labor consuming of the given stage makes a small share from labor input of a progression denominator calculation. As a whole this variant has not justified hopes assigned on it. All these conclusions can be generalized to queuing systems with an arbitrary input flows. As more high-speed in comparison with only iterative, MGP method is preferable at high requirements to accuracy; in multi-variant calculations; at work with the infinite sums of probabilities; at the analysis of networks of service (first of all at non-Markovian inter-node flows with iterative recalculation of them).
References 1. Ryzhikov, Y.I.: Theory of Queues and Inventory Control, p. 384. St-Petersburg, Peter (2001) (in Russia) 2. Takahashi, Y., Takami, Y.: A Numerical Method for the Steady–State Probabilities of a GI/G/c Queuing System in a General Class. J. of the Operat. Res. Soc. of Japan 19, 147–157 (1976) 3. Ryzhikov, Y.I., Khomonenko, A.D.: The Iterative Method of the Calculation of Multichannel Systems with any Distribution of Service Time. Problems of Control and Information Theory (3), 32–38 (1980) 4. Evans, R.D.: Geometric Distribution in Some Two Dimensional Queuing Systems. Operat. Res. 15, 830–846 (1967) 5. Neuts, M.F.: Matrix-Geometric Solutions in Stochastic Models: an Algorithmic Approach. J. Hopkins Univ. press, Baltimore (1981) 6. Bocharov, P.P., Pechinkin, A.V.: Theory of Queuing: the Textbook, p. 529. University under P.Lumumba, Moscow (1995) (in Russia) 7. Latouche, G., Ramaswami, V.: A Logarithmic Reduction Algorithm for Quasi-Birthand-Death Process. J. Appl. Prob. 30, 650–674 (1993) 8. Daigle, J.N.: Queuing Theory with demands to Packet Telecommunication, p. 326. Springer, Boston (2005)
Mobility Pattern Based Routing Algorithm for Delay/Disruption Tolerant Networks ManKyu Park1, SeokHong Min2, SangHo So2, DeockGil Oh1, ByungChul Kim2, and JaeYong Lee2 1
Satellite Broadcasting & Telecommunication Convergence Research Team, ETRI 138 Gajeongno, Yuseong-gu, Daejeon, 305-700, Korea {neomkpark,dgoh}@etri.re.kr 2 Department of Information Communications Engineering, Chungnam National University 79 Daehangno, Yuseong-gu, Daejeon, 305-764, Korea {minsh,sanghoso,jyl,byckim}@cnu.ac.kr
Abstract. Delay/Disruption Tolerant Networks (DTN) can support data transmission under the challenging network conditions. And one of the most important protocol components for DTN is a routing protocol to improve the performance of transmission delay and delivery success ratio. In this paper, we propose the “Mobility Pattern based Routing (MPR)” algorithm that controls the total number of transferred message copies based on mobility patterns of mobile nodes. We consider a realistic “Levy walk” mobility pattern that has a super-diffusive property which well represents human mobility pattern. We implemented a DTN simulator using ONE simulator [9] for the proposed MPR algorithm and Levy walk mobility pattern. Simulation results show that Levy walk mobility pattern provides more accurate evaluation environment for DTN, and the proposed MPR enhances the routing performance of delivery delay and success delivery ratio under realistic mobility pattern. Keywords: Delay/disruption tolerant network (DTN), routing, mobility pattern, Levy walk.
1 Introduction Delay/Disruption Tolerant Networks (DTN) represent a class of networks that can support data transmission under the challenging network conditions such as long delay or intermittent connection. The concept of DTN architecture was originally designed for interplanetary networks that have very long delay and frequent disconnections. There are many networks that have structures suitable for DTN protocols, such as sensor networks, wireless ad hoc networks, satellite networks, and underwater sonar networks. These networks have challenging networks characteristics with long variable delay, frequent disconnection and network partitioning, high error rate, asymmetric data throughput, and etc. One of the most important protocol components for DTN is a routing protocol that determines a path between source node and destination node through unstable network environments. Most routing protocols in DTN for random network environments S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 275–286, 2010. © Springer-Verlag Berlin Heidelberg 2010
276
M. Park et al.
usually use redundant transmissions to increase success delivery ratio and decrease delivery delay. For example, a node using the epidemic routing [1] protocol tries to transmit all the messages in its buffer to every neighbor node encountered to increase the success delivery probability. However, mobile nodes in DTN usually have limited resource such as buffer and energy, thus they need to reduce the number of transmissions for longer lifetime, if possible. Performance evaluation of wireless routing protocols has been usually studied by using Random waypoint model (RWP). However, recent studies reveal that real mobility patterns are very different from those of RWP [2], in that they have ‘superdiffusive’ characteristics, whereas the RWP is not. Furthermore, the mobility patterns have significant impact in the performance of wireless routing algorithms as in DTN. In this paper, we propose an efficient DTN routing algorithm, called “Mobility Pattern based Routing (MPR)”, that controls the total number of transferred message copies based on mobility patterns of neighbor mobile nodes. Basically in MPR, the total number of message copies is restricted and more copies are transferred to ‘longdistance movement’ mobile nodes. We consider a realistic “Levy walk” mobility pattern that has super-diffusive property which well represents human mobility pattern in evaluating the proposed routing algorithm. We implemented a DTN simulator using JAVA-based ONE simulator [9] for the proposed MPR algorithm and Levy walk mobility pattern. Simulation results show that mobility patterns are very important for correct evaluation of DTN routing performance, and the proposed MPR enhances the routing performance in delivery delay and success delivery ratio under realistic mobility pattern. This paper is organized as follows. After Introduction, Section 2 summarizes related work for this paper. In Section 3, we explain the Levy walk mobility pattern, its simulator implementation for ONE simulator, and its characteristics. Section 4 presents operation, characteristics, and performance of the proposed MPR algorithm in detail. We conclude this paper in Section 5.
2 Related Work There are two classes of DTN routing protocols according to their operation network environments. The first one is ‘deterministic time evolving networks’ for which mobile nodes can knows or predict exact information and topology variation. The other is ‘stochastic time evolving networks’ for which mobile nodes cannot know or predict its random network behavior. That can be called ‘deterministic routing protocol’ and ‘dynamic routing protocol’ respectively. The deterministic routing protocols for DTN are utilized when one knows all the state information and topology changes in advance. The deterministic routing protocols have an appropriate path selection algorithm according to amount of available state information including mobile pattern. There are two representative deterministic routing protocols proposed: the oracle-based routing protocol [3] and the space-time graph routing protocol [4]. In the oracle-based routing protocol, there are four kinds of oracles according to amount of available network information. As the available information increases, these are ‘the contacts summary oracle’, ‘the contacts oracle’, ‘the queuing oracle’, and ‘the traffic demand oracle’. Depending on each oracle situation,
Mobility Pattern Based Routing Algorithm for Delay/Disruption Tolerant Networks
277
the oracle-based routing calculates the most appropriate deterministic path for DTN messages. In the space-time graph routing protocol, it is assumed that every node knows the moving states of its own and all the other nodes over time. This kind of networks includes satellite networks in which each node moves along a predetermined trajectory. Dynamic routing protocols for DTN are used when node movement and network topology change cannot be predicted. Two representative routing protocols are the epidemic routing [1] and spray and wait routing [5]. In the epidemic routing, a sending node and all intermediate nodes deliver their messages to every neighbor node encountered until they succeed to deliver the message to the final destination. As a node in the epidemic routing always tries to send its message to all its neighbors, the epidemic routing protocol is simple to implement, and it can increase the success delivery ratio and decrease the delivery delay. However, there can be too many redundant copies for one message in networks, network resources such as battery energy and buffer space are severely wasted in the epidemic routing. The Spray and Wait routing protocol [5] is a flooding-based routing protocol similar to the epidemic routing. Whereas each node in the epidemic routing sends all the copies of its message to newly encountered nodes and this causes traffic overhead and buffer management problems, the spray and wait protocol limits the total number of copies of a single message to finite number L. It has two phases for message transmission; spray phase and wait phase. In the spray phase, each node tries to send message copies to nearby nodes within the limit of total copies. In the wait phase, each node with only one copy retains the message without transfer until it finally encounters the destination of the message and sends the message, when all L copies of one message are generated. Since the spray and wait protocol limits the total number of copies to an appropriate L, it can reduce waste of network resources by constraining packet transmission and wireless contention. The authors in [5] have shown that the “binary’ spray and wait algorithm has the best performance among them. In the binary spray and wait, each node transfers half of its copies to a new neighbor node, which improves the routing performance by enhancing propagation speed and reducing delivery time to destination. However, this result came out without considering nodes’ movement pattern. In the wait phase, each node with only one copy should retain that copy regardless of its moving status, which is not an appropriate method considering movement direction and destination contact probability of that node. In order to improve this problem of the wait phase, spray and focus routing protocol has been proposed [6]. The spray and focus protocol has defined a focus phase instead of the wait phase, in which a node may hand over a copy to a neighbor node if that neighbor has met the destination more recently than itself, to improve the success delivery probability. However, since the epidemic routing, and the spray and wait routing do not take into account real mobility characteristics of mobile nodes, and transfer message copies using the same manner, they cannot achieve efficient routing for DTN. Thus, in this paper, we propose an efficient dynamic DTN routing protocol that considers the effect of various node mobility pattern including ‘Levy walk’ pattern of real mobile nodes.
278
M. Park et al.
3 Levy Walk Mobility Pattern In order to evaluate exact performance of wireless routing protocols, it is important to select a realistic mobility pattern of mobile nodes. Recently, there have been some researches on measuring real mobility patterns of mobile nodes by using GPS. We show in Fig. 1 some trajectories of mobile nodes in several mobility models. Fig. 1 (a) is a real mobility pattern of a mobile node measured by University of Washington, and Fig. 1 (b)~(d) represent sample paths of random walk mobility model, Levy walk mobility model, and random waypoint mobility model, respectively [7]. One can see that a mobility pattern of a real mobile node is very similar to that of the Levy walk model which has a super-diffusive property [7][8]. Thus, in this paper, we have implemented a Levy walk mobility model for performance evaluation of our proposed DTN routing protocol.
(a) U of Washington
(b) RW (normal diffusive) (c) LW(super0diffusive)
(d) RWP
Fig. 1. Sample paths for some mobility patterns [7]
The distribution of step-lengths of a Levy walk mobility model is one of random walk model that have a heavy-tailed property with a probability density function (pdf) as follows, (1 < μ < 3)
f L (l ) ~ l − μ ,
(1)
Whereas other mobility models need to tune many sensitive parameters to adjust diffusion speed of mobile nodes, it is necessary to tune only one parameterμ in order for the Levy walk to generate various diffusion patterns of mobile nodes. When the parameter μ approaches to 1, the Levy walk mobility patterns become super-diffusive similar to a Random waypoint mobility as shown in Fig. 1 (d). On the other hand, when the parameter μ approaches to 3, the Levy walk mobility patterns become normal-diffusive similar to a Random walk mobility as shown in Fig. 1 (b). 3.1 Implementation of Levy Walk Mobility Model We implemented a Levy walk mobility model in the ONE simulator [9] for DTN. In order to obtain super-diffusive step length for Levy walk, we used a Pareto random variable that has a heavy-tail distribution as follows, α
⎛k⎞ F ( x) = 1 − ⎜ ⎟ , ( x > k ; α > 0) ⎝x⎠
(2)
Mobility Pattern Based Routing Algorithm for Delay/Disruption Tolerant Networks
279
By using (2), we can control the diffusion speed of mobile nodes by adjusting the value of α . We select the movement direction of each step randomly between 0 and 2π. In Fig. 2, we show an example generation of movement coordinates in a plane. If the current node position is ( x1 , y1 ) and the generated step length and direction is equal to L 2 , θ 2 , then the next destination coordinate of movement ( x 2 , y 2 ) can be calculated as (3), If a generated coordinate exceeds a boundary of movement area, it is truncated within that area.
x2 = x1 + L2 cos θ 2 y2 = y1 + L2 sin θ 2
(3)
Fig. 2. Generation of next movement coordinate
3.2 Characteristics of Levy Walk Mobility Pattern
In order to evaluate the exact routing performance in wireless networks, the density of mobile nodes in interested area should be rather uniformly distributed. If mobile nodes are concentrated in a specific area, we cannot expect the exact evaluation of wireless network performance.
Fig. 3. Mean and variance of node density (Left: Random way point, Right: Levy walk)
So, we measured mean and variance of node density for Random waypoint model and Levy walk model. Fig. 3 shows the mean and variance of node density for Random Waypoint model. The Figure shows that nodes are concentrated in the center region, but Node density in Levy walk model (α = 1.5) is uniformly distributed throughout the whole area of movement, which is an appropriate characteristic for wireless network simulation. 3.3 Performance Evaluation
Most of performance evaluation of DTN routing protocols have used somewhat unrealistic mobility pattern such as Random waypoint model. Thus, in this section, we
280
M. Park et al.
present performance evaluation of the epidemic routing and the spray and wait routing under Levy walk mobility model in order to see the potential difference of performance under other artificial mobility models. We set simulation environment variables as shown in Table 1, and measured success delivery probability and mean delivery delay for two protocols under various mobility models. Table 1. Simulation Parameters for DTN Routing Parameters Simulation time World Size Num of Hosts Update Interval
Values 5,000sec 5Km x 5Km 200 0.0004
Parameters Transmit Range Transmit Rate Packet Size Buffer Size
Values 20m 250Kbps 100Bytes ~ 1,500Bytes 50MBytes
Fig. 4. Success delivery probability under random waypoint model and Levy walk model
Fig. 4 shows success delivery probability for the two routing protocols under random waypoint model and Levy walk model. The two DTN routing protocols shows the best performance under Random waypoint movement condition, but the performance is degraded under Levy walk. Especially, when the step-length of mobile nodes becomes small with α > 1.0, success delivery probability degrades severely as α increase. As said above, the real mobile pattern looks like the Levy walk. We can say that the routing performance of past studies was rather optimistically evaluated compared to real world. When one adopts Random waypoint mobility model for simulation in wireless networks, the routing performance is overestimated because mobile nodes tend to be concentrated in the center region of simulation area and they easily communicate each other, which is an unrealistic movement pattern in real world. Therefore, it is necessary to reevaluate the performance of DTN routing algorithms under realistic mobility condition in order to obtain accurate results.
Mobility Pattern Based Routing Algorithm for Delay/Disruption Tolerant Networks
281
4 Mobility Pattern Based DTN Routing Algorithm In this section, we propose an efficient DTN routing protocol which determines the number of copies to be transferred in the spray phase by using movement pattern of neighbor nodes under realistic mobility model. Few papers have focused on the encountered ‘relay’ node characteristics to improve the performance of DTN routing protocol. But, they have only focused on the mobility information of contact instance without considering overall mobility patterns. In this paper, we propose a new DTN routing protocol, called Mobility Pattern based Routing (MPR) algorithm which considers overall mobility information including node movement pattern and average speed. 4.1 Mobility Pattern Based Routing Algorithm
In a real world, DTN nodes can be human, bus, taxi, train or animal. Each object has different mobility pattern based on its usage and characteristic. For example, bus can be classified as two types. One is ‘long-distance’ type between cities and the other is ‘circular’ type in a local area. If we assume that bus is a DTN node, it’s more efficient for distributing messages in a whole area to give more copies to the ‘long-distance’ type buses. Thus, our proposed protocol tries to increase the success delivery ratio by giving more copies to the ‘long-distance’ type DTN nodes encountered than the ‘short-distance’ type one. The proposed MPR algorithm assumes that all the DTN nodes know their mobility pattern information. A DTN node having messages exchanges a summary vector with neighbor nodes encountered to compare their message information in the local buffer. Each node compares the received summary vector with its own one and sends a Request packet to notify the peer of the message list it does not have. At this moment, they also exchange mobility pattern information. Based on this information, each DTN node transfers more copies to the ‘long-distance’ type neighbor node than the ‘short-distance’ one. The number of copies for each type of DTN nodes will be derived from the following performance evaluation results. A node speed is also a very important factor of DTN routing performance. A highspeed node can distribute messages into the whole area more widely and rapidly. So, the DTN routing performance can be enhanced by giving more copies to the highspeed nodes rather than the slow ones. The speed information is also exchanged when a DTN node sends a Request packet and the number of copies can be controlled based on this information. 4.2 Implementation and Evaluation of the Proposed Algorithm
The proposed MPR algorithm is basically based on the spray-and-wait routing algorithm to reduce the packet overhead of Epidemic DTN routing algorithm, so gives a constraint on the number of total copies of a message. However, instead of giving half of the copies to the neighbor node encountered, the numbers of copies are varieties based on the exchanged mobility pattern information. In this paper, we consider a scenario on the military tactical communication networks and classify DTN nodes into 3 different types as shown in Fig. 5. They represent the soldiers, tanks and aircraft nodes, respectively. Each node type can be modeled by
282
M. Park et al.
adjusting the α value of the Levy Walk mobility model. Soldier nodes move in a short step-length slowly, tank nodes move in a relatively long step-length faster, and aircraft nodes move in a very long step-length fastest.
Fig. 5. Simulation scenario for military tactical communication networks
In the previous spray-and-wait routing algorithm, a DTN node gives half number of copies to the neighboring nodes irrespective of their mobility patterns. But, in our proposed algorithm, the number of transferred copies is controlled based on the α value in Fig. 5. The α values are grouped into 3 ranges as the following; greater than 1.5, between 0.7 and 1.5, and less than 0.7. For the performance evaluation of Random Waypoint mobility model, we classify the DTN nodes into 3 different types based on the average speed. The speed ranges are following; faster than 20m/s, between 10m/s and 20m/s, and slower than 10m/s. Also, the number of transferred copies is varied based on this exchanged speed information. More numbers of copies are transferred to the faster DTN nodes. The speed of each node is generated uniformly in the given range in Fig. 5, Given the total simulation time t, the total moving distance of nodes in each group can be calculated by the product of the number of nodes in a group, average speed, and the total simulation time. So, they are 900t, 1837.5t, and 4500t, respectively. Using this information, we set the ratio of number of transferred copies as 1:2:4. This ratio can be adjusted according to the characteristic of nodes in the network and the performance of DTN routing algorithm can be enhanced by setting the proper ratio. Table 2. Simulation Parameters for MPR Algorithm Parameters Simulation time World Size Num of Hosts Update Interval
Values 5,000sec 5Km x 5Km 250 0.0004
Parameters Packet Interval Transmit Rate Packet Size Source, Destination
Values 1sec ~ 10sec 250Kbps 100Bytes ~ 1,500Bytes random
Table 2 shows the simulation parameters for the performance evaluation. Simulations are performed to evaluate the Epidemic, spray-and-wait, and MPR routing protocols by applying Random Waypoint and Levy Walk mobility models. The success delivery probability, delivery latency and overhead ratio are measured by varying the total number of copies L. Fig. 6 shows the success delivery probabilities of both
Mobility Pattern Based Routing Algorithm for Delay/Disruption Tolerant Networks
283
protocols and our proposed MPR algorithm under two mobility models. Fig. 7 and 8 show the delivery latency and overhead ratio, respectively.
G Fig. 6. Success delivery probability of MPR under RWP and LW model 1,800 EP-RWP SW-RWP MPR-RWP EP-LW SW-LW MPR-LW
1,600 1,400 1,200 1,000 800 600 400 200 0 (sec)
L=2
L=4
L=6
L=8
L=10
L=12
L=14
L=16
L=18
L=20
L=32
Fig. 7. Delivery latency of MPR under RWP and LW model
Fig. 8. Overhead ratio of MPR under RWP and LW model
L=64
284
M. Park et al.
The success probability of Epidemic routing algorithm is highest as shown in Fig. 6, but the overhead ratio is also highest because a DTN node gives a copy to all the neighbor nodes encountered. To reduce the overhead ratio, a constraint on the number of copies should be applied like the spray-and-wait routing algorithm. But, the success delivery probability of spray-and-wait routing algorithm is too low and delivery latency is too high when the number of total copies, L is small. As the size of L increases, performance gets better but still poor than the Epidemic algorithm. Our proposed MPR routing algorithm enhances the performance of spray-and-wait routing algorithm in the aspect of success delivery probability and delivery latency over the all ranges of L as shown in Fig. 6 and 7. Also, the overhead ratio can be kept to a small value as shown in Fig. 8. Low overhead is a very important factor for designing DTN routing algorithms because network resources are severely wasted in the high overhead algorithm such as the epidemic routing. By comparing three important performance measures, we can conclude that our proposed MPR algorithm is the most promising one in the stochastic time evolving DTN networks under both the RWP and LW mobility models.
Fig. 9. Success delivery probability of MPR under the limited buffer environment 1,600 EP-RWP SW-RWP MPR-RWP EP-LW SW-LW MPR-LW
1,400
1,200
1,000
800
600
400 (sec)
L=6
L=10
L=14
L=20
L=32
L=64
Fig. 10. Delivery latency of MPR under the limited buffer environment
Mobility Pattern Based Routing Algorithm for Delay/Disruption Tolerant Networks
285
Fig. 11. Overhead ratio of MPR under the limited buffer environment
All the above mentioned simulations are performed under the assumption that the buffer space is larger than 500Mbytes and there’s no buffer overflow during all the simulation time. But, in real networks, a DTN node has a limitation on the buffer space. So, we also measure the performance of each DTN routing protocol when there’s a limitation on the buffer space. The buffer space of each node is set to 256Kbytes, 512 Kbytes, and 1024Kbytes based on the DTN node types. We compare the performance of three DTN routing schemes under the RWP and LW models as before under the limitation on the buffer space. If there’s a limitation on the buffer space, the performance of epidemic routing algorithm gets worse as shown in Fig. 9 because large overhead causes a buffer overflow. When L is larger than 10, the success delivery probability of spray-and-wait routing protocol is higher than the epidemic routing algorithm under the RWP model. In case of MPR routing algorithm, the performance is better when the L value is greater than 6. This also happens as the L value increases under the Levy Walk model. The delivery latency of epidemic routing algorithm is still low than other two algorithms because it only counts the delay of successfully delivered messages. The overhead ratio of epidemic routing algorithm is too high compared to other two routing algorithms as shown in Fig. 11, and this will be an obstacle for an efficient future DTN routing protocol. In this chapter, we proposed the new DTN algorithm, called MPR, which controls the number of copies to the neighbor encountered DTN nodes based on the mobility pattern. In addition, we implemented it using ONE simulator and evaluated its performance. The proposed algorithm can enhance the performance of spray-and-wait routing algorithm while keeping the overhead ratio to be small by giving more copies to the ‘long-distance’ type DTN nodes which move fast and widely.
5 Conclusion In this paper, we introduced a realistic human mobility pattern called Levy Walk and evaluated the performance of previous DTN routing protocols using this Levy Walk mobility model.
286
M. Park et al.
To do this, we first implemented a Levy Walk mobility model in the ONE simulator [9] and compared the performance of Epidemic and spray-and-wait routing protocols based on Random Waypoint and Levy Walk mobility models. Simulation results show that previous DTN routing protocols have poor performance under a Levy walk model because those routing protocols are designed by assuming that all the moving nodes move in a pure random fashion without considering each user’s real mobility pattern. We found from these simulation results that mobility patterns are very important for evaluating DTN routing performance correctly and a new routing protocol should be designed to enhance the previous DTN routing protocols under a realistic mobility pattern. We also proposed a new DTN routing algorithm called MPR(Mobility Pattern based Routing) by controlling the number of message copies according to the user’s mobility pattern and average moving speed of encountered neighbor nodes. According to this new routing protocol, a DTN node gives more copies to the ‘long-distance’ type nodes rather than applying binary spray method. The proposed scheme shows better delivery ratio and short delivery latency compared to the binary spray-and-wait routing protocol and low overhead rather than the epidemic routing protocol. We believe that our proposed protocol can be a promising DTN routing protocol under a realistic Levy Walk mobility model. Acknowledgments. This work was supported by the IT R&D program of KCC [2009-S-039-02, Development of Satellite Return Link Access Core Technology for High Efficient Transmission].
References 1. Vahdat, A., Becker, D.: Epidemic Routing for Partially-Connected Ad Hoc Networks. Duke University Technical Report CS-200006, Tech. Rep. (April 2000) 2. Kim, S., Lee, C., Eun, D.Y.: Super-diffusive behavior of mobile odes from gps traces. In: ACM Mobicom Poster (2007), http://www4.ncsu.edu/_skim8/trace/Mobicom07-poster-Kim.pdf 3. Jain, S., et al.: Routing in Delay Tolerant Network. In: ACM SIGCOM’04, Portland, Oregon (2004) 4. Merugu, S., et al.: Routing in Space and Time in Networks with Predicable Mobility. Georgia Institute of Technology, Technical Report, GIT-CC-04-7 (2004) 5. Spyropoulos, T., Psounis, K., Raghavendra, C.S.: Spray and Wait: An Efficient Routing Scheme for Intermittently Connected Mobile Networks. In: Proceedings of the 2005 ACM SIGCOMM Workshop on Delay-Tolerant Networking, Philadelphia, Pennsylvania, USA, August 26, 2005, pp. 252–259 (2005) 6. Spyropoulos, T., Psounis, K., Raghavendra, C.S.: Spray and Focus: Efficient MobilityAssisted Routing for Heterogeneous and Correlated Mobility. In: Fifth IEEE International Conference on Pervasive Computing and Communications Workshops (PerComW’07), Percomw, pp. 79–85 (2007) 7. Rhee, I., Shin, M., Chong, S.: On the Levy-walk Nature of Human Mobility: Do Humans Walk like Monkeys? In: IEEE INFOCOM (2008) 8. Kim, S., Eun, D.: Impact of Super-Diffusive Behavior on Routing Performance in Delay Tolerant Networks. In: IEEE ICC (2008) 9. The ONE, http://www.netlab.tkk.fi/tutkimus/dtn/theone/
Heuristic Congestion Control for Message Deletion in Delay Tolerant Network Lertluck Leela-amornsin and Hiroshi Esaki Graduate School of Information Science and Technology, Information and Communication Engineering, The University of Tokyo, 7-3-1 Hongo, Bunkyo-ku, Tokyo 113-8656, Japan [email protected], [email protected] http://www.hongo.wide.ad.jp
Abstract. Delay tolerant network (DTN) challenges on large delay of communication, opportunistic and intermittent connectivity so that data can be transferred over vulnerable network. Most routing protocols in DTN basing on replicating routing work well over infinite buffer assumption but the performance drops when using with finite buffer due to the congestion problem. However, it is still lack of work on congestion control in DTN. Since simple congestion control policies can cause uselessly looping problem and cannot maintain high performance when nodes buffer become overflow, a new buffer management policy for DTN should be considered. In this paper, we identify the looping problem caused by using simple buffer management policies and propose the Effective Looping Control mechanism to solve such a problem. We also propose the Creditbased Congestion Control as for heuristically deleting messages when the buffer congested to retain high delivery rate with low number of replicas. Keywords: Buffer Management, Credit Dropping, Looping Control.
1
Introduction
Delay tolerant network (DTN) is a network where communications may experience large delay, and the connectivity is often opportunistic and intermittent. DTN’s characteristics are different from existing Internet leading to newly challenging issues as described in [3]. Many works have been studied, used and deployed [1], [5], [6], [7], [12], [22] following the DTN architecture proposed in RFC4838 [2] by overlaying the network with bundle layer to provide delay tolerant service. To construct a high performance system, most of the works [8], [9], [10], [11], [12], [13] route messages in replicating way, and apply custody transfer [4] that each DTN host needs to take action in carrying many of messages in the non-volatile buffer [17] for a long period. These approaches can achieve high delivery rate but trade off with number of replicating messages. The performance is high under infinite buffer and infinite bandwidth assumption, however, in real S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 287–298, 2010. c Springer-Verlag Berlin Heidelberg 2010
288
L. Leela-amornsin and H. Esaki
situations, the performance is worse when the buffer and bandwidth are limited due to the congestion control problem. Although modern storage devices have large capacity in scale of gigabytes, it may limit a part of memory for storing and forwarding DTN messages as described in [21]. Some applications apply DTN to personal mobile devices, which may contain any kinds of contents such as songs and videos. In cooperative aspects, people normally share their resources greedily as few as they can. Moreover, some applications may generate large size messages, while other generate smaller size but more frequently. All of these reasons can cause a diffusion of congested traffic over the system. Regarding replicating-based routing in DTN, buffer management policies for congestion control in DTN attempts to drop insignificant messages subjecting to improving the performance essentially to reduce the number of replicas in the network while maintaining high delivery probability. Conventional policies cannot maintain high performance, and some of them can cause uselessly looping problem because of dropping some messages before they are expired. Therefore, a buffer management mechanism for controlling message deletion is required to maintain high performance for the system. We believe that the study of this issue will give a great contribution to DTNs. In this paper, we analyze the effect of various environments to buffer occupancy of DTN nodes. After that, we study the buffer management policies in the prospect of how we should delete the messages, and classify them into two types:the proactive policy, and the reactive policy. The proactive scheme deletes the messages depending on the time-to-live (TTL) or feedback acknowledgment as for definitely deleting. On the other hand, the reactive policy deletes some messages due to congestion in nodes’ buffer. Our work scopes in the reactive policy to deal with congestion control yearning for high-performance message deletion mechanism in DTN. Along our study, we identify the looping problem, which is caused by using popular reactive policy, as a result of degradation in routing performance. After that, we propose the Effective Looping Control mechanism to prevent such a problem so that routing can achieve better performance in most environments. Moreover, we propose a heuristic congestion control policy called Credit-based Congestion Control (CCC), which pursues the low number of replication messages but still keep high delivery ratio, without using history-based information. Finally, we validate our CCC policy comparing to other policies in related works by performing extensive of the ONE simulation [19], which is the popular DTN simulation. The rest of this paper is organized as follows. We surveyed the related work in section 2. We identify looping problem and propose Effective Looping Control to relieve such a problem in section 3. In section 4, we propose the new congestion control scheme, Credit-based Congestion Control, which can improve performance comparing to the existing policies. We verify our proposed policies in section 5 with extensive simulation. Finally, we summarize this paper and present our future work in section 6.
Heuristic Congestion Control for Message Deletion
2
289
Related Works
In recent years, DTN has been researched in various aspects to counter with many newly challenging issues as described in [3]. However, the main issue in DTN is to develop the routing strategy [18] to achieve high delivery probability which is the ratio of delivered messages over the total generated messages. Since legacy-forwarding scheme achieves very low delivery rate, many researchers developed their routing protocols in replicating-based approach. Epidemic [8] is the common and simple replicating-based routing protocol. When two nodes get contact, they exchange the information of messages that they are carrying, then each node clones all of the messages another node does not have, and transfers. Although epidemic can achieve high delivery ratio, the replicas are too many resulting in consuming much bandwidth. Thus, other works attempted to reduce the number of replicas, for instance, the Probabilistic ROuting Protocol using History of Encounters and Transitivity, or PROPHET [10] reduces replicas by using knowledge based of probability that a certain message can reach the destination. Spray and Wait [9] controls the maximum number of messages that can be replicated to other nodes. In addition, other routing protocols such as RAPID [12], PEAR [11], Bubble RAP [13] are using other knowledge based metrics to achieve better performance. Many routing algorithms work well under assumption that buffer is unlimited, but still in doubt if they do work under buffer constraint that may lead to congestion in certain environments. To prevent degrading in performance we need to concern deeply when/which/where and how we should drop the messages to maintain higher performance for any routing protocol. There are many buffer management policies had been proposed in [14], [15], [16], [23], and we can classify into two groups, 1)proactive, and 2) reactive policy. 2.1
Proactive Policy
When DTN hosts update their status (generally in a time unit, or every activating cycle), they delete messages depending on 1. Time-Based TTL [14]: Time-based TTL initiates the time-to-live (TTL) value and the value decreases a unit periodically every a certain amount of time. DTN hosts will delete the messages whose TTLs are less than zero. 2. Hop-Based TTL [14]: Like time-based TTL, original message is implemented with the maximum number of hops in two tuples, breadth and depth. Depth value decreases by one per hop, and the relay node will no further forward the message and keep carrying it for directly transmitting to the destination if the depth value becomes zero. Each node can replicate the message only b copies no more than breadth value, and deletes the message that has been forwarded for b times. 3. Feedback Policy: The destination node broadcasts an acknowledge message as a feedback policy, then, each relay node drops the carrying message corresponding to the acknowledge message.
290
2.2
L. Leela-amornsin and H. Esaki
Reactive Policy
DTN hosts delete the message when their buffers are congested. Many reactive dropping schemes have been proposed in [15], [16], and [23]. 1. Last-In First-Drop (LIFD): is a simple dropping scheme but very low performance. A node just rejects any new coming message, if its buffer overflows. 2. First-In First-Drop (FIFD): drops the message stored in the buffer first. 3. Oldest-Drop or Least Remaining Life First-Drop: concerns about the amount of remaining TTL to decide which message should be dropped. For Oldestdrop, the message that has the least remaining TTL will be dropped first. 4. Youngest-Drop or Most Remaining Life First-Drop: on the other hand, Youngest-Drop drops the message that has the most remaining TTL. 5. Most-Forwarded First-Drop (MOFD): the message that has been forwarded the largest number of times is the first to be dropped, thus giving messages forwarded less times produce more chances of getting forward. 6. Least-Forwarded First-Drop (LEFD): the message that has low delivery probability and has not been forwarded for the fewest number of times is the first to be dropped. This is because it has a little chance to reach the destination. In addition, in [16] also proposed the history-based policy, which requires history information to estimate an optimum utility for two popular metrics: - maximizing the average delivery rate, and minimizing the average delivery delay. However, it needs the beacon-updating message to learn the status of the network, and needs much time for computation. Besides that, in [23] proposed the mechanism to migrate the custody from congested node to other nodes where still have some vacant rooms. However, this algorithm cannot work well if the nodes congest at the same time, and if there is no encounter node at the time such a node congests.
3
Effective Looping Control Mechanism
To delete messages in an effective way, we usually implement proactive policy like global time-to-live as a final control to guarantee that the messages will be deleted from the system eventually. In parallel, we use the reactive policy to control message deletion when the DTN buffer becomes congested. However, all of reactive policies (except LIFD) generally drop the carrying messages before they are expired, as a result that the same messages in other nodes can be looped back to the DTN node that has just deleted such messages as illustrated in figure 1. It may meet greater impact, if the DTN router inherits the simple-based routing like Epidemic [8]. And even the DTN router uses knowledge-based routing such as PROPHET [10], PEAR [11] and others, which may have less effect, but looping problem may still cause heavy damage in some situations where certain pair nodes may uselessly loop some messages back-and-forth repeatedly. Although global TTL can eventually delete the message, there is no mechanism to estimate TTL accurately for DTN’s application whose TTL is not fixed. Therefore,
Heuristic Congestion Control for Message Deletion
291
we generally implement a large TTL value in term of days, weeks or longer resulting in wasting amount of bandwidth if such useless looping occurs many times and repeatedly. Hence, in this section, we propose the Effective Looping Control, as shown in figure 2, to relieve the degradation in performance because of looping problem.
Fig. 1. Looping problem due to congestion control policy leads to wasting of bandwidth
The key feature of this method is that, instead of keeping track of every whole message, we save space by caching only header of the deleted message in the entry named junk entry. And we denote clock down time in junk, as for, each caching entry can stay in the junk within a time limit. A node that is receiving any new message will check the junk entry list and ignore the message, if it is listed in the junk. However, after the time in junk period, the node allows the message to come into its buffer again. This soft policy is to relax in some incidents that a message that has a better chance to reach the destination (depending on routing scheme) should have a permission to be looped and replicated again. The Effective Looping Control mechanism can be described in the following steps and illustrated in figure 2. 1) Once any node has deleted the messages, it tracks the header of those messages that can distinguish the messages (usually it is constructed by sequence number of message and the node id the message originally generated from). 2) Each entry of deleted message will be listed in the junk until the time in junk expired. 3) If a message loops back to any node that still has the entry of such a message in the junk, that node will ignore and not request that message. Although we can eventually delete the message via TTL, in DTN we usually set TTL to very large value because no one knows the appropriate value of it. This Effective Looping Control mechanism not only prevents the useless looping, but also gives an option for the network to adjust whether it will allow the looping again or not by setting the time in junk parameter. For instance, we can just set the time in junk greater than the TTL of the message or infinite value, if we desire loop-free network.
292
L. Leela-amornsin and H. Esaki
Fig. 2. The Effective Looping Control
4
Credit-Based Congestion Control (CCC) for Message Deletion
As mentioned in section 2, the simple LIFD cannot achieve high performance, so [15] has presented other congestion control policies to obtain better performance, essentially to reduce the number of replicas. Although the history-based policy in [16] has been studied, it focused on minimizing the delay metric, and needs exchanging in updating message to estimate many parameters for predicting the optimum value using for dropping the message. Another work in [23] attempted to migrate the custody message from congested node to other nodes, but it is still in doubt that if there is no other node at that time or if all nodes are congested, the migration does not work leading dropping mechanism to come out and take into account. Therefore, in this section, we propose the newly heuristic congestion control policy called Credit-based Congestion Control (CCC) to maintain high delivery probability and reduce the number of replicas as our target. CCC is dynamic, independent, and isolated from history information, so there is no need of beacon-updating. CCC bases on the concepts that the message that is obsolete should be deleted first as in oldest-drop, which performs high performance by using the timedependent credit. However, we also added the merit of most-forwarded firstdrop that the message has been forwarded many times should be dropped first by applying the refilling and refunding technique when pair nodes get contact and exchange their messages. Besides that, different applications or even in one application may have different priorities for different messages, which need to be standardized and is still an open issue. No matter how, getting along priority aspect we can easily rule the priority by adjusting the initial value of credit as high and low for higher and lower priority, respectively. The DTN router along these credit-based policies will drop the message that has the least credit (can be negative) when the buffer becomes full to allocate vacant space for the new coming message. CCC can be described as follows. Once a message is generated from any DTN node, it will carry maximum amount of credit as its initial value. In consequence of that, host generating
Heuristic Congestion Control for Message Deletion
293
the message can set how much credit should be initiated for different priorities depending on various applications. Later, one credit will be decreased at every time unit similar to age decreasing. However, the key technique of this policy is refilling and refunding amount of credit when pair nodes encounter at any point of transmission. We can construct function for refilling and refunding methods in many approaches, however, in this paper, we propose an additive approach called Simple CCC and Half-Twice CCC as a multiplicative one. 4.1
Simple Credit-Based Congestion Control (S-CCC)
Simple Credit-based Congestion Control policy manages amount of refill and refund as follows. When two nodes get contact, they exchange the messages depending on applied routing protocol. After that, each node refunds the sent message’s credit for amount of value named penalty at the sender side, and refills the received message’s (the same id, but the replicated one) credit for amount of value named reward at the receiver. As a result, such a message that has been replicated will have lower credit in sender host, but higher credit in receiver one. We can easily formulate it into equation 1, Csender (t + 1) = max (Csender (t) − “penalty” , minimum value)
(1a)
Creceiver (t + 1) = min (Csender (t) + “reward” , initial value)
(1b)
where Csender is the credit of message in sender side, Creceiver is the credit of replicated message in receiver side, before (time=t) and after (time=t+1) pair nodes encounter. However, the credit after refill cannot exceed the initially maximum value, and in practical, the credit should eventually equal to a certain minimum value depending on the number of bits using as a header, or manually configure. 4.2
Half-Twice Credit-Based Congestion Control (HT-CCC)
For S-CCC, we proposed the additive approach; however, HT-CCC on the other hand applies multiplicative function to adjust refunding and refilling credit. With this policy, it defines the multiplicative scheme following equation 2. The functions in equation 2 are constructed similarly from the sense of nature so-called half-life theory. However, the complexity of equation 2 is because the credit value can be negative. Allowing credit to be negative can slow down the rate of refilling and refunding when the credit of the message is near zero and decrease rapidly when the credit is negative, which means that this message has no credit and is going to be in debt so we should ignore it. Whenever pair nodes get contact and completely replicate the message, the credit of the message at the sender is refunded as a half of credit before replicating but no less than a certain value, which is limited by the number of bits we use as a header or we may manually
294
L. Leela-amornsin and H. Esaki
Fig. 3. The Simple Credit-based Congestion Control (S-CCC)
configure. In contrast, the credit of the message at the receiver becomes twice but no more than maximum value, which equals to the initial credit. Both policies can maintain high delivery probability, at the same time, they can decrease the replica ratio as we validate in the next section. Csender (t + 1) =
max(Csender (t) ÷ 2, minimum value) ; if Csender (t) > 0 max(Csender (t) × 2, minimum value) ; if Csender (t) < 0
Creceiver (t + 1) =
5
min (Csender (t) × 2 , initial value) ; if Csender (t) > 0 min ( Csender (t) ÷ 2 , initial value) ; if Csender (t) < 0
(2a)
(2b)
Simulation and Evaluation
In this paper, we use the ONE simulator [19], NetLab, Helsinki University, which is the simulator for DTN supporting GUI and providing many of libraries for movement models, routing protocols, but no buffer management policies. Hence, we implement relating buffer management policies, our Effective Looping Control and including our Credit-based Congestion Control into the simulator. Later, we use the random waypoint movement model for 100 nodes over 1 km x 1 km world size, for 2 days simulation time. Each node has 10-meter transmitting range, 2Mbps bandwidth, and moves with speed uniformly random from 0 km/h to 5 km/h. Besides that, we create message by using MessageEventGenerator class attached in the ONE simulator to randomly generate the source and destination nodes for a 500 kB to 1 MB message every 1 to 30 seconds interval, uniformly. Since we are focusing on the reactive message deletion control, thus we assume the TTL value is equal to the observation time, 172800 seconds (2 days).
Heuristic Congestion Control for Message Deletion
295
Fig. 4. Performance of Effective Looping Control
5.1
Evaluation in Effective Looping Control Mechanism
In this section, we compare most standing out policies to those policies themselves but applying our heuristic mechanism, effective looping control. We also compare the difference of time in junk parameters ranging from 3600 seconds (1 hour), 43200 seconds (12 hours) to 172800 seconds (2 days). Then, we show the relationship among the delivery probability, replica ratio and the buffer size ranging from 8MB, 32MB, 128MB, 256MB to 1024MB, as shown in figure 4. From figure 4, we can see that when using Effective Looping Control to Epidemic routing we could increase the delivery rate of FIFD for any buffer size, even we changed the time in junk parameter. In addition, other policies also obtained higher delivery probability in most cases, but not much different in oldest-drop. However, the replica ratio when applying effective looping policy is reduced in all cases, compared to the cases without this mechanism. Especially, when the traffic is very congested (many messages are generated or small buffer size of a
296
L. Leela-amornsin and H. Esaki
node), our looping control could help reducing replicas up to 70% for LEFD, 65% for MOFD, around 15% for FIFD, and also, 15% for oldest-drop when buffer is very congested. Although the delivery ratio drops in some environments, it is less than 2% comparing to the replica ratio we can reduce. Corresponding to our assumption, we could maintain high delivery probability and reduce the number of replicas for most of all reactive policies. However, the performance is the same for all when the buffer is large enough (1024MB). This is because the network is not congested, so there is no message loss in the network. Remark that, the delivery probability is not equal to one because there are still some messages just generated and may reach the destination out of range of our observation time. In this sense, the Effective Looping Control can relieve such kind of problem by adjusting proper time in junk parameter to that system. 5.2
Evaluation in Credit-Based Congestion Control
For evaluating the CCC, we compare among simple congestion control policies and our CCC policies with different initial credit values 3600 credits (HTCredit3600), 43200 credits (HTCredit43200), and 172800 credits (HTCredit172 800) for Half- Twice CCC, and at 172800 credits for simple version fixing 10 credits for both penalty and reward. While, the minimum credit value in this simulation is set to the minimum value of integer (for Java programming = −231 ). We show the performance results in table 1 for different buffer sizes 8 MB, 32 MB, and 256 MB, which easily congest, through Epidemic [8] and Prophet [10] routing. Table 1. Comparison of Replica Ratio among Reactive Buffer Management Policies
Buffer Size (MB) FIFD MOFD OldestDrop SimpleCredit172800 HTCredit3600 HTCredit43200 HTCredit172800
Epidemic Routing Delivery Probability Replica Ratio 8 32 256 8 32 256 0.1362 0.3111 0.6664 52.4140 28.4857 12.6230 0.0444 0.1288 0.6339 201.6181 70.0129 13.3065 0.1712 0.4848 0.7249 51.5952 17.7563 11.5215
Prophet Routing Delivery Probability Replica Ratio 8 32 256 8 32 256 0.1667 0.3718 0.7033 34.9224 22.1443 11.6573 0.0676 0.1647 0.6441 117.1928 54.3162 13.1769 0.1797 0.5056 0.7301 44.9874 16.7499 11.2092
0.1777 0.1788 0.1814 0.1810
0.1834 0.1842 0.1854 0.1847
0.4833 0.4874 0.5335 0.5200
0.7334 0.7313 0.7322 0.7331
41.6650 41.3886 43.5313 43.6944
17.6398 17.4339 15.8513 16.2970
11.3637 11.4217 11.3993 11.3530
0.5051 0.5079 0.5449 0.5226
0.7422 0.7413 0.7446 0.7439
31.3373 31.3349 33.7201 33.9030
15.9291 15.8285 14.7224 15.5421
10.9750 10.9874 10.9486 10.9617
We evaluated our algorithm and obtained the result as shown in table 1. Both S-CCC and HT-CCC could maintain high delivery probability, while reduce the number of replicas up to 20% for Epidemic routing, and to 10% for Prophet routing, respectively to the best existing policy of each case. Even if we need to add some information into header of the message to provide the current credit field and initial credit value, it is very small comparing to whole message in DTN whose size can be up to 1 MB. Therefore, it is worth to trade off some field in header to many large replication messages those we can reduce. Although the performance of CCC is close to the oldest-drop policy since its credit behaves
Heuristic Congestion Control for Message Deletion
297
like an age of the message, it makes use of the advantage of refilling credit to enhance a chance for replicated message in the next-hop node, and refunding credit to devalue the message at present node, as a result that it can reduce useless replicas but still keep high delivery rate not only in Epidemic routing but also in Prophet routing. In addition, in the Half-Twice approach also gave the same tendency. This means that we can control the different priorities of messages corresponding to the initial credit values, and get high performance, concurrently.
6
Conclusion and Future Work
In this paper, we investigated the problem of congestion control in DTN. Since, some reactive buffer management policies have mined the looping problem, we proposed the Effective Looping Control to prevent uselessly looping. We also propose the congestion control policies in the heuristic way. Hence, our parameters used in our work need to be studied and standardized before using in the real system for any general and/or any particular environment following the heuristic process. However, this work presents an intuitive idea but reasonable as a prototype to control message deletion when buffer congests so that we can achieve high performance via reducing overhead without decreasing in delivery rate. Therefore, in the future, we will apply this credit-based policy by refunding and refilling with respect to other resource values and/or knowledge metrics such as remaining buffer, number of forwarded, etc., based on game theory and will further expand to real world implementation.
References 1. Burleigh, S., Hooke, A., Torgerson, L., Fall, K., Cerf, V., et al.: Delay-tolerant networking: an approach to interplanetary internet. IEEE Communications Magazine, 128–136 (2003) 2. RFC4838: Delay-Tolerant Networking Architecture, IRTF DTN Research Group (2007) 3. Fall, K.: A delay-tolerant network architecture for challenged internets. In: Conference on Applications, Technologies, Architectures, and Protocols for Computer Communications, pp. 27–34 (2003) 4. Fall, K., Hong, W., Madden, S.: Custody transfer for reliable delivery in delay tolerant networks, Technical Report IRB-TR-03-030, Intel Research, Berkeley, California (2003) 5. Juang, P., Oki, H., et al.: Energy-efficient computing for wildlife tracking: Design tradeoffs and early experiences with ZebraNet. In: ACM SIGOPS Operating Systems Review, pp. 96–107 (2002) 6. Small, T., Haas, Z.J., et al.: A sensor network for biological data acquisition. Sensor Networks 7. Carrilho, S., Esaki, H.: A Pub/Sub message distribution architecture for disruption tolerant networks. IEICE Transactions on Information and Systems, 1888–1896 (2009)
298
L. Leela-amornsin and H. Esaki
8. Vahdat, A., Becker, D.: Epidemic routing for partially connected ad hoc networks (2000) 9. Spyropoulos, T., Psounis, K., Raghavendra, C.S.: Spray and wait: an efficient routing scheme for intermittently connected mobile networks. In: ACM SIGCOMM workshop on Delay-Tolerant Networking, p. 259 (2005) 10. Lindgren, A., Doria, A., et al.: Probabilistic routing in intermittently connected networks. Computer Communication Review 7, 19–20 (2003) 11. Ochiai, H., Esaki, H.: Mobility entropy and message routing in communitystructured delay tolerant networks. In: The 4th Asian Conference on Internet Engineering, pp. 93–102 (2004) 12. Balasubramanian, A., Levine, B., Venkataramani, A.: DTN routing as a resource allocation problem. In: Conference on Applications, Technologies, Architectures, and Protocols for Computer Communications, p. 384 (2007) 13. Hui, P., Crowcroft, J., Yoneki, E.: Bubble rap: Social-based forwarding in delay tolerant networks. In: The 9th ACM International Symposium on Mobile Ad Hoc Networking and Computing, pp. 241–250 (2008) 14. Yuen, W.H., Schulzrinne, H.: Performance evaluation of time-based and hop-based TTL schemes in partially connected ad hoc networks. In: IEEE ICC’06 (2006) 15. Lindgren, A., Phanse, K.S.: Evaluation of queuing policies and forwarding strategies for routing in intermittently connected networks. In: IEEE COMSWARE (2006) 16. Krifa, A., Barakat, C., Spyropoulos, T.: Optimal buffer management policies for delay tolerant networks. In: IEEE SECON (2008) 17. Seligman, M.: Storage usage of custody transfer in delay tolerant networks with intermittent connectivity. In: ICWN (2006) 18. Jones, E.P., Ward, P.A.: Routing strategies for delay-tolerant networks. ACM Computer Communication Review, CCR (2006) 19. Keranen, A., Ott, J., Karkkainen, T.: The ONE simulator for DTN protocol evaluation. In: The 2nd International Conference on Simulation Tools and Techniques, p. 55 (2009) 20. Jain, S., Fall, K., Patra, R.: Routing in a Delay Tolerant Network Conference on Applications, Technologies, Architectures, and Protocols for Computer Communications, pp. 145–158 (2004) 21. Pitkanen, M.J., Ott, J.: Enabling opportunistic storage for mobile DTNs Pervasive and Mobile Computing, pp. 579–594 (2008) 22. Eisenman, S.B., Lane, N.D., et al.: Metrosense project: People-centric sensing at scale. In: First Workshop on World-Sensor-Web (2006) 23. Seligman, M., Fall, K., Mundur, P.: Alternative custodians for congestion control in delay tolerant networks. In: Proceedings of the 2006 SIGCOMM Workshop on Challenged Networks, p. 236 (2006)
The FDPOO: A Flexible Delivering Platform with at-One-time and On-time Guarantees in Opportunistic Networks Yuan-Tse Yu1, Chung-Ming Huang2, and Hsing-Cheng Wang3 1
Department of Software Engineering, National Kaohsiung Normal University, No.62, Shenjhong Rd., Yanchao Township, Kaohsiung County 824, Taiwan (R.O.C.) [email protected] 2 Department of Computer Science and Information Engineering, National Cheng Kung University, No.1, University Rd., Tainan City 701, Taiwan (R.O.C.) [email protected] 3 Institute of Medical Informatics, National Cheng Kung University, No.1, University Rd., Tainan City 701, Taiwan (R.O.C.) [email protected]
Abstract. In Opportunistic Networks (Oppnets), the link performance is highly unpredictable and the connections are broken frequently. The TCP protocol will perform badly in Oppnet because the end-to-end connection always needs to be reconstructed and the data need to be retransmitted from the original sender again. In order to solve the problem, we investigate the principles of at-onetime and on-time delivery, in which “at-one-time” means to transmit each piece of data just once and “on-time” means to transmit data to the receiver by a prescheduled time point. Based on the principles, we designed a Flexible Delivery Platform with at-One-time and On-time guarantees (FDPOO) in Oppnets. In FDPOO, we separate the transmitting processes into macro and micro stages. In the macro stage, it deals with the end-to-end transmission QoS; in the micro stage, it deals with the transmission between adjacent nodes along the constructed delivering path. We implement the proposed FDPOO based on the Delay Tolerant Network (DTN). The performance results show that the designed FDPOO can efficiently complete the data transmission at one time and on time. Keywords: Opportunistic Network, Time Scheduling, On-Time Delivering, Delay Tolerant Network, DTN.
1 Introduction From the viewpoint of user expectation, most of the network applications still fully adopt best effort delivery. For example, when a user sends an email, the transmitting procedure will start immediately. If the connection breaks, the email needs to be retransmitted again and again from the original email server until the target email server receives the email entirely. Considering different transmission requests from users’ expectations, real-time transmission may not be so needed, but on-time transmission S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 299–310, 2010. © Springer-Verlag Berlin Heidelberg 2010
300
Y.-T. Yu, C.-M. Huang, and H.-C. Wang
is needed in some applications. For example, the TV programs are regularly required by users, and the contexts only need to be completely transmitted before users want to use them. Let a user want to see some TV programs from 8:00 pm. Then, the TV programs can be transmitted by 8:00 pm. In other words, because of large computer’s storage capacity in nowadays, the contexts can be downloaded in advance. Another example is as follows, since the public transportations normally travel on regular routes, some multimedia presentations, such as tour information, can be predownloaded before the vehicles arrive at the landscapes. Therefore, we can realize that real-time transmissions are not so needed but on-time transmissions are needed for some applications. Practically, if some applications can tolerate distinct transmitting duration and the interval of delay time is assigned in advance, then the scheduling mechanism of each application can finish the task in the assigned duration at just one time and on time, in which “at-one-time” means to transmit each piece of data just once from the end-to-end source to destination viewpoint and “on-time” means to transmit data to the receiver side by a pre-scheduled time point. The current Internet is composed of wired and wireless domains. On the wired domain, many traditional transmitting problems result from network congestion. The situation on the wireless domain is worse than that on the wired domain because of signal variability. Combining these two networks results in high packet loss, long propagation delay, and even frequent connection breaks. These environments are denominated the opportunistic network (Oppnets) [3]. From the viewpoint of networks, when a user wants to requests a guaranteed data exchange, the end-to-end connection is constructed immediately based on TCP protocol. However, the connection is probably broken in Oppnets, and the data need to be retransmitted from the original sender through the reconstructed connection. This procedure must be manually restarted repeatedly by the user in some network applications, but it is still not assured that data can be transmitted to the destination. Furthermore, the retransmitting procedures waste extra network resources, and it may require more bandwidth and time than anticipated. Therefore, it should be more efficient if the network can support at-one-time and on-time transmitting guarantees. Given the aforementioned scenarios and concerns, we present the new transmitting model called at-one-time and on-time delivering guarantees over the Oppnets environment. In order to archive the goals, two main transmitting principles are adopted as follows: 1. Scheduling of Available Transmitting Time Due to the differences of the user expectations, the data transmission should be scheduled in the on-time manner. Two characteristics of data transmission are (1) the delivery path is composed of network nodes and (2) the bandwidth capacities between adjacent nodes are different. According to the desired transmitting duration, scheduling delivery time slots between two nodes is an effective way and the data can be transmitted flexibly based on a specific throughput in each arranged time slot. In addition, a transmitting path can be divided into several segments, in which each segment is composed of adjacent nodes and then pre-scheduling the transmitting procedure on bandwidth usage and time duration between adjacent nodes can make entire transmission flexible. This work can be reached by monitoring the network status on each segment periodically. Referring to Fig. 1, there are three delivering paths. Let the
The FDPOO: A Flexible Delivering Platform with FDPOO Guarantees in Oppnets
301
pre-scheduling time slot be T minutes, which is given by a user, and the selected transmitting path is composed of three segments X1,1, X1,2, and X1,3 from server to client. The ratio can be calculated from the reference values such as RTT, on each segment. After obtaining the ratio, the T can be divided into t1,1, t1,2, and t1,3 which are allocated according to the ratio of RTTX1,1: RTTX1,2: RTTX1,3, and the entire data size Z is divided into z1, z2 and z3 accordingly. The design can also adapt to the unstable network situation.
Fig. 1. The network topology of the FDPOO platform
2. Scheduled Store, Carry and Forward Transmission In order to avoid reinitializing the transmission procedure, which results in data’s retransmission from the source again (and again), when a connection is broken, the data should be transmitted using the hop-by-hop transmission method. That is, the transmission does not need to be reinitialized from source to destination when the connection is disconnected in somewhere. When the network is disconnected, intermediate nodes are able to store data and keep them for a period of time, until an appropriate forwarding node appears and the connection can be re-established. However, once the waiting time is too long, the scheduling mechanism should search for other available paths. Referring to Fig. 1, let the selected transmitting path be (X2,1, X2,2, X2,3, X2,4, and X2,5) through DTN nodes E, F, G and H in order. Once the segment X2,3 is disconnected during the transmission, which means that the delivered data can’t reach node H through node G. At this time, the developed mechanism keeps the data on node F until the waiting time exceeds the scheduled duration. Then, the scheduling mechanism finds another available path X2,3 and X2,4 through node I. Moreover, in the worst case, if there is no such path composed of X2,3 and X2,4, the mechanism will find another new path from the DTN node F to destination DTN node B, e.g., using a path which is composed of X’2,3 and X3,3, namely the remaining data are sent through DTN nodes F, K and B in sequence. As a result, data are transmitted to the destination hop by hop, and doesn’t need to have the source to send the data again (and again), i.e., the source only needs to send each data item once. The aforementioned transmission scenario is called “at-one-time transmitting” because the data are transmitted only once from the end-to-end source to the destination viewpoint. In
302
Y.-T. Yu, C.-M. Huang, and H.-C. Wang
order to achieve the at-one-time transmitting concept, we design a platform based on the Delay Tolerant Network (DTN) to guarantee successful transmission. The remaining part of this paper is structured as follows. Section 2 presents the theoretical foundations of the store carry and forward principle and the time scheduling strategies for the development of the research. Related algorithms are presented in detail in Section 3. Section 4 presents the system architecture for the derived mechanisms. Results of various analyses are then presented in Section 5. Finally, conclusions are presented in the Section 6.
2 Related Works In order to archive the main goals of at-one-time and on-time transmission, related studies and discussions are as follows. The concept of available transmitting time scheduling is similar to Vehicle Routing Problem (VRP). VRP is an important problem in the fields of transportation, distribution and logistics. The purpose of VRP is to calculate the minimum transporting costs on the basis of every user’s requisite. In VRP, a service with a set of customers must be delivered and each customer must be visited by the fleet of vehicles. There is an upper bound of load capacity supported in each vehicle. Additionally, each customer demands a specific number of products. VRP can be further divided into many classes in terms of different constrains, and the Vehicle Routing Problem with Time Windows (VRPTW) has been the most popular type of VRP. In VRPTW, in addition to the constraint of capacity, a vehicle has to visit a customer within a certain time frame. The problem is closed to our objective of the on-time delivery; there is a time-limited duration between adjacent nodes. Unlike VRPTW, the network situation changes dynamically. For instance, each delivery path has a different bandwidth capability in terms of different round trip times (RTTs). Particularly, the intermittent connectivity is expected, and connections are also infrequently established in the opportunistic networks. However, the VRPTW method just considers about the distance. Furthermore, the heuristics algorithms are widely employed to find alternative solutions to solve the VRPTW problem [4][6]. The developed mechanisms usually need complex computing processes. The algorithms of VRPTW cannot be directly applied on the heterogeneous networks because it spends much time to find an optimal solution via the scheduling of delivery time. More robust mechanisms are required to support the developments of the realistic network. Many studies investigated diverse types of store-carry-and-forward schemes [2]. Through the principle of hop-by-hop message exchange, the data are delivered to the destination successfully in opportunistic networks. This method is similar to traditional postal services. Several concepts behind store-carry-and-forward schemes come from the studies on delay tolerant networks (DTNs) that have been conducted within the Internet Research Task Force (IRTF) and have led to the specification of the DTN architecture. In DTN, a new bundle protocol [5] is proposed to provide the store-and-forward services. The bundle protocol is intended to provide a message oriented mechanism with reliable and asynchronous support over opportunistic networks. Consequently, we take the DTN as a fundamental infrastructure for supporting the on-time delivery.
The FDPOO: A Flexible Delivering Platform with FDPOO Guarantees in Oppnets
303
In various concepts of store-carry-and-forward, Yamamura et al. [6] proposed an efficient routing scheme, which concentrates on development of the practical framework to support non-real-time data exchange among users.
3 The Methods of At-One-Time and On-Time Delivery We propose a three-phase mechanism, which is depicted in Fig. 2, in order to accomplish the concept of at-one-time and on-time delivery. The first phase deals with system initialization for the resource allocation of the Flexible Delivering Platform with at-One-time and On-time guarantees (FDPOO) platform. The second phase is the scheduling phase of Macro Transmission (MaT) for considering about the on-time delivery issue, and the third phase is the scheduling phase of Micro Transmission (MiT) for dealing with the at-one-time delivery issue. In addition, in the MaT phase, it concentrates on the construction of a mathematical model for scheduling the delivery time between adjacent nodes over heterogeneous networks. In the MiT phase, it aims to develop the mechanisms for scheduling the transmission on each single link. Each link is composed of two adjacent nodes along the delivery path. Furthermore, the characteristics of opportunistic networks must be taken into consideration because the delivery path often includes heterogamous network domains, and each domain has its own network condition. Therefore, the QoS management with delay tolerance is an essential task to overcome the problem.
Fig. 2. The state transition diagram of the FDPOO platform
3.1 Phase of FDPOO Initialization The FDPOO initialization phase composes of transmitting model construction and resource monitoring. In the transmitting model construction, in order to achieve FDPOO service over heterogeneous networks, we firstly allocate at least one DTN node in each network domain. The network domain includes wired and wireless networks. After the FDPOO platform has been initialized successfully, it starts the action of resource monitoring. The execution procedure is as follows:
304
Y.-T. Yu, C.-M. Huang, and H.-C. Wang
Resource monitoring: any two adjacent DTN nodes exchange information with each other periodically. Hence, each DTN node maintains a network topology of its neighboring node to represent the network state around itself, including the loadings of neighboring nodes. As the network state changes, the announcements of the variation are exchanged through the neighboring links. 3.2 Phase of MaT The MaT phase is composed of the delivery path reservation and the Delay Tolerant Transmitting Scheduler (DTTS). We firstly define the constitution of on-time delivery over heterogeneous network to facilitate the subsequent derivation. Then, the delivery path can be observed using the minimum cost function, and the resources of this path are also reserved. Finally, we obtain the arranged time of each section in the entire delivery path using DTTS. In delivery path reservation, we propose the server-driven path reservation model based on the DTN architecture that obtains the most suitable delivery path with the minimal cost consideration. The execution procedure of the model is as follows: 1.
2.
Calculation of delivery path with the minimum cost: There is normally at least one delivery path from source to destination, and each path goes through a number of intermediate DTN nodes. The major work is to allocate an appropriate path to transmit data. Two restrictions that exist in each path are link bandwidth of each edge and load capacity of each DTN node, where the loading factors that need to be taken into considerations are CPU processing power, memory size, buffer storage, and so on. Thus, the calculation of these restrictions is the function of predicting the minimum cost path that refers to the shortest path computation, e.g., Dijkstra. The message of resource collection is sent from the DTN node of the source network domain, which is usually the Server domain, to destination throughout the FDPOO platform. Path reservation: Once the delivery path is selected by the DTN node of the destination network domain, the DTN node of the destination network domain sends a configuration message back to the DTN node of the source network domain through each DTN node in this path in order to reserve the resources along the entire path.
The DTTS of MaT is critically important in deploying the foundation for implementing the scheduling strategies of on-time delivery. Let {X := X is a predefinedvalue| X ∈ N}, and then ∀X , ∃ X ≤ X ; i = 1,2,3,...n ∑ i n
(1)
i =1
X is the expected time of the user requested. With the calculation of the minimum cost function, we can obtain the delivery path from the phases of FDPOO initialization and MaT, and thus the number of nodes is also known. Consequently, the transmission time of X can be arranged on each link. Each link is composed of adjacent DTN nodes along the delivery path. The arranged time of each link is denoted as Xi.
The FDPOO: A Flexible Delivering Platform with FDPOO Guarantees in Oppnets
305
Namely, the summation of Xi equals X. Each Xi has its own value associated with the network status, each value of Xi is derived from R(Xi), summation of R(Xi) and X. The value of R(Xi) denotes the statistic RTT value on the link which is obtained from the resource monitoring of the FDPOO initialization phase. Finally, the Xi is arranged proportionally in Eq. 2. Xi = (
R (X i )
∑ R (X )
)*X
(2)
i
When the data are transmitted via any link of two adjacent DTN nodes, it is expected to finish transmission in this deadline Xi. Eventually, the data are transmitted from the source to the destination using the proposed policy. 3.3 Phase of MiT The main purpose of MiT is to achieve two tasks. The first task is to monitor transmitting status at runtime on each link between adjacent DTN nodes. The second task is to establish dynamic delivery strategy when network status changes, especially when the connection is disconnected. In order to ensure the at-one-time delivery, the designed delivering scheduler needs to deal with the transmission on each link, which means the scheduler maintains the transmission on the link to be finished within the scheduled time, and the entire data can be transmitted to the next DTN node at one time. The procedure of the dynamic delivery strategy is that if the MiT model of the current DTN node, e.g., node F in Fig 1, can’t finish the transmission within the scheduled time because of the unstable network situation, then, the MiT model starts to select another delivery path from itself to the node which is the next node of the current DTN node’s adjacent node, e.g., node H in Fig 1. In this case, the network is congested but not disconnected on the original selected path (X2,3, X2,4). After selecting the backup path, the MiT starts to allocate the remaining data to both current path and backup path based on the ratio of RTT values of the two paths. It means that there are two delivering paths from current DTN node to the node next to the current DTN node’s adjacent node. Once the network becomes unstable again, the third backup path will be selected soon using the same policy until remaining data can be transmitted to next hop entirely. Referring to Fig. 1, let the selected transmitting paths be (X2,1, X2,2, X2,3, X2,4, and X2,5) through DTN nodes E, F, G and H. Once the network on segment X2,3 congests during the transmission, which means the data can’t be transmitted to node H through node G on time. Therefore, the scheduler selects another path, which is composed of X2,3 and X2,4, through node I as a backup path. Then, the MiT transmits the remaining data on both two paths, which are (X2,3, X2,4) and (X2,3, X2,4). Furthermore, we calculate the statistic of RTT values which reflect the bandwidth variation. The statistic of RTT values is obtained from the phase of the FDPOO initialization. The RTT is inversely proportional to the bandwidth. It means that the smaller RTT value gets the higher bandwidth. Therefore, the transmission situation can be divided into best and worst cases. The available bandwidth represents a key factor that distinguishes best cases from worst cases for developing MiT.
306
Y.-T. Yu, C.-M. Huang, and H.-C. Wang Table 1. The notations of the MiT
Notation RTTα
BWα RTT β BWβ
t S
ΔS
Tα Tβ
Δt W
Meaning The RTT of the best case The bandwidth of the best case The RTT of the worst case The bandwidth of the worst case A transmission time that has already occurred The total data size The remaining data size after t The time needed of using BWα to transmit data The time needed of using BWβ to transmit data The remaining time of the arranged time Xi The tolerated waiting time
Let the user want to watch a movie 3 hours later and X is the expected delivery time predefined by the user. Suppose the arranged time of one section is Xi, which is equal to the length of AB , and the data size of the movie is S. Thus the time needed for the best case is Tα, which is obtained from BWα using Eq. (3); the time needed for the worst case is Tβ, which is obtained from BWβ using Eq. (4). After obtaining Tα and Tβ, we can get RL , LB , and HB respectively, is depicted in Fig. 3, where the length of HB equals to Tα and the length LB equals to Tβ. The data size S gradually decreases according to the value of the remaining time t, and the interval of RL , LB , and HB gradually reduces accordingly. That is, the tolerated waiting time W, Tβ, and Tα are dynamically adjusted. Tα = Tα −
S − ΔS BWα
(3)
Tβ = Tβ −
S − ΔS BWβ
(4)
Practically, the network environments have many unexpected situations, thus the proposed MiT model uses Tα and Tβ as thresholds for enabling the relative policies. We depict three main cases as follows. Case 1: Let the arranged time of a section be Xi. Occasionally, the time required by using BWα is much greater than Xi in order to transmit all of the data, i.e. Tα >>Xi. In this case, the MiT model enables the dynamic delivery strategy again. The procedure of the dynamic delivery strategy is described previously.
The FDPOO: A Flexible Delivering Platform with FDPOO Guarantees in Oppnets
307
Xi AB = the arranged time RL = the waiting idle time LB = the worst case
HB = the best case
Fig. 3. A transmitting process between adjacent DTN nodes
Case 2: When the connection is broken, since each node is able to store data, the MiT model does not need to find another path immediately. On the contrary, the model allows being hold for a period time, namely tolerated waiting time W. Once the connection is reestablished during W, the data will be continuously transmitted. If the connection can’t be restored, the MiT model then begins to find another available path. Case 3: Let the network state get worse, which causes the delivery rate to decrease, and the transmitting throughput reduces simultaneously. In Fig 4, x-axis denotes time and y-axis denotes bandwidth usage. The scheduled transmitting time is Xi. Therefore, we can obtain the optimal transmitting rate V0 based on the data size S, which means the MiT can finish the transmission based on the transmitting rate V0 in the ideal network situation. But the actual transmitting rate is V, and it has unstable situation within t1t 2 , which means the available bandwidth is below than V0. The MiT model starts to calculate the region S’ based on Eq. (5). Region S’ denotes the amount of data that are too late to transmit. After time t2, the network situation gets improved, which means the available bandwidth is larger than V0, and thus the MiT model increases the transmitting rate to complement the data of region S’. S' = V0 × t 1 t 2 -
t2
∫V×t
(5)
t1
S' ≤ t 2 X i × BW β - t 2 X i × V0
(6)
Fig. 4. The transmitting status in case 3
Eq. (6) determines whether the amount of region S’ can still be transmitted successfully in the remaining time using BWβ or not. The network state is in the stable condition if Eq. (6) is true. In the remaining time, the system can transmit the remaining
308
Y.-T. Yu, C.-M. Huang, and H.-C. Wang
data, including the region S’. If Eq. (6) is false, the MiT model enables the dynamic delivery strategy again.
4 Performance Analysis For evaluating the performances of the implemented system, we implement a prototype of on-time and at-one-time delivery. The implemented platform is developed on Linux 2.6, and the programming pseudo codes are composed using language C++. We adopt DTN reference implementation version 2.6.0 (DTN2) [1] to develop the proposed scheme. The designed platform is composed of four modules, which are store-carryand-forward module, management module, scheduling module, and dynamic delivery policy module. We run several experiments in the real environment. Firstly, the effect of broken connection is measured in these experiments, and we take the challenged environments into considerations. The network status is normally unstable on challenged environments. Let a user request to watch a video with length of 150MB 50 minutes later. The configured topology based on the proposed strategies is shown in Fig. 5, and the delivery times of A, B, E, and G are assigned to 10, 17, 15, and 8 minutes respectively. We make comparsion of the proposed FDPOO with best-effort (BE), the Secure FTP with throughput restriction (S-FTP), and the store-carry-and-forward method of DTN. The results show that the BE and DTN methods utilize large bandwidth, so the data with size of 150MB are delivered to the user quickly. The throughputs are 340.8 KB/s and 268 KB/s, and the transmission times are 7.5 mins and 9.6 mins using the BE and DTN methods respectively. Nevertheless, since the user may not want to watch the video immediately, the BE method is not suitable for this case. Moreover, the consumptions of network resource of the BE method are quite larger than that of the FDPOO. Since the total transmitting time is 50 mins, the S-FTP method with the embedded scheduling mechanism needs to be assigned the end-to-end throughputs to 51.2 KB/s, which means that it needs to keep the transmitting rate through overall the transmisison. It’s quite different with FDPOO. In FDPOO, the allocated delivery time periods are 10, 17, 15, and 8 mins respectively along the delivery path, and then the expected throughput is 256, 150.8, 170.7, and 320.3 KB/s respectively. This kind of scheduling is more suitable for each network domain. However, the connection is broken at the 5th min, and then is restored at the 6th min in section A, which is depicted in Fig. 6. The curves of throughput rapidly decrease to 0 KB/s between these time periods. In section B, the connection is broken again from the 12th to the 46th min. If the user adopts the BE method, the user needs to request the transmission to server manually repeatedly and the data need to be retransmitted from the beginning. Moreover, the retransmitting procedure requires more bandwidth and time than the anticipated one.
Fig. 5. The experimental network topology
The FDPOO: A Flexible Delivering Platform with FDPOO Guarantees in Oppnets
309
Comparing with the BE method, the DTN and the proposed FDPOO methods are able to store data when it is disconnected, which means the transmitted data don’t need to be retransmitted. The difference between DTN and FDPOO methods is on the capacity of rerouting when the connection is broken. That is, the system allows a period of tolerated waiting time. The transmission can be finished through the original delivery path if the connection is restored within the tolerated waiting time. In this experiment, the time of the connection breaks for 1 min in section A, and the tolerated waiting time is scheduled as 1.41 mins. Hence, the transmission can be finished in section A. However, the connection breaks for 34 mins in section B, which are larger than tolerated waiting time. Thus, the rerouting mechanism is triggered. Another delivery path is composed of C, F, and G, and the allocated delivery time is 15, 18, and 6 mins respectively. Along the new delivery path, the remaining data are successfully transmitted to the user on time. In Figure 7, let domain D2 be the 3G environment. In this situation, the delivery rate may dramatically decrease, and the throughput of data transmission may reduce simultaneously. All of the methods are affected by the unstable transmission speed. Besides, despite the S-FTP method uses the smaller throughput, the transmission time is not as expected because the connections break frequently. In the experiment B, the FDPOO method computes the tolerated waiting time according to the disconnect duration. At the 23th min, the system finds another delivery path, which consists of C, F, and G. Then the system separates the remaining data to transmit independently. For the user’s expectation, the transmission is achieved at the 50th min, which is on time based on this delivery adjustment mechanism.
Fig. 6. In experiment A, throughput distributions of distinct methods
Fig. 7. In experiment B, throughput distributions of distinct methods
310
Y.-T. Yu, C.-M. Huang, and H.-C. Wang
5 Conclusion and Future Work Maintaining the transmitting QoS over heterogeneous networks is a significant issue. In order to achieve the goal in Oppnets, we have presented the FDPOO method in this paper. The study reveals two important issues: (1) providing the proper time limitation for network applications to exchange data is a feasible strategy; (2) at-one-time and on-time transmitting guarantees are necessary in Oppnets. Furthermore, because the proposed FDPOO method is based on DTN, it supports store-carry-and-forward capability to prevent reconstructing connections and retransmitting data when end-to-end connections are broken. The experiment results show the designed FDPOO can effectively complete the transmission in the assigned time limitation. The current study focuses on the scheduling of non-real-time transmissions. Our further study is to extend the FDPOO method to support real-time multimedia data transmission.
References 1. DTN Reference Implementation (DTN2), http://www.dtnrg.org/wiki/Code 2. Kuribayashi, S., Sakumoto, Y., Hasegawa, S., Ohsaki, H., Imase, M.: Performance Evaluation of Broadcast Communication Protocol DSCF (Directional Store-Carry-Forward) for VANETs with Two-Dimensional Road Model. In: The Pervasive Systems, Algorithms, and Networks (ISPAN’09), pp. 615–619 (2009) 3. Lan, K.C., Huang, C.M., Tsai, C.Z.: A Survey of Opportunistic Networks. In: Proceedings of the 22th IEEE International Conference on Advanced Information Networking and Applications (AINA’2008) - The 1st IEEE International Workshop on Opportunistic Networking (WON-08), pp. 1672–1677 (2008) 4. Qi, C., Sun, Y.: An Improved Ant Colony Algorithm for VRPTW. The Computer Science and Software Engineering, 455–458 (2008) 5. Scott, K., Burleigh, S.: Bundle Protocol Specification. Internet-Draft (2007) 6. Yamamura, S., Nagata, A., Tsuru, M., Tamura, H.: Virtual Segment: Store-Carry-Forward Relay-Based Support for Wide-Area Non-Real-time Data Exchange. In: Intelligent Networking and Collaborative Systems (INCOS’09), pp. 366–371 (2009)
A Distributed Telematics Peer-to-Peer (D-TP2P) Networking System for Service Discovery Chung-Ming Huang, Chia-Ching Yang, and Chun-Yu Tseng Department of Computer Science and Information Engineering, National Cheng Kung University, Tainan, Taiwan, R.O.C. No. 1, Ta-Hsueh Road, Tainan, Taiwan, R.O.C. [email protected]
Abstract. In this paper, a distributed Telematics Peer-to-Peer (D-TP2P) networking system is proposed to provide an efficient and feasible service discovery mechanism for mobile clients. When mobile clients travel on the road, they may request for some services from service providers to meet their demands. Mobile users in vehicles are assumed to go through a lot of regions, in which each region is associated with a region server. Related information of all service providers in a region is stored in its region server and the region server is in charge of the service discovery requests from all vehicles located in its region. According to clients’ demands, there are two types of search scenarios, which are (1) local search and (2) remote search. This paper focuses on the issues of developing a distributed P2P Telematics service discovery networking system over the vehicular network environment for mobile clients. A region server decision mechanism using a Safe-Zone Based Scheme (SZBS) is proposed to maintain correct connectivity between mobile clients and their associated region servers. A mobile client can have awareness of its region server and correctly send a request to its associated region server using SZBS. Then, the region server can help mobile users to find their requested service providers that are located locally or remotely. We also exhibit the performance merits of the proposed D-TP2P system in this paper. In the experiments, we showed that SZBS is better than the timer-triggered scheme. Keywords: Telematics, service discovery, geographic information system, location based service.
1
Introduction
When people are traveling on the road, different kinds of Telematics services for drivers or passengers may be needed, e.g., traffic information service, car towing service, parking service, fueling service. In the other side, it will be helpful if users on the road can find nearby interested service providers and then access the services provided from them, for example, hotel reservation service, restaurant reservation service, etc. For developing a Telematics services system, the S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 311–322, 2010. c Springer-Verlag Berlin Heidelberg 2010
312
C.-M. Huang, C.-C. Yang, and C.-Y. Tseng
Telematics Forum designed a Global Telematics Protocol (GTP) [9] for drivers to find their demanded services on the road. In GTP, a standardized solution is proposed to create a mass-market and reduce the time and costs of development and implementation for Telematics related industries. This protocol supports a wide variety of services and can also be extended for customized services as well as to new communications networks. Some illustrated Telematics services in GTP are vehicle tracking, remote diagnostics, alarm, emergency call (E-Call), breakdown Call (B-Call) and Information call (I-call). Essentially, GTP is a Client/Server based protocol, which is shown in Fig.1(a). If drivers or passengers want to acquire services, they have to connect to the Contact Center in GTP. The Contact Center in the GTP plays the role of a call center to which clients connect to and request some the Telematics services. Apparently, GTP belongs to the centralized architecture. In other words, when the requests from clients are tremendous, the Contact Center may become a bottleneck and thus largely decrease the performance of service discovery. To overcome the GTP’s dilemma and provide a suitable service discovery system for the mobile clients in vehicles and service providers for vehicle users, a centralized vehicular Peer-to-Peer Telematics service platform was developed in [11]. However, the centralized server proposed in [11] is not scalable and has the limited capability to handle the a large number of requests from mobile clients. In this paper, a distributed Telematics Peer-to-Peer (D-TP2P) networking system is proposed for larger scale of networks. The reasons that we propose a distributed architecture are that overall computing load can be shared by distributed region servers and the communication load between centralized server and service providers can also be decreased through the use of distributed servers. The execution scenario of D-TP2P is depicted in Fig.1-(b). Each region has a region server. Service providers locate in region x can publish their services’ information to region x’s region server. A client sends a service request, which is associated with some preliminary selection criteria to region server i when the client is in region i. Next, the region server i replies a list of candidate service providers. Thereafter, the client contacts with the candidate service providers directly based on his enhanced selection criteria. After some communication interactions between the client and candidate service providers, the client selects and subscribes the most suitable service provider(s). In this way, instead of using the centralized system paradigm, a P2P-liked distributed search paradigm is adopted in the D-TP2P system to make the system more reliable and scalable. An important characteristic of our proposed D-TP2P system is that the ”services” discovered through D-TP2P are ”practical services provided by service providers”, which are different from the ”services” provided by some devices [1]-[5]. The rest of this paper is organized as follows. Section 2 introduces system execution scenario. Section 3 presents the proposed region server decision mechanism. Section 4 demonstrates experiment results of the proposed system. Finally, we summarize and conclude our works in Section 5.
A D-TP2P Networking System for Service Discovery
313
(a) Service Provider 1
Contact Center
Mobile Client
Service Provider 2 Request for Service Service Provider 3 Mobile Network
...
Centralized Architecture
Service Providers
(b)
Service Provider 11
Region Server 1 Service Provider 12
...
Service Provider 13
Service Provider 21
Region Server 2 Distributed Architecture
Service Provider 22
Service Provider 23
...
囿 囿
Service Provider k1
Region Server k Service Provider k2
vice
Dis
cov
ery
Selection
...
Service Provider k3
Ser
Mobile Client
Fig. 1. (a) The execution scenario of Global Telematics Protocol (GTP); (b) the execution scenario of the proposed D-TP2P
2
System Execution Scenario
In this Section, the functional scenario of D-TP2P and the system architecture are introduced. When a client needs to find some services during traveling on the road, e.g., finding a gas station, car towing and calling for ambulances. It will be a serious challenge for the client to find service provider(s) that satisfies his requirement - lower price, shorter response time, etc. The proposed D-TP2P system is designed to resolve these problems for drivers or passengers. 2.1
Functional Scenario
In the previous studies [6] [7] [8], characteristics of spatial queries are widely discussed. In [6] and [7], D. Ahlers et al. used ”spatial filters” to determine the
314
C.-M. Huang, C.-C. Yang, and C.-Y. Tseng
search scope. In our D-TP2P system, we implement a ”region query ” function with a reference point and the search scope to let a mobile client be able to search for the local service providers or remote service providers in a certain region. Fig. 2 depicts two scenarios for mobile users to search for service providers when they are traveling on the road, which are ”local search” and ”remote search”. ”Local Search” means that the requester searches for the service providers within his current region. ”Remote Search” means that the requester searches for the remote service providers in different regions. For example, referring to Fig. 2, there is an accident occurred on the road when ”User A” passes through, in which case injured people need ”User A” to acquire ambulances to take them to the hospital. In this case, ”User A” sends a request message to his current region server x and searches for nearby hospitals located in region x. In Fig. 2, ”User B” is driving to tourist attractions in region y for holiday. Although ”User B” is in region x, he still should be able to search for the available services such as ”tourist guide service”, ”entertainment related services” (playing golf, riding a horse and shipping) and ”parking service” in region y, which is located remotely from the viewpoint of region x, through his current region server x’s cooperation with remote region server y. Region Server x
Region Server y
User B
User A
ġ
Tourist attraction
Accident Region x
Region y
Fig. 2. A scenario of the proposed D-TP2P system
In order to make service selection more precise and to reduce the region server’s load, a two-stage service discovery procedure depicted in [11] is adopted in the proposed D-TP2P system. In the first stage, the region server searches a list of candidate service providers for each service discovery request. After the search is complete, the region server constitutes a candidate service provider list and sends the list back to the requested client. The second stage is the communication interactions between the client and candidate service providers in the list. During the communication interactions, the refinement of selection criteria is done step-by-step by the client such that one or more adequate service providers is/are found. In this paper, we focus on the issue about constructing a distributed Telematics P2P networking system for service discovery. In the proposed D-TP2P system, main concern of the D-TP2P is as follows. Our proposed service discovery system is a ”distributed” architecture, and there are many region servers handling requests from clients. Since the client is moving,
A D-TP2P Networking System for Service Discovery Service Description Publishing/Updating
Tracker Server
Service Provider Registration
Region Servers (RS) Remote RSs
Registration/Publishing /Updating Service Search Service Provider Registration
315
Remote Search
Local RS
Local Search
Location Solicitation Service Search
Location Solicitation f rming Service Confi Confirming Service Subscription
Service Confirming Service Subscription
Service Providers
Mobile clients
Fig. 3. The system architecture of the proposed D-TP2P system
a fundamental problem for region servers and mobile clients may rise: ”which region server should handle the requests from mobile client x ?” In our proposed D-TP2P system, each region is associated with a region server that maintains the service information of those service providers residing in the corresponding region. Thus, it needs to have some mechanisms (i) to find where the moving client is and (ii) to find that the moving client is on the region boundary and will have a new region server to serve him. 2.2
System Architecture
Fig. 3 depicts the overview of our proposed D-TP2P system which consists of four types of basic entities, e.g., tracker server, region servers, service providers and mobile clients. The tracker server is designed to handle the registration of service providers and provide positioning services for mobile clients in the initial phase. A region server stores related service information for those service providers located in its region and provides the lookup service, from which mobile clients are able to find the candidate service providers. In our proposed service discovery scheme, spatial information and mobility of vehicles are both taken into consideration. Interactive procedures among the four basic entities of our D-TP2P system are (1) service description registration, (2) service description publishing/updating, (3) location management, (4) service search, (5) service provider selection, (6) service subscription. These procedures are discussed in detail as follows.
316
C.-M. Huang, C.-C. Yang, and C.-Y. Tseng
(1) Service provider registration: In this procedure, service providers need to send registration messages containing their location information and their identifiers to the tracker server, and the tracker server forwards these messages to the corresponding region servers according to the positions of service providers. (2) Service description publishing/updating: After finishing the registration procedure, service providers are able to directly publish or update service information to their associated region servers. (3) Location solicitation: In our proposed D-TP2P system, a user may be a driver or passenger in the moving vehicle. In order to let mobile users know where they are and to which region server to be connected, the location solicitation procedure is needed. In this procedure, a mobile client connects to the tracker server at first, and the tracker gives the mobile client connection information of his current region server. Thus, the mobile client can connect to the corresponding region server. (4) Service search: In the service search procedure, if a mobile client needs to find some services, some parameters setting, e.g., service type, search scope, needs be used. The query can be generated based on the requirement of the client and related spatial information. After receiving the request message, the client’s current region server parses the request message and forwards this message to suitable region servers, which may be the current region server itself and/or some remote region servers according to the search scope. Each region server would perform the lookup operation accordingly. Finally, the current region server gathers search results from other remote region servers and sends a response to the requested mobile client. (5) Service provider selection: The search result contains a list of candidate service providers and related description of services. In the service provider selection procedure, the mobile client has to select one or some adequate service providers. To ensure the service availability of service providers, an iterative request-response based approach is adopted. (6) Service subscription: In the last procedure, when the service provider(s) is/are determined in the service provider selection procedure, the mobile client can then subscribe the services with these service providers.
3 3.1
Region Server Decision Mechanism The Concept of Region Servers Decision Mechanism
In the early works [12] [13], Seno et al. discussed service discovery issues using three strategies: (1) ”central directory”[2], (2) ”distributed directories” strategies [10], and (3) ”without directory” strategies [1]. General speaking, central directory based strategies can reduce the response time for locating services. However, the network size of central directory based approaches is usually limited due to the bottleneck problem of central directory for handling handle a large number of requests. For the concern of scalability, bottleneck problem and response time for locating services, D-TP2P adopts the distributed directories strategy instead of using central directory, which was adopted in [11].
A D-TP2P Networking System for Service Discovery
317
Since the D-TP2P system uses the ”distributed directories” strategy, a mobile client should connect to an appropriate region server to look up the directory for the requested service. A fundamental problem emerges: the mobile client does not know the boundary information of the current region server and he may leave the current region due to his mobility. Thus, how to make mobile client know which region server can serve him is the challenge to be tackled. To solve the problem, a suitable region server decision mechanism should be adopted to let the mobile client be able to connect to its current region server. With this mechanism, a mobile client x can have awareness of the current region server and correctly send a request to its current region server. The main idea of this mechanism is that each region is associated with a region server. In other words, each region server should have geometric information about its region such that it is able to judge whether the position of the client is in its region or not. There are two ways for a mobile client to know his current position: (1) messaging based approach (2) map based approach. In this paper, we choose the messaging based approach for mobile clients to verify their positions by sending hello messages. The reasons that we do not let the mobile client save all of the spatial information about region servers in his local disk are as follows: (1) it extremely increases the computing/storage overhead in the mobile client and (2) if some information about region servers is changed, the mobile client needs to update the information and it also increases the overhead of the mobile client. For the aforementioned concerns, a messaging based approach is adopted in the proposed region server decision mechanism. Two schemes that can be used to send a hello message in the messaging based approach are as follows: (1) Timer-triggered: a mobile client sends a hello message to the current region server periodically. The timer-triggered scheme is widely used in several protocols, applications and systems. Mobile clients only need to send hello messages and wait for the decision result sent from region servers in a specific period of time. Obviously, the sending frequency directly affects the accuracy of the decision mechanism. Higher frequency causes larger computing cost, and lower frequency makes the decision mechanism be kind of inaccuracy. Nevertheless, this scheme may be futile in some situation in the vehicular network environment. For example, the vehicle is traveling at a very low speed, or stops in the parking lot. In these cases, sending hello messages may become meaningless. (2) Event-triggered: To release the high computing overhead and increase the accuracy of the decision mechanism, an event-triggered scheme can be adopted in the region server decision mechanism. In this scheme, the ”event” is triggered to make the mobile client send hello messages, and the region server only handles the necessary computing to let mobile clients have enough information to make decisions by themselves. In this Section, we design an event-triggered scheme called Safe-Zone Based Scheme (SZBS), which consists of three phases, to let every mobile client be able to connect to the correct region server.
318
3.2
C.-M. Huang, C.-C. Yang, and C.-Y. Tseng
Three Phases of the Safe-Zone Based Scheme
Three phases of the Safe-Zone based Scheme are depicted as follows. (1) Initialization phase: When a mobile client starts to drive the vehicle and launch the D-TP2P application, the client sends a request to the tracker server to ask for its current region server. After receiving the response from the tracker server, the client can connect to its current region server. (2) Server-side prediction phase: In this phase, in order to let region server know which mobile client is within its region, the mobile client sends a hello message which contains some spatial information such as his GPS position to his current region server, which is shown in Fig. 4-(a), and the current region server calculates and send the information, including ”Safe Zone” and ”Decision Line”, to the mobile client, which is shown in Fig. 4-(b). The ”Safe Zone” and ”Decision Line” are defined as follows. Current RS
ĩŢĪ
Current RS
ĩţĪ 2
1
Safe Zone
Boundary
Boundary DCB Decision Line
New RS
New RS Current RS
ĩŤĪ
Current RS
ĩťĪ
Safe Zone
Safe Zone
3
Boundary
Boundary Decision Line
Decision Line
3
New RS
New RS
Fig. 4. (a) (b) Are the ”Server-side Prediction Phase” of SZBS, (c) (d) are the ”Clientside decision Phase” of SZBS
The ”Safe Zone” is a zone that a client can arbitrarily move without the fear of crossing the region boundary and changing the region server. If the client moves within the ”Safe Zone”, he will not leave the current region which is managed by its current region server. In order to calculate the ”Safe Zone”, a variable ”DCB ” is defined as the shortest distance between the current client’s position and the boundary of the current region. The distance ”DCB ” is regarded as the radius to draw a circle, and the center (Xc , Yc ) of this circle is the current position of the client. The mobile client can arbitrarily move in the interior of the circle without the fear of leaving the current region. The range of ”Safe Zone” is depicted in Eq. 1. 2 (X − Xc )2 + (Y − Yc )2 <= DCB
(1)
A D-TP2P Networking System for Service Discovery
319
The ”Decision Line” is used to determine whether a mobile client needs to change the region server or not. ”Decision Line” is a tangent line which touches the edge of ”Safe Zone” and the boundary of the region. The point of tangency is (Xt , Yt ) which is calculated by the region server. The ”Decision Line” is calculated using the following implicit differentiation: d 2 {(X − Xc )2 + (Y − Yc )2 − DCB }=0 dx ⇒ 2(X − Xc ) + 2(Y − Yc ) ⇒
dy =0 dx
dy X − Xc =− dx Y − Yc
(2)
(3)
(4)
The slope of the tangent line at (Xt , Yt ) is dy Xt − Xc |(Xt ,Yt ) = − dx Yt − Yc
(5)
The equation of the tangent line for ”Decision Line” is denoted as follows: LDL : Y − Yt +
Xt − Xc (X − Xt ) = 0 Yt − Yc
(6)
Thus, the mobile client can judge whether he stays in the same region or not according to his new positions (Xx , Yy ) and (Xc , Yc ). A mathematical property can be used to let a mobile client make decision to see he still can connect to its current region server or should connect to a new region server. Given A(X1 , Y1 ), B(X2 , Y2 ) and a line with a linear equation L : ax+ by + c = 0, we can substitute point A and B in the left side of this linear equation to obtain valueA and valueB respectively. Thus, if these two points A and B are in different sides of line L, the product value of valueA and valueB is smaller than zero. With this property, we can put the center point (Xc , Yc ) and mobile client’s position (Xx , Yy ) in the linear equation of ”Decision Line” LDL . If the following inequality (7) holds, the mobile client has crossed the boundary and is in a different region, which means he needs to connect to a new region server. (Yc − Yt +
Xt − Xc Xt − Xc (Xc − Xt ))(Yy − Yt + (Xx − Xt )) < 0 Yt − Yc Yt − Yc
(7)
(3) Client-side decision phase: There are only two cases in the ”Safe Zone” for a mobile client. (1) Cross ”Decision Line”: if the mobile client has crossed the ”Decision Line”, which is shown in Fig. 4-(c), he should connect to and thus need to send a new hello message directly to the new region server. (2) Cross ”Safe Zone”: if the mobile client has leaved the ”Safe Zone” but within the same region, which is shown in Fig. 4-(d), he should send a hello message to the current region server to enter the ”Server-side prediction phase” again.
320
4
C.-M. Huang, C.-C. Yang, and C.-Y. Tseng
Experiment Results
In this Section, we demonstrate effectiveness of the proposed D-TP2P system based on some experiment results. In our implementation of the D-TP2P system, the necessary spatial information is stored in the tracker server and region servers. To handle the spatial information in databases, Microsoft SQL Server 2008 is adopted to provide comprehensive spatial support to manage the spatial data. Since the tracker server needs to handle the registration of service providers, Microsoft Internet Information Services server is installed to provide an interface for the registration. There are two region servers in our D-TP2P system for this experiment, which handles the requests from ”Tainan County” and ”Kaohsiung County” respectively. There are two experiments comparing the performance of the timer-triggered scheme and SZBS in our proposed region server decision mechanism. Firstly, we examine the query message overhead created by these two schemes. We randomly choose ten paths within a region from the Google Earth, and the average path length is around 30km. The results of this experiment are shown in Fig. 5. The value of time interval (I=10 ∼ 60 seconds) and the speed of the vehicle influences the message overhead largely in the timer-triggered scheme. Lower speed of the vehicle causes longer travel time and the mobile client needs to send more query messages. In Fig. 5, the query message overheads in the proposed SZBS are very low and regardless of vehicle’s speed. The vehicle only sends query messages when it is leaving ”Safe Zone”. If the initial position of the vehicle is near the center of its current region, it can obtain a large ”Safe Zone” such that the vehicle can arbitrarily move within this zone. In this experiment, our proposed SZBS obviously outperforms the timer-triggered scheme.
Fig. 5. The performance results of the timer-triggered scheme and SZBS in our proposed region server decision mechanism
A D-TP2P Networking System for Service Discovery
321
Table 1. The switch time of TTS and SZBS Scheme TTS SZBS I=10 I=20 I=30 I=40 I=50 I=60 Time (s) 9.63 14.47 18.77 24.08 29.14 34.17 1.68
In Table 1, the switch time is discussed for timer-triggered scheme (TTS) (time interval, I=10 ∼ 60 seconds) and SZBS in our proposed region server decision mechanism. In this experiment, the switch time is defined as the time that a mobile client connects to the new region server when it cross the boundary of the current region. In Table. 1, if the larger time interval is set in the timertriggered scheme, a larger switch time can be derived. We can find that our proposed SZBS uses less switch time than timer-triggered scheme.
5
Conclusion
In this paper, a D-TP2P system is proposed to find service providers based on the demands of mobile clients. The benefits of using the distributed architecture are as follows: (1) system computing load can be shared by distributed region servers and (2) distributed architecture is scalable and suitable for large scale of networks. The key problem ”how to let a mobile client x connect to its current region server” has been solved using our region server decision mechanism called SZBS. In the experiments, we showed that the proposed region server decision mechanism using SZBS is better than the timer-triggered scheme.
Acknowledgment This research is supported by the National Science Council of the Republic of China, Taiwan under the contract number NSC 98-2219-E-006-009.
References 1. UPnP Forum. UPnP device architecture version 1.0 (June 2000) 2. Guttman, E., Perkins, C.: Service location protocol, version (June 1999) 3. Baroody, R., Rashid, A., Al-Holou, N., Hariri, S.: Next generation vehicle network (NGVN): Internet access utilizing dynamic discovery protocols. In: Proceedings of the IEEE/ACS International Conference on Pervasive Services, July 2004, pp. 81–88 (2004) 4. Bechler, M., Wolf, L., Storz, O., Franz, W.: Efficient discovery of Internet gateways in future vehicular communication systems. In: Proceedings of the 57th IEEE Vehicular Technology Conference, April 2003, vol. 2, pp. 965–969 (2003) 5. Kim, D., Lee, S.: UPnP-Based Telematics Service Discovery for Local Hot-Spots. In: Proceedings of IEEE International Conference on Multimedia and Ubiquitous Engineering, April 2007, pp. 500–506 (2007)
322
C.-M. Huang, C.-C. Yang, and C.-Y. Tseng
6. Ahlers, D., Boll, S.: Beyond position - spatial context for mobile information retrieval systems. In: Proceedings of IEEE 6th Workshop on Positioning, Navigation and Communication, pp. 129–134 (2009) 7. Mountain, D.M.: Spatial filters for mobile information retrieval. In: Proceedings of the 4th ACM workshop on Geographical information retrieval, pp. 61–62 (2007) 8. Grine, H., Delot, T., Lecomte, S.: Adaptive query processing in mobile environment. In: Proceedings of the 3rd International Workshop on Middleware for Pervasive and Ad-Hoc Computing, pp. 1–8 (2005) 9. Telematics Forum, Global Telematics Protocol (GTP) 1.0, http://www.ertico.com 10. Sailhan, F., Issarny, V.: Scalable Service Discovery for MANET. In: Proceedings of IEEE Third International Conference on Pervasive Computing and Communications, pp. 235–244 (2005) 11. Chung-Ming, H., Chia-Ching, Y., Chun-Ming, H.: An Efficient Telematics Service Discovery Scheme over the Centralized Vehicular Peer-to-Peer (C-VP2P) Telematics Service Platform. In: Accepted in proceedings of IEEE 24th International Conference on Advanced Information Networking and Applications (2010) 12. Seno, S., Wan, T.-C., Budiarto, R.: Survey and new approach in service discovery and advertisement for mobile ad hoc networks. In: Proceedings of the IJCSNS, vol. 7(2), pp. 275–284 (2007) 13. Seno, S., Wan, T.-C., Budiarto, R.: Hybrid hierarchical approach for addressing service discovery issues in MANETs. In: Proceedings of the IEEE International Conference on Telecommunications and Malaysia International Conference on Communications, May 2007, pp. 197–202 (2007)
Empirical Predictor of TCP Throughput on a Multihop Wireless Path Anna Chaltseva and Evgeny Osipov Department of Computer Science and Electrical Engineering Lule˚ a University of Technology {Anna.Chaltseva,Evgeny.Osipov}@ltu.se
Abstract. This paper addresses a question of predicting TCP throughput over a multihop wireless path. Since it is useful for a variety of applications it is desirable that TCP throughput prediction technique introduces low-overhead while avoiding active measurement techniques. Analytical derivation of the throughput predictor for multihop wireless networks is difficult if not impossible at all due to complex cross-layer dependencies. In this article we statistically analyze the significance of parameters on physical, MAC and transport layers in a multihop wireless chain and empirically derive a practically usable throughput predictor. The resulting model allows prediction of the throughput with less than 2% error.
1
Introduction
Multihop wireless networks are known for their highly variable and unstable performance. Being able to accurately predict the performance network protocols prior to the start of the actual communication session would provide an essential input for various optimization processes, e.g. selection of an optimal multihop route, setting parameters for traffic shapers, configuring appropriately parameters of the MAC protocol etc. In the case of TCP based communications the correct prediction of the throughput would prevent such problems as connection migration delays, packet reordering, and re-initialization of the congestion window. Several well-established approaches for predicting TCP throughput in the wireline Internet exist [1]. All these approaches fall into either of two classes: formula-based or history-based. Formula-based prediction relies on mathematical models that express the TCP throughput as a function of the characteristics of the underlying network path (i.e. RTT, loss rate). The history based approaches use standard time series forecasting methods based on a history of throughput measurements from previous TCP transfers on the same path. In the case of multihop wireless networks history-based predictions have little sense due to high operational dynamics of these networks (node mobility, dynamic interferences etc.). As for the formula-based predictors, mathematical models for TCP throughput are typically based on certain assumptions that make the interpretation of their parameters difficult in reality. For example, estimating the packet S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 323–334, 2010. c Springer-Verlag Berlin Heidelberg 2010
324
A. Chaltseva and E. Osipov
loss rate parameter in the traditional “square root” model [12] using a periodic ping-based measurement would introduce a significant error in the prediction as it can be an order of magnitude different from the packet loss rate experienced by the flow due to self-contention on the multihop path or due to congestion. We intend to obtain a practically useful TCP throughput predictor (hereafter referred to as “predictor” or “model” interchangeably) as a function of: – Adjustable parameters of protocols on different communication layers, for example the maximum segment size on the transport layer, number of hops on the network layer (this parameter is “adjustable” when multipath routing is available), size of contention window or number of retransmission attempts on the MAC layer, and transmission rate on the physical layer; – Characteristics of design-imposed and runtime communication context, for example relative signal-to-interference values at nodes, etc. Deriving such a model is an ambitious task. The large number of model parameters and complex interdependencies do not allow for analytical treatment of the problem and, therefore, make an empirical derivation challenging. In this paper we focus on the empirical throughput prediction of a bulk TCP transfer for a single flow in IEEE 802.11b-based multihop wireless chain prior to starting the actual data exchange. The contribution of this paper is thus twofold. Firstly, we present a two-stages methodology for empirical derivation of the target model. Secondly, we empirically derive a so far three dimensional variant of the crosslayer TCP throughput model as a function of gross physical layer transmission rate, number of wireless hops traversed by the flow and MSS. Our model allows practical prediction of TCP throughput with less than 2% error. On the one hand the results presented in this paper can be directly used for boosting TCP performance in multihop wireless networks as described in [11]. On the other hand, however, the presented approach should be considered as work in progress towards deriving advanced TCP throughput predictor for realistic scenarios with more complex topologies and in the presence of cross traffic. The paper is structured as follows. We outline the modeling process in Section 2. Section 3 elaborates the details of the performed experiments. The significance analysis and TCP throughput modeling is presented in Section 4. Section 5 concludes the paper.
2
Motivation and Solution Outline
The motivation for developing the model described in this article particularly stems from the work presented in [11]. There the authors adapted the maxmin fairness framework from the wireline Internet to the specifics of multihop wireless networks and suggested practically implementable mechanisms which enforce the fairness model in real networks. The two major components of the adaptive distributed capacity allocation scheme for multihop wireless networks are: (a) The usage of an ideal throughput achieved by a multihop TCP flow for characterizing the boundary load of a geographical region traversed by the
Empirical Predictor of TCP Throughput on a Multihop Wireless Path
325
session and (b) the rate throttling mechanism for reducing the output rate at sources of TCP sessions in order to control the load in their bottleneck regions. The major improvements achieved by the suggested mechanism of throttling the output rate at ingress nodes are an increase in total network throughput and almost perfect fairness. 2.1
Related Work
Previous modeling of TCP throughput has generated a diverse set of results. A good overview and an extensive analysis of available TCP throughput prediction approaches is presented in [1]. One of the most common predictors which is largely used in the Internet is the “square root” model (or PFTK predictor) [12]. In wireless networks several attempts to analytically model TCP throughput were undertaken during the last decade [5], [6], [2]. It is commonly understood that capturing the cross-layer nature of wireless communications is far from being simple. Even with some simplified assumptions the resulting models are too complex to be applied in practice [8]. The works in [4], [10] use an approach of empirical TCP modeling. While these papers present fundamental observations on the TCP behavior in multihop wireless scenarios, practically usable TCP throughput predictor remains to be discovered. The uniqueness of the modeling approach presented in this paper comes from the nature of parameters included in the model. Our model binds the adjustable parameters of protocols on different communication layers on the one hand and directly measurable characteristics of the communication path on the other. In this way, the throughput could be predicted without the need of estimating parameters during the actual message exchange. 2.2
Our Approach
We seek the TCP throughput model in a general form (1), where RP HY is − −−− → −−−−→ −−−→ −−−−→ the gross data rate on the physical layer and f (PEN V , PMAC , PN ET , PT RAN ) is the rate reduction coefficient. This coefficient is a function of parameters on the − −−− → physical, MAC, network, transport layers and PEN V is a vector of characteristics of particular operating environment. −−− → −−−−→ −−−→ −−−−→ ˆ = RP HY · f (− PEN V , PMAC , PN ET , PT RAN ). R
(1)
From the rich experience collected in the research community on the analysis TCP behavior in multihop wireless networks it is known that the number of cross-layer parameters affecting the TCP performance is large. It is also known that not all of these parameters, though, place significant effect on the overall system performance. Moreover, involving unnecessary parameters in the crosslayer optimization process and at the end an implementation of the cross layer architecture may lead to a cumbersome solution with to a large extent unpredictable behavior [3].
326
A. Chaltseva and E. Osipov
Table 1. Parameters on different communication layers potentially affecting the TCP throughput selected for significance analysis in this work TCP/IP Layer
Physical
MAC
Network
Transport
Parameters
Data rate Minimum Number Maximum segment size (RP HY ) contention of hops (M SS); maximum congeswin(Nhops ) tion window (CW N D) dow size (CWmin )
Determining the optimal subset of parameters statistically significant for optimization constitutes the first phase of our methodology. At this step we perform 2n factorial design where n is the number of candidate factors to be included in the the target model. We use F-test to evaluate the significance of chosen parameters. In the second phase of our methodology we perform iterative curve fitting on the parameters with the highest statistical significance. In each iteration we choose a parameter with the highest significance, perform curve fitting and evaluate the accuracy of fitting using a coefficient of multiple determinations. We repeat the procedure for all significant parameters. In this work we apply the methodology on a special class of multihop networks - a wireless chain with single TCP flow. The rationale for choosing this class of networks is twofold. Firstly, our target is to create a model for an ideal throughput of TCP bulk transfer without interferences inferred by the cross traffic [11]. Secondly, already with these settings applying our model is both effort and time consuming. Overall, we follow a bottom-up approach by first modeling the simplest case and then extending the model by gradually adding complexity of the scenarios. 2.3
Highlights of the Contribution
For the significance tests in this work parameters reflected in Table 1 were selected. Note that the table does not present a complete list of parameters on different layers. For this work we only selected those with the highest relevance to the considered scenario. In total we performed 24000 simulation runs to collect the necessary statistics for the significance analysis of the four chosen factors. The most interesting result from the significance analysis is that imposing an artificial limit on the size of TCP congestion window does not significantly affect TCP throughput in the particular scenario. This result differs from previously published findings in 3·Nhops . [4] suggesting to clamp CW N D depending on the number of hops as 2 However, this finding is not a contradiction to previous analysis, but shows that there is a complex dependency between CW N D parameter and characteristics of the communication context.
Empirical Predictor of TCP Throughput on a Multihop Wireless Path
327
Table 2. Factors and chosen levels in factorial design Factors Nhops Levels Low High
M SS (Bytes) Low High
CW N D (segments) CWmin Low High Low High
1 3 Values 9
100 500 900 1360
2 6 10 14 18
2 4 10
200 600 1000 1460
3 7 11 15 19
15
30
As a result of iterative fitting we obtained a three-dimensional variant of the → − → → model (2), where − α , β and − γ are vectors of scalar values for each considered physical layer transmission rate. → − ˆ P HY , Nhops , M SS) = RP HY · M SS + α . R(R (2) − → → β · Nhops − − γ → − → → The coefficients in vectors − α , β and − γ can further be expressed as functions of other parameters. Determining these parameters is left outside the scope for this paper and will be considered in our future work. Our model allows practical prediction of TCP throughput with less than 2% error.
3
Description of Experiments and Simulation Setup
For the analysis of statistical significance of model parameters we performed factorial design as one of the most suited techniques for such purposes [9]. In this technique independent variables of interest (or factors) are assigned discrete values (or levels). The factorial design is a strategy where experiments are Table 3. Simulation parameters Parameter
Value
Physical Layer Parameters Carrier sensing threshold -115 dBm Reception threshold -72 dBm Transmitted signal power 15 dBm Channel frequency 2437e6 (channel 6) Base TX rate 1 Mb/s Data rate 2, 5.5, 11 Mb/s MAC Layer Parameters Maximum Contention Window 1023 Short slot time 9 us SIFS 10 us Short preamble 72 bits RTS/CTS off
328
A. Chaltseva and E. Osipov
performed with all possible combinations of the factors’ levels. We decided to perform the analysis with two levels for each factor (“low” and “high”). This number allows reducing the number of simulation runs while keeping good statistical accuracy of the analysis. Analyzing only two values for each factor is, however, not enough for the identification of the factor’s significance. For this reason Nhops factor was analyzed with three pairs of levels, M SS with four pairs, CW N D with five pairs as indicated in Table 2. The significance of CWmin factor was analyzed with one pair of values. Each experiment was repeated 5 times randomly seeding the random number generator at each iteration. In total 24000 (24 · 3 · 4 · 5 · 1 · 5) independent factorial designed experiments were performed.The response from each run is the throughput in kilobits per second which was computed as the amount of data received by the sink node divided by the total transmission time. 3.1
Simulation Setup
The network topology used in our experiment is a static wireless chain depicted in Figure 1. The nodes were placed on distances equivalent to the transmission range of the wireless interface at a given physical layer data rate. A single wireless channel is shared by all nodes in the network. Static routing was used in order to avoid interferences imposed by the routing traffic. The test flow originated at Node 1 and traversed variable number of hops to the last node in the chain which was the sink node for the monitored flow. We used TCP Newreno and an FTP application which constantly generated traffic during each simulation run. We used network simulator ns-2.33 [7] to perform the experiments. Prior to the experiments we performed careful calibration of the network simulator parameters in order to achieve as close to the reality performance figures as possible. For this we configured the simulator with parameters of real IEEE 802.11b network interfaces which are used in our wireless mesh testbed. Table 3
Fig. 1. The experimental chain topologies Table 4. Results of calibration of network simulator parameters: TCP throughput (in kb/s) measured in simulations and in real multihop testbed hops
1
3
6
Simulations Measurements |Δ|
5041.4 3870.0 1171.4
1681.2 1260.0 421.2
836.3 870.0 33.7
Empirical Predictor of TCP Throughput on a Multihop Wireless Path
329
summarizes the used settings. In order to verify the correctness of the simulation settings we compared the results from the simulations to the performance of the bulk transfer in a real multihop testbed deployed in our lab. As Table 4 indicates we achieved good simulations accuracy especially on larger hop counts.
4
Statistical Significance and Empirical Throughput Modeling
In factorial analysis F-test is used to evaluate the significance of a factor. The null hypothesis of the F-test is that the factor would have a zero coefficient when added to a linear model. The decision about the validity of the null hypothesis is taken by inspecting the p-value of the test. The p-value is defined as the smallest level of significance that would lead to rejecting the null hypothesis [9]. A significance level of the test (α-level) is a probability of rejecting the null hypothesis when in fact it is true. Accordingly factors which p-values are lower then the defined α-level are considered as significant. Usually a significance level equal to 0.05 is considered as an acceptable error level. The F-test is based on the assumption of normality and independence of the residuals from an identified linear regression model. In our analysis the normality assumption was checked by evident results from Jarque-Bera hypothesis test of composite normality. The independence is achieved by the experiment design presented in the previous section. Applying factorial analysis to experimental data led to identify the following factors as significant: Nhops and M SS with confidence 95% (α-level equals 0.05). We observed that factors CWmin and CW N D were significant only in some small part of the experiments. Table 4 demonstrates the minimum and maximum impacts of the factors shown as coefficients in linear regression models where all factors were significant for the particular physical layer transmission rate. We observe that even when CWmin and CW N D factors are significant, their impact is considerably smaller compared to the impact from Nhops and M SS factors. Therefore, for the TCP throughput modeling we decided to continue only with Nhops and M SS, the factors with the most evident significance in this particular scenario. We, however, highlight that CWmin and CW N D should not be disregarded from further modeling of more complex scenarios as their impact could became more significant in other settings [4]. We, however, leave the development of this issue for our future work. 4.1
Iterative Empirical Modeling of TCP Throughput
In this section we present the results of an iterative throughput modeling based on three selected parameters: number of wireless hops (Nhops ), TCP maximum segment size (M SS) and physical layer transmission rate (RP HY ). Two dimensional throughput model: Fitting Nhops and RP HY parameters. The plots of the measured TCP throughput Rmeasured in Figure 2 suggest
330
A. Chaltseva and E. Osipov
Table 5. Maximum and minimum impacts of considered factors in regression models where all factors were significant (20% of all regressions) Nhops max
Factors RP HY Mb/s
min
1 2 5.5 11
-1093 -2059 -4694 -7448
min
-52.01 -83.08 -134.96 -161.33
M SS max
998 1897 8209 11027
12700 29070 87120 17746
min
CW N D max
-37.62 -67.56 -133.14 -180.20
-3.70 -3.58 -8.70 -6.58
min
CWmin max
-3.69 -3.58 -8.70 -6.58
265.12 492.03 630.27 221.93
Fig. 2. TCP throughput measured in simulations for RP HY =5.5 and 11Mb/s and selected values of M SS versus number of hops 1 choosing a reciprocal function of number of hops in form a·Nhops +b as the target function for TCP throughput. We performed |RPHY | × |MSS| nonlinear regressions where |RPHY | and |MSS| are cardinality of vectors of physical layer transmission rates and MSS sizes used in the experiments correspondingly. In this way we estimated matrices of coefficients A and B for each permutation of the rate and the MSS values. The non-linear regression was transformed to the 1 values to first order polynomial a · Nhops + b using linear one by fitting Rmeasured the method of least squares. After that in all models with the determined coefficients we extracted the values equal to the corresponding physical layer data rate and obtained elements of the matrices of coefficients A and B as RP1HY · ai,j and RP1HY · bi,j correspondingly. By this we obtained the two-dimensional model for TCP throughput (3).
ˆ P HY , Nhops ) = R(R
1 RP HY
1 1 . = RP HY · A · Nhops − B · (A · Nhops − B)
(3)
The coefficient of multiple determination was used as a measure of the prediction accuracy of the model. The estimated values for the coefficients ai,j and bi,j for the different physical layer transmission rates (index i) and the selected MSS sizes (index j) as well as the calculated R2 values for (3) are reflected in Table 6. The calculated R2 values shows that the predictive ability of the model is better then 96%.
Empirical Predictor of TCP Throughput on a Multihop Wireless Path
331
Table 6. Values of coefficients a1 and b1 in two-dimensional model with corresponding R2 values M SS, B 100
A B R2 500 900 1100 1300 1460 100 500 900 1100 1300 1460
1 Mb/s 2 Mb/s 5.5 Mb/s 11 Mb/s
1.84 2.04 2.82 4.03
3.23 3.99 6.78 11.03
1.59 1.72 2.17 2.86
1.55 1.64 2.00 2.58
1.49 1.58 1.88 2.38
1.4 1.54 1.83 2.25
1.06 1.04 1.36 1.28
0.50 0.45 0.52 0.45
0.37 0.35 0.39 0.28
0.36 0.33 0.32 0.28
0.31 0.31 0.27 0.24
0.34 0.29 0.30 0.19
0.96 0.97 0.98 0.99
Fig. 3. Coefficient a1 and b1 versus M SS for different physical layer data rates
Three dimensional throughput model: Fitting the M SS parameter. In the next iteration of fitting we extended model (3) as follows. The matrices of coefficients A and B are functions of M SS for different physical layer 1 ˆ P HY , Nhops , M SS) = RP HY · transmission rates: R(R . f1 (MSS)·Nhops +f2 (MSS)
Based on the shape of plots of the estimated A and B values as a function of MSS shown for a given transmission rate in Figure 3 we again selected 1 a reciprocal function as a candidate for fitting: f1 (M SS) = − → − → and a1·MSS+a2 → − → − − → − → 1 f2 (M SS) = → − → − . Here a1, a2, b1, b2 are vectors of coefficients (for transb1·MSS+b2 mission rates 1, 2, 5.5, 11 Mb/s) to be estimated by linear regression on the 1 1 set of previous coefficients { ai,j } and { bi,j }. The result of the regression with 2 R ≥ 0.97 accuracy are vectors: − → a1 = {0.30; 0.33; 0.35; 0.31} · 10−4 ; → − b1 = {0.19; 0.21; 0.25; 0.38} · (10)−3 ;
− → a2 = {0.38; 0.31; 0.18; 0.10}, → − b2 = {0.11; 0.11; 0.09; 0.06} · (10).
Now, since f1 and f2 belong to the same class of functions we may express 1 them as a product of another function f3 (M SS) = MSS+α of their class and multipliers β and γ, which transforms the common function f3 to f1 and f2 as
332
A. Chaltseva and E. Osipov
Fig. 4. Functions f1 , f2 and f3 of M SS on the example of f1 and f2 model forRP HY = 11M b/s
f1 (M SS) = f3 (M SS)·β and f2 (M SS) = f3 (M SS)·γ correspondingly (this step is illustrated in Figure 4). By doing this the target model for TCP throughput takes form (4). Note that multipliers α, β and γ are specific to the particular transmission rate and therefore in (4) the vector notation is used. 1 = − → → f3 · ( β · Nhops − − γ) → M SS + − α = RP HY · − . → → β ·N −− γ
ˆ P HY , Nhops , M SS) = RP HY · R(R
(4)
hops
→ − − → We estimate the value of coefficient vectors → α , β and − γ for each considered physical layer transmission rate by performing a system of nonlinear regressions for target model (4). Due to space limitations and because we used standard methods of performing a system of regressions, we do not present the details of the regression analysis here. The values of α, β and γ obtained as the result of the regression analysis are reflected in Table 7 along with R2 values for the accuracy of each estimated model. Table 7. α, β, and γ coefficients values RP HY (Mb/s) α
β
γ
R2
1 2 5.5 11
27394 25777 25997 30284
1851 1433 984 855
0.98 0.98 0.99 0.99
9834 7541 4458 2966
The calculated R2 values shows that the predictive ability of the model is better then 98%. Figure 5 demonstrates how well the estimated model fit the measured values of throughput in the case when RP HY = 11 Mb/s for selected values of MSS.
Empirical Predictor of TCP Throughput on a Multihop Wireless Path
333
Fig. 5. TCP throughput measured in simulations and predicted by the final model for RP HY =11Mb/s and different values of M SS versus number of hops
5
Conclusions
In this paper we considered a problem of empirical modeling of TCP throughput in wireless networks. The main difference of our approach from those previously reported in the literature is that our model uses adjustable parameters on different communication layers and parameters of the communication context directly measurable before the actual start of the data transfer. Since modeling of cross-layer dependencies is a complex task in this paper we presented a so far three-dimensional variant of the general model. Our model uses transmission rate at the physical layer, number of wireless hops and the maximum size of TCP segment as the input parameters and predicts TCP throughput with 98 - 99% accuracy. Already in this form the model can be used for a practical cross-layer optimization of the TCP throughput. We continue the development of the presented material by identifying new significant adjustable parameters and parameters of the communication context and considering more complex scenarios.
References 1. He, Q., Dovrolis, C., Ammar, M.: Prediction of tcp throughput: formula-based and history-based methods. SIGMETRICS Perform. Eval. Rev. 33(1), 388–389 (2005) 2. Katsuhiro, N., Okada, H., Yamazato, T., Katayama, M., Ogawa, A.: New analytical model for the tcp throughput in wireless environment. In: Vehicular Technology Conference, VTC 2001 Spring. IEEE VTS 53rd, vol. 3, pp. 2128–2132 (2001)
334
A. Chaltseva and E. Osipov
3. Kawadia, V., Kumar, P.R.: A cautionary perspective on cross-layer design. IEEE Wireless Communications (see also IEEE Personal Communications) 12(1), 3–11 (2005), http://dx.doi.org/10.1109/MWC.2005.1404568 4. Kawadia, V., Kumar, P.R.: Experimental investigations into tcp performance over wireless multihop networks. In: E-WIND ’05: Proceedings of the 2005 ACM SIGCOMM Workshop on Experimental Approaches to Wireless Network Design and Analysis, pp. 29–34. ACM, New York (2005) 5. Kim, S.P., Mitchell, K.: An analytic model of tcp performance over multi-hop wireless links with correlated channel fading. Perform. Eval. 64(6), 573–590 (2007) 6. Leith, D., Clifford, P.: Modelling TCP dynamics in wireless networks. In: Wireless Networks, Communications and Mobile Computing, 2005 International Conference, June 2005, vol. 2, pp. 906–911 (2005) 7. McCanne, S., Floyd, S.: ns Network Simulator, http://www.isi.edu/nsnam/ns/ 8. Moltchanov, D., Dunaytsev, R.: Modeling TCP performance over wireless channels with a semi-reliable data link layer. In: 11th IEEE Singapore International Conference on Communication Systems, November 2008, pp. 912–918 (2008) 9. Montgomery, D.C.: Design and Analysis of Experiments. Wiley, Chichester (August 2005) 10. Ng, A.C.H., Malone, D., Leith, D.J.: Experimental evaluation of tcp performance and fairness in an 802.11e test-bed. In: E-WIND ’05: Proceedings of the 2005 ACM SIGCOMM Workshop on Experimental Approaches to Wireless Network Design and Analysis, pp. 17–22. ACM, New York (2005) 11. Osipov, E., Tschudin, C.: TCP-friendly bandwidth sharing in mobile ad hoc networks: From theory to reality. EURASIP Journal on Wireless Communications and Networking (2007) 12. Padhye, J., Firoiu, V., Towsley, D., Kurose, J.: Modeling TCP throughput: A simple model and its empirical validation. IEEE/ACM Transactions on Networking 8(2), 133–145 (2000)
A Framework for Connectivity in Inter-working Multi-hop Wireless Networks Oladayo Salami, Antoine Bagula, and H. Anthony Chan Communication Research Group, Electrical Engineering Department, University of Cape Town, Rondebosch, Cape Town, South Africa [email protected], [email protected], [email protected]
Abstract. Establishing connectivity between node pairs in inter-working multihop wireless networks is a challenge. Although connectivity in multi-hop wireless networks has been studied yet these analyses focused mainly on ad-hoc networks. Since the next generation of wireless networks will be inter-working, an understanding of connectivity as it applies to such networks is needed. Specifically, this research emphasizes that the connectivity between any node pair in an inter-working multi-hop wireless network should be estimated with the availability of links and the level of interference on the available links that form the communication route between the nodes. Interference is a major factor that inhibits connectivity as it can cause wasteful transmissions over low quality links. Therefore this paper presents a framework for connectivity in interworking multi-hop wireless networks. In addition a connectivity aware routing technique is proposed. Simulation results of the performance of the proposed routing technique in comparison with other routing scheme are presented. Keywords: Connectivity, Interference, Inter-working, Multi-hop Wireless networks.
1 Introduction The emergence of different types of services (IPTV, video on demand etc), an increase in demand for these services and most especially the desire for a “more” convenient way to access these services are causing new networking standards to emerge. Networks (fixed/ mobile networks, single hop/ multi-hop networks, infrastructurebased/ infrastructure-less networks) are emerging with more sophisticated standards than their predecessor in order to satisfy the demand cravings. These networks are emerging in a networking world with limited radio resources. Therefore, the issue of how to optimize resources in order to satisfy demands will continue to arise. Inter-working multi-hop wireless networks are evolving out of the demand for ubiquitous connectivity. Inter-working is a term which refers to the seamless integration of several networks. Apart from the benefit of spatial re-use with route diversity, interworking multi-hop wireless networks enables an increase in service area coverage and thus ubiquitous Internet connectivity [1]. Different multi-hop wireless networks can be inter-worked to conveniently enable the ubiquity of network ser-
S. Balandin et al. (Eds.): ruSMART/NEW2AN 2010, LNCS 6294, pp. 335–352, 2010. © Springer-Verlag Berlin Heidelberg 2010
336
O. Salami, A. Bagula, and H.A. Chan
vices. A resource optimization issue that arises in this case is how to route traffic through optimal paths for end-to-end sustained connectivity. This issue is complicated with the wireless medium being prone to impairment at anytime. Consider an interworking multi-hop wireless network consisting of three heterogeneous multi-hop wireless networks which are integrated through an inter-domain co-ordination. Nodes have the opportunity to remain connected and have access to their on-going service even if they move out of their parent network’s coverage area. At times, a node within the network may not have direct link to its intended destination node, so its transmission will have to be relayed through other nodes in the network. However, due to link’s instability it is difficult to guarantee that all the links on a route will be connected throughout the transmission duration. Though there is an advantage of route diversity in multi-hop wireless networks, yet it is pertinent to identify optimal routes so as to prevent wasteful transmissions over low quality links. Traffic engineering (TE) is an aspect in networking that deals with the optimization of resources. It involves how the traffic within the network are distributed (by network layer routing), and how resources (e.g. time and frequency) are allocated (through MAC layer scheduling). However all these cannot be effectively done without understanding the properties of the wireless link. A link is the physical layer resource that provides bandwidth and ensures connectivity. For inter-working multihop wireless networks, the capabilities and limitations that the physical layer imposes on the network performance should be taken into consideration [2]. The routing of traffic through optimal paths is dependent mainly on the connectivity provided by the links between the communication nodes. Connectivity is mutually dependent on the availability of the link and the interference on the link. However, a link must first be available before interference can be evaluated. Considering the stochastic nature of the wireless link, this paper revisits the problem of connectivity by presenting a framework where connectivity is taken as the probability that a wireless link is available and interference resilient enough to guarantee successful transmission over it. Thus the connectivity model presented in this paper is a function of link availability and link interference. In our framework, link availability is the probability that two nodes are within at most the maximum transmission range that is sufficient for a communication link to be established between them. Building upon the work done in [3], we now consider the potential for the radio attributes of a link to satisfy the minimum requirement for successful communication, which is expressed in terms of a link’s resilience to interference. When fine-tuned, resilience to interference is measured by the attributes of the physical layer which ensure proper functioning of the wireless links. The works most related to our framework include [2-10]. Until recently, a lot of research works on multi-hop wireless networks have focused on the higher layers (Network and MAC layers). These works have designed protocols with simplistic assumptions about the physical layer. Also, the developments on connectivity theory for wireless networks in research works such as [4-10], have focused on adhoc/sensor networks. Some of these research works assume that transmission is successful between two nodes once they are within each other’s range. In contrast to our framework, their models do not include metrics that actually determine the success of a transmission based on the network’s resources and the capability of the network in terms of Signal to Interference and Noise Ratio (SINR) and probability of bit error.
A Framework for Connectivity in Inter-working Multi-hop Wireless Networks
337
For example, a link may exist between two nodes but the conditions surrounding the link may affect the throughput and delay of the traffic. Hence the quality of the transmission that a link can provide needs to be considered. Moreover, to the best of our knowledge, existing research works have not jointly considered availability and interference as a connectivity measure for traffic moving between networks in interworking multi-hop wireless networks. The main contributions of this paper are threefold. Firstly, as connectivity is vital to the ubiquity of network services given to the network users in an inter-working multi-hop wireless network, our connectivity framework ensures ubiquitous roaming features by allowing connectivity to be maintained in an optimized manner as traffic moves between networks. Particularly in a heterogeneous inter-working multi-hop wireless network, the challenge is that the inter-worked networks may be operating with different protocols. Therefore, it is desirable to have a unifying connectivity framework for inter-working multi-hop wireless networks. In order to come up with this framework, it is important to understand that: The physical layer imposes certain bounds on the network. These bounds are dictated by the metrics that ensure proper functioning of the physical layer. Secondly, this paper provides a study of the relationship between the metrics and presents protocol independent models of the relationships. For example, in any network, based on the scheme in use on the physical layer, there are different models for evaluating the relationship between the SINR and probability of bit error on a link. However, in this paper protocol independent models are presented. These models have been incorporated in the connectivity framework. Finally, a link quality based routing technique is proposed as an adaptive routing scheme. The proposed scheme is evaluated through simulation to assess the advantage of using our scheme compared to myopic schemes which discount connectivity on wireless links. The proposed scheme employs connectivity as a routing metric which provides information about link quality. The routing scheme selects the best routes based on the level of connectivity that can be assured on the link. The next section explains the network models used in this paper. Section 3 presents the link availability and link interference models while section 4 presents the connectivity framework, the connectivity aware routing technique and simulation results. Section 5 concludes the paper.
2 Network Models Since nodes’ locations are completely unknown a priori in wireless networks, they can be treated as completely random. The irregular location of nodes, which is influenced by factors like mobility or unplanned placement of the nodes may be considered as a realization of a spatial point pattern (or process) [11]. A spatial point pattern is a set of location, irregularly distributed within a designated region and presumed to have been generated by some form of stochastic mechanism. In most applications, the designation is essentially on planar Rd (e.g. d=2 for two-dimensional) Euclidean space [12]. The lack of independence between the points is called complete spatial randomness (CSR) [3]. According to the theory of CSR for a spatial point pattern, the number of points inside a planar region P follows a Poisson distribution [12]. It follows that the probability of p points being inside region P, (Pr (p in P)) depends on the area of
338
O. Salami, A. Bagula, and H.A. Chan
Fig. 1. Inter-working network model: Representation of the transmission from a T-node to a Rnode on link l, with interfering nodes (k-nodes), non-interfering nodes (N-nodes), and nodes beyond δr (B-nodes). r is the transmission range of the T-node.
the region (Ap) and not on the shape or location of the plane. Pr (p in P) is given by (1), where μ is the mean number (spatial density) of the points.
Pr( p in Ρ ) =
( μ AΡ ) p − μ Ap e , p > 0. p!
(1)
This is a reasonable model for networks with random node placement such as the inter-working multi-hop wireless networks. Moreover the most popular choice for modelling nodes’ spatial distribution is the Poisson point process as in [3] [13] [14] [15]. Fig. 1 represents network Ω, which is a set of inter-working multi-hop wireless networks (sub-networks A, B, and C). Each network is considered as a collection of random and independently positioned nodes. The nodes in the network are contained in a Euclidean space of 2-dimensions (R2). The total number of nodes in Ω is denoted by NΩ, while the number of nodes in sub-networks A, B, C are Na, Nb and Nc respectively, where Na+ Nb+ Nc = NΩ. The mean number of nodes (spatial density) of each sub-network is given by μA, μB, μC (μ=N/a, N is the number of nodes in a sub-network, a is the sub-network’s coverage area and μ is given in nodes /unit square). Theorem 1: The superposition of N independent Poisson processes with intensities λi is a Poisson process with intensity λ = ∑iλi Using theorem 1, the entire inter-working network can be considered as a merging Poisson process with spatial density: μNet = μA+μB+μC. In the network, nodes may communicate in a multi-hop manner and transmit at a data rate of Ψ bps. In this paper, source-nodes are referred to as transmitter-nodes (T-nodes) while destination-nodes are referred to as receiver-nodes (R-nodes). l represents the links between nodes and βT,R represents the link distance (length of a communication link) between aT-node and an R-node.
A Framework for Connectivity in Inter-working Multi-hop Wireless Networks
339
The degree of a node is defined as the number of neighbor nodes within its transmission range. A node is a neighbor of another node if the distance between the two nodes is less than or equal to their transmission range. This means that both nodes have a bi-directional link to each other. If the distance between them is greater than their transmission range, then the nodes are not neighbors. The degree of a node Xi is denoted by D(Xi). A node is termed a “lone node” if D(.)=0. The desirable condition for connectivity in a multi-hop wireless network is for all nodes to have D(.) > 0. The probability that D(.) > 0 for any node pair is the same as the probability that a link is available for the node and it is given by equation 2. Ra is the transmission range of the node and f(x) is the density function of the distance between any two nodes in the network. Ra
Pr (D( . ) > 0 ) = Pr(link availabili ty) =
∫ f(x)dx .
(2)
o
From our work in [4], Pr(link availability) is as expressed as Plink in equation 3.
⎧⎪1 − e − μ net πRa for 0 < β T , R ≤ R a =⎨ . for β T ,R > Ra ⎪⎩0 2
Pl ink
(3)
3 Link Interference 3.1 Propagation Model The length of a communication link between a T-node and a R-node is represented by βT,R. To account for path-loss, the channel attenuation for link l is given by Al = (βT,R)α . It is typically given that the received power from a T-node at distance βT,R from the R-node decays exponentially (i.e. (βT,R)-α). The path loss exponent, α, is a constant that can take on values between 2 and 61. However, in this paper, α is taken as =2. Other link parameters are: 1) Plt: the transmitting power of the T-node on link l. 2) Po: the thermal noise power level at the R-node on link l. Po= FkToB where k is the Boltzman constant (1.38 × 10-23 J/oK/Hz). To is the ambient temperature, B is the transmission bandwidth and F is the noise figure [18]. 3) Plr: the power received by the R-node on link l. The free space propagation model is used to predict the received signal strength. For a packet transmitted by the T-node on link l and received by the R-node, the actual received power at the R-node can be expressed by the Friis equation given as:
P r = cP t Al = cP t (βT,R ) − α . l
l
l
2 ⎡ GtGr λ g ⎤ ⎢c = ⎥ ( 4π ) 2 L f ⎥⎦ ⎣⎢
1
The model in this paper can make use of any path-loss exponent value.
(4)
340
O. Salami, A. Bagula, and H.A. Chan
Gt and Gr are the transmitter and receiver gain respectively. λg is the wavelength, λg=g/fg, g is the speed of light and fg is the carrier frequency. Lf≥1 is the system loss factor. 3.2 Interference on a Link The SINR model in [19] has been adopted to evaluate a link’s SINR denoted by θ(l) in this paper. θ(l) is given by equation (5). A transmitted signal (packet) at a data rate Ψbps can only be correctly decoded by the R-node on link l if θ(l) is not less than a threshold value (θ(th)) throughout the duration of packet transmission [20] [21]. Pint is the total interference power experienced by the R-node at the end of link l. Pint is the sum of the thermal noise power (Po) and the inter-node interference power (Pini). For link l, Pini is the cumulative of the interfering power that the R-node experiences from nodes concurrently transmitting with the T-node. All k-nodes (for k= 1, 2, 3…..∞) are potential interfering nodes while S is the total number of simultaneously transmitting nodes that contributes to the effective interference power. Pt(k) is the transmitting power of a k-node and βk,R is the distance between a k-node and the R-node. As illustrated in fig. 1, for a particular link between a T-node and an R-node, an interference region (δr) is defined for the R-node on that link.
θ
(l)
Pr =
l
Pint
Pr =
l
Pini + Po
=
cP t (β T, R ) − 2 l
S
∑ cP
t(k)
k =1
(β
k, R
)
−2
(5)
+ Po
A potential k node will interfere with the reception of the R-node if the distance of the node to the R-node fulfills the constraint in equation (6).
r < | β k, R | ≤ r + δr .
(6)
Nodes within the region δr effectively contribute to the value of Pini irrespective of the network topology or multiple-access technique. Usually, whenever a link is established between a T-node and an R-node, the MAC technique will prohibit nearby nodes in the network from simultaneous transmission. The portion of the network occupied by these nearby nodes is directly related to the size of r around the R- node [22]. Theorem 2: If each random point of a Poisson process in Rd with density λ are of x different types and each point, independent of the others, is of type N with probability Pi for i = 1· ·N, such that, P1 + P2 + P3...+ Px =1, then the points are mutually independent Poisson processes with λi = Piλ and λ= λ1 + λ2 + λ3...+ λx [23]. Using the splitting property of the Poisson process in theorem 2, all the nodes in the inter-working network (with spatial density μNet) are sorted independently into 3 types ( k-nodes, N-nodes, and B-nodes). Note that all the nodes in the inter-working network have been classified into three types (k, N and B) according to the effect they have on the R-node of interest. These nodes are still the same set of nodes in the network. If the probability of a node being a k-node, N-node or a B-node is PI, PN, or PB respectively such that PI+PN+PB=1, then these 3 classification of nodes are mutually
A Framework for Connectivity in Inter-working Multi-hop Wireless Networks
341
independent Poisson processes with spatial densities: μI=PIμNet, μN=PNμNet, μB=PBμNet where μNet= μA+μB+μC. μI represents the spatial density of k-nodes, μN is the spatial density of the N-nodes and μB is the spatial density of nodes beyond δr. If βj,R represents the link distance between the R-node and an arbitrary node j in the network, then: Pr( j ∈ N − nodes ) = Pr( β
j ,R
≤ r ).
(7a)
Pr( j ∈ k − nodes ) = Pr( r < β
j,R
Pr( j ∈ B − nodes ) = Pr( β
> r + δ r ).
j,R
≤ r + δ r ).
(7b) (7c)
Note that if node j is a k-node, the βj, R becomes βk, R.. Due to the random geographic dispersion of nodes, Pini also has a stochastic nature. Since several nodes can simultaneously transmit in the δr region and they altogether influence the value of Pini, then θ(l) (the SINR on a link) can be estimated using the expected value of Pini.
⎡S ⎤ E[Pini ] = cP t(k) E ⎢∑ (β k,R )−2 ⎥. ⎣ k=1 ⎦
(8)
In order to solve equation (8), the distribution function of the distance between the Rnode and the k-nodes (βk,R), given by fβk,R(r), is of particular interest. 3.2.1 Distribution Function of βk, R and the Probability of Interference As illustrated in fig. 1, nodes that can potentially interfere with the R-node’s reception lie in the region outside the range r. However, nodes beyond the region (r+δr) cause negligible interference. The region within δr consists of the effective k-nodes. In order to find the probability that the distance between the R-node and all k-nodes fulfill the condition in (4), two events are defined: a) ξ1= {no k-node exists within distance r} and b) ξ2= {at least one k-node exists within δr}. Similar to the nearest neighbor analysis in [24], the probability that concurrently transmitting nodes fulfill the condition in (6) is given by:
(Pr[( ξ 1 ) ∩
( ξ 2 )] ) = (Pr( ξ 1 ) )(Pr( ξ 2 ) )
Pr( ξ 1 ) = e − μ I π r
2
(9) (10)
To evaluate Pr(ξ2), the interference cluster is laid as a strip with length 2πr and width δr as shown in fig. 2. 2πr
δr Fig. 2. An approximation of the ring created by the interference cluster
As δr approaches zero, the area of the annulus can be approximated by 2πrδr. It follows from Poisson distribution that the probability of at least one node in the annulus is:
Pr( ξ 2 ) = 1 − e − μ I 2 π rδr
(11)
342
O. Salami, A. Bagula, and H.A. Chan
From
the first and second term of the Taylor’s series 1 − e − μ I 2πrδr = μ I 2πr δr .Therefore, the probability of having at least a k-node within δr is:
(Pr(ξ1 ) )(Pr(ξ 2 ) ) = (2 μ I πrδr )(e − μ πr
2
I
)
(12)
Since all k-nodes have been considered to fulfill equation (7b), equation (12) can also be expressed as the probability of at least a nodes with link distance βk,R to the Rnode, this is given as:
(
Pr( r < β k , R ≤ r + δ r ) = (2 μ I π r δ r ) e − μ I π r ∴ f β k , R ( r ) = 2 μ I π re
− μ I πr
2
)=
2
f β K , , R ( r )δ r (13)
Page 179 of [25] provides the detailed proof to substantiate (13). Now that the distribution of βk,R has been evaluated, the expected value of the summation of the negative-second moment of (βk,R), can be solved. So from equation (8): S
E [ ∑ ( β k ,R ) − 2 ] = k =1
S
∑
k =1
E [( β k , R ) − 2 ] =
s
∑ϖ
(14)
k =1
ω is an approximate solution for the negative moment of βk, R which is a Poisson R.V. The Tiku’s solution [26] has been adopted to find ω.
ϖ ≈
(μ
I
- 1)( μ
I
1 - 2)........
...( μ
I
-τ )
.
(15)
For the τth negative moment of βk,R (τ represents the positive value of the power of βk,R)2. The distribution of the distance between the R-node and k-nodes is fβk,R(r) in
(13). μI =PIμNet where PI is the probability of interference. As long as the transmission range of the T-node on a link overlaps with the transmission range of an I-node, the receiver node on the link on which T-node transmits experiences interference. In practice, not all nodes within δr will transmit at the same time, with the T-node on link l, therefore PI is defined by two events: ξ3=at least a node exist within δr and ξ4 = the node is transmitting. For an interworking multi-hop wireless network with density μNet, Pr(ξ3) is the probability that > 0 nodes exist within δr of the R-node and it is given by: 1 − e − μ Net A I . AI is the area of δr for the R-node. Using μnet will allow the evaluation of μI.
⎧⎪1, if P t(k) > 0 Pr( ξ 4 ) = ⎨ ⎪⎩ 0, if P t(k) = 0 −μ
∀ P t(k) ≥ 0 .
∀P > 0 . Now, the expected Thus: PI = Pr( ξ 3 ) Pr( ξ 4 ) = 1 − e Net I value of Pini in equation (8) can be solved and the θ(l) on a link can be evaluated. 2
A
t(k)
τ can take on any value depending on the path-loss exponent value.
A Framework for Connectivity in Inter-working Multi-hop Wireless Networks
343
3.3 Probability of Bit Error This section explains the relationship between the probability of bit error on a link l denoted by (Φ(l) ) and the link’s SINR, denoted by (θ(l)). The value of Φ(l) on a link is dependent on the value of θ(l). The decoding performed at the R-node on a link is a probabilistic process which determines the success or failure of any transmission. Due to potential interference, communication may not be totally error-free; hence success is specified in terms of an acceptable value for Φ(l) . Φ(l) expresses the success or failure of a transmitted signal (packet) in terms of probability. For the correct decoding of a transmission, the value of θ(l) must be greater than or equal to a SINR threshold value (θth) as expressed in (16). The threshold value is a pre-set value that is used to ensure successful transmission in a network.
E (θ (l)
(l )
)≥θ
th
(16)
(l)
E(θ ) is the expected value of θ . According to [27], the mean signal strength over the separation distance between a T-node and an R-node is appropriate for estimating the transmission strength of the link. Measures of signal variability are only appropriate in system design issues such as antenna diversity and signal coding. Hence, the mean value of θ(l) will be used for the estimation of Φ(l). Since θth is the minimum SINR that is required for successful packet reception at the R-node, then a transmission error can be declared once there is a probability that E(θ(l)) is below θth. Therefore:
Φ (l ) = Pr(E (θ (l ) ) < θ th ) = 1 − Pr(E(θ (l ) ) ≥ θ th )
(17)
In evaluating E(θ(l)), the transmit power, received power and noise power level on link l are kept constant. This is because E(θ(l)) is mostly influenced by the value of Pini . As long as nodes operate in the same transmission frequency band, inter-node interference is bound to occur. However, the transmission from nodes simultaneously transmitting with the T-node will not interfere with the reception at the R-node if the distance between these nodes and the R-node exceeds the upper bound for βk,R given by:
r + δr =
SP t ( k )θ t Pl
th
( β T ,R )
(18)
In deriving (18) the thermal noise power has been considered negligible compared to interference power (Pini). Therefore, (6) now becomes:
r < β k ,R ≤
SP t ( k )θ th (β T ,R ) t Pl
(19)
However, not all of the nodes within δr will interfere since some of them will not even transmit when the T-node is transmitting. Now, what is the threshold of the number of interfering nodes that can be in this interference region, beyond which, a transmission error can be declared? Note that in order to maintain a target SINR threshold, there is a maximum number of interfering users that can be supported [28].
344
O. Salami, A. Bagula, and H.A. Chan
Let Sth represent the threshold of interfering nodes which has their distance to the Rnode (βk.R) fulfilling equation (19). For analytical tractability, let the interfering nodes’ power be constant. Since unsuccessful transmission is declared when E(θ(l)) < θth, then there is a probability of bit error at the receiver node if:
S > S th
(20)
S is the number of interfering nodes. In order words, E(θ(l)) becomes less that θth as S increases beyond Sth and there is a probability of bit error when E(θ(l)) < θth. Therefore,
Φ ( l ) ≈ Pr( S > S th ) = 1 − Pr( S ≤ S th )
(21)
Φ(l) can be estimated as:
Φ
(l )
( μ I AI ) k − μ I AI ≈ 1− ∑ e k! k =0 S th
(22)
μI is the density of interfering nodes in the interfering region of area AI. Equation (22) approximates the Φ(l) as a function of the number of interfering nodes. Thus irrespective of the network’s topology or the multiple access technique, only the effective density of interfering nodes is considered. Considering that noise power (Po) is very weak (negligible) relative to the interference power (Pini) then (23) can be used to evaluate the value of Sth.
⎡1 Sth = ⎢ ⎢ϖ
⎛ Pl t ( βT ,R ) −2 ⎞⎤ ⎜ ⎟ ⎜ P t ( k )θ ⎟⎥ th ⎝ ⎠⎥
(23)
There is a minimum (threshold) for Φ(l) that should to be maintained on a link for the link to be termed interference resilient enough to maintain a successful transmission [28]. The maximum number of interfering nodes (nodes in the δr region) that can be supported to maintain this threshold is Sth. Once the threshold is exceeded, unsuccessful transmission is likely to occur. The probability that a link is interference resilient is represented by Φ(l)’ and estimated as the compliment of equation (22). Thus if the probability of bit error is high, then the interference resilience on that link is low and vice-versa. The network scenario shown in fig. 1 is a case where the link considered is at the centre of the inter-working multi-hop wireless network. Three wireless multi-hop networks with 10 nodes, 15 nodes and 25 nodes respectively have been inter-worked and the network coverage area is 1000unit square. The separation distance between the T-node and the R-node is 10units. Nodes in the network transmit with the power level of 10mW. Gt and Gr, the transmitter and receiver gains respectively are assumed to be equal to 1. Lf=1, θth is given as 6dB. The interference region is 100unit square. For the inter-working network, if the Φ(l) increases beyond the threshold, it means that there is a high probability that the transmission on the link of interest will be unsuccessful. Fig. 3 shows the trend of Φ(l) for the scenario illustrated. The value of Sth=12. The interfering node density (μI) was increased by increasing the probability of interference (PI). In this network scenario, the value of Φ(l) increased continually as the density of interfering nodes increased beyond the threshold value for which link l
A Framework for Connectivity in Inter-working Multi-hop Wireless Networks
345
P r o ba bility o f bit er r o r Φ (l)
1.000E+00 1.000E-01
1.000E-02 1.000E-03 1.000E-04 1.000E-05
1.000E-06 1.000E-07
1.000E-08 1.000E-09 0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
2
2.2
2.4
In t eferin g n ode den sit y (μ I)
Fig. 3. Probability of Bit Error vs. Interfering node density
) ' (l)
1.000E-01
Interference (Φ
Link's resilience to
1.000E+00
1.000E-02 1.000E-03 1.000E-04 1.000E-05
2.4
2.2
2
1.8
1.6
1.4
1.2
1
0.8
0.6
0.4
0.2
1.000E-06
Interfering node density (μI)
Fig. 4. Link Reliability vs. number of interfering nodes
is termed interference resilient enough to maintain a successful transmission. The link is highly resilient for all values of S≤Sth and the threshold for Φ(l) =1.15727E-06 (when S=Sth). Consequently, unsuccessful transmission can be declared for values greater than this threshold value. This gives an inclination that successful transmission on the link of interest in the inter-working network cannot be guaranteed any longer when Φ(l) becomes greater than the acceptable threshold probability. With the pre-set θth for the network, the upper bound for the acceptable Φ(l) on a link can be determined. If the Φ(l) evaluated for a link in the network is higher than the acceptable value, then that link’s interference resilience level will not guarantee a successful transmission. In this way, unreliable links can be identified and optimized traffic routing decisions can be made in inter-working multi-hop wireless networks irrespective of the link/MAC layer technologies of the inter-working networks. Fig. 4 illustrates the interference resilience of the link considered in the inter-working multi-hop wireless network scenario as the density of interfering nodes increases.
346
O. Salami, A. Bagula, and H.A. Chan
4 Link Connectivity Framework The link connectivity framework presented in this section gives an indication of how successful the communication between any two nodes will be. The quality of a transmission is specified by metrics, which define the state of a link. These metrics include probability of interference, SINR, and probability of bit error. Evaluating the connectivity of links in inter-working multi-hop wireless networks is quite challenging because different wireless networks use different physical layer protocols to specify these metrics. However, in this section, we present a unifying connectivity framework for inter-working multi-hop wireless networks. In accordance with [29], the framework only considers the effective density of interfering nodes irrespective of the topology or the multiple access technique. Connectivity in inter-working multi-hop wireless networks is defined as the probability that a link is available and interference resilient enough to guarantee a successful transmission over it. The model for connectivity has been developed based on the link availability and link interference models presented in previous sections. Firstly, for any T-node (source node) in the network, the probability that a link is available for it to transmit its packet is given by equation (3). The link may be a direct link to the intended destination node or it may be a link to intermediate nodes between the Tnode and the intended destination node. It is only after confirming the availability (existence) of a link that the reliability metrics (e.g. probability of interference, interference power, SINR, and probability of bit error) on the link can be evaluated. Secondly, after the confirmation of the existence of a link, an interference region is defined for the R-node (intended destination or intermediate node) on the link of interest as stated in section 3.2. All nodes present within this region are potential interfering nodes. However, only the nodes that happen to be transmitting concurrently with the T-node will contribute to the interference power. The probability that a node in the inter-working network will contribute to the interference power is given in section 3.2.1. Thirdly, using the probability of interference, the density of interfering nodes can be evaluated and also the total interference power, which is used to evaluate E(θ(l)) on the link of interest. If the E(θ(l)) on the link is less that the threshold SINR value (θth) in the network, then there is a likelihood that transmission errors will occur on that link. The set value for θth in the network is also used to estimate the threshold of the number of interfering nodes (Sth) and the threshold value for Φ(l) that can be tolerated in order to able to guarantee a successful transmission. The compliment of equation (22) is used to evaluate the interference resilience of the link. Finally, the probability that a link is available and interference resilient, which is termed connectivity in this paper, is given by:
Pcon = e − μ I A I − e − (
μ Net π R 2 + μ I A I )
(24)
Fig. 5 shows the probability of connectivity on link l as μNet increases. In the first part of this figure, it can be observed that an increase in μNet increases the interfering node density (μI). However, the increase in μI does not yet affect connectivity on the link because S≤Sth. In this case, the Φ(l) is still less that the threshold value for the probability of bit error. In the second part of fig. 5, after Sth is exceeded, it can be observed that connectivity begins to decline. At low values of μNet link availability is low, but
A Framework for Connectivity in Inter-working Multi-hop Wireless Networks
347
any link that is available has high reliability due to low probability of interference, so connectivity is sustainable. At high values of μNet, even though availability is high, the link’s interference resilience and connectivity begins to decline as a result of a high density of interfering nodes. There is a certain number of nodes that the inter-working network can sustain in order to maintain a high connectivity that can guarantee successful transmission between nodes. Once the network exceeds this number of nodes the likelihood of strong connectivity decreases. This model can be used to ensure that QoS is guaranteed to traffic and also for admission control policies for inter-working multi-hop wireless networks.
Fig. 5. Connectivity vs Network node density
4.1 Connectivity Aware Routing Technique A dynamic reaction to the changes in the wireless channel is required for traffic routing within an inter-working multi-hop wireless network. The routing technique presented is based on the pre-calculation of the connectivity from a T-node to the Rnodes on the links en route to the final destination node. Step 1: The link availability is calculated in order to identify potential links for routing. Step 2: For each link that is available, the instantaneous parameters for the probability of interference at the R-node on the link, the SINR and the bit error probability are obtained. Step 3: The interference resilience level on each potential link is evaluated. Step 4: With the knowledge of the interference resilience level and availability, the connectivity on each link is obtained. Step 5: The link with the highest Pcon is chosen as the next link for routing the transmission. In a case of equal values of Pcon, the link closest to the final destination node is chosen.
348
O. Salami, A. Bagula, and H.A. Chan
With this technique, connectivity can be used as a routing metric for determining how traffic are routed within the network. The routing technique is well-suited for interworking multi-hop wireless networks where the wireless channel is unstable. The routing technique not only estimates the quality of wireless links in terms of a quantitative measure, such as the probability of interference, probability of bit error and SINR, but also adapt to temporal dynamics of the links and prevents wasteful transmissions over low quality links. For a network, the lower bound on connectivity can be obtained and QoS can be guaranteed based on this lower bound. 4.2 An Application of the Connectivity Framework to a 23-Node Test Network We conducted experiments with a 23-node 45-link model to simulate an interworking wireless MPLS network in order to evaluate the performance achieved by the connectivity-aware routing scheme when setting up connection-oriented tunnels in the network under different routing scenarios. These include the routing of tunnels for different applications. The paths carrying the traffic offered to the wireless MPLS network were computed using three different routing metrics: two myopic metrics referred to as OSPF (Open Shortest Path First) and CSPF (Constrained Shortest Path First) that discounts connectivity and our proposed connectivity aware metric referred to as Connectivity Aware Routing (CART). We developed a simulation model where each tunnel setup requests di,e bandwidth units, where the di,e are uniformly distributed in the range [1,M] in wireless MPLS routing. This allows different types of applications depending on the value of M. Higher values of M represent high bandwidth demanding applications while lower values represent low bandwidth demanding applications. The simulation model is based on the following features:
Long-lived tunnels of capacity di,e are set up in random order among the ingressegress pairs. Requests to set up short-lived tunnels of capacity di,e bandwidth units arrive to the ingress-egress pair (i, e) according to a Poisson process with parameter L i,e. Requests to tear down short-lived tunnels arrive to the ingress-egress pair (i, e) according to a Poisson process with parameter Li,e. One of the three routing algorithms (OSPF, CSPF or CART) is used to find a path between (i, e) to route the requested tunnel. If a path can be found, the routing request is accepted. If a path cannot be found due to insufficient band-width, the routing request is rejected.
We conducted a number of simulation experiments under different traffic profiles using short- and long-lived tunnel requests to evaluate the performance of the proposed framework. Different traffic profiles were chosen by inflating the tunnel setup request rate L+ i,e = ηLi,e to reflect light load conditions (η = 1) and heavier load conditions (η > 1). Different types of applications were modeled by varying the upper bound of the demand range M to represent different levels of bandwidth demand. The simulation model computes the following network performance metrics. The routing efficiency is given by the tunnel acceptance (ACC) and the average link utilization (UTIL). ACC is the percentage of flows which were successfully routed and UTIL defines how far the links are from the congestion region where the link load is close
A Framework for Connectivity in Inter-working Multi-hop Wireless Networks
349
to its link capacity. UTIL also defines the potential for the network to support traffic growth: a lower utilized network offers a higher potential to support an increase of traffic load than a highly utilized network. The network reliability is given by the average link interference (AVL) and the maximum link interference (MAX) where AVL is the average number of tunnels carried by each network link. AVL determines the average number of tunnels which must be re-routed upon failure. A routing algorithm which achieves a lower average interference is more reliable since it leads to rerouting fewer flows upon failure. MAX defines the maximum number of tunnels that will be re-routed upon a failure of the link with the largest interference. The scalability of the routing process is given by the average node interference (AVN) which is the average number of tunnels traversing each node. This parameter indicates the size of the routing tables. A routing algorithm that achieves a lower AVN is more scalable than an algorithm which achieves a higher AVN. Fig. 6 shows the effect of the traffic profiles on short-lived tunnels. The traffic profile is determined by the parameter η which scales the tunnel setup request rates. We conducted simulation experiments using short-lived tunnels (M = 4) to analyze the effect of the traffic profiles on the network efficiency. The results presented in fig. 6 reveal that the CART algorithm performs somewhat better than the other routing algorithms in terms of efficiency (highest ACC and lower UTIL), reliability (lower AVL and MAX) and scalability (lower AVN). In particular, CART achieves a lower MAX value. Fig. 7 shows the effect of the type of application on long-lived tunnels. The application type is determined by the value of the upper bound M on the tunnel size. We conducted simulation experiments using long-lived tunnels to analyze the effect of the type of application on the network efficiency. The results presented in fig. 7 are similar to the results for short-lived tunnels: the CART algorithm again performs better than the other routing algorithms in terms of efficiency (highest ACC and lower UTIL), reliability (lower AVL and MAX) and scalability (lower AVN).
Fig. 6. Effect of the traffic profiles on short-lived tunnels
350
O. Salami, A. Bagula, and H.A. Chan
Fig. 7. Effect of the type of application on long-lived tunnels
5 Conclusion Firstly, the paper presented an analysis of the relationship between the major physical layer metrics such as SINR and probability of bit error. Since different wireless networks have different models for evaluating the relationship between these metrics, and this will pose a challenge when analyzing such metrics for inter-working multihop wireless networks; we developed protocol independent models of these relationships. Secondly, these models were incorporated in the connectivity framework and results of the evaluation of the framework were presented. Connectivity is considered as the probability that a wireless link is available and interference resilient enough to guarantee successful transmission over it. Finally, the simulation performance of the proposed routing technique termed connectivity aware routing technique (CART) was compared with routing schemes such as the OSPF and the CSPF. In trems of efficiency and scalability CART performed better than OSPF and CSPF.
References 1. Li, W., Pan, Y.: Resource Allocation in Next Generation Wireless Networks. Wireless Networks and Mobile Computing series, vol. 5 (2005) ISBN: 1-59454-583-9 2. Tonguz, O.K., Ferrari, G.: Ad Hoc Wireless Networks: A Communication-Theoretic Perspective. John Wiley and Sons, Chichester (2006) ISBN: 9780470091104 3. Salami, O., Bagula, A., Chan, H.A.: Analysis of Route Availability in Inter-working Multihop Wireless Networks. In: Proc. of the 4th International Conference on Broadband Communications, Information Technology and Biomedical Applications (BroadCom 2009), Wroclaw, Poland, 15-19 (2009)
A Framework for Connectivity in Inter-working Multi-hop Wireless Networks
351
4. Farhadi, G., Beaulieu, N.C.: On the Connectivity and Average Delay of Mobile Ad Hoc Networks. In: Proc. of the IEEE International Conference on Communications (ICC), pp. 3868–3872 (2006) 5. Bettstetter, C.: On the minimum node degree and connectivity of a wireless multi-hop network. In: Proc. of the ACM MobiHoc, pp. 89–91 (2002) 6. Santi, P., Blough, D.M.: An evaluation of connectivity in mobile wireless ad hoc networks. In: Proc. of the IEEE DSN (June 2002) 7. Foh, C.H., Lee, B.S.: A closed form network connectivity formula for one-dimensional MANETs. In: Proc. of the IEEE ICC (June 2004) 8. Foh, C.H., Liu, G., Lee, B.S., Seet, B.C., Wong, K.J., Fu, C.P.: Network Connectivity of One Dimensional MANETs with Random Waypoint Movement. Proc. of the IEEE Communications Letters 9(1), 31–33 (2005) 9. Li, J., Andrew, L.L.H., Foh, C.H., Zukerman, M., Neuts, M.F.L.: Meeting connectivity requirements in a wireless multihop network. Proc. of the IEEE Communications Letters 10(1), 19–21 (2006) 10. Bettstetter, C., Hartmann, C.: Connectivity of wireless multihop net- works in a shadow fading environment. In: Proc. of the Wireless Networks, vol. 11, pp. 571–579. Springer, Heidelberg (2005) 11. Babaei, A.: Statistical Interference Modeling and Coexistence Strategies in Cognitive Wireless Networks. PhD thesis, George Mason University (Spring semester 2009) 12. Diggle, P.J.: Statistical Analysis of Spatial Point Patterns, 2nd edn., p. 168. A Hodder Arnold Publication (2001) ISBN 0-340-74070-1 13. Salbaroli, E., Zanella, A.: Interference analysis in a Poisson field of nodes of finite area. IEEE Trans. on Vehicular Tech. 58(4), 1776–1783 (2009) 14. Busson, A., Chelius, G., Gorce, J.: Interference Modeling in CSMA Multi-Hop Wireless Networks. INRIA research report, No. 6624 (2009) ISSN: 0249-6399 15. Mordachev, V., Loyka, S.: On Node Density – Outage Probability Tradeoff in Wireless Networks. IEEE Journal on Selected Areas in Communications (2009) 16. Cressie, N.A.C.: Statistics for Spatial Data. John Wiley and Sons, Chichester (1991) 17. Miller, L.E.: Distribution of link distances in a wireless network. Journal of Research of the National Institute of Standards and Technology 106(2), 401–412 (2001) 18. Rappaport, T.S.: Wireless Communications-Principles and Practice. Prentice-Hall, Englewood Cliffs (2002) 19. Gupta, P., Kumar, P.R.: The Capacity of Wireless Networks. IEEE Transactions on Information Theory 46(2), 388–404 (2000) 20. Blough, D., Das, S., Santi, P.: Modeling and Mitigating Interference in Multi-Hop Wireless Networks. Tutorial Presented at Mobicom 2008, San Francisco (September 14, 2008) 21. Avin, C., Emek, Y., Kantor, E., Lotker, Z., Peleg, D., Roditty, L.: SINR Diagrams: Towards Algorithmically Usable SINR Models of Wireless Networks. In: Proc. of the 28th ACM Symposium on Principles of Distributed Computing, pp. 200–209 (2009) 22. Hekmat, R., An, X.: Relation between Interference and Neighbor Attachment Policies in Ad-hoc and Sensor Networks. International Journal of Hybrid Information Technology 1(2) (2008) 23. Hohn, N., Veitch, D., Ye, T.: Splitting and merging of packet traffic: measurement and modeling. Performance Evaluation 62(1-4), 164–177 (2005) 24. Cherni, S.: Nearest neighbor method, http://www.mcs.sdsmt.edu/rwjohnso/html/sofiya.pdf 25. Cogdell, J.R.: Modelling Random Systems. Pearson Prentice hall (2004)
352
O. Salami, A. Bagula, and H.A. Chan
26. Tiku, M.L.: A note on the negative moments of a truncated Poisson variate. Journal of American Statistical Association 59(308), 1220–1224 (1964) 27. Jean-Paul, M.G.: Linmartz’s Wireless Communication, vol. 1(1). Baltzer Science