Methods for Division of Road Traffic Networks Focused on Load-Balancing

The road traffic simulation is an important tool for analysis and control of road traffic networks. In order to be able to simulate very large traffic networks in a reasonable time, it is possible to use a distributed computing environment. There, the combined power of multiple interconnected computers is utilized. During the adaptation of the simulation for the distributed environment, it is necessary to divide the traffic network into sub-networks, which are then simulated on particular nodes of the distributed computer. The load-balancing of the sub-networks and the communication between them are two key issues. In this paper, we compare the methods for traffic network division, which we developed. The methods are focused on load-balancing and consist of two steps – assigning of weights to the traffic lanes and the marking of traffic lanes, which shall be divided. For the first step, traffic simulations of different level of detail are utilized. For the second step, a modified breadth-first search algorithm or a genetic algorithm are utilized. The methods were thoroughly tested for their performance. Their description and the results of the tests are the main contributions of this paper.


Introduction
The road traffic simu lation is an impo rtant tool for analysis and control of road traffic networks. However, a detailed simu lation of very large networks (e.g. an entire city and larger) is still problematic due the computational and time requirements. In o rder to be able to simulate these networks in a reasonable time, the simulation can be adapted for distributed computing environ ment where co mb ined power of mu ltip le interconnected computers is utilized. During the adaptation of the simu lation, it is necessary to divide the traffic network into sub-networks, which are then simulated on particular co mputers (nodes) of the distributed computer. The load-balancing of the sub-networks and the co mmunication among them are t wo key issues of the distributed road traffic simu lation.
In this paper, the performance of several methods for road traffic network division, which we developed, is compared. All the methods are focused on load balancing of the sub-networks and can be divided into two stepsassigning weights to the traffic lanes and their marking for d ivision.
The description of various approaches to these two steps, their co mbination and testing are the main contribution of this paper.

Simulation Types
There are several types of road traffic simu lation, wh ich can be divided based on the level of detail as microscopic, mesoscopic, and macroscopic simulation.
In a microscopic simu lation, every single vehicle is considered with its own position, direction, speed, and acceleration. The vast majority of microscopic simulators use the time-stepped time-flow mechanism. This means that the entire simulation time is subdivided into sequence of equally-sized time steps. In each time step, the entire simulation state (i.e. positions of the vehicles) is recomputed [1]. The steps are usually one second long [2], [3]. The utilization of the time-stepped time-flow mechanism is relat ively unusual fro m the point of view of a general d iscrete simu lation, in which an event-driven time-flow mechanis m (d ivision of simu lation time into sequence of time-stamped events) is usually employed. Due to high detail, the microscopic simu lations are very computation-intensive, especially for large traffic networks.
The opposite side of the traffic simu lation spectrum is represented by the macroscopic simu lation, which deals only with aggregate traffic flo ws in particular roads or traffic lanes. The traffic flows are usually described by set of periodically recalcu lated parameters (e.g. mean speed and traffic density). These models are the oldest ones [4] and exist in many variat ions. Because there are no indiv idual vehicles, the macroscopic models are far less computation-consuming than their microscopic counterparts.
The mesoscopic simu lation fills the gap between the macroscopic and macroscopic simulat ions. There is a number of various traffic models, which falls in the realm of mesoscopic simulat ion, such as gas kinetic models [5] or queuing networks [6]. Both time-flow mechanis ms are commonly used. Characteristics common to the majority of mesoscopic simulat ions are the description of traffic entities at high and their interactions at low level of detail [7]. Hence, a mesoscopic simulat ion can be much faster then a microscopic simulation, although individual vehicles often exist in the simulation in some form.

