Você está na página 1de 2

Multi-Agent Systems applied to Virtual Environments: a Case Study

A. Barella C. Carrascosa V. Botti Department of Information Systems and Computation Technical University of Valencia M. Mart Automatic and Industrial Computing Institute Technical University of Valencia

Introduction

Computer game development covers many different areas, such as graphics, articial intelligence (AI) and network communications. Nowadays, players demand more sophisticated and credible computer-controlled opponents, but results are sometimes unsatisfactory. This is due to the need of real-time processing constraints to reach an acceptable feeling of immersion for the user. The development of systems, tools and development environments can play an important role in the progress of this eld. The combination of AI techniques and virtual reality (or virtual environments) has given birth to the eld of intelligent virtual environments (IVEs). An IVE is a virtual environment simulating a physical (or real) world, inhabited by autonomous intelligent entities [Luck and Aylett 2000]. These entities have to interact in / with the virtual environment as if they were real entities in the real world. There are some other typical problems of an IVE that we have to solve, as explained in [Bierbaum et al. 2001]: independence of the underlying technologies, user interactions (not only displaying images, but using specic devices such as trackers, gloves), synchronization of both data and image (even in case of multiple displays). In the existing approaches, AI and graphics use to be embedded, so they are not very extensible nor scalable. Thus, it is necessary a more general and exible approach, which may be easily extended. This paper presents a case study of a multi-agent system (MAS) applied to a virtual environment, using JGOMAS [Barella et al. 2006] as framework for IVEs. Specically, agents playing a capture the ag game in a 3D virtual environment while are visualizated on different systems. Thus, the purpose of this case study is to show the exibility of this approach, which allows both distributed intelligence calculation and visualization of the IVE on different devices.

ment state. Using its reduced knowledge, each agent can gure out what it needs to do in order to reach its designed objectives. In this way, a MAS is a system that consists of a number of agents, that communicate messages through a computer network. These agents will cooperate, coordinate, and negotiate with each other, trying to achieve their own goals and common objectives, as a result of emergent behaviour[Wooldridge and Jennings 1995]. On the other hand, a visualization module is necessary in order to show to users what is happening in the virtual world. This module should cover from stand-alone users at home to complex VR systems. Figure 1 shows the abstraction level that allows to distribute independently both visualization and intelligence parts, facilitating the scalability of the IVE application. The framework proposes a capture the ag

Figure 1: Independent parts in an IVE game as the kind of social interaction to simulate, where agents are grouped into two teams (reds and blues). Reds must go to the blues base, capture the ag, and bring it to their base, in order to win the game. Blues agents must defend their ag against the reds and, if the ag is captured, they must return it to their base. There is a time limit for the reds to bring the ag to their base. If the time limit expires, the blues team wins the game. This framework provides an API that allows designers to add their own code modications (mods), so it can be used for validating the coordination, communication, and learning algorithms.

Description of the System

According to this approach, both systems, virtual reality (VR) and multi-agent, have to work separately, in an independent way in order to create a exible and versatile framework. Thus, there is a clear separation of the intelligence part (where reasoning is computed) from the visualization part (where the results of reasoning are displayed) as proposed by [Ulicny and Thalmann 2001]. The AI problem has been put as a distributed system, that is, using agents. Thus, an agent has only part-information knowledge, that is, it cannot obtain direct access to the complete virtual environ e-mail: e-mail:

JGOMAS Architecture

The framework is composed of a multi-agent platform, a set of agents (conforming a MAS), and a visualization module: Multi-Agent Platform: JGOMAS uses JADE [Fabio Bellifemine et al. 1999] as multi-agent platform. It has become a de facto standard in the multi-agent community, and it simplies the implementation of MASs through a middle-ware that complies with the FIPA specications1 . IVE designer has only to implement the intelligence of the agents, avoiding wasting time in low-level technical issues. Multi-Agent System: JGOMAS MAS can be viewed as an abstraction upper layer over JADE. Two main classes of agents
1 FIPA is an IEEE Computer Society standards organization that promotes agent-based technology and the interoperability of its standards with other technologies.

tbarella@dsic.upv.es carrasco@dsic.upv.es e-mail: vbotti@dsic.upv.es mmarti@ai2.upv.es

Copyright 2007 by the Association for Computing Machinery, Inc. Permission to make digital or hard copies of part or all of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, to republish, to post on servers, or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from Permissions Dept, ACM Inc., fax +1 (212) 869-0481 or e-mail permissions@acm.org. VRST 2007, Newport Beach, California, November 57, 2007. 2007 ACM 978-1-59593-863-3/07/0011 $5.00

