10
A Multi Agent System for 3D Media Spaces Assistance Tatiana A. Tavares 1 , Samuel A. Oliveira 2 , Anne Canuto 2 , Luiz M. Gonçalves 2 , Guido S. Filho 3 1 Universidade Salvador – UNIFACS/ NUPERC 2 Universidade Federal do Rio Grande do Norte 3 Universidade Federal da Paraíba [email protected], [email protected], [email protected], [email protected], [email protected] Abstract Nowadays we have several cultural spaces accessible in the Internet. These synthetic worlds mix different medias (text, audio, image, video) and attractive user interface resources (as 3D ones). Not closed to presentation environments these applications offer to user other facilities: personalization, interactive views, additional information and communication tools. In this paper we describes a multi-agent architecture used to enhance 3D media spaces assistance. Our proposal is based on a 3D environment where users are represented by avatars. Each avatar has a personal agent that captures all the relevant user actions. We also have other types of agents, which are responsible for providing communication services. Also, we present a case study showing how these concepts were implemented in the ICSpace (Internet Cultural Space) environment 1. Introduction Internet growing is changing the way people do simple activities. Initially, the Internet have been seen as a net of connected computers, today this infrastructure enables several kinds of relationships, providing us a net of connected people. The information technologies have been increasingly developed throughout the world, specially the ways for representing information. Multimedia resources, making the user interaction more dynamic and attractive, increase Internet text-based pages. An example is the use of multimedia resources for representing museums and cultural centers. Museums such as the Louvre and Van Gogh are examples of real museums, which expanded their real walls into virtual ones. An advantage of this kind of services is the possibility to visit (through on-line collections) exhibitions that are no longer active in a real museum anymore ([1][2][3]). Recent innovative initiatives are incorporating Virtual Reality (VR) technologies to Internet pages. Virtual reality approximates the system of end-users by using “immersive” models [4]. The users are taken inside the application. We have also multi-user support what makes the interaction user-system and user-user more attractive and natural. Other trend nowadays is the use of hypermedia systems associated with Augmented Reality (AR) applications. This category of applications mixes virtual and real objects by a unique computational interface [5]. ICSpace [6], an Internet Cultural Space, is a good example of those trends in practices. This virtual space has been proposed in order to go further of a presentation-based environment by supporting the interaction between users in a virtual organization infrastructure. ICSpace added to a 3D-based interface [7], multimedia resources [8], perception support [9], communication tools [10], robotics and remote manipulation ([11][12]) and now it has incorporated a multi-agent system (the focus of this paper). This paper describes the architecture for a multi- agent system for assisting user interaction in 3D media spaces in a cultural context. Our main goal is adding to a synthetic world “intelligence” that can put people together. This “intelligence” focuses interpersonal communication that differs from conventional communication tools because is based in other goals, which consider conversational channels between people, approximation and evaluation mechanisms. So what, we incorporated Communication theories into multi-agent systems developing an agent-based architecture for 3D media spaces assistance. This paper is structured as follows: In Section 2 we resume the principal characteristics of some related works. In Section 3 we describe the conceptual view Proceedings of the Third Latin American Web Congress (LA-WEB’05) 0-7695-2471-0/05 $20.00 © 2005 IEEE

