A Novel Method for Building Displacement Based on Multipopulation Genetic Algorithm

Owing to map scale reduction and other cartographic generalization operations, spatial conflicts may occur between buildings and other features in automatic cartographic generalization. Displacement is an effective map generalization operation to resolve these spatial conflicts to guarantee map clarity and legibility. In this paper, a novel building displacement method based on multipopulation genetic algorithm (BDMPGA) is proposed to resolve spatial conflicts. This approach introduces multiple populations with different control parameters for simultaneous search optimization and adopts an immigration operation to connect different populations to realize coevolution. The optimal individuals of each population are selected and preserved in the elite population through manual selection operation to prevent the optimal individuals from being destroyed and lost in the evolutionary process. Meanwhile, the least preserving generation of the optimal individuals is used as the termination basis. To validate the proposed method, urban building data with a scale of 1:10,000 from Shenzhen, China are used. The experimental results indicate that the method proposed in this paper can effectively resolve spatial conflicts to obtain better results.


Introduction
In automatic cartographic generalization, spatial conflicts (e.g., proximity conflicts or overlap conflicts) often occur between both the same and different features (e.g., between buildings and buildings or between buildings and roads) because of map scale reduction and other cartographic generalization operations. To resolve such conflicts, several generalization operations, such as selection [1], aggregation [2,3], elimination [4], typification [5,6], and displacement [7,8], have been used. Compared with other generalization operations, the displacement operation is the most important and frequently adopted method to resolve spatial conflicts. With the development of big data and artificial intelligence, spatial conflict solutions based on displacement operation in cartographic generalization are facing new challenges (e.g., real-time displacement) [9,10]. Therefore, it is urgent to explore more effective automatic displacement approaches.
Building displacement only slightly moves buildings from their original position to new position on the premise of ensuring positional accuracy, which does not significantly reduce the information content in a map [11]. In the process of displacement, several main issues should be considered. First, the displacement approach should try to resolve all possible spatial conflicts under the constraint of positional accuracy, which indicates that the maximum displacement distance of objects on a map should be limited to a specified range (e.g., 0.5 mm). Second, the displacement operation should avoid generating secondary conflicts after moving some map objects. Third, the displacement should maintain the spatial positional relations between individual buildings and the arrangement patterns and distribution characteristics within building groups. However, different constraints may contradict each other, and it is not possible to find a solution that satisfies all constraints completely. Instead, a feasible solution is to find the best compromise among constraints. Therefore, the problem of building displacement can be regarded as the combinatorial optimization problem satisfying multiple cartographic constraints [12], which can be solved by the heuristic search method.
The genetic algorithm (GA) [13] is a highly parallel and adaptive global optimal search algorithm based natural selection in the biological world. Because of its strong robustness and global search ability, the GA has been widely used in the cartographic generalization field, such as the geographical feature label placement problem [14], map conflation [15], feature selection [1,16], and displacement operation [17,18]. However, with the development of GA research, its shortcomings have gradually been exposed, such as premature convergence. For example, when the GA is used for the displacement of buildings to resolve spatial conflicts, the premature convergence of the GA will cause all individuals in the population to tend to be in the same state and stop evolution, resulting in the algorithm not resolving all defined spatial conflicts. Therefore, we propose a novel building displacement method based on multipopulation genetic algorithm (BDMPGA) to resolve spatial conflicts. The BDMPGA breaks through the structure of traditional GA that only relies on a single population for genetic evolution, which introduces multiple populations with different control parameters to conduct simultaneous optimization searches. The immigration operation is used to realize the information exchange among different populations to maintain the diversity of individuals in the population and obtain the optimal solution. Meanwhile, this method adopts elite retention strategy that the optimal individuals in the population are selected and preserved in the elite population through manual selection operation, and the elite population is also the basis for the termination of the algorithm.
The remainder of this article is organized as follows. Section 2 summarizes existing studies on the spatial conflict resolution by the displacement operation. Section 3 introduces the main steps of the BDMPGA. Section 4 presents the specific application of the BDMPGA in building displacement and compares it with GA and the immune genetic algorithm (IGA). Section 5 describes the conclusions of this study and future work.

