A grid representation for Distributed Virtual Environments

Similar documents
A New Approach to Execution Time Estimations in a Hardware/Software Codesign Environment

Scheduling of Independent Tasks in Cloud Computing Using Modified Genetic Algorithm (FUZZY LOGIC)

March 19, Heuristics for Optimization. Outline. Problem formulation. Genetic algorithms

A Rank-based Hybrid Algorithm for Scheduling Dataand Computation-intensive Jobs in Grid Environments

Graph Coloring Algorithms for Assignment Problems in Radio Networks

Fuzzy Inspired Hybrid Genetic Approach to Optimize Travelling Salesman Problem

Evolutionary Computation Algorithms for Cryptanalysis: A Study

ADAPTIVE AND DYNAMIC LOAD BALANCING METHODOLOGIES FOR DISTRIBUTED ENVIRONMENT

Task Allocation for Minimizing Programs Completion Time in Multicomputer Systems

Improving the Performance of Partitioning Methods for Crowd Simulations

Genetic Algorithm for Circuit Partitioning

Simulated Annealing. Slides based on lecture by Van Larhoven

Research on Applications of Data Mining in Electronic Commerce. Xiuping YANG 1, a

Santa Fe Trail Problem Solution Using Grammatical Evolution

Introduction to Design Optimization: Search Methods

Meta- Heuristic based Optimization Algorithms: A Comparative Study of Genetic Algorithm and Particle Swarm Optimization

HETEROGENEOUS COMPUTING

Introduction (7.1) Genetic Algorithms (GA) (7.2) Simulated Annealing (SA) (7.3) Random Search (7.4) Downhill Simplex Search (DSS) (7.

Genetic Algorithm for FPGA Placement

Research Incubator: Combinatorial Optimization. Dr. Lixin Tao December 9, 2003

entire search space constituting coefficient sets. The brute force approach performs three passes through the search space, with each run the se

Application of Genetic Algorithms to CFD. Cameron McCartney

Evolutionary Algorithms. CS Evolutionary Algorithms 1

SPATIAL OPTIMIZATION METHODS

Time Complexity Analysis of the Genetic Algorithm Clustering Method

Evolutionary Algorithm for Embedded System Topology Optimization. Supervisor: Prof. Dr. Martin Radetzki Author: Haowei Wang

Lecture 4. Convexity Robust cost functions Optimizing non-convex functions. 3B1B Optimization Michaelmas 2017 A. Zisserman

Optimal Wireless Sensor Network Layout with Metaheuristics: Solving a Large Scale Instance

An Evolutionary Algorithm for Minimizing Multimodal Functions

Gradient Descent. 1) S! initial state 2) Repeat: Similar to: - hill climbing with h - gradient descent over continuous space

A HYBRID APPROACH IN GENETIC ALGORITHM: COEVOLUTION OF THREE VECTOR SOLUTION ENCODING. A CASE-STUDY

A hybrid algorithm for grid task scheduling problem

Active contour: a parallel genetic algorithm approach

Real-time grid computing for financial applications

Attribute Selection with a Multiobjective Genetic Algorithm

Hardware/Software Codesign

Metaheuristic Optimization with Evolver, Genocop and OptQuest

Genetic Algorithm for Job Shop Scheduling

Using Simulated Annealing for knot placement for cubic spline approximation

Administrative. Local Search!

Random Search Report An objective look at random search performance for 4 problem sets

Grid-Based Genetic Algorithm Approach to Colour Image Segmentation

Meshlization of Irregular Grid Resource Topologies by Heuristic Square-Packing Methods

CAD Algorithms. Placement and Floorplanning

ISSN: [Keswani* et al., 7(1): January, 2018] Impact Factor: 4.116

Particle Swarm Optimization to Solve Optimization Problems

A New Genetic Clustering Based Approach in Aspect Mining

A Real Coded Genetic Algorithm for Data Partitioning and Scheduling in Networks with Arbitrary Processor Release Time

A Parallel Evolutionary Algorithm for Discovery of Decision Rules

On the interconnection of message passing systems

Data Mining Chapter 8: Search and Optimization Methods Fall 2011 Ming Li Department of Computer Science and Technology Nanjing University

Global Optimization. for practical engineering applications. Harry Lee 4/9/2018 CEE 696

C 1 Modified Genetic Algorithm to Solve Time-varying Lot Sizes Economic Lot Scheduling Problem