237

are dened: simulation controller (SC) and player agents. SC acts as a wrapper of the virtual environment, because it translates all player agents actions to the virtual world. This is the way in which this agent synchronizes the virtual environments data, maintaining the consistency throughout the game at any time. In addition, SC is the interface for visualization module, sending the game state to graphic clients, acting as a server. The other agents are simulating players in the virtual scenario, carrying out basic actions, such as look, move, etc. These actions are encapsulated into messages to be sent to SC using the communication mechanisms of JADE. Next, SC performs those actions in the virtual world and informs other agents affected by the consequences of the actions. Visualization Module: As mentioned above, AI and VR systems have to work independently (i.e. it is possible to run the JGOMAS MAS even if there are no graphic viewers connected). Render Engine (RE) is a graphic application developed ad hoc using OpenSceneGraph to display the 3D agents, objects, and scenarios. Because RE is an external module, other graphic engines could be used instead. This is possible because the visualization module in JGOMAS framework is independent of the AI module (MAS). Although Render Engine can be used both by stand-alone users and head mounted display users (stereoscopic view), it is difcult to synchronize multiple displays to perform a VR system, such as a CAVET M . The CAVET M is a projection-based VR system that provides real-time head-tracked perspective with a large eld of view, interactive control, and stereo display. To avoid that effort, RE has been extended to use VRJuggler [VRJuggler ] as middleware to use a complete VR system. VR Juggler is a collection of technologies which provide the tools necessary for VR applications development, and it provides a virtual platform for VR application development. The exibility of VR Juggler allows applications to execute in many VR system congurations including desktop VR, Head Mounted Displays, CAVET M -like devices, and PowerwallT M -like devices.

Figure 2: JGOMAS with some visualization congurations.

Figure 3: A four monitors macro-display and a HDM user.

download at http://jgomas.gti-ia.dsic.upv.es

References 4 Example for using JGOMAS


BARELLA , A., C ARRASCOSA , C., AND B OTTI , V. 2006. Jgomas: game-oriented multi-agent system based on jade. In ACE 06: Proceedings of the 2006 ACM SIGCHI international conference on Advances in computer entertainment technology, ACM Press, New York, NY, USA, 17. B IERBAUM , A., J UST, C., H ARTLING , P., M EINERT, K., BAKER , A., AND C RUZ -N EIRA , C. 2001. Vr juggler: A virtual platform for virtual reality application development. In VR 01: Proceedings of the Virtual Reality 2001 Conference (VR01), IEEE Computer Society, Washington, DC, USA, 89. FABIO B ELLIFEMINE , AGOSTINO P OGGI , AND G IOVANNI R I MASSA . 1999. JADE - A FIPA-compliant Agent Framework. In Proc. of the PAAM99, 97108. L UCK , M., AND AYLETT, R. 2000. Applying articial intelligence to virtual reality: Intelligent virtual environments. Applied Articial Intelligence 14, 1, 332. U LICNY, B., AND T HALMANN , D. 2001. Crowd simulation for interactive virtual environments and VR training systems. In Computer Animation and Simulation 01, 163170. VRJ UGGLER. Vr juggler: a platform for virtual reality application development. Checked on February 8th, 2007. W OOLDRIDGE , M., AND J ENNINGS , N. R. 1995. Intelligent agents: Theory and practice. The Knowledge Engineering Review 10, 2, 115152. In this section, an example for using JGOMAS is shown, where it is noticed how the VR system and the MAS work independently from each other. Several exible and versatile congurations has been designed: from stand-alone users at home to complex VR systems, as shown in gure 2. JGOMAS MAS was executed in a cluster of computers, and many visualization modules can be used at the same time: stand-alone system (users playing or supervising the game at anywhere), head mounted display system (users are watching the game in stereoscopic mode), PowerwallT M system (a group of users viewing the game, perhaps in stereoscopic mode, in a grid of displays which are composing a macro-display, and CAVET M system (users are each one immersed in a VR system). Figure 3 shows an execution of JGOMAS. A hand made PowerwallT M with four monitors was composed, and images are rendered by two computers forming a cluster. VRJuggler is used to synchronize the images displayed. At the same time, the CAVET M system was connected to the current JGOMAS game.

Conclusions

This paper presents JGOMAS, a multi-agent framework based on JADE for virtual environments that has been designed to study a full integration of AI (MAS) and real-time graphic applications (specifically VR systems). Specically, it has been tested using a capturethe-ag game. JGOMAS is designed to have intelligent computercontrolled elements in 3D virtual environments, and is available for

238

Você também pode gostar