Related Work
In this section, we will briefly summarize the relevant approaches of the displacement operation to resolve spatial conflicts. These approaches can be divided into two categories: sequential approaches and optimization approaches.

Sequential Approaches
For sequential approaches, first, conflicting map objects are detected by analyzing the context of the map objects. Then, the displacement vector of each conflicting object is calculated. Finally, the spatial conflicts are resolved by moving each conflicting object in turn. Lichtner [19] proposed a method to calculate the displacement vector by establishing an equation system. Mackaness [20] presented a radial displacement algorithm for the point cluster displacement issue. This method adopts cluster analysis to identify conflicting groups and uses a density function to control the displacement decay to maintain the gestalt or pattern of the cluster. Ruas [21] proposed a reactive displacement algorithm for urban area buildings. This method uses constraint analysis and result evaluation to control the displacement process and combines with other map generalization operations. To resolve the conflict between roads and buildings because of an exaggeration of the road symbol, Fei [22] proposed a special hybrid raster-vector data structure. By dividing buildings into four types, conflicts can be resolved according to corresponding strategies. Basaraner [23] proposed an iterative displacement method for buildings based on generalization zones. This algorithm first creates the generalization zones by means of Voronoi tessellation and spatial analysis techniques and then uses multiple criteria to control the displacement. Ai et al. [7,24] borrowed the idea of fields from physics discipline and established a vector field model to handle the displacement of multiple conflicts in building generalization. This approach applies the displacement force on conflicting objects and considers the displacement distance decay effect, secondary conflicts can be resolved by attractive force. Later, Zhou et al. [8] proposed a multisource force field model to resolve multiple conflicts and maintain spatial relationships of buildings.

Optimal Approaches
Compared with sequential approaches, optimization approaches consider all map objects and resolve all spatial conflicts simultaneously and can be further divided into combinatorial and functional optimization approaches.

Combinatorial Optimization Approaches
In combinatorial optimization approaches, the new locations of map objects are determined by trials, and the most commonly adopted approaches are heuristic search algorithms. Ware et al. [25] adopted simulated annealing approach and steepest gradient descent approach to resolve graphic conflicts. Through experimental comparison, the simulated annealing approach is superior with regard to the degree of conflict reduction. Afterwards, multiple generalization operators, such as displacement, size exaggeration, deletion, and size reduction, were adopted as the candidate trial positions of buildings in simulated annealing approach, which can resolve graphic conflicts more effectively [11]. Based on the same idea, Ware et al. [26] used the tabu search metaheuristic to resolve the spatial conflicts between objects after scaling and achieved near optimal solutions within practical time constraints. Wilson et al. [17,18] resolved spatial conflict by a GA that codes candidate displacement solutions as a chromosome and constructs the objective function by considering multiple cartographic constraints. The optimal solution is obtained through genetic operations, including selection, crossover, and mutation. To overcome the shortcomings of the GA, Sun et al. [27] proposed an IGA for building displacement, which considered the arrangement pattern constraint and tangent relation constraint. Huang et al. [28] presented an improved particle swarm optimization algorithm that uses the dual-inheritance framework to optimize the topologic structure of particles, and the optimal displacement solution is obtained by the niche Pareto competition mechanism.