Local Search and Optimization Chapter 4. Mausam (Based on slides of Padhraic Smyth, Stuart Russell, Rao Kambhampati, Raj Rao, Dan Weld )

A012 A REAL PARAMETER GENETIC ALGORITHM FOR CLUSTER IDENTIFICATION IN HISTORY MATCHING

A TOPOLOGY-INDEPENDENT MAPPING TECHNIQUE FOR APPLICATION-SPECIFIC NETWORKS-ON-CHIP. Rafael Tornero, Juan M. Orduña. Maurizio Palesi.

Solving A Nonlinear Side Constrained Transportation Problem. by Using Spanning Tree-based Genetic Algorithm. with Fuzzy Logic Controller

Parameter Control of Genetic Algorithms by Learning and Simulation of Bayesian Networks

Introduction. A very important step in physical design cycle. It is the process of arranging a set of modules on the layout surface.

An evolutionary annealing-simplex algorithm for global optimisation of water resource systems

Escaping Local Optima: Genetic Algorithm

Hybrid Particle Swarm-Based-Simulated Annealing Optimization Techniques

Reducing Graphic Conflict In Scale Reduced Maps Using A Genetic Algorithm

Local Search (Greedy Descent): Maintain an assignment of a value to each variable. Repeat:

Genetic Algorithm Based Template Optimization for a Vision System: Obstacle Detection

A Simple and Efficient Mechanism to Prevent Saturation in Wormhole Networks Λ

Multi-objective Evolutionary Fuzzy Modelling in Mobile Robotics

Local Search and Optimization Chapter 4. Mausam (Based on slides of Padhraic Smyth, Stuart Russell, Rao Kambhampati, Raj Rao, Dan Weld )

Local Search and Optimization Chapter 4. Mausam (Based on slides of Padhraic Smyth, Stuart Russell, Rao Kambhampati, Raj Rao, Dan Weld )

Hybridization EVOLUTIONARY COMPUTING. Reasons for Hybridization - 1. Naming. Reasons for Hybridization - 3. Reasons for Hybridization - 2

Evolutionary Computation. Chao Lan

Job Scheduling on Computational Grids Using Fuzzy Particle Swarm Algorithm

K-Consistency. CS 188: Artificial Intelligence. K-Consistency. Strong K-Consistency. Constraint Satisfaction Problems II

Segmentation of Noisy Binary Images Containing Circular and Elliptical Objects using Genetic Algorithms

IEEE TRANSACTIONS ON EVOLUTIONARY COMPUTATION, VOL. 5, NO. 1, FEBRUARY

Application of Micro-Genetic Algorithm for Task Based Computing

Experiments with Scheduling Using Simulated Annealing in a Grid Environment

Solving Traveling Salesman Problem Using Parallel Genetic. Algorithm and Simulated Annealing

Artificial Intelligence

Design of Good Bibimbap Restaurant Recommendation System Using TCA based on BigData

A Genetic Algorithm for Graph Matching using Graph Node Characteristics 1 2

A Modified Genetic Algorithm for Process Scheduling in Distributed System

Job Shop Scheduling Problem (JSSP) Genetic Algorithms Critical Block and DG distance Neighbourhood Search

A *69>H>N6 #DJGC6A DG C<>C::G>C<,8>:C8:H /DA 'D 2:6G, ()-"&"3 -"(' ( +-" " " % '.+ % ' -0(+$,

Learning Adaptive Parameters with Restricted Genetic Optimization Method

International Journal of Digital Application & Contemporary research Website: (Volume 1, Issue 7, February 2013)

Combining In-Transit Buffers with Optimized Routing Schemes to Boost the Performance of Networks with Source Routing?

The Simple Genetic Algorithm Performance: A Comparative Study on the Operators Combination

Using Genetic Algorithm with Triple Crossover to Solve Travelling Salesman Problem

Energy-Aware Scheduling of Distributed Systems Using Cellular Automata

Efficiency of Parallel Genetic Algorithm for Solving N-Queens Problem on Multicomputer Platform

ARTICLE IN PRESS. Analyzing communication overheads during hardware/software partitioning

A Practical Scalable Distributed B-Tree

Chapter 14 Global Search Algorithms

Advanced A* Improvements

Non-deterministic Search techniques. Emma Hart

A Level-wise Priority Based Task Scheduling for Heterogeneous Systems

A Genetic Approach for Distributing Semantic Databases of Crowd Simulations

