Magrathea: A Mobile Agent- and Sensing Platform

Abstract – Personal mobile devices are all ubiquitous inmany forms like mobile handsets, PDAs, etc. Their featuresand computational powers make them a very capableplatform for wireless sensing and mobile agents. We presentMagrathea: A mobile agent- and sensing platform thatis built on top of mobile smart phones. We discuss themotivation behind the platform, present the design choices,the architecture and discuss the possible use cases of theplatform. We also show empirically how the platform canbe used for investigating viral phenomena within human testsubjects by modeling the viruses with the mobile agents, fordetecting the social networks within the test subjects andhow the results can be further reﬁned by simulating otherpossible agent conﬁgurations using the acquired data.Keywords: Mobileagents; Sensornetworks; Pervasivecom-puting; Contagious agents; Viral Simulations; Social net-works 1 Introduction Today’s mobile devices present an unparalleled potential toinvestigate and simulate different phenomena that is relatedto the interaction and movement of people. Not only is thenature of most mobile devices very personal – mobile phonesare a clear example of that – but their features and computa-tional powers today are at very high level. This makes thema very appealing platform for wireless sensing and mobileagents. In this paper we present Magrathea: A mobile agentand sensing platform that can be used among other things forsimulating and investigating the spreading of viral agents ina human population.Suppose that we are interested in knowing how a certainbiological viral agent behaves in a certain human population,e.g. people in a conﬁned area like an ofﬁce building etc. Wecan try simulating that using computersimulations. In realitythis kind of simulations may be very complex and computa-tionally expensive but for the sake of illustration we assumea very simple simulation where we build a model for the be-havior of the population and another model for the behaviorof the viral agent. This kind of approach is well justiﬁedand used in many epidemiological simulations. Neverthe-less models are always approximations of the phenomenathat one tries to model. Clearly the accuracy of the simu-lation depends on the quality of the models that we use. Inthis case we have two models, one for the viral agent, andone for the human population that is in contact with the viralagent.Supposethat we can somehowgreatly improvethe qualityof the model for the population. That unquestionably wouldimprovethe quality of the simulation as a whole. As all com-puter models are approximationsof the real phenomena,thenthe highest possible quality is attainable not through the useof models but through the use of accurate observations ofthe phenomena. Now the question is how can we accuratelyobserve a real phenomena and at the same time run a sim-ulation about it. In our example case we have two models,one for the viral agent and one for the population. One canobserve the behavior of viral agents in laboratory conditionsbut on a real population that is not possible to do in a con-trollable manner both for the ethical and technical reasons.We clearly need a computer model for the behavior of theviral agent. The behavior of the population on the other handis quite possible to observe to a very high accuracy. Todayalmost everyone has a personal mobile phone and more in-creasingly those phones are smart phones that have a veryrich set of features that make them more and more indistin-guishable from personal computers. Personal mobile deviceswith wireless connectivity provide means for the kind of re-alistic observations that would make the simulation of ourexample case more accurate. With wireless connectivity weare able to detect other devices in proximity very fast andwith the computing capabilities of these devices we can runa model of the viral agent on that device. The model of theviral agent can also propagate from one device to another,hence infecting other devices in proximity according to themodel coded in the agent.In our simple example simulation we have two approx-imative models that deﬁne the accuracy of the simulation.Now we are able to replace the other model – the modelfor the population – by accurate observations, and hence oursimulation in that part is close to perfect.Consider another example, where we are interested in in-vestigating how information spreads through some popula-tion. The spreading of information is deﬁned by the socialrelations and structure of the given population. This can beinvestigated e.g. in the spirit of reality mining [2] and [3]using Bluetooth scan data to infer the social structure of thepopulation. This method is valid and provides nice under-standing of the social networks within the population. If oneis mainly interested in the paths of the spreading of infor-mation, then we can add some degree of accuracy to the ob-servations by using the same mechanism that was discussed