Fiduccia–Mattheyses algorithm: Difference between revisions
Appearance
Content deleted Content added
No edit summary |
No edit summary |
||
Line 9: | Line 9: | ||
* A special data structure is used to select vertices to be moved across the cut to improve running time. |
* A special data structure is used to select vertices to be moved across the cut to improve running time. |
||
* Time complexity O(P), where P is the total # of terminals. |
* Time complexity O(P), where P is the total # of terminals. |
||
[[file:FM-Sample.png|right|frame| example of FM ]] |
|||
== F-M Heuristic: Notation == |
== F-M Heuristic: Notation == |
Revision as of 10:25, 18 April 2011
A classical approach to solve the Hypergraph bipartitioning problem is an iterative heuristic by Fiduccia and Mattheyses [Fiduccia 1982]. This heuristic is commonly called the FM algorithm.
Introduction
FM algorithm is a linear time heuristic for improving network partitions. New features to K-L heuristic:
- Aims at reducing net-cut costs; the concept of cutsize is extended to hypergraphs.
- Only a single vertex is moved across the cut in a single move.
- Vertices are weighted.
- Can handle "unbalanced" partitions; a balance factor is introduced.
- A special data structure is used to select vertices to be moved across the cut to improve running time.
- Time complexity O(P), where P is the total # of terminals.
F-M Heuristic: Notation
Input: A hypergraph with a vertex set and a hyperedge set
- n(i): # of cells in Net i; e.g., n(1) = 4
- s(i): size of Cell i
- p(i): # of pins of Cell i; e.g., p(1) = 4
- C: total # of cells; e.g., C = 13
- N: total # of nets; e.g., N= 4
- P: total # of pins; P= p(1) + … + p(C) = n(1) + … + n(N)
- Area ratio r, 0< r<1
Output: 2 partitions
- Cutsetsize is minimized
- |A|/(|A|+|B|) ≈ r
References
- Category:Electronic design automation: Laung-Terng Wang, Yao-Wen Chang, Kwang-Ting[TIM] Cheng