We can move things from one place to another.
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?
Imagine water moving through pipes.
Some pipes are wide. Some are thin. We want to move as much water as we can.
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.
Imagine you have a network of pipes.
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.
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.
Many people have since found faster ways to solve these puzzles.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
🖼️ Images & Media (9)
More to explore
✨ What else?
Related topics you might enjoy
🔬 Go deeper
More advanced topics to explore
🪜 Step back
Simpler topics to build understanding
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.