Agents Technology for Ubiquitous Computing

  • Start date: 01.01.2003
  • End date: 31.08.2010
  • Funded by: Universität Augsburg
  • Local head of project: Prof. Dr. Theo Ungerer



The next generation of computers will be embossed by ubiquitous systems. The computer will disappear behind daily things and will support people in their everyday life. New location-based services will be adapted to user preferences. For this the ubiquitous system needs to know user profiles, likings, habits, and the current location. The amount of data will rapidly rise with new types of devices, like sensors and wearables. The efficient processing of the data by a centralized system will not be possible anymore. The paradigm of mobile agents offers a convenient approach to combine personal interests of users and the requirements of a ubiquitous distributed system. Mobile agents build basically the highest stage of decentralisation. Personal information can be encapsulated by a mobile agent and can be used for location-based services on behalf of the user. The idea presented in this work is that a user is accomplished by a virtual reflection in form of a mobile agent in the ubiquitous environment. The reflective agent is used in a new developed ubiquitous mobile agent system called UbiMAS. UbiMAS implements several security functions that protect the reflective agent and therewith the sensitive personal data of the user. A flexible office building with smart doorplates is established as a ubiquitous environment where reflective agents perform different services. The implementation has proved functionality in practical usage and various presentations. UbiMAS was installed on high-performance PCs as well as on mobile PDAs that communicated wireless over WLAN or Bluetooth. However the full security functionality of UbiMAS is realisable only on PCs at the current stage of technology.





What is Ubiquitous Computing?

Ubiquitous Computing names the third generation in computing. First came the generation of mainframes: an expensive computer shared by lots of people. Now we are in the era of personal computer: one machine for each person. Next follows the generation of Ubiquitous Computing. Here the user is surrounded by lots of small computers which are invisible. The ubiquitous technology recedes into the background of human environment and offers an autonomous support for people's every day life.


In future this research area will bring great changes for every area of human life. An extract of the unlimited number of applications can be found within the medical technology, car guidance systems and in the smart home technology. Research issues are placed in areas like system development (hardware, system software and middleware), context awareness (construction, storage, processing and passing of location dependent context information) and device communication (protocols, security).


What are Mobile Agents?

Mobile Agents characterize themselves by their ability to migrate autonomously, i.e. they can transfer program-code, data and execution state to a remote computer, in order to proceed the program execution. Mobile Agents define a new paradigm for distributed computing.


Description of the project UbiMAS

In order to support people in their everyday life the ubiquitous system needs context knowledge. On basis of this context knowledge the ubiquitous system should dynamically adapt to the environment. Moreover the ubiquitous environment should know person's profiles, preferences, liking, and habits.


Since people often change their location the personal information have to be send to the current location. There are two possibilities: either the user carries the relevant information on devices or wearables or the ubiquitous system takes care of storing and sending the information.We want to adopt the second method: the mobile person is always accompanied by a mobile virtual object in the ubiquitous environment.


The paradigm of mobile agents ideally fits here. The mobile agent thereby constitutes a virtual reflection of the user and carries personal information on which basis he can perform different services.


In this research project the use of mobile agents for ubiquitous systems will be investigated. The starting basis was the agent system JMessengers, which was extended with a context description in XML and methods for agent's XML data access. As example application the technology of mobile agents was used for object tracking in rooms of an ubiquitous networked building. The experiences showed that the JMessengers system is inflexibel with its central organization.


Therefore we created as next the mobile agents system UbiMAS which sits on top of the peer-to-peer middleware. UbiMAS is completely distributed organized and agents can be injected from all nodes in the system.


UbiMAS runs as a service on top of the ubiquitous middleware beside other services like the location tracking service. All services are communicating over propagate pipes. Also the migration of agents is realized over propagate pipes. The Figure below shows the UbiMAS integration and architecture.


© University of Augsburg


On each peer an agent node needs to be started in order that a mobile agent can jump on this peer. The agent nodes can accomodate more than one agent. In the starting sequence the node registers itself at the peer-to-peer network and notifies interests on special messages of other services if desired.


For example, in order to accompany a person an agent needs information on person's location. These information can be obtained by registering to location service messages of the location tracking system. So all location changes are transferred to the Agent Nodes where the agents reside. In this manner all sensor information can be accessed by the mobile agents if needed.


An Agent Node can manage several agents. It is possible to feed agents into the network from all nodes. If an agent wants to migrate to another node he calls a method and gives the destination as a parameter. Then the Agent Node serializes the agent into a byte stream, packs it into a pipe message, and sends it over the peer network. The message is delivered to the destination peer. Receiving this message the Agent Node at the other end deserializes the agent and checks if the local system knows the received agent class. If the class is missing, the node requests the class from the source node.


UbiMAS works on high-performance PCs as well as on wearable devices, like PDAs. The transmission of agents is successfully tested over different media, like Ethernet, Bluetooth and WLAN.






  • The reflective mobile agent paradigm implemented in a smart office environment
    Faruk Bagci, Holger Schick, Jan Petzold, Wolfgang Trumler, Theo Ungerer
    Personal and Ubiquitous Computing, Springer-Verlag London Ltd, ISSN: 1617-4909 (Paper) 1617-4917 (Online), February 2006. Reprinted in: Journal of Personal and Ubiquitous Computing, volume 11, number 1, pages 11-19, January 2007




  • Communication and Security Extensions for a Ubiquitous Mobile Agent System (UbiMAS)
    Faruk Bagci, Holger Schick, Jan Petzold, Wolfgang Trumler, Theo Ungerer
    Proceedings of the 2nd conference on Computing frontiers, Ischia, Italy, pages 246-251, May 2005.


  • Support of Reflective Mobile Agents in a Smart Office Environment
    Faruk Bagci, Holger Schick, Jan Petzold, Wolfgang Trumler, Theo Ungerer
    18th International Conference on Architecture of Computing Systems, Hall in Tirol/Innsbruck, Austria, pages 79-92, March 2005.




  • Ubiquitous Mobile Agent System in a P2P-Network
    Faruk Bagci, Jan Petzold, Wolfgang Trumler, Theo Ungerer
    UbiSys-Workshop at the Fifth Annual Conference on Ubiquitous Computing, Seattle, USA, October 12-15, 2003


  • Smart Doorplate
    Wolfgang Trumler, Faruk Bagci, Jan Petzold, Theo Ungerer
    The First International Conference on Appliance Design (1AD), Bristol, UK, May 6-8, 2003,
    Reprinted in: Journal of Personal and Ubiquitous Computing, volume 7, number 3-4, pages 221-226, July 2003


  • Einsatz mobiler Agenten in verteilten ubiquitären Systemen
    Faruk Bagci, Jan Petzold, Wolfgang Trumler, Theo Ungerer
    19. PARS-Workshop, Basel, Switzerland, March 20-21, 2003, (in German)


  • Einsatz von XML zur Kontextspeicherung in einem agentenbasierten ubiquitären System
    Faruk, Bagci, Jan Petzold, Wolfgang Trumler, Theo Ungerer
    XMIDX-Workshop, Berlin, Germany, February 17-18, 2003, (in German)