Abstract

It is well known that the Steiner minimal tree problem is one of the classical nonlinear combinatorial optimization problems. A visualization experiment approach succeeds in generating Steiner points automatically and showing the system shortest path, named Steiner minimum tree, physically and intuitively. However, it is difficult to form stabilized system shortest path when the number of given points is increased and irregularly distributed. Two algorithms, geometry algorithm and geometry-experiment algorithm (GEA), are constructed to solve system shortest path using the property of Delaunay diagram and basic philosophy of Geo-Steiner algorithm and matching up with the visualization experiment approach (VEA) when the given points increase. The approximate optimizing results are received by GEA and VEA for two examples. The validity of GEA was proved by solving practical problems in engineering, experiment, and comparative analysis. And the global shortest path can be obtained by GEA successfully with several actual calculations.

1. Introduction

The Steiner minimal tree (SMT) problem can be stated as follows. Given a set of points in the plane, a network (graph) could be found with the shortest length, where the length is the sum of the lengths of all edges, a Steiner minimum tree, interconnecting . The points in are called terminals, and the points introduced are called Steiner points. The shortest path interconnecting without introducing Steiner points is called a minimum spanning tree (MST). SMT is usually compared with MST. The ratio of the length of an SMT to the length of an MST spanning the same set of is larger than [1].

SMT, which is a well-known problem in combinatorial optimization, attracts considerable attention from theoretical to engineering point of view due to its applicability, which has been confirmed to be nondeterministic polynomial hard (NP-hard) in 1977, and scientists and researchers around the world have been devoting themselves to the resolution [1, 2]. SMT has many applications in various fields, especially in nanotechnology and modern textile engineering (see [1, 37] and their references).

There are precise algorithm and heuristic algorithm for solving the system shortest path. The first precise algorithm for SMT problem is given by Melzak in 1961. Winter has given an opposite algorithm with the Melzak algorithm. The procedure Geo-Steiner given by Warme et al. had realized the algorithm previously given by Warme et al. [8]. Geo-Steiner algorithm is the best precise algorithm for SMT problem at present [8].

The existing algorithms for SMT problem are mostly heuristic algorithms. The heuristic algorithm for SMT problem started from the early 1970s. The heuristics by Chang [9] and Thompson [10] may be described as greedy Steiner point insertion algorithms which iteratively reduce the length of an initial MST, at each step inserting a “best” possible Steiner point. The idea of localization was used in their paper, although they did not use the notion “local optimization” or “local search.” The existing heuristic algorithms for SMT problem are mostly local search algorithms, such as simulated annealing, tabu search, and genetic algorithms.

Fampa and Maculan presented a new mathematical programming formulation for SMT problem [11]. Karpinski and Zelikovsky have designed new approximation algorithms for SMT problems using a novel technique of choosing Steiner points in dependence on the possible deviation from the optimal solutions [12]. Up to now they achieve the best approximation ratios of 1.644 in arbitrary metric and 1.267 in rectilinear plane, respectively. Cinel and Bazlamaçci have proposed a distributed heuristic algorithm for the rectilinear SMT problem [13], which uses two recently developed successful heuristic algorithms, namely, rectilinear Steiner tree (RST) by Zhou and batched greedy algorithm (BGA) by Kahng et al., as the basis to speed up the RSMT construction. L. Luyet, S. Varone, and N. Zufferey proposed an ant algorithm (called ANT-STP) for the STP in graphs [12] which is better than TM, which is a greedy constructive method for the Steiner tree problem. Cinel and Bazlamaçci have set up the SteinLib test data library as a communication platform for the SMT problem [13], but the Steiner points have not been mentioned in the SteinLib yet.

Although there are a large amount of methods for solving the SMT problem existing, most of them are heuristic algorithms and are easy to fall into partially optimum [14, 15]. At present, an effective and simple method has not been discovered yet. VEA is proposed by using the physical chemistry characteristics of the surfactant solution and developed experiment device [16, 17]. The minimum surface tension of the surfactant solution can be transformed into two- dimensional system in the shortest path planning, and a transparency visualization scheme, that is, a Steiner minimum tree for objective, can be formed steadily and rapidly.

