Simplify Your Workflow: Search MiniWebtool.
Add Extension
Home Page > Math > Advanced Math Operations > Network Flow Calculator (Max Flow)

Network Flow Calculator (Max Flow)

Compute the maximum flow from source to sink in a capacitated directed network using the Ford-Fulkerson method (Edmonds-Karp). Animates every augmenting path, shows residual capacities, saturated edges, and the min-cut partition that proves optimality.

Network Flow Calculator (Max Flow)
Edge format: A -> B : 10 (arrow plus capacity), or A, B, 10. Matrix format: one row per line, C[i][j] is the capacity of edge i → j (use 0 for no edge). Diagonal must be 0.
Comma- or space-separated labels, one per matrix row. Defaults to S, A, B, …, T.

Embed Network Flow Calculator (Max Flow) Widget

About Network Flow Calculator (Max Flow)

The Network Flow Calculator computes the maximum flow from a chosen source s to a chosen sink t in any capacitated directed network. Under the hood it runs the Ford-Fulkerson method with breadth-first augmenting paths (the Edmonds-Karp algorithm), then records every path it found so you can replay the entire decision process one iteration at a time. The result page also surfaces the min-cut — the bottleneck partition that proves your flow value is truly optimal.

What Is the Maximum Flow Problem?

A flow network is a directed graph G = (V, E) together with a capacity function c: E → ℝ≥0. Two vertices are distinguished: the source s (where flow originates) and the sink t (where it is consumed). A flow f is any assignment f(u, v) ≥ 0 on edges that obeys:

Capacity: 0 ≤ f(u, v) ≤ c(u, v) for every edge (u, v) Conservation: Σ f(w, v) = Σ f(v, w) for every v ∈ V \ {s, t} Flow value: |f| = Σ f(s, w) − Σ f(w, s) (net flow leaving s)

The maximum flow problem asks for the flow f that maximises |f|. Intuitively: if the edges were water pipes with the given capacities, how many litres per second can you ship from s to t?

How the Algorithm Works — Ford-Fulkerson with BFS

The algorithm maintains a residual graph alongside the current flow. For every edge (u, v) with capacity c and current flow f, the residual graph contains:

At each iteration it performs a breadth-first search from s to t over the residual graph. If a path is found, the smallest edge capacity on the path — the bottleneck — is added to flow on every forward edge and subtracted on every reverse edge along the path. This is called an augmenting path. When BFS can no longer reach t, the current flow is optimal.

while there exists an augmenting path P from s to t in the residual graph: b ← min c_residual(u, v) over edges (u, v) in P push b units of flow along P // updates residual + flow return total flow |f|

Using BFS (rather than arbitrary path-finding) turns Ford-Fulkerson into Edmonds-Karp, with a guaranteed running time of O(V · E²). It also guarantees termination on irrational capacities, which plain Ford-Fulkerson does not.

The Max-Flow Min-Cut Theorem

A cut is a partition of the vertices into two sets (S, T) with s ∈ S and t ∈ T. Its capacity is the sum of capacities of edges going from S to T:

cap(S, T) = Σ c(u, v) for u ∈ S, v ∈ T

The max-flow min-cut theorem (Ford & Fulkerson, 1956) states:

maximum flow value = minimum cut capacity

This tool finds the min-cut automatically. After Edmonds-Karp terminates, it runs one more BFS from s on the residual graph; the vertices reached form S, the rest form T, and every edge crossing S → T in the original graph is saturated. Their capacities sum to exactly the max-flow value — visible in the hero result as "Min-cut capacity ✓ confirms optimality".

Features Built for Learning

Input Formats

1. Edge list with capacities

One edge per line. The arrow form is most readable but several alternatives work:

S -> A : 10 S -> B : 13 A -> B : 10 B -> A : 4 B -> T : 14

Also accepted: A, B, 10 · A B 10 · A -> B , 10. Multiple edges between the same pair are summed.

2. Capacity matrix

One row per line, values separated by spaces or commas. Entry C[i][j] is the capacity of the edge from vertex i to vertex j. Use 0 for "no edge". The matrix must be square and the diagonal must be 0 (no self-loops).

S A B C D T S [ 0 10 0 10 0 0 ] A [ 0 0 4 2 8 0 ] B [ 0 0 0 0 0 10 ] C [ 0 0 0 0 9 0 ] D [ 0 0 6 0 0 10 ] T [ 0 0 0 0 0 0 ]