Functional Optimization Approaches
Functional optimization approaches introduce models and ideas from other fields, such as the mechanics of materials, physics and engineering, and construct displacement mathematical equation systems (e.g., least squares adjustment method, energy minimization method, finite element method (FEM)). Compared with combinatorial optimization approaches, functional optimization approaches are more complex, the key of which is how to transform related cartographic constraints into mathematical equations.
Harries [29][30][31] proposed the constraint method for solving spatial conflicts, which expressed the constraints as linear equations and used a least squares adjustment to find the optimal solution. Since the constraints are contradictory and all constraints cannot be completely satisfied, the constraints were set to different weights according to the constraint type to obtain the optimal compromise scheme. Again, Sester [32] adopted the same idea and used least squares adjustment for the displacement and shape simplification of building groundplans.
Højholt [33] modelled the displacement as the deformation of an elastic body and proposed the FEM to handle conflicts during the generalization of maps. The FEM first discretized the whole map space though constrained Delaunay triangulation and then introduced boundary constraints to control the shape and size of objects. Because of the holistic propagation of displacement, the FEM can maintain spatial relationships and patterns. However, the FEM cannot resolve all spatial conflicts and will cause large deformations of objects.
For the linear feature displacement problem, Burghardt and Meier [34] proposed the snake algorithm to resolve spatial conflicts. In the snake model, the deformation of linear objects generates internal energy, and the conflicts between linear objects and other objects generate external energy. When the total energy is the minimum, the linear objects obtain the optimal position and shape. The snake model is very suitable for the displacement of linear objects because it considers the propagation of the displacement, which can maintain the shape of linear objects during the displacement. Later, Wang et al. [35] combined the snake model into a multi-agent process to resolve multiple types of spatial conflicts and obtained good results.
To solve the area feature displacement problem, Bader et al. [36,37] adopted the idea of the snake model and proposed the Beams algorithm. The Beams model first adopts an enhanced minimum spanning tree as an elastic truss to capture the important spatial patterns of building clusters. Then, the Beams algorithm iteratively deforms the truss to minimize energy until a user-defined threshold value is achieved. Liu et al. [38] proposed a fully automated building displacement algorithm by combining the constrained Delaunay triangulation skeleton and elastic beams, which is an improvement on the elastic beams algorithm.
Through the literature summarized above, we can conclude that (1) although the sequential approaches are relatively simple to resolve the spatial conflicts by one displacement, they may generate secondary conflicts; (2) the functional optimization approaches use mathematical ideas to model the spatial relationships and constraints between objects, which can well maintain the spatial relations between objects in the process of displacement, but the modelling process of this kind of algorithm is complex and cannot solve all possible spatial conflicts; and (3) the combinatorial optimization method uses a heuristic search strategy to obtain the optimal solution, which meets the current goal of the intelligent and automatic displacement methods. However, the current combinatorial optimization algorithms, such as GA and IGA, cannot resolve all possible spatial conflicts and even generate secondary conflicts. Therefore, a novel building displacement method based on multipopulation genetic algorithm (BDMPGA) is proposed to resolve spatial conflicts, which improves the deficiencies of the traditional GA and IGA.

Introducing BDMPGA
In this section, we introduce the proposed building displacement method based on the multipopulation genetic algorithm (BDMPGA). This approach introduces multiple populations with different control parameters for simultaneous search optimization. Each population can specify different crossover probability and mutation probability to achieve different search objectives. In this way, the defect of single parameter value in traditional GA is avoided, and the global search and local search of the algorithm are taken into account at the same time. The immigration operation is used to connect each population, which introduces the optimal individual from each population to other populations to realize the information exchange between different populations and maintain the diversity of individuals in the population. The acquisition of the optimal solution is a comprehensive result of multiple population coevolution. The manual selection operation is used to select and preserve the optimal individual of each population in the elite population during evolution. The elite population is different from other populations. The elite population does not carry out genetic operations such as selection, crossover and mutation, so as to ensure that the optimal individuals produced by each population will not be destroyed and lost. Meanwhile, this method uses the least preserving generation of the optimal individual as the termination basis, which is more reasonable than the maximum genetic generation.
The BDMPGA can be divided into five main parts: (1) chromosomal coding based on the real coding method; (2) genetic operations include the selection operation based on roulette wheel method, crossover operation based on arithmetical crossover strategy, and mutation operation based on nonuniform mutation method; (3) immigration operation between different populations; (4) manual selection operation base on the elite retention strategy; and (5) the definition of the objective function and fitness function. The framework is shown in Figure 1, and the detailed operations are as follows.