Simulation Decomposition
The division of the simulated traffic network into sub-networks represents a spatial decomposition of the simu lation. Using this approach, the entire traffic network is divided into required nu mber of parts (traffic sub-networks), which are then simulated by simu lation processes running on the particular nodes of the distributed computer. It is the most co mmon approach in the field of road traffic simu lation. Ho wever, there are also other approaches, such as task parallelization and temporal decomposition. Their use in the field of traffic simu lation is rare, but some examples can be found.
The task parallelizat ion divides the simu lation program into modules, which are then running on the particular nodes of the distributed computer. In order to maximize the efficiency of the distributed simu lation, each module should consume similar amount of co mputational power [8]. However, this is problemat ic in the field of traffic simulat ion, because the major part of the co mputational power is consumed by the movement of the vehicles and collection of the statistical data. Hence, the task parallelization is used only in special cases of road traffic simu lation (e.g. in [9]).
The temporal deco mposition divides the simulat ion time into intervals, wh ich are then simulated by the simu lation processes on particular nodes of the distributed computer. So, each process simu lates entire simu lation (i.e. entire traffic network in case of road traffic simu lation) but only for one time interval. The main d isadvantage of this approach is that the states on the boundaries of the intervals may not match, especially in case of road traffic simu lation, whose states are very complex. Nevertheless, an attempt to bring the temporal deco mposition to the field of road traffic simu lation can be found in [10].

Inter-process Communication
In the reminder of the text, only the spatial decomposition (i.e. div ision of traffic network into required nu mber of sub-networks) will be considered.
Although the traffic network is divided, the resulting sub-networks should remain interconnected by set of traffic lanes. However each sub-network is restricted by the process, which performs its simulat ion. To ensure passing of vehicles in the connecting lanes, the processes must communicate each other [11]. So, the vehicles are transferred in the form of messages among the simulation processes [12].
In order to maintain the consistency of the simulation, all processes must perform the same t ime step at the same mo ment. Otherwise a causality erro r (i.e. arrival of a vehicle in an incorrect time step) can occur [1]. This is ensured by synchronization of the processes, which requires additional messages to be sent. Both the transfer of vehicles and the synchronization of the simulat ion are ensured by a communication protocol.

Microscopic Road Traffic Simulator for Testing
The developed methods for division of road traffic network, which will be described later in the text (see Section 4 and Section 5), were tested using the Distributed Urban Traffic Simulator (DUTS) developed at Depart ment of Co mputer Science and Engineering of University of West Bohemia (DSCE UWB).
The DUTS system is a discrete microscopic time step simu lator of urban traffic, which is able to be preformed on a single-processor or on a distributed computer [11].

Traffic Network Division Approaches
Now, as we d iscussed the issues of the distributed road traffic simu lation, we can focus on the division of the road traffic network. The div ision method should consider two issuesthe resulting load of the sub-networks and the resulting inter-process commun ication. The load-balancing of the sub-networks is important for similar speed of the simu lation processes, because the slowest process slows down the entire simu lation (due to the synchronization). The minimal inter-process communicat ion is important, because it is much slower than the reminder of the simulation's computations. Hence, an intensive inter-process communicat ion can significantly affect the resulting performance of the distributed simu lation [13].
The existing approaches to the traffic network d ivision are usually focused on first or second issue, but can be also focused on both or neither. The issues are usually not considered during the traffic network division if the implementation of the d istributed simu lator is focused on solving of other issues, such as in [14]. Ho wever, a convenient traffic network div ision can significantly influence the resulting speed of the distributed road traffic simu lation (see Section 6. 2) The examp les of t raffic network d ivision are described in following sections.

Di vision i nto Equally-sized Rectangul ar Pieces
The division into geographically equally-sized pieces is the easiest solution, which neglect any optimizat ion. An example of this approach can be found in the ParamGrid simu lator [15], where the traffic network is divided into grid of rectangular p ieces. This allows the simu lation to be watched on a grid of displays. Each display is connected to one node of the distributed computer [15]. So, with proper hardware equip ment, it is possible to watch the simu lation of large areas online.
The main disadvantage of this approach is that the densities of traffic lanes in particular rectangular pieces and traffic density in the lanes are not considered [12]. Hence, the number of vehicles in various rectangular pieces can be very different, wh ich can lead to slow down of the simulation. Also, the nu mber of div ided traffic lanes is not considered. This can lead to a very intensive inter-process communicat ion [13]. Nevertheless, this approach is utilizable for traffic networks where the traffic lane density and traffic densities in the lanes are more or less uniform [12].

