What is Chinese Postman Problem (CPP)? [Common Miconceptions]

Home > Glossary > Route Optimization > What is Chinese Postman Problem (CPP)? [Common Miconceptions]

What is chinese postman problem

What is Chinese Postman Problem (CPP)?

The Chinese Postman Problem (CPP) is a kind of routing problem in which a postman must determine the quickest path to carry mail to every address on a certain set of streets. The issue is made more difficult by the possibility that some streets must be traversed more than once to finish the delivery route.

The goal of CPP is to find a route that reaches every street (or edge) at least once and returns to the starting location while reducing the overall distance traveled. It was first introduced by a Chinese mathematician named Kwan Mei-Ko in 1962 while studying a problem related to postal delivery in Beijing. This is the reason it is referred to as the “Chinese Postman Problem”. 

There is no known algorithm that can solve the problems of vehicle routing in polynomial time for all instances because it is known to be NP-hard. This problem is useful in several fields including circuit design, DNA sequencing, and transportation planning.

Complexity of Chinese Postman Problem

The Chinese Postman Problem (CPP) is also known as the Route Inspection Problem. It is a difficult problem to solve using conventional methods, which means it can take a very long time to identify the optimal solution. However, researchers have found that there are shortcuts that can be utilized to find the answer more quickly for specific kinds of graphs. 

Researchers have employed heuristic algorithms as one approach to solve the Chinese Postman Problem. Using approximation methods to create solutions that are close to the optimum solution is another way to handle the Chinese Postman Problem’s complexity. 

How Does Chinese Postman Problem (CPP) Work?

As we have learned the complexity of the Chinese Postman Problem, let us find out how it works:

Step 1: Determine the problem

The goal of the Chinese Postman Problem in graph theory involves finding the shortest path that passes by each edge of a given graph at least once. The objective is to make sure that all edges are covered as well as possible.

Step 2: Determine the odd vertices

We must first identify the odd vertices, or vertices with an odd number of edges, to solve CPP. This is crucial because the starting and ending sites must have an equal number of edges. 

Step 3: Pair the odd vertices 

After locating the odd vertices, we must couple them so that the total weight of the edges connecting them is as low as possible. This step makes sure that there are an equal amount of edges on each vertex.

Step 4: Create a new graph

The new graph that is produced next has both the original and the newly added edges from step three. The vertices of this new graph must all be of even degree.

Step 5: Find the Euler circuit 

Finally, we discover the Euler circuit, which is a path that precisely traverses each graph edge. The CPP can be resolved by taking this route.

Even if the Chinese Postman Problem may appear to be challenging, the above steps guarantee that all graph edges are covered in the most effective way possible. 

Algorithms for Solving CPP

The Chinese Postman Problem (CPP) can be solved using a number of different algorithms. Typical algorithms include the following:

1. Hierholzer’s algorithm

This is a traditional approach for locating Eulerian circuits in graphs, but it may also be expanded to address the CPP. The algorithm finds a cycle that covers every edge of the graph, removes that cycle, and then repeatedly searches for other cycles until every edge is covered.

2. Christofides algorithm

This algorithm ensures that the final result is at most 1.5 times better than the weighted CPP’s ideal solution. The technique operates by first locating the graph’s lowest spanning tree, then locating a minimum weight match between vertices of odd degrees, and finally locating an Euler circuit that encompasses all of the graph’s edges.

3. Blossom algorithm

A graph matching algorithm called the Blossom can be used to get the least weight match between vertices in the graph with odd degrees. This approach is built on the idea of augmenting pathways, which are paths that alternate between matched and unmatched edges while beginning and ending with unmatched vertices.

In general, every one of these algorithms offers a unique strategy for resolving the Chinese Postman Problem. 

Common Misconceptions about CPP

Below are a few widespread misunderstandings about the Chinese Postman Problem, including:

  • CPP only applies to mail delivery: Although the issue was first raised about mail delivery, it has now found use in a number of other fields as well.
  • CPP can be solved efficiently for all instances: CPP is an NP-hard issue, as was already established, and there is currently no algorithm that can handle it effectively in all cases.
  • CPP is only applicable to undirected graphs: The issue can be expanded to directed graphs and graphs with weighted edges even though it is commonly formulated for undirected graphs.
  • CPP is only applicable to road networks: Although postal delivery was the initial inspiration for the issue, it has numerous real-world applications outside of road networks, including circuit design, travel planning, and DNA sequencing.
  • CPP is only applicable to simple graphs: CPP can also be applied to more complex graphs such as multigraphs and hypergraphs.

To properly understand the variety of applications and intricacy of the Chinese Postman Problem, it is crucial to dispel these misconceptions. 


The Chinese Postman Problem (CPP) is a well-known problem in graph theory that has several real-world applications.  It is significant to remember that CPP applies to a variety of industries, including circuit board design and transportation, in addition to postal delivery. 

Furthermore, there are a number of widespread misconceptions about CPP, including the notion that it is effective in all situations and that it only applies to undirected graphs. The fundamentals of CPP and its applications can be helpful in many different industries, and computer science research is still being done in this area.

Author Bio
Rakesh Patel
Rakesh Patel

Rakesh Patel, author of two defining books on reverse geotagging, is a trusted authority in routing and logistics. His innovative solutions at Upper Route Planner have simplified logistics for businesses across the board. A thought leader in the field, Rakesh's insights are shaping the future of modern-day logistics, making him your go-to expert for all things route optimization. Read more.