====== Prison, a Simulation Framework for Crime ====== ===== Context ===== In our modern society, people are nowadays surrounded by a cloud of mobile devices [1] such as for instance PDA, GPS, iPhone, and nintendo ds. This wide range of mobile devices enables us to develop a radically different kind of applications, dubbed context-aware applications, which adapt themselves to the environment. The rise of GPS games, like The Target [2] that is depicted in figure 1, is one example of such a context-aware application. {{teaching:thesis0809:proposals:nokia2.jpg?100|GPSgames}} figure 1: The Target, a GPS city game [2] In order to be ease the development of such context-aware applications, we developed the logic coordination language Crime [3,4]. Consider an example application where a user wants the profile of his cellphone to be switched to silent whenever he enters a room where a meeting is taking place in order to not disturb any of the participants. In this simple context-aware application we have several devices that produce and consume contextual information. First of all we need a sensor which can detect whenever someone enters a room, this can be realised by using RFID [5]. Furthermore, a sensor that measures the sound could be useful to determine whether there's a meeting going on or not. The contextual information that is derived from these devices can be used by the user's mobile phone in order to determine whether it should switch the profile to silent or not. This simple example scenario can easily be written in Crime: {{teaching:thesis0809:proposals:CrimeCode.png?200|Crime code}} This example rule has two prerequisites (line 2 and 3) and one consequence (line 1) which is executed whenever the two conditions are fulfilled. Important in this scenario is that the user's profile of his mobile phone is switched to normal again whenever he leaves that room. Hence, device disconnections support also meaningful contextual information where applications should be able to react upon. Fine-grained control over the effects of disconnections is provided by the underlying coordination model of Crime as volatile connections are inherent to a mobile environment where devices can go out of earshot at any moment in time. More information can be found in the paper "Fact Spaces: Coordination in the Face of Disconnections" [3] or on the website of [[http://prog.vub.ac.be/amop/crime/introduction|Crime]]. ===== Subject ===== Testing of context-aware applications in real-world is not straightforward, for instance multiple devices need to co-operate and have to be moved physically inside and outside a meeting room. By making use of a simulation framework, problems can be spot early in the development phase. Furthermore, we want to consider the heterogeneity of mobile devices such as the difference in network technology and computational power. Extra challenges arise when testing large-scale applications as the number of devices can become large. Verifying the scalability of these applications is more feasible by making use of a simulation framework where repeatability can easily be achieved by restarting the simulation with the same parameters. A testing scenario we want to test by using this simulation framework is that of a context-aware shopping mall. The shops in this modern shopping mall promote their articles by sending customised advertisements to the customers who might be interested. This can be achieved by using the personalised profiles of the customers which are stored on their own mobile device, like for instance their cellphone or PDA. Moreover, each shop has its own virtual display window which adapts itself according to the people who are passing by [6] (see figure 2). By using this business strategy, shops can advertise more precisely and can vary their displays such that the people in front of them are attracted. {{teaching:thesis0809:proposals:philips.jpg?400|PhilipsResearch}} figure 2: Intelligent Shop Window (Philips Research) [6] One feature we would like to add to this simulation framework is emulation by enabling the user to connect his PDA or mobile phone to the framework. This allows the programmer to have an accurate impression of how well the system scales for a specific type of device. Allowing the coupling of real hardware would make it the best of two worlds. A second idea is to simulate accurate wireless communication as well. This implies that available bandwith between several devices would depend on their location and the objects standing between them. Testing communication by incorporating interference and bad connections would allow us to verify the scalability of the applications. More features and ideas can be added as there's a wide range of possibilities that can be added to the basic implementation of this framework. ===== Objective ===== A literature study about current state of the art frameworks. The implementation of a framework to test context-aware applications. Implementation of an interesting context-aware application that shows the features of the framework (might be the shopping mall). Comparison of the simulation and real-world application, did the framework gave us insights of problems encountered in the real world. Writing of the thesis in a report giving an overview of the obtained results and how the framework improves on the state of the art. ===== Prerequisites ===== A good understanding of logic programming is useful. A good understanding of Java is useful. ===== Advisors ===== * [[about:members:elinephilips|Eline Philips]] * [[http://wilma.vub.ac.be/~cfscholl/|Christophe Scholliers]] ===== References ===== [1] M. Weiser. Ubiquitous computing. Computer, 26(10):71–72, 1993. [2] http://zdnet.be/news.cfm?id=67975 [3] S. Mostinckx, C. Scholliers, E. Philips, C. Herzeel, W. D. Meuter. Fact Spaces: Coordination in the Face of Disconnection. In Proc. of 9th Int. Conf. on Coordination Models and Languages. Pp. 268–285. 2007. [4] C. Scholliers, E. Philips. Coordination in voaltile networks. Master’s thesis, Vrije Universiteit Brussel, Brussel, Belgium, 2007. [5] Lionel M. Ni, Yunhao Liu, Yiu Cho Lau, and Abhishek P. Patil. Landmarc: indoor location sensing using active rfid. Wirel. Netw., 10(6):701–710, 2004. [6] B. E. R. de Ruyter, E. van Loenen, V. Teeven. User Centered Research in ExperienceLab. In Schiele et al. (eds.), AmI. Lecture Notes in Computer Science 4794, pp. 305–313. Springer, 2007.