Mini mization of Neighbours Count
A more advanced approach can be found in the TRA N-SIMS simulator [2]. Th is approach is focused on minimization of the neighbours count and divided traffic lanes count using graph partitioning methods (e.g. orthogo-nal recursive bisection). Nevertheless, the load-balancing of the resulting sub-networks is also partially considered, since the traffic network is divided into sub-networks of similar size. This size is calculated as the accumulat ive length of the lanes in the sub-networks [2].
The size of the traffic network, as defined in this method, can be problematic, because the traffic densities in the lanes are neglected. So, if there were very different traffic densities in various traffic lanes, the nu mbers of vehicles in the resulting sub-networks would be unbalanced [11]. This would lead to different speeds of the simu lation processes and thus to slow down of the entire d istributed simulat ion.

Load-bal ancing of Sub-networks during Di vision
The issue mentioned in prev ious section is solved in the UMTSS simu lator [16]. Similar to the TRA NSIM S simu lator, a recursive bisection method is used for traffic network division. Ho wever, besides the length of the traffic lanes, the vehicle density in the lanes is also considered. The information of the vehicle density in the traffic lanes is estimated using the drivers' route choice decision and the origin-destination matrix [16].
Another approach, wh ich is focused on load-balancing of the resulting traffic sub-networks, can be found in the vsim simu lator [3]. There, the division is performed using the numbers of vehicles moving within the part icular traffic lanes of the divided traffic network. These weights of the traffic lanes are collected during one sequential simu lation run [3]. This enables a division into load-balanced sub-networks for d istributed simulat ion runs. It is a static load-balancing, since it is performed only once.
The main problem of this approach is the collection of the numbers of vehicles. If the simulation is intended to be distributed (the very reason for the division of traffic network), its sequential simulation run can be difficult to perform due to memory and time requirements [11]. Also, the number of div ided traffic lanes is not considered during the traffic network div ision.

Load-bal ancing of Sub-networks during Si mulation
A different approach to load-balancing of the sub-networks is to perform the traffic netwo rk div ision repeatedly directly during the simulat ion run rather than prior it. So, the div ision can be adapted based on the current load of the particular traffic sub-networks.
This dynamic load-balancing is utilized for example in [17]. There, the simulat ion run is div ided into time intervals. The simulation is controlled by a master process and performed by the wo rking processes. At the beginning of every time interval, the traffic network is divided using the prediction of the load of the particu lar traffic crossroads based on the load in the previous time interval. This division is performed sequentially by the master process and the resulting sub-networks are assigned to the working processes [17]. So, in every time interval, the traffic sub-networks are load-balanced.

Methods for Weights Assigning
Although the dynamic load-balancing of the traffic sub-networks ensures optimal d ivision during the entire simu lation run (see Section 3.4), it has also a non-negligib le overhead. This overhead is caused by the repeated traffic network div ision directly during the simu lation run. This means not only additional co mputations performed usually sequentially by a central master process [17], but also additional inter-process communication, since the updates of the traffic network division must be delivered to the part icular simu lation processes.
For the reasons mentioned in previous paragraph, we have decided to focus on static load-balancing of the resulting traffic sub-networks. The traffic network division method used in the vsim simulator (see Section 3.3) has an issue regarding the difficult co llect ion of the numbers of vehicles in traffic lanes. However, it offers a good load-balancing of the resulting traffic sub-networks, because the division is based on the data acquired directly fro m the simu lation. Hence, it served as an inspiration for the traffic network d ivision methods, which we developed. Their general idea is to use a less-detailed simu lation for assigning of the weights to the traffic lanes in a reasonable time. Using these weights, the traffic network can be divided into load-balanced sub-networks.
So, the process of traffic network d ivision consists of two separate phasesthe assigning of the weights to the traffic lanes (WA) and the marking of traffic lanes, wh ich will be eventually div ided (MTL). Orig inally, we developed three methods for traffic network div ision where each method utilized a different simulat ion for assigning of the weights and a different algorithm for marking of traffic lanes. However, since the t wo phases are separate, the methods were reconstructed and it is now possible to select the first and the second phase separately and combine various approaches.
Three methods for assigning of the weights to the traffic lanes are described in the reminder of this section. Two methods for marking of traffic lanes are described in Section 5. All methods are implemented in the DUTS Editor, a system for design and division of traffic networks for the DUTS system. Similar to the DUTS system, the DUTS Ed itor was developed at DSCE UWB.