Enter matching vertex labels in the Matrix labels field (comma- or space-separated). If omitted, labels default to S, A, B, …, T.

Applications of Max Flow

DomainHow max flow is used
Transportation & logisticsHow much cargo can a rail/road/pipeline network move per day from origin to destination?
Bipartite matchingAssigning jobs to workers, students to projects. Unit-capacity max flow gives the maximum matching.
Image segmentationBoykov–Kolmogorov min-cut in computer vision separates foreground from background pixels.
Network reliabilityMin-cut identifies the weakest links whose failure disconnects the network.
Project schedulingClosure problems and selection problems reduce to min-cut.
Baseball eliminationDetermines whether a team is mathematically eliminated from a league title.

Worked Example

The "Textbook" quick-example encodes a 6-node network with source S and sink T. Running Edmonds-Karp yields four augmenting paths:

  1. S → A → B → T with bottleneck 4 (edge A-B is the limiter). Running total: 4.
  2. S → A → D → T with bottleneck 6. Running total: 10.
  3. S → C → D → T with bottleneck 4 (edge D-T is now the limiter, only 4 left). Running total: 14.
  4. S → C → D → B → T with bottleneck 5. Running total: 19.

The algorithm stops — no more augmenting paths exist. The min-cut is (S = {S, C}, T = {A, B, D, T}) with crossing edges S → A (capacity 10) and C → D (capacity 9), summing to 19 — exactly the max flow value.

How to Use This Calculator

  1. Choose input format using the tabs — edge list (recommended) or capacity matrix.
  2. Enter your network. You can start from a quick example and modify it. For matrix input, also supply labels if you want names other than S, A, B, …, T.
  3. Specify source and sink (or leave blank to auto-detect S and T).
  4. Click Compute Max Flow. The result page shows the max flow value, min-cut partition, a layered graph visualisation, every augmenting path, an edge utilisation table, and three matrices (capacity, flow, residual).
  5. Play the animation beneath the graph to replay the algorithm's decisions. Click any augmenting-path step to jump directly to it.

Limits

Frequently Asked Questions

What is the maximum flow problem?

Given a directed network where each edge has a non-negative capacity, the maximum flow problem asks: how much flow can be pushed from a designated source vertex s to a designated sink vertex t, subject to the rules that flow on each edge cannot exceed its capacity and flow entering every non-source, non-sink vertex must equal the flow leaving it? The answer is called the max flow value.

What is the Ford-Fulkerson method?

Ford-Fulkerson is a general technique for computing max flow. It repeatedly finds an augmenting path from source to sink in the residual graph and pushes as much flow as possible along that path (the bottleneck capacity), then updates the residual graph. The procedure terminates when no augmenting path exists. When implemented with breadth-first search for path selection, it is called Edmonds-Karp and runs in O(V · E²) time.

What is the min-cut of a flow network?

A cut is a partition of the vertices into two sets S and T such that the source is in S and the sink is in T. The capacity of the cut is the sum of capacities of edges from S to T. A min-cut is a cut of minimum capacity. The famous max-flow min-cut theorem proves that the maximum flow value always equals the minimum cut capacity, so finding one gives you the other for free.

What is the residual graph?

The residual graph tracks how much more flow can still be pushed on each edge. For every original edge (u, v) with capacity c and current flow f, the residual graph contains a forward edge (u, v) with capacity c minus f (remaining capacity) and a reverse edge (v, u) with capacity f (cancellable flow). An augmenting path uses edges of the residual graph, allowing the algorithm to undo earlier decisions.

Why does the tool use BFS for augmenting paths?

Choosing augmenting paths with breadth-first search (Edmonds-Karp) guarantees polynomial-time termination regardless of the edge capacities. Plain Ford-Fulkerson with an arbitrary path-finding strategy can loop for an exponential number of iterations on pathological inputs, and on irrational capacities it may not terminate at all. BFS also produces shortest augmenting paths, which are easier to read and reason about.

What does a saturated edge mean?

An edge is saturated when its flow equals its capacity, so no additional flow can be pushed on it. Saturated edges are bottlenecks of the network, and every min-cut consists entirely of saturated edges from the S-side to the T-side of the cut. The tool highlights saturated edges in red so you can see the bottleneck structure at a glance.

Further Reading

Reference this content, page, or tool as:

"Network Flow Calculator (Max Flow)" at https://MiniWebtool.com/network-flow-calculator-max-flow/ from MiniWebtool, https://MiniWebtool.com/

