Log in Sign up
Back to Discover
🔢

Maximum flow problem

math Maturity 11-13

We can move things from one place to another.

Simpe flow network.svg
Simpe flow network.svg
Imagine water moving through pipes. Some pipes are big. Some pipes are small. We want to move as much as we can. This helps us plan things like trains. Can you think of things that move in lines?
Pets flow.svg
Pets flow.svg

50 words

Imagine water moving through pipes.

Simpe flow network.svg
Simpe flow network.svg
Some pipes are wide. Some are thin. We want to move as much water as we can.
Pets flow.svg
Pets flow.svg
This is called a maximum flow problem. Long ago, people used this to study trains. They wanted to know how many trains could move between cities. Each track has a limit. You cannot send too many trains at once. Math helps us find the best way to move things. We can move water, trains, or even pets to new homes. It is a great way to plan.

92 words

Imagine you have a network of pipes.

Simpe flow network.svg
Simpe flow network.svg
Some pipes are wide and can carry a lot. Other pipes are thin and carry very little. The maximum flow problem asks how much can move from a start to an end.
Pets flow.svg
Pets flow.svg
You must follow two main rules. First, you cannot send more through a pipe than its capacity. Second, the amount of flow entering a point must equal the amount leaving it. This keeps things steady.

People first used this math to study trains. In 1954, T. E. Harris and F. S. Ross studied railway traffic. They wanted to know how many trains could move between cities. Later, in 1955, Lester R. Ford, Jr. and Delbert R. Fulkerson made a way to solve it. We call this the Ford–Fulkerson algorithm.

There is a special rule called the max-flow min-cut theorem. It says the most flow you can send is limited by the smallest cut. A cut is a way to split the network in two. This helps us find the limit of the whole system.

Maxflow imagesegmentation result.png
Maxflow imagesegmentation result.png
Many people have since found faster ways to solve these puzzles.

190 words

Imagine a complex web of pipes or roads connecting two distant points. Some paths are wide and can carry a huge amount of water or cars. Other paths are very narrow and can only handle a little bit. The maximum flow problem is a way to find the most you can move from the start to the end.

Simpe flow network.svg
Simpe flow network.svg
To solve this, you must follow two important rules. First, the flow cannot be more than a path's capacity. Second, everything that enters a middle point must also leave it.
Maxflow imagesegmentation network.png
Maxflow imagesegmentation network.png
This keeps the system steady and prevents any pile-ups.

There is a clever way to understand these limits using a concept called a cut. A cut is a line that splits the entire network into two separate sides. One side holds the start, and the other side holds the end.

Maxflow imagesegmentation result.png
Maxflow imagesegmentation result.png
The max-flow min-cut theorem tells us something amazing. It says the maximum flow is equal to the smallest capacity of any cut. This means the narrowest part of the whole system sets the limit for everything else. Finding this smallest cut helps us see exactly where the bottleneck is located.

This math started with a very real problem involving trains. In 1954, T. E. Harris and F. S. Ross created a model for Soviet railway traffic. They wanted to understand how many trains could move through a rail network between cities.

Baseball Elimination Problem.png
Baseball Elimination Problem.png
In 1955, Lester R. Ford, Jr. and Delbert R. Fulkerson developed the first way to solve this. Their method is called the Ford-Fulkerson algorithm. It works by finding paths that still have room for more flow. This helped turn a complicated transport problem into a clear math puzzle.

Since then, many smart people have found even faster ways to solve these networks. In 1969, Edmonds and Karp found a way to use shortest paths. Later, in 1970, Dinic created an algorithm using layered subgraphs. Other researchers like Goldberg and Tarjan worked on the push-relabel method.

Multi-source multi-sink flow problem.svg
Multi-source multi-sink flow problem.svg
More recently, James B. Orlin published a new algorithm in 2013. In 2022, a large team including Li Chen and Rasmus Kyng found a very fast way to solve these problems. Their work was even named a best paper at a major science meeting.

We use these ideas in many parts of our daily lives. You might use them when matching people to pets, like finding the best homes for cats and dogs.