Macroscopic-simulati on-based Weights Assigning
The Macroscopic-simulat ion-based weights assigning (MaSBWA) method utilizes a macroscopic simu lation. The vehicle density of the traffic flo ws in particu lar traffic lanes are used for calculation of the traffic lanes' weights. The macroscopic simulation utilized in the MaSBWA method is inspired by the macro-JUTS model designed for the hybrid traffic model of the JUTS (Java Urban Traffic Simulator) system [18], which was also developed at DSCE UWB.
In the simulation, each traffic lane is divided into small segments (S) of the same size (Δx). Each segment has its own parameters of the traffic flowthe mean speed (v) and the vehicle density (ρ). The parameters of each segment are recalculated once per time step, whose length is preset to 2 seconds of the simu lation time. The parameters of each segment are calcu lated using the parameters of the preceding segment (see Figure 1) [11].  The parameters of traffic flows incoming to the simulated area are generated using generators, which can produce deterministic traffic flows or stochastic traffic flo ws with exponential distribution. Depending on the flows, the entire simu lation can be either deterministic or stochastic with exponential distribution [11].
Using the macroscopic simu lation, each traffic lane can be assigned by a weight, which is calculated as the average sum of vehicle densities in all seg ments of the lane. The weight w i of the ith lane can be calculated as: , where R is the number of simulat ion runs, N is the number of steps of one simu lation run, n i is the number of segments of the ith lane and ρ ijkl is the vehicle density in the jth segment of the ith lane in the kth time step of the lth run.
If the simu lation is deterministic, one simulation run is sufficient fo r calculation of the weights, since all simu lation runs are identical. If the simu lation is stochastic, several simu lation runs are required to ensure fidelity of the calculated weights. Nevertheless, it has been determined that the deterministic simu lation gives the same or even better results than the stochastic simulat ion. Contemporary, it is much faster [19]. Hence, the determin istic simulat ion is used in the MaSBWA method. For mo re detailed description, see [11].

Mesoscopic-simul ati on-based Weights Assigning
The Mesoscopic-simulation-based weights assigning (MeSBWA) method utilizes a mesoscopic simulat ion, which is based on a simp le Nagel-Schreckenberg's cellular automaton for freeway traffic [20].
In the simu lation, each traffic lane consists of equally-sized traffic cells. The cells are 7.5 meter long and can be either empty or occupied by a single vehicle [20]. Each vehicle is represented as an integer value expressing its current speed (see Figure 3). The speeds of the vehicles are exp ressed in cells per time step (c/ts). They are recalculated and the vehicles' positions accordingly shifted once per time step using four basic rules acceleration, deceleration, randomization, and movement. The first three rules ensure the accelerat ion of the vehicle to the maximal speed, the deceleration if there is an obstacle in the way (e.g. a slower vehicle), and a rando m deceleration in order to simulate the natural fluctuation of the speed. The last rule only shifts the vehicles in the lane accordingly [19].
The crossroads are constructed as routers of vehicles fro m the inco ming to the target outgoing traffic lanes. The target traffic lane for a vehicle is determined using the possible travel d irection, branching probability, and pseudo-random number generators. The passing of the vehicles through the crossroad is not modelled. Ho wever, the right of way and the information about the main road are used for ordering of the vehicles. Moreover, the vehicles are not allowed to pass the crossroad until there is a free cell in the target outgoing traffic lane (see Figure 4) [19]. Traffic lights are also modelled if necessary. The vehicles inco ming to the simulated area are generated using generators, which produce stochastic traffic flows with exponential distribution. So, the entire simu lation is stochastic [19]. Un like the MaSBWA method, a determin istic version is not implemented.
Using the mesoscopic simulat ion, each traffic lane is assigned by a weight calculated as the mean number of vehicles mov ing within the lane during the simulat ion run. The weight w i of the ith lane can be calculated as: , where R is the number of simulat ion runs, N is the number of steps of one simulation run, and V ijk is the nu mber of vehicles in ith traffic lane in jth time step of the kth simula-tion run. Due to the stochastic nature of the MeSBWA simulation, it is necessary to perform several simu lation runs to ensure fidelity of the calculated weights. Based on the performed tests, it has been determined that the utilization of ten simulation runs offers sufficient fidelity fo r the traffic network division purposes. For more details, see [19].