by miniwebtool team. Updated: Apr 22, 2026

You can also try our AI Math Solver GPT to solve your math problems through natural language question and answer.

Related MiniWebtools:

Advanced Math Operations:

Top & Updated:

Random PickerRandom Name PickerInstagram User ID LookupFPS ConverterLine CounterBatting Average CalculatorSort NumbersMAC Address GeneratorRelative Standard Deviation CalculatorERA CalculatorRemove SpacesFeet and Inches to Cm ConverterFacebook User ID LookupWord to Phone Number ConverterMAC Address LookupRandom Truth or Dare GeneratorSun, Moon & Rising Sign Calculator 🌞🌙✨Job FinderSum CalculatorImage ResizerPercent Off CalculatorSHA256 Hash GeneratorSlope and Grade CalculatorVertical Jump CalculatorSquare Root (√) CalculatorMP3 LooperRandom Credit Card GeneratorNumber of Digits CalculatorBitwise CalculatorAudio SplitterOPS CalculatorRoman Numerals ConverterSaturn Return CalculatorAI Text HumanizerLog Base 10 CalculatorInvisible Text GeneratorRandom Quote GeneratorRandom Activity GeneratorCm to Feet and Inches ConverterSlugging Percentage CalculatorRandom IMEI GeneratorPhone Number ExtractorMerge VideosRandom Loadout GeneratorRandom Movie PickerSalary Conversion Calculator⬛ Aspect Ratio CalculatorText FormatterRandom Fake Address GeneratorRandom Superpower GeneratorCM to Inches ConverterMaster Number CalculatorRandom Poker Hand GeneratorLove Compatibility CalculatorRandom Meal GeneratorCaffeine Overdose CalculatorFile Size ConverterOn Base Percentage CalculatorNumber to Word ConverterWHIP CalculatorWord Ladder GeneratorDecimal to BCD ConverterCompound Growth CalculatorRandom Writing Prompt GeneratorFirst n Digits of PiOctal CalculatorVideo to Image ExtractorPER CalculatorBinary to Gray Code ConverterCompare Two StringsYouTube Channel StatisticsConnect the Dots GeneratorStair CalculatorSteel Weight CalculatorSocial Media Username CheckerWAR Calculator📷 OCR / Image to TextTime Duration CalculatorPercent Growth Rate CalculatorBCD to Decimal ConverterPerfect Number CheckerBingo Card GeneratorRandom Birthday GeneratorQuotient and Remainder CalculatorProportion CalculatorGrade CalculatorGray Code to Binary ConverterLeap Years ListMartingale Strategy Calculator📅 Date CalculatorRemove Line BreaksClothing Size ConverterArc Length CalculatorRandom Object GeneratorOutlier CalculatorImage Splitter🔍 Plagiarism CheckerSHA512 Hash GeneratorDay of the Year Calculator - What Day of the Year Is It Today?Battery Life CalculatorDMS to Decimal Degrees ConverterIP Subnet CalculatorBinary to BCD ConverterWhat is my Lucky Number?Add Text to ImageLong Division CalculatorList of Prime NumbersRandom Chord GeneratorVideo CompressorAstrological Element Balance CalculatorAcreage CalculatorRemove AccentTrigonometric Equation SolverVideo SplitterAI Punctuation AdderRandom Chess Opening GeneratorMorse Code GeneratorSmall Text Generator ⁽ᶜᵒᵖʸ ⁿ ᵖᵃˢᵗᵉ⁾URL ExtractorBoiling Point CalculatorAI ParaphraserModulo CalculatorIP Address to Hex ConverterRandom Time GeneratorSum of Positive Integers CalculatorWhat is my Zodiac Sign?🖱️ Click CounterTaco Bar CalculatorImage CompressorLottery Number GeneratorRemove Leading Trailing SpacesSquare Numbers ListCone Flat Pattern (Template) GeneratorNumber ExtractorAngel Number CalculatorHappy Number CalculatorBirth Day of the Week CalculatorPVIF CalculatorBroken Link Checker🎰 Gacha Pity CalculatorDay of Year CalendarName Number CalculatorList RandomizerRandom Emoji GeneratorWeight Loss CalculatorRandom Tournament Bracket GeneratorBreak Line by CharactersAI Language DetectorAdd Prefix and Suffix to TextRandom Number PickerNonogram Generator (Picross)Hypotenuse CalculatorMolarity CalculatorMandelbrot Set ExplorerEmail ExtractorYouTube Tag ExtractorMercury Retrograde CalendarDice Roll Probability CalculatorConvolution CalculatorCryptogram GeneratorBcrypt Hash Generator / Checker🔊 Tone GeneratorBonus CalculatorAdjust Video SpeedBCD to Binary ConverterHex to BCD ConverterLbs to Kg ConverterRadical SimplifierRandom Line PickerYouTube Comment PickerWord Scramble GeneratorExponential Decay CalculatorInvisible Character RemoverPVIFA CalculatorRandom Playing Card GeneratorFlip VideoMAC Address AnalyzerMiter Angle CalculatorVideo CropperAPI TesterkPa to psi ConverterYouTube Earnings EstimatorRandom Sound Frequency GeneratorRoof Pitch CalculatorText to Speech ReaderNumber Pattern FinderRounding CalculatorMultiple Fraction CalculatorRatio CalculatorRatio to Percentage CalculatorCoin FlipperLog Base 2 CalculatorMaze GeneratorAge CalculatorColor InverterDecibel (dB) Calculator⏱️ Hours CalculatorHow Long Ago CalculatorSort Lines AlphabeticallyBCD to Hex ConverterMedian CalculatorStandard Error CalculatorAverage CalculatorReverse VideoRemove Audio from VideoActual Cash Value CalculatorScientific Notation to Decimal ConverterRoot Mean Square CalculatorSHA3-256 Hash GeneratorAI Sentence ExpanderHex to Decimal ConverterRandom Group GeneratorRandom String GeneratorAmortization CalculatorMarkup CalculatorDecimal to Hex ConverterInstagram Font GeneratorSocial Media Image Size GuideTikTok Money CalculatorTwitter/X Character CounterTwitter/X Timestamp ConverterYouTube Watch Time CalculatorTwitch Earnings CalculatorYouTube Shorts Monetization CalculatorFacebook Ad Cost CalculatorSocial Media ROI CalculatorSocial Media Post Time OptimizerCTR CalculatorROAS CalculatorInfluencer ROI CalculatorForce CalculatorAcceleration CalculatorVelocity CalculatorMomentum CalculatorProjectile Motion CalculatorKinetic Energy CalculatorPotential Energy CalculatorWork and Power CalculatorDensity CalculatorPressure CalculatorIdeal Gas Law CalculatorFree Fall CalculatorTorque CalculatorHorsepower CalculatorDilution CalculatorChemical Equation BalancerStoichiometry CalculatorPercent Yield CalculatorEmpirical Formula CalculatorTitration CalculatorMole/Gram/Particle ConverterIrregular Polygon Area CalculatorFrustum CalculatorTorus Calculator3D Distance CalculatorGreat Circle Distance CalculatorCircumscribed Circle (Circumcircle) CalculatorInscribed Circle (Incircle) CalculatorAngle Bisector CalculatorTangent Line to Circle CalculatorHeron's Formula CalculatorCoordinate Geometry Distance CalculatorVolume of Revolution CalculatorSurface of Revolution CalculatorParametric Curve GrapherRiemann Sum CalculatorTrapezoidal Rule CalculatorSimpson's Rule CalculatorImproper Integral CalculatorL'Hôpital's Rule CalculatorMaclaurin Series CalculatorPower Series CalculatorSeries Convergence Test CalculatorInfinite Series Sum CalculatorAverage Rate of Change CalculatorInstantaneous Rate of Change CalculatorRelated Rates SolverOptimization Calculator (Calculus)Gradient Calculator (Multivariable)Divergence CalculatorCurl CalculatorLine Integral CalculatorSurface Integral CalculatorJacobian Matrix CalculatorNewton's Method CalculatorRREF Calculator (Row Echelon Form)Matrix Inverse CalculatorMatrix Multiplication CalculatorDot Product CalculatorCross Product CalculatorVector Magnitude CalculatorUnit Vector CalculatorAngle Between Vectors CalculatorNull Space CalculatorColumn Space CalculatorCramer's Rule CalculatorMatrix Diagonalization CalculatorQR Decomposition CalculatorCholesky Decomposition CalculatorMatrix Power CalculatorCharacteristic Polynomial CalculatorBayes' Theorem CalculatorF-Test / F-Distribution CalculatorHypergeometric Distribution CalculatorNegative Binomial Distribution CalculatorGeometric Distribution CalculatorExponential Distribution CalculatorWeibull Distribution CalculatorBeta Distribution CalculatorSpearman Rank Correlation CalculatorFisher's Exact Test CalculatorContingency Table CalculatorOdds Ratio CalculatorTip Splitter (Advanced)Lease vs Buy CalculatorHourly Rate Calculator (Freelancer)Invoice Late Fee CalculatorESPP CalculatorStock Split CalculatorOptions Probability CalculatorDollar to Gold ConverterBeam Load CalculatorPipe Flow CalculatorBolt Torque CalculatorGravel, Sand & Topsoil CalculatorRandom Sentence GeneratorRandom Paragraph GeneratorRandom Math Problem GeneratorRandom Bible Verse GeneratorRandom Cat/Dog Name GeneratorRandom Debate Topic GeneratorBody Recomposition CalculatorAlcohol Calorie CalculatorMedication Dosage CalculatorPace to Calories CalculatorHydration CalculatorTrain Meeting Problem SolverAge Word Problem SolverMixture Problem SolverWork Rate Problem SolverDistance-Speed-Time Triangle CalculatorCoin Word Problem SolverNumber Bonds GeneratorCarry and Borrow VisualizerTimes Tables QuizMental Math TrainerRoman Numeral Math SolverEgyptian Multiplication CalculatorVedic Math Tricks CalculatorRussian Peasant MultiplicationSoroban Abacus SimulatorAnnuity Payout CalculatorReverse Mortgage CalculatorVariable Annuity CalculatorFixed Indexed Annuity CalculatorBond Convexity CalculatorBond Duration Calculator (Macaulay & Modified)Forward Rate CalculatorMortgage Recast CalculatorTreasury Inflation-Protected Securities (TIPS) CalculatorStock Beta CalculatorTreynor Ratio CalculatorSortino Ratio CalculatorDoppler Effect CalculatorSpring Constant CalculatorPendulum Period CalculatorCentripetal Force CalculatorAngular Velocity CalculatorMoment of Inertia CalculatorSnell's Law CalculatorCoulomb's Law CalculatorElectric Field CalculatorMagnetic Field of Wire CalculatorLens Equation CalculatorA/B Test Significance CalculatorA/B Test Sample Size CalculatorConversion Rate CalculatorCustomer Lifetime Value (CLV) CalculatorCustomer Acquisition Cost (CAC) CalculatorChurn Rate CalculatorRetention Rate Cohort CalculatorNPS (Net Promoter Score) CalculatorPareto Chart GeneratorSix Sigma Process Capability CalculatorTessellation GeneratorSpirograph GeneratorVoronoi Diagram GeneratorDelaunay Triangulation GeneratorL-System Fractal GeneratorJulia Set GeneratorPolar Equation Plotter3D Surface PlotterSierpinski Triangle GeneratorcURL Command BuilderHTTP Status Code ReferenceUUID Validator/DecoderURL ParserQuery String BuilderSVG to React/JSX ConverterSCSS to CSS CompilerLess to CSS CompilerTypeScript PlaygroundJSON Schema GeneratorImage to ASCII Art ConverterImage to SVG TracerLipogram CheckerPangram CheckerAcronym GeneratorBackronym GeneratorPig Latin TranslatorEXIF Data Viewer/RemoverROT13 Encoder/DecoderAtbash Cipher ToolVigenère Cipher ToolPronunciation IPA ConverterHemingway-Style Readability EditorSentence Length Variance AnalyzerWord Frequency AnalyzerBusiness Days CalculatorAdd Business Days to DateHalfway Date CalculatorDate Pattern GeneratorHow Long Until CalculatorBirthday Across Cultures CalculatorLunar Calendar ConverterHijri Calendar ConverterHebrew Calendar ConverterInsulin Sensitivity Factor CalculatorCarb-to-Insulin Ratio CalculatorLean Body Mass to Strength CalculatorOne-Mile Walk Test (Rockport) CalculatorCooper 12-Minute Run CalculatorFFMI CalculatorAPGAR Score CalculatorGlasgow Coma Scale CalculatorWells Score Calculator (DVT/PE)Tennis Score TrackerSoccer xG (Expected Goals) CalculatorCricket Run Rate CalculatorRugby Points CalculatorBoxing Punch Power CalculatorRace Time PredictorSwimming SWOLF CalculatorYoga Pose Hold Timer