Log in Sign up
Back to Discover
🔢

Max-flow min-cut theorem

math Maturity 11-13

Think about water in pipes.

Max flow.svg
Max flow.svg
The water flows from one place to another. Some pipes are small. Some pipes are big. A small pipe can slow things down. This is called a bottleneck. The most water you can send is set by the smallest part. Can you find a bottleneck?

51 words

Imagine water flowing through pipes.

Max flow.svg
Max flow.svg
The water starts at one place. It moves to another place. Each pipe can only hold so much water. Some pipes are wide. Some pipes are thin.

A thin pipe can slow everything down. This is a bottleneck. You can find this by cutting pipes. If you cut a set of pipes, the water stops.

The smallest set of pipes to cut is the min-cut. The most water that can flow is the max-flow. These two numbers are the same! The smallest bottleneck tells us the most water we can send.

97 words

Imagine a network of pipes. Water flows from a source to a city. This city is called the sink. Each pipe has a limit. This limit is called its capacity. It is the most water that can pass through at one time.

Max flow.svg
Max flow.svg

Sometimes, a few thin pipes slow everything down. We call this a bottleneck. You can find this by making a cut. A cut is a way to divide the network into two parts. One part has the source. The other part has the sink. If you remove all the pipes in a cut, the water stops. The total capacity of these pipes is the capacity of the cut.

The max-flow min-cut theorem is a big idea. It says the maximum flow is equal to the minimum cut. This means the most water you can send is limited by the smallest bottleneck.

Max-flow min-cut project-selection.svg
Max-flow min-cut project-selection.svg

People use this math for many things. It helps solve the project selection problem. This helps people pick the best projects to make a profit. It also helps in image segmentation. This is a way to group pixels in a digital picture.

Image segmentation.jpg
Image segmentation.jpg

191 words

Imagine a huge network of pipes carrying water from a reservoir to a city. The reservoir is called the source, and the city is the sink. Each pipe has a limit on how much water can pass through it. We call this limit the capacity. The max-flow min-cut theorem is a way to find the most water possible. It tells us the maximum flow is equal to the minimum cut. A cut is a way to divide the network into two separate parts. One part holds the source, and the other holds the sink.

Max flow.svg
Max flow.svg

To understand how this works, we must look at two rules. First, the flow through any pipe cannot be more than its capacity. Second, the amount of water entering a junction must equal the amount leaving it. This rule applies to every point except the source and the sink. This keeps the water moving steadily through the system. If you remove all the pipes in a specific cut, the water stops. The total capacity of those pipes is the capacity of the cut.

Max flow.svg
Max flow.svg

Finding the smallest bottleneck is a very important task. A bottleneck is the smallest total capacity of any set of pipes that would disconnect the source from the sink. This smallest capacity is called the min-cut. The theorem proves that the maximum flow value always matches this minimum cut capacity. This idea is a special case of the duality theorem for linear programs. It can also be used to find other math truths. These include Menger's theorem and the Kőnig–Egerváry theorem.

Max flow.svg
Max flow.svg

In 1962, Ford and Fulkerson gave an account of how this theorem works. They published their ideas in a paper called "Flows in Networks" at Princeton. This math helps solve many real-world puzzles today. For example, it can help with the project selection problem. This helps people pick projects and machines to make the most profit. It can also help with image segmentation. This is a way to group pixels in a digital photo.

Image segmentation.jpg
Image segmentation.jpg

Let's look closer at how it helps with those problems. In project selection, we want to maximize profit from projects. We must also pay for the machines those projects need. We can turn this into a network problem to find the best choice. In image segmentation, we want to separate a foreground from a background. We look at pixels and the penalties for changing labels. By using the min-cut, we can find the best way to group them.

Max-flow min-cut project-selection.svg
Max-flow min-cut project-selection.svg

418 words