Pets flow.svg
Pets flow.svg
It can also help with computer images or organizing large groups of things. Even when things look messy, math helps us find the best path. It turns a big, confusing web into a simple plan for moving things. This makes it possible to manage everything from city traffic to the data on your computer.

467 words

The maximum flow problem is a central challenge in optimization theory. It involves finding the highest possible rate of flow through a network. A flow network is a collection of connected points, called nodes, and the links between them, called edges. Think of this like a system of water pipes or a web of roads. Each edge has a specific capacity. This capacity is the maximum amount of flow that can pass through that specific link.

Simpe flow network.svg
Simpe flow network.svg

To solve this problem, a mathematical flow must follow two strict rules. The first rule is the capacity constraint. This means the flow on any edge cannot exceed its assigned capacity. The second rule is the conservation of flows. This rule states that for every node in the network, the total flow entering must equal the total flow exiting. The only exceptions to this rule are the source node, where flow begins, and the sink node, where flow ends.

Maxflow imagesegmentation network.png
Maxflow imagesegmentation network.png

Finding the maximum flow is deeply connected to a concept called a cut. An s-t cut is a way of severing the network to separate the source from the sink. The capacity of a cut is the sum of the capacities of the edges that cross the cut. The max-flow min-cut theorem provides a vital link between these two ideas. It states that the maximum value of an s-t flow is exactly equal to the minimum capacity of an s-t cut. This theorem helps identify the bottleneck that limits the entire system.

Maxflow imagesegmentation result.png
Maxflow imagesegmentation result.png

The history of this problem began with a practical need to manage transportation. In 1954, T. E. Harris and F. S. Ross formulated the problem as a model for Soviet railway traffic. They wanted to understand how much traffic could move through a rail network connecting two cities via intermediate cities. In 1955, Lester R. Ford, Jr. and Delbert R. Fulkerson created the first known solution. Their method, the Ford–Fulkerson algorithm, works by finding paths through a residual graph that still have available capacity.

Baseball Elimination Problem.png
Baseball Elimination Problem.png

Over many decades, mathematicians have developed increasingly efficient algorithms to solve these networks. In 1969, Edmonds and Karp introduced a specialization that uses breadth-first search to find augmenting paths. In 1970, Dinic developed an algorithm that uses layered subgraphs and finds a blocking flow. Other significant methods include the push-relabel algorithm by Goldberg and Tarjan. This method maintains a preflow and uses a height function to move excess flow toward the sink.

Multi-source multi-sink flow problem.svg
Multi-source multi-sink flow problem.svg

Recent breakthroughs have focused on making these calculations even faster for massive networks. In 2013, James B. Orlin published an algorithm that improved upon previous bounds. In 2022, a large team including Li Chen and Rasmus Kyng published an almost-linear time algorithm. This new method solves both the maximum flow and the minimum-cost flow problems. Their work was recognized as a best paper at the 2022 Symposium on Foundations of Computer Science.

Maxflow imagesegmentation network.png
Maxflow imagesegmentation network.png

The maximum flow problem is a special case of the more complex circulation problem. It can also be used to solve the minimum-cost flow problem. These mathematical tools allow us to solve real-world matching problems. For example, we can use flow networks to match humans with pets they are willing to adopt.

Pets flow.svg
Pets flow.svg
By treating humans and pets as nodes in a network, we can find a matching that maximizes the number of adoptions. This ability to organize complex connections is why the maximum flow problem remains essential to modern science.

584 words
🖼️ Images & Media (9)
File:Pets flow.svg
Pets flow.svg
File:Simpe_flow_network.svg
Simpe_flow_network.svg
File:Multi-source multi-sink flow problem.svg
Multi-source multi-sink flow problem.svg
File:Maximum bipartite matching to max flow.svg
Maximum bipartite matching to max flow.svg
File:Node splitting.svg
Node splitting.svg
File:Baseball Elimination Problem.png
Baseball Elimination Problem.png
File:Maxflow imagesegmentation image.png
Maxflow imagesegmentation image.png
File:Maxflow imagesegmentation network.png
Maxflow imagesegmentation network.png
File:Maxflow imagesegmentation result.png
Maxflow imagesegmentation result.png
Up Next
🔢
Max-flow min-cut theorem
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.