Fast Algorithm for the Travelling Salesman Problem and the Proof of P = NP

In the theory of computational complexity, the travelling salesman problem is a typical one in the NP class. With the aid of a brand-new approach named “maximum-deleting method”, a fast algorithm is constructed for it with a polynomial time of biquadrate, which greatly reduces the computational complexity. Since this problem is also NP-complete, as a corollary, P = NP is proved to be true. It indicates the crack of the well-known open problem named “P versus NP”.


Introduction
The travelling salesman problem asks the following question: "Given a list of cities and the distances between each pair of cities, what is the shortest possible route that visits each city and returns to the origin city?" [1].In the theory of computational complexity, this problem is a typical one in the NP class [1] [2].
The closely related suspense is the well-known "P versus NP problem", that is, to determine whether every language accepted by some nondeterministic algorithm in polynomial time is also accepted by some deterministic algorithm in polynomial time [3] [4].If it is true then P = NP, otherwise, P ≠ NP.Here P denotes the class of decision problems solvable by some algorithm within a number of steps bounded by some fixed polynomial in the length of the input.The notation NP stands for "nondeterministic polynomial time" and the class of questions for which an answer can be verified in polynomial time is called NP.
The proof of P = NP is associated with an important concept, named "NPcomplete", which was firstly proposed by Cook in 1971 [5].The NP-complete problems are a set of problems to each of which any other NP-problem can be reduced in polynomial time, and whose solution may still be verified in polynomial time.That is, any NP problem can be transformed into any of the NPcomplete problems [3] [4].Hence, to prove the including relationship NP ⊆ P it only requires the consideration of a single arbitrarily-chosen NP-complete problem (P ⊆ NP is naturally satisfied).The precise expression is given by Cook in [3] as follows: Proposition 1.Let L be a language over a finite alphabet.If L is NP-complete and L belongs to P then P = NP.
It follows from [1] [2] [4] [6] that the travelling salesman problem is NPcomplete, and Proposition 1 indicates that the proof of P = NP only requires the seeking of a language L in P for it, that is, a fast algorithm which can be executed on computer with a polynomial time rather than an exponential time.Many researchers had already tried on it, and a lot of "optimizing" or "searching" approaches were developed (please see the list in [1]).But the associated computational-complexity problem is still suspended till now.Just as indicated by Devlin in [2], to solve this it requires an unusual but wonderful thinking!From October 2018, I began to think about this, and a fresh idea suddenly appeared when I deleted the longest one among the total 15 paths (which connect 6 cities separately) by a pen on a paper (see Figure 1).Since the candidate for the concerned route is always composed by 6 segments and each one of them has several choices, to shorten the total length the longest path should be avoided.Without path-deleting this problem requires a selection may greatly reduce the computational complexity, particularly for the problem with large number of cities.This "maximum-deleting method" had thrown some lights on the travelling salesman problem and the P versus NP problem.The subsequent endeavor on the preciseness lifted the mysterious veils of them.The present paper is a report on these.

Maximum-Deleting Method
There is a necessity to re-express the travelling salesman problem in mathematical language.Let n be the total number of the concerned cities (include the origin city, 4 n ≥ ), which are expressed as a series of nodes k C specified by the two-dimensional coordinates ( ) ) (the order of the nodes is arbitrarily chosen).The path between every pair of cities is abstracted as a line-segment (in the following we call it by "line" for short) and the one between the i -th and the j -th notes is denoted by , with i j ≠ ).Notice that , j i l and , i j l denote the same line, only the case i j < is considered in the following.All these lines compose a set: whose number of elements is The concerned route that visits each city and returns to the origin city can be expressed as a closed loop Q which connects all the n nodes with two requirements: 1) Each node has two connections (that is, it only connects two lines); 2) The journey length of Q (that is, the sum of the lengthes for the selected n lines in * D ) should be shortest among all the choices.
Under the frame of maximum-deleting method, the first requirement is a criterion and the second requirement is a strategy.
To demonstrate the strategy in a clear way, we arrange the elements in * D by comparing their lengthes defined by the Euclidean distance and get where N is given in Equation ( 1) and the subscripts ( ) p k and ( ) q k are two mappings.For example, in case 2,5 l has the biggest length in * D then it reads ( ) ( ) where the chosen lines are also arranged according to the length, and k s denotes the length of the k -th line with the connectivity aside, the upper and lower bounds of S accord with the choice of the first n terms and the last n terms in 0 D , respectively.Since the candidate of Q is always composed by n segments and each one of them has many choices, to shorten the total length the longest line should be avoided.Precisely, if the length 1 s in Equation ( 3) corresponds to the first line ( ) ( ) D , then the substitution of this line by another one in 0 D with a shorter length 1 s′ should be beneficial for shortening the possible S.After deleting ( ) ( ) one can continue to delete ( ) ( ) , only if the line to be deleted has more than two connections on each endpoint.This is an ensemble compressing strategy which squeezes the candidate set for Q close to the last n terms of 0 D .General speaking, it seldom occurs for the last n terms composing a single closed loop (the lower bound of S is seldom achieved).
So there always exists some lines ( ) ( ) with k N n ≤ − in the left set, that is, some shorter lines are deleted.This leaves a certain leeway for modifications in the last process where the shortest principle should be obeyed.We note that, when the deleting process is finished, the left lines usually compose many small loops which need to be connected into a single one.