Chromosomal Encoding
The BDMPGA first represents the solution of the actual problem as genotype string structure data in the genetic space before the search for evolution. For buildings displacement, the real encoding method is adopted to represent the displacement solution as a chromosome. Real coding is the natural selection of a continuous parameter optimization problem, which has the advantage of high precision and convenience for large space searches. Within a given range of maximum displacement distances, the displacement distances of each building in the X direction and Y direction are randomly generated and then assembled together to form a chromosome. Figure 2 shows the representation of one chromosome and one population. represents the displacement distance of the ith building in the X and Y directions; (b) One population, C j (i = 1, 2, . . . , m) represents the jth chromosome or individual in a population, which is composed of N buildings assembled together by displacement distances in the X and Y directions.

Genetic Operations
There are several operations in the BDMPGA, such as selection, crossover, and mutation operation. The selection operation selects fine individuals from the parent population according the selective probability. These individuals have a chance to produce the child individuals. The probability of an individual being selected is related to the fitness value. The higher the fitness value of an individual is, the greater the probability of being selected is. The selection methods include roulette wheel selection, tournament, and other methods. This study adopts the roulette wheel selection method, namely, one individual is selected by its fitness ratio. The probability of an individual X i being selected is calculated by the following equation: and N is the number of individuals in one population. The crossover operation is the most important genetic operation in the BDMPGA, which defines the procedure of generating new individuals by exchanging information in parent individuals. The child individuals inherited the excellent characteristics of the parent generation. This operation determines the global search ability of the algorithm. As individuals are coded in real numbers, the crossover operation adopts the arithmetical crossover strategy [39] in the BDMPGA. The arithmetical crossover is calculated according to the following equation: where x k j represents the jth gene in individual X k , x lj represents the jth position on individual X l , and α is the random number in the interval [0, 1]. The mutation operation defines the procedure by which offspring individuals are altered randomly with a small probability after the crossover operation. The mutation operation determines the local search ability of the BDMPGA, which guarantees the population diversity and facilitates convergence at the global optimum and avoids premature convergence. The nonuniform mutation is adopted in the BDMPGA, which searches the entire space at the beginning and only local search searches at the end and can help to find better points quickly. The nonuniform mutation is calculated by the following equation: where x max is the upper bound of gene x ij , x min is the lower bound of gene x ij , f (gen) = r 2 * (1 − gen/MaxGen) 2 , r 2 is a random number, gen is the current iteration number, MaxGen is the maximum iteration number, and r is the random number in the interval [0, 1].

Immigration Operation
Different populations are connected to each other by the immigration operation in the BDMPGA. The BDMPGA first initializes multiple populations, and each population is independent of the other.
To realize the exchange of information among different populations, the immigration operation is used to establish the relationship between different populations. After every certain evolution generation, the best individual in population will be introduced to other populations through immigration operation. The worst individual in the target population is replaced by the selected best individual. In this way, the individual diversity of target population can be changed and the premature convergence of single population can be overcome. The immigrant operation is very important for the BDMPGA, which realizes the coevolution of multiple populations. If there is no immigration operation, then different populations will lose contact with each other. The role of the immigration operation is shown in Figure 3.

Manual Selection Operation
In the process of evolution, excellent individuals are selected by the manual selection operation from other populations and stored in elite population. Elite population is different from other populations. Genetic operations, such as selection, crossover, and mutation, are not carried out for the elite population and ensure that excellent individuals are not lost or destroyed. Meanwhile, the elite population is also the basis for the termination of the algorithm. Unlike the traditional GA, the BDMPGA adopts the least preserving iteration number of the best individual as the algorithm termination condition, which makes full use of the accumulation of knowledge during evolution. The specific realization process of manual selection operation in the BDMPGA is as follows: 1.
Initialize the elite population, which is used to preserve the best individual in each population during evolution. The number of individuals in the elite population is the number of populations.

2.
The individual with the highest fitness value in each population is selected and preserved in the elite population.

3.
Update the elite populations. If a subpopulation produces better individual, then the optimal individual is selected to update the corresponding individual in the elite population; otherwise, the elite population remains unchanged.