Here is the plan of our work. We first introduce the visualization experiment approach (Section 2). This method will be used in our new method. Then we give the detail of our new methods (Section 3). In the last part, we give two applications of our methods (Section 4).

2. Visualization Experiment Approach

In this section, we will introduce the visualization experiment approach, since this method will be used in our new methods. First, we present the theoretical basis of visualization experiment.

2.1. Theoretical Basis of Visualization Experiment

Definition 1. Let denote a given set of points on the Euclidean plane. A Steiner minimal tree on (SMT) is the shortest network interconnecting . Suppose that the set of vertexes of SMT is , we have . Let be a point of ; is called regular point if and a Steiner point otherwise. It is well known that .

Some well-known properties should be given to obtain a solution for the SMT [18].

Property 1. Given points in the plane, the maximum number of Steiner points is .

Property 2. A Steiner point has a degree equal to 3.

Property 3. The edges emanating from a Steiner point have mutual angle equal to 120°.

Property 4. All Steiner points lie in the convex hull of the given points.

The surfactant solution can easily form vesicle membrane. To achieve the steady state, in the effects of surface tension, the solution, perhaps the surface area of solution membrane, will also achieve smallest, but the surface area of sphere is of the smallest shape in all geometric solids which have the same volume. This is the solution physical property and principle of why the soap bubble always is sphere.

Many practical problems can be abstracted as SMT problem, such as the shortest path between cities, the distribution of grids, and the connections of network nodes. Since the cost can be reduced up to 13.4% by using SMT, the solution SMT is a hot spot issue, although SMT is an NP-hard problem. SMT can make a significant reduction in costs, so this problem has caused many mathematics and engineering researchers in the world to pay attention to it, and these researchers have established an international SteinLib test database [15]. Because of the complexity of SMT, the SteinLib test database did not consider the location and the number of Steiner points. Therefore, the key point is how to determine the location and number of Steiner points.

Steiner minimal tree is often observed in our everyday life. For example, the multiple bubbles interact to form a Steiner tree [19, 20]. The foundation of VEA will be the Plateau geometry general rule [17]. The liquid surface tension is a physical effect, which makes the liquid surface try to get the smallest and smooth state. In this situation, the surface has the minimum energy.

The liquid surface tension can be defined as the surface energy of unit surface area. From the definition of the liquid surface tension, we hold that many systems in the nature tend to make its energy as low as possible, when certain external condition was satisfied. In other words, many systems in the nature tend to get the most stable state. So the liquid tends to get the shape with the minimum surface, so that the liquid has lowest surface energy [17]. Using the property of liquid surface tension, when the surface of the liquid in the system is in the stable state, the surface area of membrane is the least.

In this paper, according to the properties of the liquid surface tension, we hold that the membrane has the smallest surface area, when the membrane formed by the liquid in the system is in the stable state. We design two parallel plates which can make the membrane surface with equal altitude. Then we can use the minimum surface area property to solve the minimum Steiner tree problem.

In the 19th century, scientists J.A.F. Plateau from Belgium observed and recorded the geometric shape of bubbles. He proposed the following rules [17].

Rule 1. Bubble membrane attaching to the wire frame or other closed structure has a smooth structure.

Rule 2. Bubbles connect in one or two ways, one of which is three surfaces connecting along with one smooth curve, and the other is the six-plane form curve, connecting at a vertex.

Rule 3. Bubble membrane connects at the same curve or at the same vertex and between the two surfaces it is equal; the angle should be 120° when three surfaces connect at a vertex; the angle approximately is 120° when six surfaces connect at a vertex.

VEA [16] which uses Plateau geometry general rule coincides with the principles of the minimal Steiner tree theory to solve SMT problem.

In the following part, we will introduce our visualization experiment device.

2.2. Visualization Experiment Device