Investigation of Simulated Annealing, Ant-Colony and Genetic Algorithms for Distribution Network Expansion Planning with Distributed Generation

Combinatorial Double Auction Winner Determination in Cloud Computing using Hybrid Genetic and Simulated Annealing Algorithm

Transcription:

A grid representation for Distributed Virtual Environments Pedro Morillo, Marcos Fernández, Nuria Pelechano Instituto de Robótica, Universidad de Valencia. Polígono Coma S/N. Aptdo.Correos 22085, CP: 46071 Valencia, Spain {Pedro.Morillo,Marcos.Fernandez,Nuria.Pelechano}@uv.es Grid Computing and Distributed Virtual Environments (DVE) have evolved together in the development of high performance 3D real-time applications. A grid system ([2]), composed of a network of heterogeneous computers, is the logical framework to simulate a virtual world that is shared by thousands of users. In a DVE system a collection of users are working on different computers connected to the Internet running an interactive 3D graphic program that simulates a virtual scene. Each user is represented in the virtual environment by a humanoid called avatar. Since this system supports visual interactions between multiple users in the shared 3D virtual environment, every change in the simulation has to be propagated to other participants. These participants are located in another computers within the grid system. In order to handle an important number of avatars in the simulation, traditional architectures for these applications are based on a central server model. In this model clients communicate with a central server, which manages the entire system and informs clients of any updates and changes in the state of avatars and objects. Clients only communicate with the stand-alone server, which contains the entire scene database and tracks all objects of interest within the system. The server processes all input from each client, and dispatches the changes in the environment to each user. In [1], several driving simulators, as example of DVE, based on this model are analyzed. Different tests have demonstrated that these systems cannot support more than a hundred of avatars simultaneously. Nowadays, because of grid methodologies, the way of developing these systems has changed. Instead of maintaining the whole simulation within a central computer, this is distributed among all the avatars that are currently running. Each of them controls and simulates his surrounding part of the scene and sends data to an arbiter node. This new methodology, named server-network architecture, has let to develop DVE systems with a large number of avatars geographically distanced. Offering low latency performance, proposed architecture allocates three thousand avatars over Internet in real time. With this scheme, every avatars are sharing the same resources in the 3D virtual scene and the bottleneck within the central simulator is avoided. As figure 1 shows, these DVE contain a large set of clients and servers, where each client needs to be attached to one of the servers (arbiters). When a client is updated it has to propagate a message through its server to the rest of clients within a certain area of interest. With this scheme, there are two kinds of communication mes-

sages in a DVE system, fast inner-server communications when both the sender and receiver are allocated in the same server, and long inter-server otherwise. Fig. 1. Basic DVE communication model DVE applications achieve to simulate large-scale virtual worlds through dispersed and heterogeneous computational resources. However, there are several key issues in these systems that should still be improved in order to design a scalable and costeffective DVE. One of these key issues is the partitioning problem. This hot research problem consists in efficiently assigning the clients (3-D avatars) to the server nodes in the grid of computers. Good solutions to this grid task provide low latency and high scalability to the DVE system. The partitioning problem deals with finding the best way to attach clients to servers in order to reduce the workload of messages within the grid network. Two parameters, one describing the client s workload and the other one describing the innerserver communication cost give the goodness of a client s partition. This paper shows the behavior of DVE in grid systems and proposes two methods to solve the partitioning problem. These methods are based on evolutive computation where a heuristic search scheme using Genetic Algorithms and Simulated Annealing are used to obtain good clustering solutions. As it is described in [4], Genetic Algorithms (GA) provide a learning method based on the idea of evolution by natural selection. GA start creating a population of presolution that will evolve generation by generation until it achieves a good quality population of post-solutions. In order to solve the partitioning problem, the GA will start from an initial set of elements describing a possible configuration for the partitioning of the DVE and will evolve applying iteratively crossovers and mutations. The solution proposed needs to adapt the following factors of the general GA: a) A pattern recognition method based on Graph-Theoretic has been adapt to obtain a good initial solutions set. b) The number of generations to be done has been bound in order to reduce the cost of the algorithm without increasing its computational time.