The max-flow min-cut theorem is a fundamental principle in computer science and optimization theory. It describes the relationship between how much of something can move through a network and the bottlenecks that limit that movement. In a flow network, we look for the maximum amount of flow that can travel from a starting point to an ending point. The theorem states that this maximum flow is exactly equal to the capacity of the minimum cut. A cut is a way to divide the network into two separate groups. One group contains the source, and the other contains the sink. By finding the smallest total capacity of edges that disconnect these two groups, we find the limit of the entire system.

To understand the mechanism, we must define the components of a network. A network is a directed graph made of a finite set of vertices, which are points, and directed edges, which are connections between those points. We also define a source vertex and a sink vertex. Every edge has a capacity function. This function represents the maximum amount of flow that can pass through that specific edge. A flow must follow two strict rules to be valid. First, it must obey the capacity constraint, meaning the flow on an edge cannot exceed its capacity. Second, it must follow the conservation of flow. This rule states that for every vertex except the source and the sink, the amount of flow entering must equal the amount of flow leaving.

Max flow.svg
Max flow.svg

The concept of a cut is the second half of this mathematical relationship. An s-t cut is a partition of the vertices into two sets, S and T. The source is in set S, and the sink is in set T. The cut-set consists of all edges that start in set S and end in set T. If you remove all edges in this cut-set, no flow can reach the sink from the source. The capacity of the cut is the sum of the capacities of these specific edges. While a network can have many different cuts, the theorem focuses on the one with the smallest total capacity. This minimum capacity represents the ultimate bottleneck of the network.

Max flow.svg
Max flow.svg

History shows that this theorem is a special case of the duality theorem for linear programs. This connection allows mathematicians to use powerful tools to solve complex problems. The max-flow problem can be written as a primal linear program. The min-cut problem serves as its dual. Because of strong duality, if an optimal solution exists for the max-flow, an optimal solution also exists for the min-cut, and their values are equal. In 1962, researchers L.R. Ford Jr. and D.R. Fulkerson provided a significant account of these concepts. They published their work on flows in networks at Princeton.

Max-flow min-cut project-selection.svg
Max-flow min-cut project-selection.svg

The theorem has many significant applications in various fields. One example is the project selection problem. In this scenario, a person wants to maximize profit by choosing certain projects. However, each project requires specific machines that cost money to purchase. We can model this as a network where projects are connected to the source and machines are connected to the sink. The max-flow min-cut theorem helps find the subset of projects and machines that results in the highest total profit. For instance, if the total revenue of all projects is 450 and the minimum cut capacity is 250, the maximum profit is 200.

Image segmentation.jpg
Image segmentation.jpg

Another fascinating application is found in image segmentation. This is a process used in digital imaging to separate the foreground from the background. Each pixel in an image can be assigned to one of these two groups. There is often a penalty if adjacent pixels are assigned to different groups. By constructing a network where pixels are connected to the source or the sink, we can use the min-cut to find the best assignment. This method minimizes the penalties while maximizing the values of the chosen pixels. It is a highly efficient way to handle complex visual data.

Max-flow min-cut project-selection.svg
Max-flow min-cut project-selection.svg

Finally, the theorem connects to other deep mathematical ideas. It can be used to derive Menger's theorem, which discusses the number of edge-disjoint paths in a graph. It also relates to the Kőnig–Egerváry theorem. There is even a generalized version of the theorem. This version considers capacity at the vertices themselves, not just the edges. In this case, the capacity of a cut includes the sum of the capacities of both the edges and the vertices. These connections show that the max-flow min-cut theorem is a central pillar of mathematical optimization.

765 words
🖼️ Images & Media (3)
File:Max_flow.svg
Max_flow.svg
File:Max-flow min-cut project-selection.svg
Max-flow min-cut project-selection.svg
File:Image segmentation.jpg
Image segmentation.jpg
Up Next
🔢
Flow network
Math
More to explore

What is Nepedia?

A free, ad-free encyclopedia for children. Every article is written at five reading levels, so the same page works for a five-year-old and a fifteen-year-old — use the level switcher above to see this one change. No account needed to read.