In the exploratory experiment, the parallel plates with fixed points are put in the surface active agent liquid slowly. After excluding the surface bubble, the parallel plates are taken out from the liquid slowly and measure the system shortest path (i.e., minimum Steiner tree) formed between the fixed points on the parallel plates. The transparent intersections of the membrane traces are the positions of the Steiner points. After a six-month trial, we configure the surface active agent liquid and find out the influencing rule of the liquid formula and liquid strength, the distance between the parallel plates, and the temperature in the keeping time of the membrane traces [21]. Figure 1 shows the processes of exploratory experiments. The results of the experiments are as follows.(1)The formula of active agent liquid: first put 2000 mL of distilled water into the vessel and add 20 g detergent with few additives and 8 g glycerin and mix all the materials. After 3 to 24 hours, the liquid will mix fully. Then the membrane traces can be kept more than 30 minutes.(2)The experiment for performance parameter: the smaller the distance between the parallel plates is, the longer the membranes are kept, more slowly the bubbles between the plates are excluded. Otherwise, the larger the distance between the parallel plates is, the shorter the membranes are kept and the faster the bubbles are excluded. The larger the diameters of the pillars are, the longer the membranes are kept, and the harder the membranes form. The smaller the diameters of the pillars are, the shorter the membranes are kept, and the more easily the membranes form.(3)The relative relationship between the plates and liquid: the liquid is still in the whole process. Get the membrane traces of global shortest path by putting test boards into the liquid and by taking test boards out of the liquid.

It is difficult to promote the exploratory experiment because the exploratory experiment has many limitations. The main reason is as follows.(1)It is difficult to introduce the engineering drawings to the experimental system because the test board contacts with liquid directly.(2)It is not easy to change the place and the number of the fixed points between the text boards, for the promotion will be blocked.(3)The entire operation is finished by hands, so human factors may reduce the accuracy of the experimental results.

To solve these problems, we assume that the stationary parts (the liquid) are changed to movable parts. Let the moving parts (the test plates) keep still. Then the above problems can be solved. The specific methods are the following(1)The liquid tank is composed of a double bottom with hollow parts. The placement of drawings is solved and the drawing is isolated with liquid.(2)Use magnet columns as fixed points. It is convenient to change to other engineering drawings.(3)Install the gradienter and the adjustable bolts to reduce the human factors to improve the accuracy of the test results.(4)Add the scale marks on the bottom of the tank to realize the measure of the visual paths. As a result, the movable cover board with the magnet columns in both sides and the bottom of the tank constitutes the instrument of the exploratory experiment. The membrane trace of the shortest path is formed through the variation of relative position. The visual instrument for the shortest path is shown in Figure 2.

When the number of given points is not too many, we can use VEA to get the shortest path. The shortest path of given points is obtained intuitively and simply through VEA, according to the physical properties of fluid. The step of using visualization experiment device is as follows:

(1)configuration solution for experiment;(2)to insert drawing below the sink, select node in accordance with the drawing;(3)to pour the solution compounded into the channel, clearing up the bubble formed as the solution is poured into the channel;(4)open drainage switch and solution is discharged. The shortest path is formed at the same time;(5)when the membrane is stable, read the coordinates of given points and Steiner points, photograph and the experimental result chart is obtained;(6)at the end of the experiment, clean apparatus is used;(7)reorganize the empirical data.

Using VEA [16], the global shortest path can be found, and the approach has been applied in optimizing some power transmission grid system [21]. But it reads data through the instrument ledger coordinate system, and the precision is not high enough; Along with the increasing of given points, it takes more and more time to form membrane and the objective is not steady, so the propagableness and applicability of VEA are influenced simultaneously. In this paper, GEA for SMT problem by referring VEA (referred to GEA in the following chapters) is proposed unifying the experiment approach and the geometry algorithm to solve the SMT problem.

3. GEA for SMT Problem

In the last section, we can use VEA to get the shortest path for the system which has not too many points. In this section, we will deal with the system with many points. We give two methods in this section. First, we introduce some definitions.

Definition 2. Suppose that , is a set of points in the Euclidean space. Any three points in are not in the same line, and any four points in are not in the same circle. The distance between and is denoted by . Suppose that is a point in the plane, then the regions for are called Voronoi polygon (-polygon). The -polygon of all points compose -diagram.

