This Article 
 Bibliographic References 
 Add to: 
An Efficient Partitioning Algorithm for Distributed Virtual Environment Systems
March 2002 (vol. 13 no. 3)
pp. 193-211

Distributed virtual environment (DVE) systems model and simulate the activities of thousands of entities interacting in a virtual world over a wide area network. Possible applications for DVE systems are multiplayer video games, military and industrial trainings, and collaborative engineering. In general, a DVE system is composed of many servers and each server is responsible to manage multiple clients who want to participate in the virtual world. Each server receives updates from different clients (such as the current position and orientation of each client) and then delivers this information to other clients in the virtual world. The server also needs to perform other tasks, such as object collision detection and synchronization control. A large scale DVE system needs to support many clients and this imposes a heavy requirement on networking resources and computational resources. Therefore, how to meet the growing requirement of bandwidth and computational resources is one of the major challenges in designing a scalable and cost-effective DVE system. In this paper, we propose an efficient partitioning algorithm that addresses the scalability issue of designing a large scale DVE system. The main idea is to dynamically divide the virtual world into different partitions and then efficiently assign these partitions to different servers. This way, each server will process approximately the same amount of workload. Another objective of the partitioning algorithm is to reduce the server-to-server communication overhead. The theoretical foundation of our dynamic partitioning algorithm is based on the linear optimization principle. We also illustrate how one can parallelize the proposed partitioning algorithm so that it can efficiently partition a very large scale DVE system. Lastly, experiments are carried out to illustrate the effectiveness of the proposed partitioning algorithm under various settings of the virtual world.