Objective Function and Fitness Function
During the process of evolution, the pros and cons of the individual are evaluated by the fitness function, which is the only basis of individual selection and guides the evolution of the algorithm. Usually, the fitness function is obtained by the linear scaling of the objective function. In this study, we take the reciprocal of the objective function value as the fitness value. If an individual has a higher fitness value, then it will be more likely to be selected as the parent population for genetic manipulation.
For different problems, objective function is defined in different ways. In the problem of building displacement, three indicators are considered to construct the objective function, namely, the number of remaining conflicts between buildings and buildings, the number of remaining conflicts between buildings and roads, and the total displacement distances of all the buildings. Then, the objective function is transformed into a fitness function by a linear transformation. If after the displacement, the smaller the number of remaining conflicts between objects and the shorter the displacement distance are, then the displacement is a successful solution. The metrics are defined in detail below:

•
Number of conflicts between buildings. For two neighboring buildings Bi and B j, MinDist(Bi, B j) is the minimum distance between buildings Bi and B j. con f (Bi, B j) represents a spatial conflict between buildings Bi and B j. If MinDist(Bi, B j) is less than then predefined distance threshold, then con f (Bi, B j) = 1; otherwise, con f (Bi, B j) = 0. Thus, the number of conflicts between all buildings can be expressed as: Min F BB_con f (X) = con f (Bi, B j).
• Number of conflicts between buildings and roads. For building Bi and road R j, MinDist(Bi, R j) is the minimum distance between building Bi and road R j, and con f (Bi, R j) represents a spatial conflict between building Bi and road R j. If MinDist(Bi, R j) is less than then predefined distance threshold, then con f (Bi, R j) = 1; otherwise, con f (Bi, R j) = 0. Thus, the number of conflicts between buildings and roads can be expressed as: Min F BR_con f (X) = con f (Bi, R j).
• Total displacement distances of all the buildings. This measure is used to evaluate the positional accuracy after displacement. The displacement must be within a certain range of the positional accuracy, and the smaller the total displacement distances are, the better the positional accuracy is maintained. The total displacement distances of all the buildings are calculated by summing the displacement distances in the X and Y directions of all the buildings. The expression is as follows: Finally, the objective function can be expressed in the following form: where w BB_con f + w BR_con f + w TotalDist = 1, w BB_con f , w BR_con f , and w TotalDist are weights for the number of conflicts between buildings, number of conflicts between buildings and roads and the total displacement distances of all the buildings displaced, respectively. After the objective function is constructed, it is transformed into a fitness function by linear transformation. The objective of optimization is to select the chromosome with the maximum fitness function value. The larger the fitness function value is, the better the chromosome and the greater the probability of being selected are.

Algorithm Flowchart
Based on the previous analysis, the steps of the BDMPGA can be described as follows: 1.
According to the given experimental data, the number of chromosomes in each population is determined. After that, N populations are initialized by the real coding method.

2.
Detect spatial conflicts. The constraint Delaunay triangulation (CDT) is used to construct the skeleton line, and then the weighted width of the skeleton line is calculated. By comparing with the minimum distance threshold, the number of conflicts between buildings and between buildings and roads are calculated.

3.
Calculate the fitness value of each individual in each population.

4.
Perform crossover and mutation operations on each population to produce a new population.

5.
Perform immigration operations among the N population. The optimal individual and the worst individual in each population were selected according to the fitness value. Then the optimal individual in the ith population replaces the worst individual in the (i + 1)th population, so as to realize the information exchange between the two adjacent populations.

6.
Perform manual selection operation on each population. The optimal individual in each population is selected by using a manual selection operation and stored in the elite population to update the elite population. 7.
Judge termination condition. If the termination condition is satisfied, then the best individual in the elite population is obtained as the optimal displacement solution. If the termination condition is not satisfied, then the algorithm returns to step (2) to start the next iteration.