Simply speaking, each point of the given point set is a growth of the nuclear and expand outside in the same rate until they meet with each other. The formed diagram in the plane is -diagram. The diagram formed by outermost points is open region, while the diagram formed by the other points is convex polygon.

Definition 3. The -polygons which have the common sides are called adjacent -polygons. The triangular network formed by connecting the nuclear of all adjacent -polygons is called Delaunay diagram (-diagram).

The outer boundary of Delaunay diagram is a convex polygon, which is formed by connecting the convex sets in . Delaunay diagram has two properties.(1)The empty circumcircle property: the circumcircle of each triangular in the Delaunay diagram which is formed by points set does not include any other points in . The Delaunay diagram is unique.(2)The property of maximizing the minimum angle: the minimum angle of each triangular in the Delaunay diagram is the biggest in the minimum angle of the triangular network formed by points set .

The algorithm used in this paper for constructing Delaunay diagram is as follows.

Step 1. Traverse all points and find the minimal horizontal coordinate and the minimal vertical coordinate (, ) and the maximal horizontal coordinate and the maximal vertical coordinate (, ). Using these two points, we can construct such a rectangle that all points are included in.

Step 2. Connect a pair of diagonal vertices of the rectangle. The rectangle is split into two triangles.

Step 3. Put the points which coincide with the vertices and the boundary of rectangle in the rectangle. These points form the initial triangle network.

Step 4. Add the remaining points in the corresponding triangle, using LOP algorithm to update the adjacent triangles from inside to outside.

Step 5. Repeat Step 4 until all points are added in the diagram.

Algorithm process is shown in Figure 3.

First, we introduce some definitions to be used later.

Definition 4. A topology is called Steiner topology, if the degree of each Steiner point is 3, and the degree of each given point is less than 3.

A topology is called full Steiner topology if the degree of each given point is 1 each the degree of each Steiner point is 3. The resulting Steiner tree is called full Steiner tree (full Steiner tree referred to as the FST).

Full Steiner topology satisfies the following conditions.(1)Degree condition: the degree of Steiner points must be 3, and the degree of the given points must be 1.(2)Angle condition: each angle between the three sides associated with the Steiner point is at 120 degrees.(3)The number of Steiner points: FST with given points has Steiner points.

Melzak gives an algorithm for constructing a full Steiner tree from a full Steiner topology. This algorithm is the basis of constructing a minimal Steiner tree. We know that each nonfull topology can be decomposed into several small subfull topologies. The point sets of each subfull topology are the subsets of nonfull topology. Each side of nonfull topology only belongs to one full topology. For example, the five-point nonfull topology in Figure 4 can be decomposed into two full topologies. One is four-point full topology (solid line) and the other is two-point full topology (dotted line).

For a nonfull Steiner topology, we can decompose it into several full Steiner topologies and then construct the full Steiner tree in each full Steiner topology by using Melzak method. Connecting all these full Steiner trees, we can get the full Steiner tree of the nonfull Steiner topology.

Method 1 (geometry algorithm). First, the Delaunay diagram [18, 2224] is constructed connecting all points in . The edges of the Delaunay diagram can be characterized by the property: there is a Delaunay edge through two points if and only if there is not any other point being contained in , and the property of Delaunay diagram guarantees that there is no other point belonging to included in any circumcircle of triangle.
Then the minimal spanning tree (MST) is constructed.
Subsequently, some subsets including 2, 3, or 4 points are constructed, for example, ( represents the subset integer).

Definition 5. (i) The subsets of 2 points are referred to as the sets only including 2 points, and the edge connecting these 2 points belongs to MST.
(ii) The subsets of 3 points are referred to as apexes of the triangle, and the 2 edges connecting these apexes belong to MST in Delaunay diagram.
(iii) The subsets of 4 points are referred to as apexes of convex quadrilateral. The apexes constitute two adjacent triangles in Delaunay diagram, and adjacent triangles have 3 edges belonging to MST.
The notion is used for dividing MST edges into some subsets including 2, 3, or 4 points.

When the given set is nonconvex, GEA description is as follows.