Fast Algorithm with Polynomial Time
Notice that requirement (I) for Q only needs 2 of the 1 n − (≥3) connections for each node, it is always possible for executing the maximum-deleting strategy.The maximum-deleting algorithm for the travelling salesman problem is as follows: Step 1.To input n nodes k C and generate all the lines in * D .
Step 2. To calculate the corresponding line lengths by Equation ( 2) and arrange them in the form of 0 D [the mapping from * D to 0 D needs to be saved].
Step 3. To delete the lines in 0 D one by one from the beginning (see Figure 1), only if the line to be deleted has more than two connections on each endpoint.If there are only two connections left on one of the two endpoints, then skip this line and continue to delete the subsequent smaller one 1 .
Step 4. If there are some particular nodes, to transform them into the normal ones.For the case in Figure 2 and select the shortest one to substitute.For the case in Figure 3, the comparison is done on the last three lengthes.For example, in case , , , q r t s t p l l l + + is the shortest, one can delete , t q l and , t r l and add , q r l .If there are some 1 After the deleting process, except some particular nodes with 2 m ( m ≥ 2) connections, all the others are the normal nodes which have 2 connections.The reason is that, originally all the nodes have the same number of connections and all the deleted lines connect pairs of nodes, it is impossible for a sole node who remains odd number of connections.In addition, a particular node only connects the normal nodes in its neighborhood, since if it connects another particular one at least two lines between them should be deleted.Step 5.If there are two crossed lines as in Figure 4 (responding to a twisted loop), to substitute them by the shortest pair of opposite sides of the quadri- Step 6.If the left n lines compose many isolated closed loops, to connect them in the following way: For the cases in Figure 6 and Figure 7, to find the nearest two neighboring pair of points and make the substitution.Specifically, if    Step 7. To modify the unique closed loop according the shortest principle.
Firstly, to re-number the nodes from 1 C along this loop in an anticlockwise order; Secondly, to follow this order and search from 1 C for the triangle determined by three neighboring nodes who owns a shortest boundary which is not on the loop, and then make the possible substitution.For example, in Figure 8 the triangle determined by k C ,  shortest connections or share one or two lines with the previously generated nodes (it doesn't matter whether they connect a particular node).Since the deleting processing is done from the longest one, it reduces all the possible longer connections respect to all the n nodes, and, to insure the connectivity, there are no other choices for a given node possessing a relatively shorter connection.So the closed loop to be found is based on the left lines with the shortest sum of lengths.In the subsequent steps, the small loops are opened and connected together.During this process the shortest principle is obeyed and the total length of the candidate loop is reduced to the maximum extent.So the final closed loop has the shortest length among all the choices.It is the anticipated solution for the travelling salesman problem.

Figure 1 .
Figure 1.Example for the travelling salesman problem with 6 cites.

Figure 2 .
Figure 2. One case with particular node.

Figure 3 .
Figure 3. Another case with particular node.
. Other crossed cases can be dealt with in the way4 .

Figure 4 .
Figure 4.A case with crossed lines.

Figure 5 .
Figure 5. Another case with crossed lines.

Figure 6 .
Figure 6.One positional relation for two isolated loops.

Figure 7 .
Figure 7. Another positional relation for two isolated loops.

Figure 8 .
Figure 8.The possible case in the final modifying process.
, for example, one can delete , AfterStep 4 all the left nodes are the normal ones and the number of left lines is n .The left n lines compose either a single closed loop or some isolated closed loops without twists.