[1] S.T. Barnard and H.D. Simon, “Fast Multilevel Implementation of Recursive Spectral Bisection for Partitioning Unstructured Problems,” Concurrency: Practice and Experience, vol. 6, no. 2, pp. 101-117, 1994.
[2] S.T. Barnard and H.D. Simon, “A Parallel Implementation of Multilevel Recursive Spectral Bisection for Application to Adaptive Unstructured Meshes,” Proc. Seventh SIAM Conf. Parallel Processing for Scientific Computing, pp. 627-632, Feb. 1995.
[3] T. Ballardie, P. Francis, and J. Crowcroft, “Core Based Trees (CBT): An Architecture for Scalable Inter Domain Multicast Routing,” Proc. ACM SIGCOMM, pp. 85-95, 1993.
[4] F. Ercal, J. Ramanujam, and P. Sadayappan, “Task Allocation onto a Hypercube by Recursive Min-Cut Bipartitioning,” J. Parallel and Distributed Computing, vol. 10, pp. 35-44, 1990.
[5] G. Fox, Graphical Approach to Load Balancing and Sparse Matrix Vector Multiplication on the Hypercube. M. Schultz, ed., Berlin: Springer-Verlag, 1988.
[6] G. Fox,M. Johnson,G. Lyzenga,S. Otto,J. Salmon,, and D. Walker,Solving Problems on Concurrent Processors, Vol. I: General Techniques andRegular Problems.Englewood Cliffs, N.J.: Prentice Hall 1988.
[7] P. Bernstein, V. Hadzilacos, and N. Goodman, Concurrency Control and Recovery in Database Systems. Addison-Wesley, 1987.
[8] W. Broll, “Distributed Virtual Reality for Everyone: A Framework for Networked VR on the Internet,” Proc. IEEE Virtual Reality Ann. Int'l Symp., Mar. 1997.
[9] D.E. Comer, Internetworking with TCP/IP: Volume I, Principles, Protocols, and Architecture. Prentice Hall, 1995.
[10] S.E. Deering and D.R. Cheriton, “Multicast Routing in Datagram Internetworks and Extended LANs,” ACM Trans. Computer Systems, vol. 8, pp. 85-110, May 1990.
[11] V. Firoiu and D. Towsley, “Call Admission and Resource Reservation for Multicast Sessions,” Proc. 15th Ann. Joint Conf. IEEE Computer and Comm. Soc. (INFOCOM '96), 1996.
[12] M.R. Garey and D.S. Johnson, Computers and Intractability: A Guide to the Theory of NP-Completeness.New York: W.H. Freeman, 1979.
[13] J.R. Gilbert, G.L. Miller, and S.H. Teng, “Geometric Mesh Partitioning: Implementation and Experiments,” Proc. Ninth Int'l Parallel Processing Symp., pp. 418-427, Apr. 1995.
[14] B. Hendrickson and R. Leland, “An Improved Spectral Load Balancing Method,” Proc. Sixth SIAM Conf., pp. 953-961, 1993.
[15] B. Hendrickson and R. Leland, “Multidimensional Spectral Load Balancing,” technical report, Sandia National Laboratory, Albuquerque, 1993.
[16] B. Hendrickson and R. Leland, "An Improved Spectral Graph Partitioning Algorithm for Mapping Parallel Computations," SIAM J. Scientific Computation, vol. 16, no. 2, Mar. 1995, pp. 452-469.
[17] B. Hendrickson and R. Leland, “An Multilevel Algorithm for Partitioning Graphs,” Proc. Supercomputing, Dec. 1995
[18] B.W. Kernigham and S. Lin, “An Efficient Heuristic Procedure for Partitioning Graphs,” Bell Systems Technology J., vol. 49, no. 2, pp. 292-370, 1970.
[19] C.-J. Liao and Y.-C. Chung, “Tree-Based Parallel Load-Balancing Methods for Solution Adaptive Finite Element Graphs on Distributed Memory Multicomputers,” IEEE Trans. Parallel and Distributed Systems, vol. 10, no. 4, Apr. 1999.
[20] J.C.S. Lui, M.F. Chan, T.F. Chan, W.S. Cheung, and W.W. Kwong, “Virtual Exploration and Information Retrieval System: Design and Implementation,” Proc. Third Int'l Workshop Multimedia Information Systems (MIS '97), 1997.
[21] J.C.S. Lui, M.F. Chan, K.Y. So, and T.S. Tam, “Balancing Workload and Communication Cost for a Distributed Virtual Environment,” Proc. Fourth Int'l Workshop Multimedia Information Systems (MIS '98), 1998.
[22] J.C.S. Lui, O.K.Y. So, and P.T.S. Tam, “Deriving Communication Sub-graph and Optimal Synchronizing Interval for a Distributed Virtual Environment System,” Proc. IEEE Int'l Conf. Multimedia Systems, June 1999.
[23] J.C.S. Lui, “Constructing Communication Subgraphs and Deriving an Optimal Synchronization Interval for Distributed Virtual Environment Systems,” Accepted for publication, IEEE Trans. Data and Knowledge Eng., 2001.
[24] M.R. Macedonia, D.P. Brutzman, M.J. Zyda, D.R. Pratt, P.T. Barham, J. Falby, and J. Locke, “NPSNET: A Multi-Player 3D Virtual Environment over the Internet,” Proc. ACM Symp. Interactive 3D Graphics, Apr. 1995.
[25] M.R. Macedonia and M.J. Zyda, “A Taxonomy for Networked Virtual Environments,” Proc. IEEE Int'l Conf. Multimedia Systems, 1996.
[26] M.R. Macedonia, M.J. Zyda, D.R. Pratt, and P. Barham, “Exploiting Reality with Multicast Groups: A Network Architecture for Large Scale Virtual Environments,” Proc. 11th DIS Workshop Standards for the Interoperability of Distributed Simulation, pp. 503-510, Sept. 1994.
[27] R. Muntz, J.R. Santos, and S. Berson, “RIO: A Real-Time Multimedia Object Server,” ACM Performance Evaluation Rev., vol. 25, no. 2, pp. 29-35, Sept. 1997.
[28] R.R. Muntz, J. Renato Santos, and S. Berson, “A Parallel Disk Storage System for Realtime Multimedia Applications,” J. Intelligent Systems, vol. 13, no. 12, 1998.
[29] B. Nour-Omid, A. Raefsky, and G. Lyzenga, “Solving Finite Element Equations on Current Computers,” Parallel Computations and their Impact on Mechanics, pp. 299-227, 1986.
[30] C.-W. Qu and S. Ranka, “Parallel Incremental Graph Partitioning,” IEEE Trans. Parallel and Distributed Systems, vol. 8, no. 8, pp. 884–896, 1997.
[31] O. Stahl and M. Anderson, “DIVE: A Toolkit for Distributed VR Applications,” Swedish Inst. of Computer Science, SICS. 2001.
[32] H. Simon, “Partitioning of Unstructured Mesh Problems for Parallel Processing,” Proc. Conf. Parallel Methods on Large Scale Structural Analysis and Physics Applications, 1991.
[33] M.M. Syslo, N. Deo, and J.S. Kowalik, Discrete Optimization Algorithms. Prentice-Hall, 1983.
[34] R.C. Waters and J.W. Barrus, “The Rise of Shared Virtual Environments,” IEEE Spectrum, pp. 20-25, Mar. 1997.
[35] W.L. Winston, Introduction to Mathematical Programming—Applications and Algorithms. Duxbury Press, 1995.
[36] R. Williams, "Performance of Dynamic Load-Balancing Algorithm for Unstructured Mesh Calculations," Concurrency, vol. 3, pp. 457-481, 1991.

Index Terms:
distributed virtual environment, scalability issue, partitioning algorithm, load balancing, communication reduction, linear optimization
J.C.S. Lui, M.F. Chan, "An Efficient Partitioning Algorithm for Distributed Virtual Environment Systems," IEEE Transactions on Parallel and Distributed Systems, vol. 13, no. 3, pp. 193-211, March 2002, doi:10.1109/71.993202
Usage of this product signifies your acceptance of the Terms of Use.