[IEEE Third Latin American Web Congress (LA-WEB'2005) - Buenos Aires, Argentina (31-02 Oct. 2005)] Third Latin American Web Congress (LA-WEB'2005) - A Multi-Agent System for 3D Media

  • Upload
    gs

  • View
    212

  • Download
    0

Embed Size (px)

Citation preview

Page 1: [IEEE Third Latin American Web Congress (LA-WEB'2005) - Buenos Aires, Argentina (31-02 Oct. 2005)] Third Latin American Web Congress (LA-WEB'2005) - A Multi-Agent System for 3D Media

A Multi Agent System for 3D Media Spaces Assistance

Tatiana A. Tavares1, Samuel A. Oliveira

2, Anne Canuto

2, Luiz M. Gonçalves

2, Guido S. Filho

3

1 Universidade Salvador – UNIFACS/ NUPERC 2 Universidade Federal do Rio Grande do Norte

3 Universidade Federal da Paraíba [email protected], [email protected], [email protected], [email protected],

[email protected]

Abstract

Nowadays we have several cultural spaces accessible in the Internet. These synthetic worlds mix different medias (text, audio, image, video) and attractive user interface resources (as 3D ones). Not closed to presentation environments these applications offer to user other facilities: personalization, interactive views, additional information and communication tools. In this paper we describes a multi-agent architecture used to enhance 3D media spaces assistance. Our proposal is based on a 3D environment where users are represented by avatars. Each avatar has a personal agent that captures all the relevant user actions. We also have other types of agents, which are responsible for providing communication services. Also, we present a case study showing how these concepts were implemented in the ICSpace (Internet Cultural Space) environment

1. Introduction

Internet growing is changing the way people do

simple activities. Initially, the Internet have been seen

as a net of connected computers, today this

infrastructure enables several kinds of relationships,

providing us a net of connected people.

The information technologies have been

increasingly developed throughout the world, specially

the ways for representing information. Multimedia

resources, making the user interaction more dynamic

and attractive, increase Internet text-based pages. An

example is the use of multimedia resources for

representing museums and cultural centers. Museums

such as the Louvre and Van Gogh are examples of real

museums, which expanded their real walls into virtual

ones. An advantage of this kind of services is the

possibility to visit (through on-line collections)

exhibitions that are no longer active in a real museum

anymore ([1][2][3]).

Recent innovative initiatives are incorporating

Virtual Reality (VR) technologies to Internet pages.

Virtual reality approximates the system of end-users by

using “immersive” models [4]. The users are taken

inside the application. We have also multi-user support

what makes the interaction user-system and user-user

more attractive and natural. Other trend nowadays is

the use of hypermedia systems associated with

Augmented Reality (AR) applications. This category

of applications mixes virtual and real objects by a

unique computational interface [5].

ICSpace [6], an Internet Cultural Space, is a good

example of those trends in practices. This virtual space

has been proposed in order to go further of a

presentation-based environment by supporting the

interaction between users in a virtual organization

infrastructure. ICSpace added to a 3D-based interface

[7], multimedia resources [8], perception support [9],

communication tools [10], robotics and remote

manipulation ([11][12]) and now it has incorporated a

multi-agent system (the focus of this paper).

This paper describes the architecture for a multi-

agent system for assisting user interaction in 3D media

spaces in a cultural context. Our main goal is adding to

a synthetic world “intelligence” that can put people

together. This “intelligence” focuses interpersonal

communication that differs from conventional

communication tools because is based in other goals,

which consider conversational channels between

people, approximation and evaluation mechanisms. So

what, we incorporated Communication theories into

multi-agent systems developing an agent-based

architecture for 3D media spaces assistance.

This paper is structured as follows: In Section 2 we

resume the principal characteristics of some related

works. In Section 3 we describe the conceptual view

Proceedings of the Third Latin American Web Congress (LA-WEB’05) 0-7695-2471-0/05 $20.00 © 2005 IEEE

Page 2: [IEEE Third Latin American Web Congress (LA-WEB'2005) - Buenos Aires, Argentina (31-02 Oct. 2005)] Third Latin American Web Congress (LA-WEB'2005) - A Multi-Agent System for 3D Media

for the proposed MAS architecture by explaining each

agent category. Section 4 discusses further details of

MAS organization structure, including functional and

structural analysis as well as communication issues.

Section 5 presents the software architecture

specification. Section 6 discusses the study case –

ICSPace, considering the main aspects of this

experience. Finally, Section 7 summarizes the results

of the paper and discusses future research topics.

2. Related Works

In this section we briefly comment some relevant

aspects of applications related with the developed

work. We discuss examples in a multidisciplinary

scenario composed by museums and media spaces,

software agents and communication tools.

2.1. Museums as Media Spaces

It is possible to visit a great number of museums

and libraries through the Internet. Museums such as

the Louvre [1] in Paris, Van Gogh [2] in Amsterdam

and Museum of Contemporary Art of Chicago [3] are

some examples. The information contained in those

cultural centers is decentralized and popularized

through the net. One of the great advantages pointed

by the users of this kind of service is the possibility to

visit exhibitions, which are no longer active in the real

museum. Commonly, museums adopt a computational

solution based on HTML pages that links text and

images. For representing the museum atmosphere,

resources as colors, forms, three-dimensional objects

and real metaphors are used.

All the museums mentioned above have a common

characteristic: they are just informative applications,

that is, media presentation environments. In this case,

the interaction modes are quite restricted and the user

is limited to the a passive actor. At this point, Chicago

Contemporary Art Museum [8] is quite innovative

because, despite working with a defined collection, it

enables the user to organize the exhibition space.

When entering the virtual museum the user faces an

empty environment and then he/she may choose which

works will be exhibited and the location of each work.

This facility is called virtual trusteeship.Table 1

summarizes a comparative approach between the

studied virtual museums. We used the following

parameters: media handled presentation environment,

conceptual model and interactivity.

The first parameter defines which media is/are

being used in the representation of the works. The

presentation environment specifies what technologies

are used to the site implementation. The conceptual

model describes if there is a link with reality or not, a

real conceptual model defines sites of museums that

exist physically and a virtual conceptual model

specifies spaces that only exist in the computers. The

interactivity measures the available options the user

has to interact with the museum site. For example,

implementations using virtual reality favor the

interactivity, since they facilitate interaction forms, as

the navigation in depth and moving.

Louvre Pygoya Mseum*

Chicago Contemporary Art Museum

Media

Presentation Environment

HTML VRML VRML + HTML

Conceptual model

Real Virtual Real

Interactivity * http://www.lastplace.com/PygoyaMuseum/

Table 1: Virtual Museums Comparison.

ICSpace [6] our virtual museum study case was

implemented to better support these desired

characteristics. ICSpace leads with different media,

ICSPace database supports VRML objects, images,

text, video and audio. This flexibility turns ICSpace

able to represent several types of arts, as pictures,

photographs, movies, sculptures, and others. We have

also a video server assistance for maintaining video

rooms with broadcasting stream, so we can offer an

on-line schedule programming.

2.2. Multi-Agents Systems Examples

The agent-based approach is being incorporated to a

great variety of computer systems. Intelligent agents

are useful for different areas. We can use this concept

adopting an individual solution or a collective one. In

the last case we call a multi-agent system (MAS). In

other words, a MAS is a set of agents that divides

functions and responsibilities to compose an unique

solution for a problem.

Electronic commerce is a large application area of

distributed systems. Tsvetovatyy was one of the

pioneers of adopting agent-based approaches to solve

this kind of problem. MAGMA is an open architecture

for agents interested in buying or selling. MAGMA

also includes both manual and automated negotiation

mechanisms. The proposal of MAGNET (Multi Agent

Negotiation Test bed) uses many of the features of

MAGMA architecture to improve a variety of types of

transactions. MAGNET defines an ontology-based

approach for characterizing the market place and the

agents involved in the process. This proposal also uses

Proceedings of the Third Latin American Web Congress (LA-WEB’05) 0-7695-2471-0/05 $20.00 © 2005 IEEE

Page 3: [IEEE Third Latin American Web Congress (LA-WEB'2005) - Buenos Aires, Argentina (31-02 Oct. 2005)] Third Latin American Web Congress (LA-WEB'2005) - A Multi-Agent System for 3D Media

a protocol specification in order to formalize the types

of negotiation supported. The MAGNET system is

implemented in Java and CORBA. Both MAGMA and

MAGNET specify classes for agents and its properties

and communication rules (negotiation). Using

diagrams define the MAS architecture for presenting

the structure of the agents and the communication

protocols between them [14].

Alsinet [15] points out other interesting example of

applying MAS approach to real systems design. In this

case, MAS architecture is used for specify and monitor

medical protocols. A medical protocol specifies

sequences of actions that could be performed to

determinate a particular pathology. The main idea is to

model medical services in hospitals as specialized

domains agents. For describing the proposed MAS

architecture they first defined the fundamental services

that the system should provide. The next step was to

describe the agents’ categories and the communication

interface. The last one is characterized by a security

requirement. So they provide privacy, integrity and

authentication during the process of exchanging

information between agents.

This example of MAS application illustrates an

abstract domain based on SARTE (Sensible Agent

Run-time Environment) case. The sensible agents’

architecture describes the following modules:

autonomy reasoner, perspective modeler, action

planner, and conflict resolution advisor. The sensor

suite treats the incoming stimuli and the Actuator suite

activates the outgoing actions. Its architecture uses a

defined spectrum for decision-making stiles providing

a dynamic organizational restructuring. This capability

allows agents to form, dissolve and modify decision-

making interactions. Although this MAS example

shows a complex domain, we note reusable and

dynamic characteristics incorporated in the MAS

architecture, mainly in the decision-making module

[16].

2.3. Communication Tools

Today Internet can be seen as a net of connected

people. This trend is verified in applications as on-line

chats, e-mail, and videoconference. However,

employing the computer for communication is a new

approach. For approaching Human-Human Interaction

is necessary to understand some ideas from

Communication Theory that go further the

conventional view of communication process [17]. In

this work we discuss Communication Theory by

discussing three main points of view: (a) What is a

communication tool? (b) How people communicate?

(c) How people group for communicate?

For answer the first question we studied the

evolution of the communication process along the

years. The communication process initiated a long time

ago, when the man painted cavern walls for

transmitting messages to the others. The spoken

language facilitated the process and created different

languages around the world.

Accomplishing this evolution the man created

communication tools and mediums for transmitting the

messages as walls, books, telephone, radio, TV,

computers. Each tool provides a kind of

communication. TV is an example of massive

communication while the telephone is used for

interpersonal communication. The computer is the

current medium for global communication. We can

characterize the way people communicate through

computer-based medium in three main aspects:

perception, messages representation and messages

interchange strategy. Perception reflects the way users

are represented in the application.

The messages representation seems as the resources

used for transmitting the messages between the users

(the “medium”) as text, images, video or audio. Finally

the messages interchange strategy defines how users

change messages. Messages can be changed in an

individual way (between two users) or within groups

of users. Messages can be changed in a synchronous or

asynchronous mode, too. Analyzing some

communication tools it is possible to identify a great

number of textual based tools. Table 2 shows some

examples of applications analyzed. We can observe

that the majority of those tools aggregate millions of

users. This capacity shows to us that communications

tools are not closed to messages interchange, but also

have other special potentialities. Our work investigates

the potential of approximation mechanisms and

groups’ formation in communication tools.

In fact, having an efficient communication tool is

not enough for people communicate. We have to

understand how this process happens. The approach

we followed in order to reach this goal is based on

social communication protocols. Social

communication protocols specify the actions and

symbols that people uses for transmitting a message.

During the development of this work we studied

communication protocols in virtual environments

supported by computers and using three-dimensional

interfaces.

Proceedings of the Third Latin American Web Congress (LA-WEB’05) 0-7695-2471-0/05 $20.00 © 2005 IEEE

Page 4: [IEEE Third Latin American Web Congress (LA-WEB'2005) - Buenos Aires, Argentina (31-02 Oct. 2005)] Third Latin American Web Congress (LA-WEB'2005) - A Multi-Agent System for 3D Media

MSN Chat Circles LRVChat3D

Orkut

Perception Text, Images Images Text, 3D-

Object

Text, Images

Messages text

(audio/video)

Text Text text

Messages Interchange Strategy

Synchronous

Individual/Gro

up

Synchronous

Group

Synchronou

s

Group

Asynchronous

Individual/Grou

Table 2: Communication Tools Comparison.

We classify these protocols as follows.

Representation Protocols. The first requirement for

establishing a conversational dialog is that people have

to notice people. In real life this is very natural, but in

computer environments we have to provide

mechanisms that implement the concept of digital

identity. It is necessary to use lines, colors, images,

three-dimensional objects, avatars, forms and words

for representing people.

Activation Protocols. The protocols that are used

for initiating a conversation are classified as activation

protocols. In real environments people use actions like

to say “-Hi!” or just take a look, in order to activate a

conversation. In virtual ones, people reveal their

intention to star a communication using other signals,

usually controlled by mouse clicks and the keyboard.

In multimedia applications, it is possible to use also

voice devices like microphones and speakers. In virtual

reality is possible to use also approximation and touch

as signals.

Maintenance Protocols. The protocols are used to

stimulate the conversation. A smile or a handshake is

used to complement a dialog. An example of

maintenance protocol in virtual environments is the

emoticons, used for represent emotions. The

representation of movements is other way to enhance a

conversation.

The identification of communication protocols in

virtual environments help us to design the functions

that compose the presented communication tool. So,

we know what resources we can dispose and how

people use these resources for communication.

The last requirement is how people construct

conversational groups. This question is not easy to be

answered because it depends on trust, affinity, interest,

fluency, and other empirical features. Some

communication theories are used to explain how

people get involved into a conversational group. Ideas

as “Collective Intelligence” by Lévy [18] and

“Proxemic Theory” by Schutz [19] were studied. The

main goal of these ideas is to explain the way people

get grouped for a communication intention. In this

paper we describe how this knowledge was

incorporated into an agent-based system described in

Sections 4 and 5.

3. A MAS Architecture for 3D Media Spaces Assistance

In this paper, we consider a cultural space domain.

So, we use a MAS approach [21] for describing an

architecture used to support the users interaction in 3D

media spaces. The architecture is a hierarchical

structure composed of three layers that define three

categories of agents, which are: reactive (level 0),

intermediate (level 1) and services (level 2) as shown

in Figure 1(a). The main goal of the reactive layer is to

perceive user actions into the environment. In this

layer there are the personal agents (PA). Other

important PA function is the interaction with the users.

The intermediate layer is responsible for maintaining

the knowledge database (KD) using the Database

Agent (DA) to do this work. Finally, the service layer

is capable of processing information and provides

services to users. This layer is divided into

Cooperative and Proactive layers detailed in Figure

1(b).

The difference between these agents is the

dependency relationship between them. If an agent

depends on the result processed by other agent to

execute its actions we call it a cooperative agent,

otherwise we call proactive agent.

At least, the following service agents’ sub-

categories should be considered:

Profiling Agents. This agent is responsible for

elaborating the user profile. This task of defining a

profile can become very difficult and complex,

depending on the way it is implemented. We are using

two approaches: static and dynamic information. The

first one refers to cadastral information entered by the

user. Dynamic information refers users’ actions in the

environment;

Personalization Agents. This kind of agent gets the

user profile from the user-profiling agent and based on

this profile, it organizes the works disposed in the

environment. In this way, each user can have its own

view of the environment. In other words, it allows the

system to present the same information in different

ways to different users.

Recommender Agents. This agent carries out a role

similar to that of as the personalization agent, but it is a

bit simpler. The recommender agent provides services

based on the audience of the works and the rooms. It

processes simple tasks such as “Visit Room 2” or

“Visit Work 4” that are sent to all users.

Guiding Agent. Guiding agents represent the guides

of real life. The main function of this agent is guiding

Proceedings of the Third Latin American Web Congress (LA-WEB’05) 0-7695-2471-0/05 $20.00 © 2005 IEEE

Page 5: [IEEE Third Latin American Web Congress (LA-WEB'2005) - Buenos Aires, Argentina (31-02 Oct. 2005)] Third Latin American Web Congress (LA-WEB'2005) - A Multi-Agent System for 3D Media

the visitors in the environment rooms, telling useful

information and assisting them.

(a)

(b)

Figure 1: MAS Architecture for Cultural Spaces Assistance

Communication Agents. It encourages interpersonal

communication between users through the use of

communication tools. Furthermore, this agent aims to

approximate people inside a multi-user environment

using Communication theories and defining some

protocols used for enhance communication among

users. We define these protocols as social

communication protocols. They are used to improve

interpersonal communication. In the following sections

we describe the Communication Agent developed to

provide support to the protocol.

4. Communication Agent Organizational Issues

According to [21], the description of a MAS

organization involves functional and structural

analysis, and communication issues. We are including

other concepts (mainly from Software Architecture

approach) to design the agent organizational issues. In

this section we detail the conceptual analysis,

functional analysis, communication issues,

components and implementation views for

organization issues emphasizing the communication

agent.

“Putting people together”… it is our main goal. But

how to develop a system for do that? Our answer is

based on Lévy ideas about communication tools and

how to take advantage of the Internet native structure

for implement communicational mechanisms [15]. So,

we use an agent-based system for connect users and

stimulate the creation of conversational groups. When

a user is connected, the MAS is activated. While the

user actions are monitored, the system is processing for

forming groups and suggesting conversations. The last

step is to evaluate a formed group or suggest other

group.

In the functional analysis, the system should be seen

as a set of roles, where each role corresponds to an

activity performed by a class of agents. In order to

describe the functional analysis we use UML use cases

diagrams for each agent class. Figure 2 illustrates the

UML diagrams constructed for describing the agents’

functional analysis. Figure 2 illustrates the main

activities performed by the whole multi-agent system.

Figure 2: UML Activity Diagram for Communication Agent.

The main use case of the communication agent is to

“processing information”. This use case symbolizes the

agent intelligence and the capability of taking

decisions. For do that we are using some

Communication theories assumptions ([19][20]) and a

neural network server

Other important offered functionality is the

evaluation. Evaluating the process is a way for better

its. We have two levels of evaluations: the formative

and the cumulative ones. What differentiates these

evaluation levels is the feedback to users. In the

formative way the feedback is offered immediately

while in the cumulative evaluation not. The both

methods are processed while the user is interacting.

Proceedings of the Third Latin American Web Congress (LA-WEB’05) 0-7695-2471-0/05 $20.00 © 2005 IEEE

Page 6: [IEEE Third Latin American Web Congress (LA-WEB'2005) - Buenos Aires, Argentina (31-02 Oct. 2005)] Third Latin American Web Congress (LA-WEB'2005) - A Multi-Agent System for 3D Media

The formative evaluation is represented by the

“Evaluate Suggestion” use case. In this case we are

evaluating how the users are answering to the agent

suggestions. If the user always rejects them, the system

gives a break. In this case, the evaluation parameter is

the number of accepted and rejected suggestions.

The cumulative one is expressed by the “Evaluate

Conversational Group” use case. The feedback is

directed to people who are studying the conversational

groups formation and not necessary to people who is

using the communication service. The cumulative

evaluation tests the effectiveness of our

communication strategies. So what, we can test the

performance of different approximation strategies and

analyze them.

For performing the cumulative evaluation we are

adopting other evaluation parameters. These

parameters are recorded while the user is interacting as

a log register. Analyzing this log we can extract the

number of messages changed in a conversational group

and the group duration.

Buy the way, the messages number is not sufficient

to estimate the group effectiveness. Imagine a group of

four people that changed thirty-five messages in ten

minutes. Apparently it is an effective group. But, if just

one user says “Hi!” thirty-five times, it is not. So, we

decided to create a coefficient to measure the

effectiveness of each formed group. This coefficient is

specified by the difference between users-generated

messages. We take the more active user (major number

of messages) and subtract the minor generating a D

number. For a communicational group we suggest that

this D cannot be twice the media of changed messages

in that group. At this way we can evaluate the

effectiveness of each formed group and tests, which

strategies are working better.

4.1. Communications Issues The communication issues describe how the agents

exchange messages between them. The agents

implement a politics for maintaining its connections.

The dynamic of this politics is very simple, when a

new user logs in the system, a set of agents are created

to support him. At this way, in the client side, we have

a personal and a database agent for each user.

When the communication agent is activated it

establishes its connections with other service agents. It

occurs with the database agent where is recorded the

user information. The communication agent staying

processing while the user is interacting with the system

and the other users connected in the system. When it

takes a decision (a suggestion) it communicates to the

personal agent, so what the suggestion can be passed

to the end user.

The software architecture for the whole MAS

architecture was designed as a framework. So, we have

generic and reusable architectures for the personal and

the service agents. We present the adopted solution for

the communication agent.

The software architecture for the communication

agent implementation uses two main components:

<<decisionmodule>> and <<internalknowledgebase>>

and the interfaces for improve the communication with

the external entities as shown in Figure 3.

The main component is the <<decisionmodule>>,

which processes the suggestions. The

<<internalknowledgebase>> is responsible for

choosing the most appropriated approximation

function according with a user profile model.

Figure 3: Service Agent Software Architecture.

1) Interfaces

When the Communication Agent is created, it

creates a link to the Personal Agent, by using the

<<PA_Interface>> component. So, <<PA_interface>>

establishes the channel between the communication

agent and the end user by sending and receiving

information from the Personal Agent. The

<<XP_Interface>> is responsible for communicating

with the Xpider Server where a neural processing

improves group creation. Finally, the communication

with the database agent occurs when some database

operation is required. The <<DBA_interface>> has

this responsibility.

2) Decision Module

The operational kernel of the decision module is the

affinity function, which is a function that indicates

users for getting connected, in order to compose a

conversational group. The way the approximation

works is defined by the internal knowledge base.

The affinity function is defined by two main

parameters: area of interest and proxemic theory. The

last one is based on the physical proximity between

Proceedings of the Third Latin American Web Congress (LA-WEB’05) 0-7695-2471-0/05 $20.00 © 2005 IEEE

Page 7: [IEEE Third Latin American Web Congress (LA-WEB'2005) - Buenos Aires, Argentina (31-02 Oct. 2005)] Third Latin American Web Congress (LA-WEB'2005) - A Multi-Agent System for 3D Media

people classified in personal, social and public

distances. According with the position of each user in

the virtual space we connect them forming a

conversation group. The area of interest is related with

the focus of attention of each user. In three-

dimensional virtual environment we are taking

orientation and position data as the way to classify

users into conversational group.

Figure 4 illustrates grouping by using affinity

function. In Figure 4(a) we can see groups formed by

the area of interest parameter where the attention focus

of each user is considered. Observe that the orientation

of each user is considered and not only the position

inside the space. In Figure 4(b) the proxemic theory

parameter is considered, and so, different groups are

formed. The area of the proxemic circles is flexible,

and it can be modified according with the virtual space

and the application requisites.

3) InternalKnowledgeBase

The <<InternalKnowledgeBase>> represents the

internal knowledge base of the agent. This component

executes the behaviors (or methods) that group the

users generating lists of users to be connected. These

methods are:

GroupPublicProximity( ) – This method

approximate all users distributed in the same “public

area”.

GroupGroupProfile( ) – The agent gets from the

database agent a list of the users sharing the same

room, at the same time, and selects only the ones who

belong to the same group, which is defined in the

neural server.

GroupPersonalProfile( ) - The agent gets from the

database agent a list of the users sharing the same

room, at the same time, and selects only the ones who

activates the same neuron in the neural network.

Quiet( ) – This method stop the agents´ suggestions,

when the suggestions are rejected for 6 times the agent

gives a break.

4) Xpider Server Overview

This interface communicates with an external

neural network server, called Xpider. Xpider is a

graphical server implemented in Java, which provides

access to a Kohonen network. The objective is training

the network for grouping users. For x entries, the map

should be a x-dimensional plan; but instead of trying to

show such a thing, the server shows all the bi-

dimensional plans, made by combinations of all

possible coordinate pairs of weights, in different

graphics. There is also a graphic showing the winner

neuron of each training pattern on each interaction

[22].

(a)

(b)

Figure 4: Grouping by affinity function. (a) Grouped by Area of Interest Management. (b)

Grouped by Proxemix Theory.

5) Implementation View

The service agents, including the Communication

one, are implemented using Java technology. Sockets

implement the connections between the services and

the personal agent. Each service is implemented as a

server, a service server that can be added to the

architecture. Looking that focusing the

Communication agent we have: When the user

connects to ICSpace, two applets are initiated:

PersonalAgent and ClientVrml. ClientVrml connects

with the server and the PersonalAgent initializes all the

other agents, including the Communication Agent. The

Communication Agent makes a connection with

ServerXpider and with DBAgent, in order to compose

his internal knowledge base and to use the Neural

Network Server or the DataBase Server.

5. Study Case: ICSPACE – An Internet Cultural Space

In order to implement the proposed MAS

architecture in a real use situation, we use ICSPace [6],

a virtual cultural space on Internet, where artists

expose their work for visitor appreciation. The visitors

can circulate in the space, look at exposed works,

Proceedings of the Third Latin American Web Congress (LA-WEB’05) 0-7695-2471-0/05 $20.00 © 2005 IEEE

Page 8: [IEEE Third Latin American Web Congress (LA-WEB'2005) - Buenos Aires, Argentina (31-02 Oct. 2005)] Third Latin American Web Congress (LA-WEB'2005) - A Multi-Agent System for 3D Media

notice other visitors' presence, express their opinion

and, eventually, communicate with each other. The

works exhibited into ICSpace are any artistic

manifestation represented in a digital way. For

example, photography and paint are represented using

images. But we can also use video, audio or 3D models

for composing the ICSpace collection.

The main goal is to provide an open space in the

Internet where artists can expose their works and

everyone can see, comment and appreciate. ICSpace

perception mechanism uses Vixnu multi-user VRML

server [23]. ICSpace offers a hybrid navigation form to

users using both 2D-HTML and 3D-VRML (see

Figure 5).

The personal agent is presented to users using Java

Applet. The environment knowledge is implemented

by a VRML event grammar, which is grammatical

interpreted by the Personal Agent using the API EAI

(External Authoring Interface), an API that enables

Java applets to understand VRML events generated by

user actions. So the agent perceives when the user

moves or touches anything, for example.

We have been working in the Recommender Agent

where we used audience information for suggesting

visits to the users. Register audience in 3D

environments is not an easy activity.

We have to consider aspects as time and orientation

for register relevant data. In order to implement this,

we have used a timer associated with VRML proximity

cubes and user position and orientation. We have

implemented an evaluation mechanism for knowing

the meaning of audience (negative or positive). Other

interesting experience was the implementation of the

Guiding agent. We have worked with a proactive

version where we integrate the virtual guide

represented by a 3D avatar with a robotic agent that

repeats the virtual guide actions in the real world.

These experiences are reported in the next section.

6. Experimental Results

Working with the Guiding and the Communication

agents we realized some interesting experiments. Also,

we have implemented a platform for Mixed Reality

applications called Hyperpresence ([11] [12]). Using

this platform we can control robotics agents in real

world environments. First, we decided to analyze how

we can use this for improve guiding activities. At this

way, a software agent (the guiding one) could perform

the robotic agent behavior (see Figure 06).

After, we analyzed how this platform can be used

for improve communication facilities between real and

virtual worlds. For demonstrating the last situation we

executed an experiment inside a real cultural space:

“Convivart” gallery. It is an academicals building for

cultural manifestations.

(a)

(b)

Figure 5: User interface of Icspace powered by agents support. In (a) we can see agents for communication: “A” we can see the VRML world. In “B” we can note the interaction status, used by the developers accomplish the user interaction. In “C” we can observe the communication window. Finally, in “D” is the personal agent applet. In (b) we can see agents for avatar personalization: “A” we can see the VRML visualization window. In “B” we can see the avatar characteristicsand agent window.

Also, we constructed the virtual building for

“Convivart” implemented in VRML and incorporated

to ICSpace environment. The guiding agent was

implemented to introduce the exposition and the

communication agent accomplished this experiment in

the virtual side. We have both, virtual and real visitors.

In the real side a robotic agent was used to present the

real exposition while an avatar does the same thing in

the virtual one. The robot used audio for

communicating with the real visitors and when it got

nearby a work it explained that work. In the real side

we can observe that the conversational groups were

formed nearby each work presented by the robot.

While in the virtual side not always we can verify it.

Proceedings of the Third Latin American Web Congress (LA-WEB’05) 0-7695-2471-0/05 $20.00 © 2005 IEEE

Page 9: [IEEE Third Latin American Web Congress (LA-WEB'2005) - Buenos Aires, Argentina (31-02 Oct. 2005)] Third Latin American Web Congress (LA-WEB'2005) - A Multi-Agent System for 3D Media

The virtual users can take the avatar explanation every

time and it isn’t a collective activity as in the real side.

(a)

(b)

Figure 6: Experiments with avatars and robot.In “a” we can see the virtual environment and the avatar representing the “guide” and in “b” is presented the correspondent real situation

7. Lessons Learned

As introduced bellow, several initial questions have

influenced the development of our agents-based

system for design a communication solution. This

paper discussed these questions providing

computational solutions for each one. At this way,

each situation could be modeled into a virtual

environment context, with actors, activities, roles,

functions and behaviors. It helped to understanding,

describing and implementing the proposal solution.

The main contribution of this paper is to point out a

great variety of requirements that not usually are

considered in that kind of application.

Usually the efficient parameters are closely to the

messages interchange. For example, guaranteeing that

a message will be received in the faster way. In this

work we analyze other point of view, as important as

the others. We incorporated requirements for improve

“affinity” between users.

We believe that it is a way to implement the ideas

of Pierre Lévy where virtual environments are seeing

as an advanced communication tool capable of

interconnect people into n-n model. We talked about

evaluation methods for communication tools. This

innovative approach encourages our effort evaluation,

so we can accomplish our evolution. This methods

could be technically expanded to a methodology for

evaluate communication tools in a generic way. A real

contribution is to provide a conceptual framework that

can be adopted for similar environments. We

illustrated our experience with this framework in

ICSpace study case. Otherwise, the execution of

experiments added the current research in two ways:

prototyping end-users solutions, which took our

system nearby the community and composing a way

for observing real world situations that can be used to

enhance our system.

9. Conclusion

In this paper we have brought together ideas,

components, architectures and implementations that

deal with the next generation of media spaces. One of

the most important goals of these spaces is the

communication, specially the interpersonal

communication. Media spaces communication

mechanisms go further efficient networks and

protocols those aims the transport of messages between

connected computers. Other trend is the approach of

mechanisms for supporting and helping

communication between connected people.

A MAS-based solution seems to us the answer for

this scenario of applications. Using “intelligent” peaces

of software enable the individual behaviors for media

spaces assistance. Our experience with multi-agent

system and Communication theories for composing

solutions to a cultural context showed that it is

possible.

We have described the MAS architecture for

putting people together in 3D media spaces. We have

defined different agents’ categories. Each category

identifies a specific role in the MAS architecture with a

special function in cultural environments context.

We are currently exploring an implementation

framework that could be used to facilitate the

development of other agents’ categories or other

implementation solutions for the current ones. So, we

are working in different implementations of each agent

category using different algorithms, in order to make

possible to compare its performance. Also, we are

working in the cumulative evaluation results. We are

processing them and structuring the method used for

obtains the results.

We are working in the tests planning for performing

them in heterogeneous groups involving a great variety

of users. In the experimental arena, we are working

hard to formalize the communication protocols for

real-virtual worlds communication. We are planning

Proceedings of the Third Latin American Web Congress (LA-WEB’05) 0-7695-2471-0/05 $20.00 © 2005 IEEE

Page 10: [IEEE Third Latin American Web Congress (LA-WEB'2005) - Buenos Aires, Argentina (31-02 Oct. 2005)] Third Latin American Web Congress (LA-WEB'2005) - A Multi-Agent System for 3D Media

other experiences for identify, describe and explore

them.

Acknowledgment

This research was supported by CNPq/ICSpace Project

(http://icspace.natalnet.br) and CNPq/HiTV Project

(http://www.lavid.ufpb.br/hitv). Thanks to FAPESB

(http://www.fapesb.ba.gov) for partially supporting

this work nowadays

10. References

[1] Louvre Museum Website - http://www. culture. fr/

louvre/ louvrea.htm

[2] Van Gohh Museum Website -

http://www.vangoghmuseum.nl

[3] Chicago Museum Website -

http://www.mcachicago.org/

[4] D.R. Nadeau. 1999, 'Building Virtual Worlds with

VRML', IEEE Computer Graphics and Applications,

March–April 1999.

[5] Pedersen, J., Buur, J., & Djajadiningrat, J.P. (2003).

Field design sessions: Augmenting whose reality? In

International Journal of Human Computer Interaction.

16(3), pp.461-476

[6] T. Tavares, A. Araújo & G. Souza Filho. “ICSpace - An

Internet Cultural Space”. In: Active Media Technology

– 6th Internacional Computer Science AMT2001. Honk

Kong, China, Dezembro 2001. p. 389-402.

[7] K Jacinto, A. Araújo, T. Tavares, M. Lucena & G.

Souza Filho. “Projeto e Implementação do ICSpace –

um Espaço Cultural na INTERNET”. In: IV SBC

Symposium on Virtual Reality – SRV 2001, 2001,

Florianópolis-SC. Anais do IV SBC Symposium on

Virtual Reality – SRV 2001, 34-34p.

[8] SILVA, O. et al.. Using Semantic Rules Database to

Dynamically Set Up the ICSpace Virtual Building In:

ER2002, 2002, Tampere. ER2002 Proceedings. , 2002.

[9] C. Tavares, T. Tavares, A. Burlamaqui & G. Souza

Filho. “Avatar Multimídia - Uma interface multimídia

para a representação de usuários em ambientes

tridimensionais multiusuário” In: Webmidia 2003 -

Simposio Brasileiro de Sistemas Multimidia e Wec,

2003, Salvador. Anais do Webmidia 2003. , 2003. v.1.

p.499.

[10] T. Tavares, S. Azevedo, A. Canutto, L. Gonçalves & G.

Souza Filho. “An infrastructure for Providing

Communication Among Users of Virtual Cultural

Spaces” In: LAWebmedia 2004 – Simpósio Latino

Americano de Web e Hipermidia”, 2004, Ribeirão

Preto-SP. In: IEEE Proceedings of LAwebmedia 2004..

[11] TAVARES, T. A. et al. Playing with Robots and

Avatars In: Symposium on Computer Graphics and

Image Processing, 2003, São Carlos. Proceedings of

SIBGRAPI. , 2003.

[12] D. Tavares, A. Burlamaqui, A. Dias, M. Monteiro, V.

Antunes, T. Tavares, C. Lima, L. Gonçalves, & G.

Souza Filho. “Hyperpresence: An Application

Environment For Control Of Multi-User Agents In

Mixed Reality Spaces”. In: 36th Annual Simulation

Symposium Proceedings. 351-358p.

[13] TAVARES, T. A., GONCALVES, L. M. G., SOUZA

FILHO, G. L. Using Agents for Improving Multimidia

Virtual Environments Personalization. Scientia. São

Leopoldo: , v.13, n.2, p.121 - 132, 2003.

[14] John Collins et al. (1998) A Market Architecture for

Multi-Agent Contracting. In: Autonomous Agents 98.

ACM Proceedings: 285-292p.

[15] T. Alsinet, R. Béjar, C. Fernandez & F. Manya. A

Multi-Agent System Architecture for Monitoring

Medical Protocols. (2000) In: Agents 2000 Proceedings:

499-505p.

[16] K.S. Barber et al. Sensible Agents: An Implemented

Multi-Agent System and testbed. (2001). In: Agents´01

proceedings: 92-99 p.

[17] C. E. Shannon. "A Mathematical Theory of

Communication." The Bell System Technical Journal 27

(1948): 379-423.

[18] P. Lévy. “CiberCultura”. Tradução de Carlos Irineu da

Costa. São Paulo: Ed. 34, 1999, 264p.

[19] E. T. Hall. “Proxemic Theory” In: Theory of

Communication (Chapter 6) – 60-67p.

[20] E. Griffin. (1997). “A First Look at Communication

Theory”. New York: McGraw-Hill.

[21] FERBER, Jacques. Multi-Agent Systems – An

Introduction to Distributed Artificial Intelligence.

Adilson Wesley 1999. 509 p.

[22] S. Azevedo, A. Canutto, A.Campos, T. Tavares,& G.

Souza Filho. “The Implementation of a Neural Network

– Based Communication Agent To Group Users of

Virtual Environments in Conversations – use case:

ICSpace” In: Webmidia 2004 Ribeirão Preto-SP.

[23] BURLAMARQUI, Aquiles; TAVARES, Tatiana Aires

e SOUZA FILHO, Guido Lemos de. Vixnu - Um

Servidor Multi-usuário com Suporte a Comunicação em

Ambientes Virtuais Colaborativos. 2002, Fortaleza, CE,

Brasil.

Proceedings of the Third Latin American Web Congress (LA-WEB’05) 0-7695-2471-0/05 $20.00 © 2005 IEEE