Experiments and Evaluations
In this paper, the real building and road data are used to test the proposed BDMPGA. The experimental data are located in the middle part of the topographic map of Shenzhen city, China, which contains a total of 121 buildings and is located in six different blocks. The original data are shown in Figure 4. The original scale of these data is 1:10,000. Due to the widening of the road to a certain width, spatial conflicts occur because the distance between buildings and roads decreases. In addition, the proposed method is implemented in the MATLAB (MathWorks, Natick, Mass, USA Version 2016a) programming language, and ArcGIS software (ESRI, Redlands, CA, USA, Version 10.2) is used to display and compare the displacement results.

Parameter Setting
Before the experiment, some parameters need to be determined, such as the population size, maximum generation number (MaxGen), crossover probability and mutation probability, where the population size and maximum generation number (MaxGen) are related to the number of buildings and conflicts in each block. If this parameter value is set too small, then it will lead to a small number of chromosomes and too few iterations in each population, which will not be sufficiently evolved to find the optimal solution. If this parameter value is set too large, then increased running costs will ensue. Therefore, these two parameters are determined by Wilson's research [17], which uses experimentally determined heuristics, as shown in Equations (9) and (10).
where parameter P m is the population size, G m is the maximum generation number, and S m and C m represent the number of buildings and the number of conflicts in each block, respectively. In the GA, the genetic operations mainly include crossover and mutation. The frequency at which the genetic operations occur is controlled by the crossover and mutation probability, which determine the global search capability and local search capability of the algorithm. Many scholars recommend choosing a larger crossover probability and a smaller mutation probability. However, in practical applications, the specific value of the parameters is generally obtained through experiments. In this study, to compare with other algorithms, the crossover probability and mutation probability in GA and IGA are 0.8 and 0.08, respectively. Since the BDMPGA has multiple populations, the parameter values assigned to each population are different. According to the suggestion of scholars Schaffer et al. [40], the crossover probability of each population is randomly assigned within the range of [0.7, 0.9], and the mutation probability of each population is randomly assigned within the range of [0.001, 0.05]. In addition, the number of populations and the number of minimum generations of the optimal individual are all set to 10 in the BDMPGA. Because the conflict is mainly caused by the widening of the road, the principle of displacement is to maintain the accuracy of the position of the buildings as much as possible while resolving all possible conflicts. Therefore, the objective function weights are set in principle as follows w BR_con f > w BB_con f > w TotalDist . The specific value is the same as Sun's work [27], that is, the w BR_con f is set to 30,000, the w BB_con f is set to 25,000 and the w TotalDist is set to 1. The values of the parameters used in these three methods are shown in Table 1. The symbol -indicates that the corresponding method does not contain that parameter.