c) A cost evaluation function is used in each iteration to choose the N elements with lower value so that it ensures better performance of the algorithm. Then a crossover is applied between two randomly chosen boarder avatars. d) Once the child-vector has been obtained, the mutation process is applied. This mutation involves changing at random the server assigned to one of the elements of the population. This process is used to escape from local minima. After several tests it has been found that the mutation of just one bit is the one giving best results. The second solution is based on Simulated Annealing (SA). SA is a Monte Carlo approach for minimizing multivariate functions. The term SA derives from the roughly analogous physical process of heating and then slowly cooling a substance to obtain a strong crystalline structure. For the partitioning problem, proposed SA approach obtains an initial assignment of clients to servers nodes in the grid. Iteratively, the performed solutions are constructed by imposing a random displacement in the assignment of clients to servers. If the efficiency of this new state, called energy is lower than that of the previous one, the change is accepted unconditionally and the system is updated. If the energy is greater, the new configuration is accepted probabilistically. This procedure allows the system to move consistently towards lower energy states, yet still avoids local minima due to the probabilistic acceptance of some upward moves. Number of iterations and cooling schedule were characterized in the process to obtain high-quality agrupations. In order to compare proposed partitioning solutions, two different virtual scenes have been defined. Obtained from literature, the first scene, SMALL, is composed of 13 avatars to be assigned to 3 servers in a square divided in 4x4 cells. The second scene, LARGE, contains 2500 avatars and 8 servers along a square world of 25x25 cells. For these DVE descriptions, the main reference in this field (called Lui-Chan algorithm and described in [3]) was compared with the presented approaches. The results obtained for both scenes are shown in the following tables: Table 1. Results in virtual Worlds (SMALL) (a) Avatars in a Uniform Distribution Exhaustive Alg. 3.411 6.54 Lui-Chan Alg. 0.0009 6.56 Genetic Alg. 0.002 6.54 S.A. Alg. 0.004 6.54 (b) Avatars in a Skewed Distribution Exhaustive Alg. 3.843 7.04 Lui-Chan Alg. 0.0010 8.47 Genetic Alg. 0.003 7.04 S.A. Alg. 0.005 7.46 Table 2. Results in virtual Worlds (LARGE) (a) Avatars in a Uniform Distribution Lui-Chan Alg. 30.939 1637.04 Genetic Alg. 6.598 1779.76 S.A. Alg. 6.35 1707.62 (b) Avatars in a Skewed Distribution Lui-Chan Alg. 32.176 3460.52 Genetic Alg. 14.593 2825.64 S.A. Alg. 13.789 2628.46

(c) Avatars in a Clustered Distribution Exhaustive Alg. 4.783 7.91 Lui-Chan Alg. 0.0011 8.76 Genetic Alg. 0.005 7.92 S.A. Alg. 0.004 7.91 (c) Avatars in a Clustered Distribution Lui-Chan Alg. 43.314 5903.80 Genetic Alg. 29.198 4905.93 S.A. Alg. 29.620 4697.61 The tables above show the performance of the different algorithms used. For the case of SMALL worlds, since a full solution tree scanning requires only to explore 3 13 different solutions, it is also possible to apply an exhaustive algorithm in order to compare the different computational times obtained. However it is not feasible to apply an exhaustive algorithm for the case of LARGE worlds where the solution tree has a dimension of 8 2500. These results have been obtained using a grid system composed of a network of PC-based computers. Nowadays, this grid system is installed at the University of Valencia. Although having a heterogeneous network, all the nodes satisfy some basic graphics requirements which are being Pentium IV processors with an nvidia graphic card. The experiments performed in the proof-of-concept system demonstrate that the proposed algorithm obtains better quality solutions than the Lui-Chan solution for the same context tests. Moreover it also achieves better scalability in large-scale DVE systems since it presents lower execution time as the virtual world sized is increased. Basic References 1. M. Fernandez, G. Martin, I. Coma and S. Bayarri. An Architecture for Optimal Management of the Traffic Simulation Complexity in a Driving Simulator". Progress In System and Robot Analysis and Control. Edit. Springer-Verlag.1999. 2. I. Foster, C. Kesselman, eds.the Grid: Blueprint for a New Computing Infrastructure. Morgan Kaufmann, San Francisco, California. 1999 3. Jonh C.S. Lui, M.F. Chan. An Efficient Partitioning Algorithm for Distributed Virtual Environment Systems. IEEE Transactions on Parallel and Distributed Systems, Vol. 13, Nº3, March 2002 4. Zbigniew Michalewicz. Genetic Algorithms + Data Structures = Evolution Programs, Springer-Verlag, Second Edition, 1992