Microscopic-simulati on-based Weights Assigning
The Microscopic-simulation-based weights assigning (MiSBWA) method utilizes directly the microscopic simulation of the DUTS system. So, the microscopic simu lation is not implemented in the DUTS Editor. Instead, the statistics of the number of vehicles moving within the traffic lanes in a simu lation run are stored to a XML file, which can be then loaded by the DUTS Ed itor as the data source for the MiSBWA method. Hence, this method is very similar to the method used in the vsim simulator [3] (see Section 3.3).
Using the data from the microscopic simulation, the weights are calculated similar to the MeSBWA method (the same equation is usedsee Equation (2)). A lso, it is necessary to perform several simu lation runs to guarantee the fidelity of the calcu lated weights. Again, similar to the MeSBWA method, ten simu lation runs are co mmonly used. For more info rmation, see [21].

Methods for Traffic Lanes Marking
Now, as we briefly described the methods for assigning weights to traffic lanes, we can proceed with the methods for marking of traffic lanes, which shall be divided. We have developed two methods, wh ich emp loy a mod ified breadth-first search or a genetic algorith m.
The input of both methods is the traffic network with traffic lanes assigned by weights using any of the weight assigning methods (see Section 4). Both methods are described in following sections.

Modified Breadth-First Search
The Modified breath-first search marking of traffic lanes (MBFSMTL) method employs a modification of a standard breadth-first searching algorithm for graph explo ration [22] for division of the road traffic network. Its primary objective is to create load-balanced sub-networks. However, the number of divided traffic lanes is also considered.
The MBFSMTL method starts with the calculat ion of the sum of all weights of the traffic lanes (total weight). Based on this total weight and the required number of sub-networks, the total weight per sub-network can be easily calcu lated. With these two values, it is possible to proceed with modified breadth-first searching of the traffic network, which is considered as a weighted graph for this purpose. The crossroads are the nodes and the sets of lanes connecting the neighbouring crossroads are the weighted edges (see Figure 5) [11]. At the beginning, a crossroad is selected as the starting node of the breadth-first search algorith m. Th is crossroad is assigned by the current sub-network ID, wh ich is zero at this point. As the breadth-first search is performed, mo re and mo re nodes are beco ming exp lored and assigned by the current sub-network ID. A lso, the weights of all lanes neighbouring to the explored crossroad are added to the current sub-network's current weight. When this value reaches the total weight per sub-network, the current sub-network ID is incremented and the current sub-network's current weight is set to zero. This repeats until all crossroads are exp lored.
Once all crossroads are assigned by the sub-network IDs, the marking of t raffic lanes is easy. It is sufficient to mark the lanes connecting crossroads with different IDs [11]. The entire algorith m is described using pseudocode in Figure 6.