Analysis and Evaluation of Experimental Results
In this experiment, we use the proposed method to resolve spatial conflicts by displacing buildings. The weighted distance of the triangulation-based skeleton is used to detect spatial conflicts, which considers the characteristics of buildings and is more cognitively appropriate than the minimum distance [24]. Figure 5a shows the displacement results of the proposed BDMPGA. Figure 5b shows a comparison of the original data and displacement results based on the BDMPGA, where the grey polygons are the original building data and the displacement results are represented by blue polygons. The basic statistical information of the displacement results based on the BDMPGA is listed in Table 2. From Figure 5 and Table 2, we find that the proposed BDMPGA can effectively resolve all possible spatial conflicts between buildings and buildings and between buildings and roads in each block and as much as possible to ensure the positional accuracy of buildings.   To better evaluate the displacement results of the proposed method, we implemented two other intelligent optimization algorithms to perform comparative experiments. The first method is the GA, which was used by Wilson [17] to displace buildings. The other method is the IGA, which was proposed by Sun [27] to improve the GA. The experimental results of the BDMPGA, GA, and IGA are compared using two evaluation indices: the number of unresolved conflicts and the total displacement distances of the buildings. The number of unresolved conflicts is the main evaluation index of the algorithm performance, indicating the ability of the algorithm to resolve spatial conflicts. The smaller this value is, the stronger the ability of the algorithm to resolve conflicts is. The total displacement distance indicates the disruption degree of the positional accuracy and spatial relationships. The smaller the value is, the better the positional accuracy and spatial relationship are. Figure 6a shows the displacement results of the GA. Figure 6b shows a comparison of the original data and displacement results based on the GA, where the grey polygons are the original building data, and the displacement results are represented by purple polygons. The basic statistical information of the displacement results based on the GA is listed in Table 3. From Table 3, it can be seen that the GA can resolve all the conflicts between buildings and buildings. However, it cannot resolve all the conflicts between the buildings and roads. There are three unresolved conflicts in block 2 and two unresolved conflicts in block 4.   Figure 7a shows the displacement results of the IGA. Figure 7b shows a comparison of the original data and displacement results based on the IGA, where the grey polygons are the original building data, and the displacement results are represented by cyan polygons. The basic statistical information of the displacement results based on the IGA is listed in Table 4. Table 4 shows that the IGA had five unresolved conflicts between buildings and roads, located in block 2, block 4, and block 5. More seriously, the IGA generates secondary conflicts. Through comparison, it is found that the BDMPGA has a stronger ability to resolve spatial conflicts.  Although these methods can be used to displace buildings and resolve spatial conflicts, they yield different displacement results (e.g., displacement distance and displacement direction) at some local regions. To better illustrate the differences in the displacement results of the various methods, we selected some typical regions to display the corresponding detailed information, such as the regions marked with red circles in Figures 5-7. Table 5 shows the detailed information of the displacement results in these typical regions using the proposed BDMPGA method and the two comparative methods (i.e., GA and IGA). Table 5 indicates the following:

1.
Compared with the GA and the IGA, the proposed BDMPGA can generate more reasonable displacement results. For example, as shown in local area No.A in Table 5, when a building is located at an acute corner and is conflicted with multiple roads, the BDMPGA can better solve the conflict by moving a longer distance, and the displacement direction is the resultant direction of multiple conflicting roads. When a building is located at an obtuse corner and is conflicted with multiple roads, as shown in local area No.B in Table 5, the BDMPGA will make the building move a short distance to resolve the conflict. However, the GA cannot resolve multiple conflicts and even aggravate the conflicts. The IGA method only resolves some of the conflicts.

2.
The proposed BDMPGA has a better ability than the GA and IGA to maintain building positional accuracy. For example, as show in local area No.C in Table 5, the IGA tends to move long distances to resolve the conflict. However, the proposed BDMPGA only makes the conflict building move a shorter distance and satisfies the constraint condition of ensuring the positional accuracy of the building as much as possible while resolving the spatial conflicts. Table 6 shows the basic statistical information of the displacement distance for each method. As seen from the statistical information, the BDMPGA has a minimum displacement distance of 0.0 m, meaning that if a building does not conflict with surrounding objects, then it is not moved. The maximum displacement distance of the BDMPGA is 3.99 m, which meets the specified maximum displacement distance threshold (e.g., 0.5 mm). The total displacement distance of the BDMPGA is 133.19 m, less than 140.31 m of the GA and 149.71 m of the IGA, indicating that the positional accuracy of the BDMPGA is maintained well. Successful displacement should not only solve all possible spatial conflicts and avoid generating secondary conflicts after displacing some buildings but also preserve the important arrangement and distribution patterns of buildings. To better demonstrate the differences between the proposed BDMPGA and the other two comparative methods in maintaining the arrangement and distribution pattern of buildings, some typical examples are chosen, as shown in Figures 8 and 9, which indicate the following:

1.
Compared with the GA and IGA, the proposed BDMPGA can maintain the relative position between buildings during the displacement. For example, Figure 8a shows the displacement results of the BDMPGA, and the displacement results of the GA and the IGA are Figure 8b,c, respectively. By comparison, it can be seen that although both the GA and IGA can resolve spatial conflicts, the distance relations among buildings are changed after the displacement so that some buildings become closer (with the GA), while some become farther away (with the IGA). However, the proposed BDMPGA exhibits a good ability to avoid changing the relative position of the buildings because the conflicting buildings are all moving in the same direction and distance. Meanwhile, as shown in Figure 8d-f, two adjacent buildings are in conflict with the road, the GA and the IGA only move one building, and the conflict between the other buildings remains unresolved. At the same time, the GA increases the distance between buildings and the IGA produces a more serious secondary conflict. However, the proposed BDMPGA moves two buildings simultaneously and resolves all conflicts, which can keep the relative positions between buildings unchanged.

2.
Compared with the GA and IGA, the proposed BDMPGA can better maintain the linear arrangement and distribution pattern of buildings. For example, as shown in Figure 9, the comparative methods, including the GA and IGA, only move some buildings in the building group, which not only fails to solve all the spatial conflicts but also fails to maintain the arrangement and distribution pattern of the building group. However, the proposed BDMPGA has a better ability to overcome the shortcomings of the comparative methods because the BDMPGA takes the least preserving generation of the optimal individual as the termination condition, and the method will constantly optimize the shortest displacement distance after resolving spatial conflicts to ensure that the arrangement and distribution pattern of buildings do not change.  Furthermore, to statistically evaluate the stability and convergence rate of the proposed BDMPGA, Figure 10 shows the iterative process of different methods in each block. From Figure 10, we can see that the proposed BDMPGA is very stable and converges very fast. This method only needs a few iterations to reach the optimal value.

Limitations
When using the BDMPGA to resolve spatial conflicts, there must be enough displacement space. If the density of buildings in the block is too high, there is not enough displacement space around the conflicting buildings, then other generalization operations, such as elimination, aggregation, and typification, are required to resolve the spatial conflicts. As show in Figure 11a, when the road is symbolized, it creates overlap conflicts with the adjacent buildings. In this case, the displacement operator cannot resolve the spatial conflicts, and the size reduction operation can be used to change the size of the buildings to resolve the spatial conflicts, as shown in Figure 11b. As shown in Figure 11c, when a group of buildings in regular arrangement have spatial conflicts with the road, the typification operation can be adopted to replace them with fewer buildings to resolve the spatial conflict on the premise of maintaining the spatial arrangement pattern of the buildings, as shown in Figure 11d. Future research aims to extend the implementation of our proposed approach by combining it with other contextual generalization operations to resolve more complex conflict cases.

Conclusions
This paper proposes a novel building displacement method based on multipopulation genetic algorithm (BDMPGA) to resolve spatial conflicts. The BDMPGA introduces multiple populations, each population can set different crossover probability and mutation probability, so that the algorithm can give consideration to both local search ability and global search ability. The immigration operation introduces the optimal individual in the population to other populations to realize the information exchange between different populations and ensure the diversity of individuals. The optimal individual in each population is preserved in the elite population by manual selection operation to avoid it being destroyed and lost in the evolutionary process. The premature convergence of traditional GA is overcome by coevolution of multiple populations to get the optimal solution. Compared with the GA and IGA, the BDMPGA can solve all possible spatial conflicts in each block and avoid generating secondary spatial conflicts. The total displacement distances produced by the BDMPGA are smaller than those produced by the GA and IGA. Additionally, the BDMPGA can preserve the spatial positional relationships and linear arrangement patterns between objects. This method uses the idea of combinatorial optimization to resolve the spatial conflicts between buildings and between buildings and roads, which can provide theoretical and technical support for improving the automation and intelligence level of cartographic generalization.
A possible shortcoming of the BDMPGA is that it needs several iterations to obtain the optimal solution, which requires a longer running time. The sequential methods only displace the conflicting objects once to resolve the spatial conflicts. To decrease the running time of the BDMPGA, the most commonly adopted strategies are to divide the whole displacement space into different regions by using natural features, such as road networks or river networks, or by using clustering methods. Then the algorithm can be applied to each region to accelerate the processing speed. Of course, in the application of network mapping and vehicle navigation, it is necessary to introduce parallel computing and other new technologies for online real-time displacement.