Agent-Based Virtual Communities for Interactive Digital Television Federico Bergenti, Lorenzo Lazzari, Agostino Poggi Dipartimento di Ingegneria dell’Informazione Università degli Studi di Parma Parco Area delle Scienze 181/A, 43100 Parma, Italy {bergenti, lazzari, poggi}@ce.unipr.it Abstract 2. IDTV This paper describes a multi-agent framework designed to support the creation and effective Interactive TV is a technology which combines management of virtual communities in an Interactive broadcast video, broadcast radio, computing power and Digital Television (IDTV) scenario. The possibilities the Internet. This combination of different mediums that this framework offers are demonstrated by means and services provides the viewer with a new of two sample applications: a real-time community experience. This is possible because of an ongoing game and an asynchronous auction. For the sake of transition from analogue TV to digital TV. completeness, the paper also presents an overview of We can clearly say that the digital technology is IDTV technologies. driving television towards a new world of amazing possibilities, where spectator is no longer limited to 1. Introduction observe contents selected by the operator. More and more, new dynamic and interactive services are being Nowadays, a migration from analogue to digital TV introduced in everyday digital TV: complementary is taking place in TV. This change has two main information to audio-visual contents, electronic implications: the capability to broadcast more channels program guides, selection of properties in configurable in the same bandwidth, and the possibility to send contents (language, camera angle or particularized software applications mixed with audiovisual contents. advertisement), pay-per-view, etc. So we can consider These two great advantages have permitted the great the term “interactivity” as the possibility for the diffusion of this new technology, which is becoming a consumer to actively influence the behavior of new power means to develop new types of services. broadcasted television, services and applications. This In this paper we present our multi-agent framework, can be accomplished, for example, by means of a developed starting from the idea to integrate the remote control for channel hopping, by fetching technology of Interactive Digital Television (IDTV) information via teletext or by sending data via an with the concept of virtual community, which we can interaction channel. This all creates a context, which define as a technology-supported cyberspace, centered allows to have a mutual influence between the viewer, upon communication and interaction of participants, broadcaster and application provider. resulting in a relationship being built up. So, with this The interactive TV technology, as we will see in type of integration, our aim is to offer to IDTV users, a next section, is based on the broadcasting of a digital range of services (such as multiplayer games, on-line transport stream which permits operators to mix auctions, etc.) which are very common if we think to traditional audio-visual contents with binary data, so the idea of virtual community related to the Web. making possible to deliver multimedia applications to In this way, the potentialities of interactive DVT can be executed in a digital TV or in a set-top box. These enormously grow allowing its users to take advantage applications, synchronized with audio-visual contents, of a new number of useful applications and moving the adapt themselves to spectator characteristics, concept of interactivity from the simple interaction implement interaction with users and provide return user-application to a new type based on the cooperation channels for communication with content providers. among a wide number of users. 104 The Multimedia Home Platform [1] is a standard published by the DVB (Digital Video Broadcasting) consortium in 2001, which consists of a combination of broadcast and Internet, offering a common Application Programming Interface (API) accessible for everyone who wants to develop applications, set-top boxes, television devices or the combination of all. Fundamentally the MHP standard defines a generic interface between interactive digital applications and the terminals on which those applications execute. This interface decouples different provider’s applications from the specific hardware and software details of different MHP terminal implementations. The MHP extends the existing, successful DVB Figure 1. The interactive broadcasting chain open standards for broadcast and interactive services in all transmission networks including satellite, cable, The resulting broadcast is received and decoded by terrestrial, and microwave systems. the set-top box, the audio-visual content played and the The applications downloaded to the MHP terminals, Java application run. typically set-top boxes, are Java applications called Subsequent user interactions with the application Xlet, built on a suite of APIs tailored specifically for lead to information being sent via the return channel to the interactive TV environment: Java TV APIs [2], a back-end server. Depending on the application, this HAVi (user interface) [5], DAVIC APIs [4] and DVB information may result in modifications to the current APIs [3]. application content (i.e. voting information) or stored The 1.1 version of the standard defines three for later processing in a database present on the server profiles: (i.e. for an online shopping application). 1. Enhanced Broadcast: it is the basic profile which About the transport, in digital TV MPEG-2 is not only allows the enrichment of the audio-video only a standard for encoding audio and video, but it is contents with information and images which can also used as the means by which raw data and be viewed and navigated by users on the TV applications are transported in the broadcast stream. In screen: particular, DVB has extended the traditional scheme 2. Interactive Broadcast: it is the intermediate profile and way to use MPEG-2 for MHP by specifying how to that uses the set-top box return channel to supply embed a Java application within the stream, this services with a higher level of interactivity. In fact includes information on how to specify the main class, this profile supports the loading of MHP class search path and the application argument list etc. applications not only through the broadcast Although MPEG-2 provides a means of transporting channel but also through the return channel; the Java applications along the audio-visual content, to 3. Internet Access: this profile, using the return support the possibility that the user may change channel, allows the user to access to the Internet channel and select the Java program at any point of the contents. transmission, the same application has to be As we can understand from the previous description broadcasted in loop. This is exactly what a broadcast of the MHP levels, the interactive TV paradigm is carousel does: it keeps playing the same application based on two different channels: a broadcast channel around and around. The application is continuously from the application/contents provider to the set-top multiplexed with the audio-visual content for the box and a return channel (dial-up, GPRS, ADSL, transmission, to allow the viewer to access to the Ethernet, etc.) from the set-top box to the provider. interactive TV application whenever he wants. Figure 1 shows the use of a carousel to continue About the applications, as we said previously, we play-out a Java application. The application and the have Java applications, but they are not complete Java corresponding audio-visual material are then applications in the normal sense. These applications are multiplexed to form a single MPEG-2 transport stream. much more like applets in that they are loaded and run by a life cycle manager residing on the set-top box. 105 3. MHP-based Virtual Communities people who communicate with each other via electronic media, rather than face to face. In spite of the great research interest collected in the In literature we can find a lot of other definitions, last years and the high number of functionalities but we can find some common aspects. The first similar already supported, in these days the research groups point is cyberspace. All of the definitions state that the that work on the IDTV MHP standard are focusing virtual community should be on the net, use computer- their interest especially on the personalization of the mediated spaces, or cyberspace. This point IDTV contents on the base of the analysis of the user differentiates the virtual community from a real profile and preferences. community. The second aspect in common is the usage In accordance with our point of view, at the moment of technology to support the activities in the virtual what is totally absent it is the collaborative aspect, that community. The different definitions directly or is the integration, in the digital television technology, indirectly emphasize that access to the virtual of particular types of services to support groups of community is through the computer or electronic users joined by particular types of interests or media, i.e., technology. The third similar aspect is that necessities. These types of services are very common the content or topics of the virtual community are on the Web, we can think about the enormous number driven by the participants. As mentioned, the of forums, of blogs or of general services which allow a participant driven community, not the web site direct interaction among their users (on-line auctions, coordinators, clearly distinguishes the virtual multiplayer games, etc.). community from online information services. The final So the starting point from which our project has shared aspect is the successful virtual community risen has been the aim to enrich the IDTV paradigm relationship culminating after a certain period of based on MHP and described in the previous sections communicating together. with the introduction of the concept of “virtual To sum up, a working definition of a virtual community” very common on the Internet network. community could be: a technology-supported A generally agreed upon definition of a virtual cyberspace, centered upon communication and community would be a good starting point. What we interaction of participants, resulting in a relationship need is a working definition of the virtual community, a being built up. consensus found in the major stream of literature, a With our framework, in which the idea of virtual definition that understood by most of people. community is integrated with the interactive digital TV In his definition of a virtual community, Howard technology, we focus our interest especially on the [6], the primary early advocator of virtual communities second of the common aspects that define the virtual and often quoted in the literature, includes factors that community concept: the support technology. In fact, we describe a virtual community as a social aggregations increase the horizons and the possibilities of the virtual that emerge from the Net when enough people carry on communities by giving new types of services based on those public discussions long enough, with sufficient a new and more user-friendly technology like the human feeling, to form webs of personal relationships IDTV. in cyber-space. Hagel and Armstrong [7] focus on the In fact, the possibility to integrate the increasing content and communication aspects with special IDTV technology with the idea of virtual community emphasis on member generated content: for them can give two great profits: on one hand we have a large virtual communities are computer-mediated spaces increase of the digital television potentialities, opening where there is a potential for an integration of content new ways of communication and new types of services and communication with an emphasis on member- for the IDTV users; on the other hand, consequently, generated content. The definition from Jones and we give the possibility to enter in a virtual community Rafaeli [8] uses the term “virtual public” instead of taking advantage of his services also to a user range, virtual community. In particular, they say that virtual the IDTV users, that sometimes can have not enough publics are symbolically delineated computer mediated ability to surf the Web. spaces, whose existence is relatively transparent and We can say that the integration of the digital open, that allow groups of individuals to attend and television with the paradigm of virtual communities can contribute to a similar set of computer-mediated extend the basic concept of interactivity, moving it interpersonal interactions. Another interesting point of from a simple logic user-TV to a more interesting logic view is the Romm and Clarke’s [9] definition, which based on the interaction user-user or user-community points out only the aspect of communication, that is via of users. electronic media: virtual communities are groups of 106 In particular, the ideas at the base of the Our framework is deployed as a multi-agent development of our framework have been principally platform which we can split in two main sides: a server two: the support for community games and a more wide and a client side. The server side is set on a web server support for virtual communities involved in and it is deployed using the standard FIPA cooperative activities such as on-line auctions. specifications, instead the client side is the more The technology used is a multi-agent technology, innovative one, because, since it is set on the set-top this because the intrinsic characteristics of multi-agents box, it requires to enable FIPA Agents on these types systems and of the agents themselves, such as of devices. proactivity, make them very proper to our scope. In the next sections we give a first description of the platform architecture, starting from the client side, and 4. The Framework then we will talk about the behaviour of the global platform, giving some example of virtual communities Agents need resources to act and to communicate. support. In FIPA [10] specifications, the run-time support providing such resources is the agent platform. Agents 4.1. Client side can run only in the scope of an agent platform providing the basic services to support interoperability: The agent container set on the client side must be a means for sending and receiving messages and a flexible enough to allow the integration of new services means for finding agents, i.e., white pages and yellow for the virtual community users. For this reason, we pages. We do not request the platform to provide any think that the best choice is to conceive the client-side support for concepts from agent-oriented software of our framework as a MHP interactive application. engineering such as autonomy or service-level In the DVB MHP standard, applications are interoperability. Basically, the platform is only meant executed in the context of concrete services or events to support the typed-message agent model. in a service, and, usually, they do not survive after Agents communicate explicitly sending messages finishing that context. In order to support services for and such messages may reach either agents within the virtual communities, we have to take into account that same platform or agents on different platforms. This our system needs to store all the viewers’ preferences difference must be transparent to the developer and a about a particular topic (i.e. the user profile in a fundamental characteristic of agent platforms is community game). So our approach integrates a special enabling this to support open societies where agents agent, named User Agent, which has the basic roles to running on different platforms can join and leave work as an interface between the user and the rest of dynamically. the system and to store the user preferences. The distribution and cooperation of agents residing The User Agent is responsible of building the user on different platforms implies the conformance to a profile, maintaining it when its user is on-line and standard. At the moment, only FIPA is producing notify to the system when his related user is active. The specifications for agent platforms. communication UA-user is performed by a standard At the moment, a number of FIPA platforms are GUI by which the user can manage his profile and the available [11, 12, 13, 14], our middleware is different services. Clearly, on the other side, the developing the enabling technology for allowing the communication between the UA and other agents is seamless deployment of agents to the Java-enabled based on FIPA specifications. IDTV devices such MHP-compliant set-top boxes. In order to support particular services for virtual communities, such as the possibility for a user to delegate to her/his personal agent the negotiation of a price in an on-line auction, this basic type of agent is always active on the user device. The framework allows the development of other types of agents to guarantee other particular types of services, but for the moment our idea of the client side is that it must be based on “thin” software, so the reasoning mechanisms for the moment are delegated to the server side agent platform. Figure 2. Client side architecture 107 4.2. Server side a more wide support for virtual communities involved in cooperative activities such as on-line auctions. The server side of our framework consists in an agent container set on a standard Web server connected with the clients through the return channel of the set- top boxes. In order to support services for virtual communities, the server side of the system has to include at least five different types of agents: a SP Agent (Set-top box Proxy Agent), a MP Agent (Mux Proxy Agent), a User Profile Manager, one or more Service Agent and a Directory Facilitator. The SP Agent represents the interface between the server side multi-agent architecture and the client-side device: this agent receives the requests which came from the User Agent set on the user set-top box and manages them interacting with other kinds of agents. On the other side, we have another proxy agent, called MP Agent, which is responsible to update the Figure 3. Architecture of the system state of the application and to notify it to the Multiplexer, in order to update the raw data related to the Xlet embedded in the MPEG-2 stream and, consequently, the state of the interactive application 5.1. Community games displayed on the user’s TV screen. Between the two proxy agents have a specific kind The idea to play a game in a virtual way with other of agent, named Service Agent, which is responsible of people connected by a network or, in general, by a a particular type of service offered by the framework to technology supporting the real-time interaction the virtual organization. In example, if we think to a between the game participants is very common and multi-player game, the Service Manager related to this diffuse on Internet. With our system we match this idea type of service will be responsible to manage the state with the TDV interactive television, allowing IDTV of the game, to find one or more appropriate partners to users to play a community game without using any type play, etc. of computer and of network, but through their IDTV The User Profile Manager agent is responsible of device. maintaining the profile of the users and the To describe quickly the system behavior relatively information/preferences of the users themselves in to such type of service, we can consider a simple type relation to the particular types of services offered by of game like “Othello”, which requires two players. the system (i.e. game preferences, skill level, etc.). When an IDTV user wants to play an Othello match In the end, the Directory Facilitator is responsible to versus another user he has fundamentally to complete inform an agent about the address of the other agents of two steps before starting the match: the service the system. configuration and the choice of the opponent. The Figure 3 gives a graphical representation of the service configuration is a task that the user has to architecture of the system, focusing both on the perform only the first time she/he uses the application: interactions between agents and between the different the user has to insert some information like the game devices. In figure 3 groups of three agents means that preferences, the skill level, etc. Once the game has there can be one or more agents of that type. been configured, the User Agent communicates them to the server side of the system to update the user profile 5. Sample Services managed by the User Profile Manager agent. At this point the user is able to play: when she/he In this last section we give some example of run the game by his set-top box, the User Agent services supported by our system. In particular, as we notifies the server-side that his associated user wants to said when we introduced our framework, the ideas at play. At this point the Service Agent related to that the base of the development of our system have been game creates a new game instance and the User Profile principally two: the support for community games and Manager agent find a possible opponent (the other user 108 has to be “on-line” and has to be a compatible skill enormously the range of users that are possibly reached level). by everyday Internet-based virtual communities. Once the opponent has been chosen, the match can At the moment, our framework is under start: the system, e.g. the Service Agent, continuously development. For the server-side of our multi-agent updates the state of the application in relation to the system we are using JADE (Java Agent DEvelopment moves made, one after the other, by the participants Framework) [11, 15], which is a software framework to until the end of the match. Obviously, in relation to the aid the realization of agent applications in compliance result, the system updates users’ profiles. with the FIPA specifications for interoperable intelligent multi-agent systems. Client-side is based on 5.2. Online auctions new, yet somehow consolidated, IDTV technologies, e.g., MHP. Also the paradigm of the on-line auctions is very Our future work is related to the development of common for the Web users, we can think about the new types of applications and services expanding the famous eBay Web site to quickly understand the functionalities and the multi-agent architecture of the enormous success that these types of services have framework. collected in the last years. The behavior of the system is very similar to the previous case, in the sense that References also for this type of service the user has to make an initial configuration of the application inserting her/his [1] MHP Site http://www.mhp.org data which are used to update his profile. [2] JavaTV Site http://java.sun.com/products/javatv Differently from the community game, in this type [3] DVB Site http://www.dvb.org of service we have not a real-time interactions among the involved users but we have an asynchronous [4] DAVIC Site http://www.davic.org communication. When a user wants to sell something [5] HAVi Site http://www.havi.org she/he opens a new auction inserting the initial price, [6] R. Howard. The Virtual Community: Homesteading on the the deadline, etc., then the User Agent notify the server Electronic Frontier. Addison Wesley, 1993. side of the system and the Service Agent related to this [7] J. Hagel, A. Armstrong. Net Gain: Expanding Markets type of service creates a new auction instance. From through Virtual Communities. Harvard Business School this moment all the users using this type of service can Press, 1997. participate to the auction making their offers or selecting a maximum budget and delegating to their [8] Q. Jones, S. Rafaeli. “Time to Split, Virtually: ‘Discourse related User Agent the task. Once the auction has Architecture’ and ‘Community Building’ as means to Creating expired, the Service Agent deletes the related auction Vibrant Virtual Metropolises”. Int’l J. Electronic Commerce & Business Media, 10(4), 2000. instance and the User Profile Manager agent updates the user profiles related to the involved users. [9] C. Romm, R. J. Clarke. “Virtual Community Research Themes: A Preliminary Draft for A Comprehensive Model”. Procs. 6 th Australasian Conference on Information Systems, 6. Conclusions 1995. This paper presents a multi-agent framework that we [10] FIPA Site http://www.fipa.org realized to support the effective and fruitful [11] F. Bellifemine, A. Poggi, G. Rimassa. “Developing Multi- implementation of virtual communities in an Interactive agent Systems with a FIPA-compliant Agent Framework”. Digital Television scenario. Our framework gives Software Practice and Experience, 31:103-128, 2001. IDTV application developers and service providers the [12] J. Heecheol, C. Petrie, M. R. Cutkosky. “JATLite: A Java possibility of running virtual communities to support Agent Infrastructure with Message Routing”, IEEE Internet the realization of interactive end-users applications, Computing, Mar./Apr., 2000. e.g., real-time multiplayer games and on-line auctions. [13] C. Petrie. “Agent-based Engineering, the Web, and We strongly believe that the tight integration Intelligence”, IEEE Expert, 11(6), 1996. between IDTV and virtual communities that our [14] F. Bergenti, A. Poggi, B. Burg, G. Caire. “Deploying FIPA- framework provides can put a new perspective on compliant Systems on Handheld Devices”. IEEE Internet IDTV. On the one hand, our framework opens new Computing, 5(4):20-25, 2001. ways of communication and new types of services for the IDTV users and, on the other hand, it expands [15] JADE Site http://jade.tilab.com 109