Skip to contentScholarGate
LibraryBookshelfDeskReview StudioAssistant
Sign in
On this page
IntuitionHow it worksWhen to use itStrengths & limitationsCommon pitfallsApplicationsFrequently asked🔒 Read the full methodSourcesRelated methods
Cite this pageSpotted an issue on this page? Report or suggest a fix →
Home›Operations Research›Push-Relabel Algorithm
Machine learningGraph Algorithms

Push-Relabel Algorithm

Push-Relabel Algorithm for Maximum Flow · Also known as: preflow-push algorithm, Goldberg-Tarjan algorithm

The Push-Relabel Algorithm, developed by Andrew V. Goldberg and Robert E. Tarjan in 1988, is a highly efficient method for computing maximum flow in networks. Unlike augmenting path methods, it maintains a preflow and uses local push and global relabeling operations to drive flow toward the sink, achieving superior worst-case complexity.

ScholarGate
  1. Machine learning
  2. v1
  3. 2 Sources
  4. PUBLISHED
Cite this page →
Tools & resources
Download slides
Learn & explore

Read the full method

Members only

Sign in with a free account to read this section.

Sign in

Method map

The neighbourhood of related methods — select a node to explore.

Push-Relabel Algorithm
Bellman-Ford AlgorithmDijkstra AlgorithmFord-Fulkerson Algorithm

When to use it

Apply the push-relabel algorithm for computing maximum flow in large dense networks where augmenting path methods become inefficient. It is particularly effective for networks with thousands or millions of edges. Use it when you need guaranteed polynomial-time performance and want to leverage modern data structures. For sparse networks or educational purposes, augmenting path methods may be simpler to understand and implement.

Strengths & limitations

Strengths
  • Superior worst-case time complexity: O(V³) or O(V²√E) with gap heuristic
  • Highly efficient in practice, especially for large and dense networks
  • Locality of operations (push/relabel) allows for good cache performance
  • Amenable to parallelization and distributed implementations
  • Multiple implementation variants for different problem structures
Limitations
  • More complex to understand and implement than augmenting path methods
  • Requires careful handling of data structures (discharge lists, gap heuristics) for optimal performance
  • Worst-case complexity still higher than some specialized algorithms for special graph classes
  • Less intuitive understanding of the solution process compared to augmenting paths

Frequently asked

What is the difference between preflow and flow?

Preflow temporarily allows nodes to hold excess flow (flow in minus flow out can be positive), whereas true flow must be conserved at all nodes except source and sink. The algorithm terminates when preflow becomes a valid flow.

What is the purpose of the height function?

Heights create a quasi-distance measure: flow can only be pushed downhill (from higher to lower heights), preventing unnecessary cycles and ensuring termination. Heights are increased through relabeling to create new paths when needed.

What is the gap heuristic and why is it important?

The gap heuristic detects when no node has a height in a certain range, indicating that some nodes cannot reach the sink. These nodes and their excess are quickly identified and processed, significantly improving practical performance.

How does push-relabel compare in practice to Edmonds-Karp?

Push-relabel has better worst-case complexity and typically outperforms Edmonds-Karp on large networks, but for small networks or sparse graphs, Edmonds-Karp may be simpler to implement with competitive performance.

Sources

  1. Goldberg, A. V., & Tarjan, R. E. (1988). A new approach to the maximum flow problem. Journal of the ACM, 35(4), 921-940. DOI: 10.1145/48014.61051 ↗
  2. Goldberg, A. V. (1998). Recent advances in maximum flow and minimum-cost flow algorithms. In Algorithm Theory (pp. 1-10). Springer, Berlin. link ↗

How to cite this page

ScholarGate. (2026, June 3). Push-Relabel Algorithm for Maximum Flow. ScholarGate. https://scholargate.app/en/operations-research/push-relabel-algorithm

Related methods

Bellman-Ford AlgorithmDijkstra AlgorithmFord-Fulkerson Algorithm

Which method?

Set this method beside its closest kin and read them side by side — the library lays the books on the table; the choice is yours.

  • Bellman-Ford AlgorithmOperations Research↔ compare
  • Dijkstra AlgorithmOperations Research↔ compare
  • Ford-Fulkerson AlgorithmOperations Research↔ compare
Compare side by side →

Referenced by

Ford-Fulkerson Algorithm

Similar methods

Ford-Fulkerson AlgorithmPseudoflowBellman-Ford AlgorithmDijkstra AlgorithmA-star Search AlgorithmDynamic ProgrammingGale-Shapley AlgorithmColumn Generation (Dantzig-Wolfe)

Related reference concepts

Network Flow AlgorithmsGraph AlgorithmsShortest Path AlgorithmsGraph TraversalGreedy AlgorithmsParallel Algorithms and Performance

Spotted an issue on this page? Report or suggest a fix →

ScholarGate — Push-Relabel Algorithm (Push-Relabel Algorithm for Maximum Flow). Retrieved 2026-07-21 from https://scholargate.app/en/operations-research/push-relabel-algorithm · Dataset: https://doi.org/10.5281/zenodo.20539026
Quick facts
Originator
Andrew V. Goldberg and Robert E. Tarjan
Subfamily
Graph Algorithms
Year
1988
Type
algorithm
Related methods
Bellman-Ford AlgorithmDijkstra AlgorithmFord-Fulkerson Algorithm
ScholarGate

A content-first reference library for research methods — what each one is, how it works, and where it comes from.

Open data (CC-BY)

Explore

  • Library
  • Search the library…
  • Browse by field
  • Fields
  • Journey
  • Compare
  • Which method?

Reference

  • Subjects
  • Atlas
  • Glossary
  • Methodology
  • Philosophy

Your tools

  • Bookshelf
  • Desk
  • Chat

Company

  • About
  • Pricing
  • Contact
  • Suggest a method

Entries are compiled from published sources for reference. Verifying the accuracy and suitability of any information for your own use remains your responsibility.

© 2026 ScholarGate · A research-method reference library
  • Privacy
  • Cookies
  • Terms
  • Delete account