Genetic Algorithm
The Genetic algorith m marking of traffic lanes (GAMTL) method employs a standard genetic algorith m [23] for a mu lti-objective division of the traffic network. The two objectives are the minimal nu mber of divided traffic lanes and the load-balancing of the sub-networks.
Genetic algorithms are generally convenient for the mu lti-objective optimizat ion problems [24]. They mimic the natural genetic evolution and selection in nature. This means that a single solution of a problem (an individual) is represented as a vector of boolean or integer values. An initial set of the indiv iduals (initial population) is most often randomly generated. The individuals are then crossed and mutated in order to produce a new population. A fitness function is then calculated for each individual and the individuals with best fitness are selected to be parents of the next population [25]. The entire p rocess repeats until a stop condition is fulfilled or a preset number of iteration is reached [25].
The GAMTL method assigns the crossroads to the particular sub-networks, similar to the MBFSMTL method (see previous section). Hence, an individual is represented by a vector of integers with length corresponding to the total number of crossroads (K). Each integer then represents the assigning of the corresponding crossroad to the sub-network and the maximal value at any index of the vector corresponds to the number of required sub-networks (M) (see Figure 7). The in itial population is rando mly generated, wh ich means that, in each individual, the crossroads are randomly assigned to particular traffic sub-networks. Using the fitness function, crossover, and mutation, the assignment of the crossroads in the individuals changes toward a solution where the sub-networks are load-balanced (based on the weights of the traffic lanes) and the number of divided traffic lanes is min imal [26].
The fitness function is used for objective assessment of each individual. It consists of two partsthe equability, which represents the load-balancing of the sub-networks, and the compactness, which represents the min imal number of traffic lanes.
The equability of an indiv idual can be calcu lated using the total weights of the particular sub-networks as: , where E is the equability of an indiv idual, is the mean total weight of one sub-network, w Si is the total weight of the ith sub-network, and M is the nu mber of sub-networks. The total weight of the ith sub-network w Si can be calculated using the weights of the traffic lanes and the assignment of the crossroads to the sub-networks fro m the individual, for wh ich the equability is calcu lated. The algorith m is described in Figure 8 using presudocode. The compactness of an indiv idual can be calculated as the ratio of the number of undivided traffic lanes and the total number of traffic lanes. So, it can be exp resses as: , (4) where C is the compactness, L D is the number of d ivided lanes, and L is the total number of lanes. The equability tends to prefer divisions into load-balanced sub-networks regardless the number of divided traffic lanes. On the contrary, the co mpactness tends to prefer divisions with minimal nu mber of div ided traffic lanes. Because the requirements for the traffic network division can be different in d ifferent situations, it is possible to set ratio of the equability and the compactness in the fitness function prior to the traffic network d ivision [26]. So, the fitness function can be calculated as: , where F is the fitness function of an indiv idual, E is the equability, C is the compactness, and r E is the ratio of the equability in the fitness function, which can be set in range <0, 1>. The fitness function is applied on all individuals fro m the initial population and several individuals with best fitness are selected to be "parents" of the next generation. The size of the population is set to 90 individuals and the number of selected best individual is set to 10. These numbers have been selected based on preliminary tests and can be easily modified.
The next generation is created fro m the selected individuals using crossover and mutation. First, the crossover is applied to all possible pairs (co mbinations) of the individuals. Each pair produces two descendants, so each descendant has two parents. First descendant receives all integers of even indices fro m the first parent's vector and all integers of odd indices fro m the second parent's vector. The second descendant receives all remaining integers fro m both parents (see Figure 9). This ensures that all information incorporated in both parents is passed to the descendants. After both descendants are created, the mutation is applied to both of them. The mutation is performed by changing the random nu mber of integers to a random value restricted by the sub-networks count. The maximal nu mber of mutation per individual can be set prior the traffic network division.
The entire process of creating of new generations repeats, until a preset number of generations is reached. The result of the finished genetic algorith m is the assigning of the crossroads with ID of the sub-network, similar to the MBFSMTL method. Again, the traffic lanes connecting crossroads with different IDs are marked to be divided. For more in formation, see [26].

Tests and Results
The described methods and their co mbinations were thoroughly tested. Two sets of tests were performed. The first set of tests was focused on the speed of the methods (see Section 6.1). The second set of tests was focused on the quality of division, wh ich the methods offer. It was evaluated using the speed of the resulting distributed simu lation (see Section 6.2).