Step 1 (definite subset). (1) After preparation, according to Definition 4(2), the subsets containing 3 points can be identified; likewise, the subsets containing 4 points can be identified according to Definition 4(3) using Labeling. Construct FST for these subsets, in accordance with the FST rules.
(2) Regarding subsets that only have one edge of MST, we can calculate its length and insert it into the rear of F in ascending.

Step 2 (construct FSMT for each subset). If the subsets contain 3 points, please refer to FST Rule I; if the subsets contain 4 points, please refer to FST Rule II. Calculate , the result set of is sorted in ascending in order to form an optimized queue .

If the subset contains 2 points, the length is calculated directly, and it would be joined into the rear of queue in ascending.

Step 3. All the FSMT should be connected to be a tree according to the Kruskal algorithm, and the tree should be MST. In order to structure SMT, the queue of SMT is initialized to be null, taking out the subsets from optimized queue in turn. If the new tree does not constitute circle, we can join it in the queue of SMT; otherwise, we can continue taking and judging next one and construct the SMT by circulating it.

The Rules for constructing FST are introduced as follows.

Rule I. Regarding subsets containing three points , , (Figure 5), according to the nature of FSMT, we can see that constructing FSMT for , , is equal to finding a Steiner point , which makes minimum and requires . The key is to determine the location of Steiner point . Assume that is selected as the root; the first Steiner point must be located somewhere on the Steiner of and . It is determined as follows.

Consider the equilateral triangle with the line segment as one of its sides, and with its third corner to the right of (when looking from toward ). This third corner is referred to as the equilateral point and is denoted by considering the circle circumscribing this equilateral triangle. The arc from to (clockwise) is the Steiner . Consider the region bounded by half-lines rooted at through the extreme points of the (pruned) Steiner . The intersection of the line segment with is the location of . Why is Steiner point that we want to find? Because is equilateral triangle, so

So is Steiner point. The shortest path of 3 points is shown in bold solid lines in Figure 5. It can be proved that the length of the FSMT is equal to the length of the line-segment , recorded as .

Rule II. Regarding subsets containing three points , , , (Figure 6), Steiner point is located in Rule I. Possible locations of the Steiner point adjacent to and are on the Steiner . The corresponding equilateral point is denoted by . The Steiner can be reduced; the edge connecting and must overlap with the line segment from to . Steiner arcs for Steiner points are determined in analogous manner. Let denote the associated equilateral point. Consider the region bounded by half-lines rooted at through the extreme points of the Steiner . The terminal yields an FSMT. More precisely, the intersection of the line segment with is the location of . Why is Steiner point that we want to find? Because is equilateral triangle,

So is Steiner point. FSMT for , , , is obtained with connecting , , , , . The shortest path is shown in bold solid lines in Figure 6. It can be proved that the length of the FSMT is equal to the length of the line-segment .

Especially, when the given set is convex, we will adopt classical algorithm which was proposed by Melzak [25] to construct SMT. Consider given points are . Assume that is selected as the root. We can obtain Steiner arc  and according to Rules I and II. Similarly, the can be reduced. Regarding , the intersection of the line segment with is the location of . Given the location of , the location of is given as the intersection of the line-segment with . Locations of can be determined successively in the same manner. The shortest path of 7 points which constitute a convex polygon is constructed in Melzak algorithm [2] (Figure 7). The shortest path is shown in bold solid lines.

On the basis of Melzak algorithm [25], drawing support from the thought of Geo-Steiner algorithm [2] and VEA, GEA avoids searching full topology which is constructed by given points and Steiner points in the plane, constructs Delaunay diagram according to the character of Delaunay diagram, constructs MST, divides given points into some subsets containing 2, 3, or 4 points, and constructs SMT using Kruskal algorithm to connect all the FSMT. The time complexity is .

Method 2 (geometry-experiment algorithm). The Delaunay diagram and the minimal spanning tree (MST) are constructed as in the Method 1.

From the last section, we know that VEA can treat the system with points less than 10. Then, we can construct some subsets including points, for example, ( represents the subset integer).

Definition 6. The subsets of points are refered to as the sets only including points, and the edges connecting this points belong to MST.

When the given set is nonconvex, GEA description is as follows.