Computati onal Speed of the Methods
The speed of the described methods have been tested on a standard desktop computer (CPU Intel Core 2 Duo 2.1 GHz, 4 GB RAM, Windows XP SP3). The reason is that the methods are incorporated in a software tool for creation and division of traffic network (DUTS Editor), which is operated on standard desktop computers. Four different traffic networks were used for testing. First network was an irregular traffic network with 55 crossroads inspired by Bory district of Pilsen city (see Figure 10). The three other networks were regular square grids of 64, 256, and 1024 crossroads, respectively (see Figure 11). The length of each traffic lane (between two crossroads) in all regular networks was set to 300 meters, so the total lengths of the lanes in regular networks were 86 400 meters, 326 400 meters, and 1 267 200 meters, respectively. Figure 11. Network 2, 3, and 4 for testingregular Both methods for weight assigning (MaSBWA, MeS-BWA, and MiSBWA) and methods for marking of traffic lanes (MBFSMTL and GAMTL) were tested separately. The reason is that the methods for weight assigning were tested solely for the dependency on the size of the traffic network, but the methods for marking of traffic lanes were tested also for dependency on the number of required traffic sub-networks. The number of required traffic networks cannot influence the speed of the methods for weights assigning, since this informat ion is not used by the methods at all. On the other hand, both methods for marking of traffic lanes must use the required number of sub-networks and therefore can be affected by it.
The resulting speeds of the methods for weights as signing depending on the size of the traffic network are depicted in Figure 12. The results are also summarized in Table 1. The methods for marking of traffic lanes were, besides the dependency on the size of the traffic network, also tested for dependency on the number of sub-networks. Both dependencies of the resulting speeds of the methods are depicted in Figure 13. The results are also summarized in Ta-ble 2. For both methods for weights assigning and methods for marking of traffic lanes, the speed is measured as the mean computation time of each method calcu lated fro m ten attempts. As can be seen in Figure 12 and Table 1, the fastest method for weights assigning is the MaSBWA, wh ich was able to assign weights even for the largest traffic network under 6000 ms. The reason is that the MaSBWA is the only tested method, wh ich utilizes a single simu lation run fo r the weights assigning. The remaining two methods require several simu lation runs to be performed to ensure the fidelity of the collected weights. As could be expected, the slowest method is the MiSBWA due to the ext reme t ime requirements of ten simu lation runs of the microscopic simulat ion. Moreover, the simu lation memory requirements were at very limits of the 32 bit operating system. So, for even larger traffic networks, the utilization of the MiSBWA method would be impract ical. The microscopic simulat ion was performed direct ly in the DUTS system instead of the DUTS Ed itor (see Section 4.3), but the required time was added to the total computation time of the MiSBWA method. The computation time of the MBFSMTL method depends on the size of the divided traffic network (see Figure  13 (M BFSMTL) and Table 2). It can be also observed that it also depends on the number of resulting sub-networks, especially for larger networks. The h ighest time was required for marking of traffic lanes of network with 1024 crossroads divided into 8 sub-networks (91231 ms ). The lowest time (38 ms) was achieved for the smallest network (55 crossroads) divided into four sub-networks. The tests were prepared as follows. The traffic networks used in previous set of tests (see Section 6.1) were d ivided by all six co mbinations of methods for weights assigning and methods for traffic lanes marking. The networks were divided into two, four, and eight sub-networks. These networks were then used for distributed microscopic simulation of the DUTS system perfo rmed on the Hydra cluster and the simulat ion times were measured. The results were averaged fro m ten simulat ion runs and are depicted in Tab le 3.
Generally, the GAMTL method exhibits better quality of division than the MBFSMTL method (see last two columns of Table 3). This means that the distributed simulat ion of road traffic using the traffic network div ision by the GAMTL method is faster than using the division by the MBFSMTL method. Hence, it is more convenient to use the GAMTL method, although it is slower than the MBFSMTL method (see Section 6.1).
Regarding the methods for weights assigning, it can be observed that all methods exhib its similar quality of d ivision. This means that the selection of the method for weights assigning has a negligible effect on the resulting performance of the distributed simulat ion of road traffic. The reason is that the methods assign more-or-less similar weights to the traffic lanes [19], but are variously time-consuming. Hence, it is convenient to utilize the MaSBWA method, since it is the fasted method for weights assigning, which has been tested.
Generally, the results show that, using a convenient division of traffic networks, it is possible to achieve reduction of the simulat ion time of the distributed simulat ion (up to 22 % in this case).

Future Work
In our future work, we will continue with research of efficient methods for division of traffic network fo r distributed simulation of road traffic. More specifically, we will focus on several aspects of this issue, which are briefly described in following sections.

Optimizati on of Designed Methods
The GAMTL method has several parameters, wh ich influence the result and speed of the method. For examp le, it is the number of indiv iduals in the generation, number of selected individuals, number of mutation per individual, number of generations, and so on. All of these parameters were set manually based on the preliminary testing of the method. However, this approach does not guarantee the achievement of the optimal results.
For this reason, we plan to utilize a genetic algorith m for optimization of the parameters of the GAMTL method. This approach of "optimizing a genetic algorith m using a genetic algorith m" is likely to be very time-consuming, since it is necessary to perform entire run of the inner genetic algorith m (i.e. the GAMTL method in this case) for calculation of the fitness of one indiv idual of the outer (i.e. optimizing) genetic algorith m. However, since there is a possibility of non-negligible improvement of the GAMTL method, this approach is worth investigating.
The optimizat ion of the MBFSMTL method is also an option. In order to find the best network div ision, the method attempts to begin the breadth-first search from all crossroads of the network and select the best one. This is a time consuming process, which can be sped up by ignoring of the potentially useless attempts. A heuristic analysis and the knowledge of the traffic netwo rks topology can be helpful with this issue.

Adaptati on for Heterogeneous Environment
The methods for div ision of traffic network presented in this paper were designed for homogeneous clusters of computers. However, many organizations has a significant amount of computational power d istributed among heterogeneous (i.e. with different speeds) interconnected computers (e.g. in computer labs at technical universities). Hence, we will also focus on adaptation of the described methods for the heterogeneous distributed environment.
The methods for weights assigning do not require a modification, since they do not divide the traffic network, but rather only prepare data for the methods for marking of traffic lanes. However, the methods for marking of traffic lanes (i.e. M BFSMTL and GAMTL) would require a slight adaptation for this purpose. It is only necessary for the methods not to divide the traffic network into equally computation-consuming sub-networks, but adapt the size of each sub-network fo r the speed of the node (computer), on which the simulat ion of the sub-network will be performed.
For this purpose, it is necessary to know the speeds of all nodes, which will be used for the distributed simu lation. It should be noted that the CPU frequency is not viable as a measuring method, since there are other factors influencing the speed of the node. Hence, the speed of each node will be determined by series of the tests. These tests will uncover how large the sub-network should be for each node in order to ensure similar co mputation time of a simu lation time step for all nodes.
For initial testing, these tests will be performed manually. However, remote auto mated testing of each node is planed for the final version of this approach.
Once the speeds of particular nodes are determined, both MBFSMTL and GAMTL methods can be adapted for heterogeneous division of traffic network by changing of the total weight per sub-network (see Section 5.1) and by changing of the fitness function (see Section 5.2), respectively.

Conclusions
In this paper, the performances of several methods for division of road traffic networks were co mpared. Three methods for weights assigning and two methods for traffic lanes marking were co mb ined into six various approaches for co mplete division of traffic network into load-balanced sub-networks. All methods were thoroughly tested for their speed and quality of the traffic network div ision, wh ich they offer.
Considering the speed of the methods and the quality of division, which they offer, the best comb ination is the MaSBWA and the GAMTL methods together. As it was observed during the testing, the selection of the method for weights assigning has only a negligib le effect on the resulting performance of the distributed road traffic simulat ion. Hence, it is convenient to use the fastest method, which is the MaSBWA. Nevertheless, based on the performed tests, the selection of the method for marking of traffic lanes influences the performance of the distributed road traffic simu lation significantly. Hence, it is convenient to use the GAMTL method, wh ich creates better division of traffic network, although it is slower than the MBFSMTL method.
The investigation of the speed of the distributed road traffic simulat ion using divisions of traffic network by various methods indicates that it is possible to speed up the distributed traffic simu lation using a convenient division of the traffic network. Based on the performed tests, the difference of the co mputation times reached up to 22 %.
In our future work, we will continue with the research of the methods for division of traffic network, as described in previous section.