Step 1 (definite subset). This step can be done similarly as in Method 1. We can get some subsets including () points.

Step 2 (construct FSMT for each subset). We can use VEA to construct FST for subsets containing () points. Calculate , the results set of are sorted in ascending in order to form an optimized queue .

If the subsets contain 2 points, the length is calculated directly, and it would be joined into the rear of queue in ascending.

Step 3. All the FSMT should be connected to be a tree according to the Kruskal algorithm, and the tree should be MST. In order to structure SMT, the queue of SMT is initialized to be null, taking out the subsets from optimized queue in turn. If the new tree does not constitute circle, we can join it in the queue of SMT; otherwise, we can continue taking and judging next one and construct the SMT by circulating it.

4. Application

4.1. Example of the Cities of Henan Province

Optimize local line of the cities of Henan province, designing seventeen points for An Yang, Pu Yang, He Bin, Jiao Zuo, Xin Xiang, San Men Xia, Luo Yang, Zhen Zhou, Kai Feng, Shang Qiu, Xu Chang, Ping Ding Shan, Luo He, Zhou Kou, Nan Yang, Zhu Ma Dian, and Xin Yang as given points (Figure 8). Since the number of the given points is seventeen, it is difficult to obtain SMT using experimental approach directly. So the picture is divided into two parts (see Figure 8), Part 1 and Part 2. The numbers of the points in two parts are 10 and 7, respectively. We can use experimental approach to get the SMT for Part 1 and Part 2 (Figure 9). One Steiner point is produced in Part 1 and two points are produced in Part 2. All points will be connected to be MST at last. Connecting two parts together, we can get SMT for this problem. After measuring the length of the lines, we can get the following results. The total length of the original lines is 756.8693 mm and the total length of the experiment lines is 737.9284 mm.

4.1.1. Optimized Example Using GEA

When given points are increased, it is difficult to obtain SMT using experimental approach directly which requires higher operating techniques; meanwhile, the membrane is unstable, and the success ratio is lower.

GEA is used for shortest path planning for 65 given points as shown in Figure 10. This is an example in SteinLib (see Test Set ES30FST in [15]). In this example, the coordinates of the points are given. We first draw the picture of these points according to the coordinates. We only get 64 points in the picture (Figure 10) because some points are too close. Due to GEA, the picture is divided into 6 parts. It is too difficult to handle with VEA because some points in the picture are too close. Hence, we assume some points as one point in the experiment. We use experimental approach to get the SMT for 6 parts (Figure 11). At last, these SMTs for 6 parts are connected to be a tree according to the Kruskal algorithm. This tree is the MST for this problem. After calculating, the total length of the original lines is 975.411 mm and the total length of the experiment lines is 923.937 mm. Hence, the Steiner ratio is

here represents the length of the Steiner minimal tree and the length of the minimal spanning tree. The total length of the lines in the result in Steiner test database [15] is 1567.348 mm. Our result is better than theirs. We think the possible reason is that the location and the number of Steiner points were not considered in SteinLib test database.

5. Concluding Remarks

A new geometry algorithm for SMT problem by referring visualization experiment is proposed in this paper. It is desired to make up for the insufficiency of experimental approach, that is, along with the increasing of given points. A new geometry algorithm for SMT problem by referring visualization experiment is proposed in this paper. It is desired to make up for the insufficiency of experimental approach, that is, along with the increasing of given points and irregular distribution; it takes more and more time to form membrane, and the objective is not steady; simultaneously the promotion of visualization approach is influenced. The example of the cities of Henan province has verified feasibility of GEA. When the given points are increased, GEA has obtained the shortest path when the membrane path is difficult to form through experimental approach, as shown in example of 65 points. By analyzing instances, contrasting compared with experiment results and verifying for many times, it is proved that GEA could find the location and number of Steiner points and could be used to solve global shortest path coordinating with visualization approach and to make up for the insufficiency of experimental approach.

The algorithm matched with visualization approach would be used in path planning not only for engineering problems, such as logistics warehouse system location, but also for the field of social services, such as transportation route planning. At the same time, the algorithm’ statement has broaden the thinking and provided a theoretical basis for the development of visualization approach.