Geometric quadrisection in linear time, with application to VLSI placement

We consider the following problem: given a set of points in the plane, each with a weight, and capacities of the four quadrants, assign each point to one of the quadrants such that the total weight of points assigned to a quadrant does not exceed its capacity, and the total distance is minimized. This problem is most important in placement of VLSI circuits and is likely to have other applications. It is NP-hard, but the fractional relaxation always has an optimal solution which is ''almost'' integral. Hence for large instances, it suffices to solve the fractional relaxation. The main result of this paper is a linear-time algorithm for this relaxation. It is based on a structure theorem describing optimal solutions by so-called ''American maps'' and makes sophisticated use of binary search techniques and weighted median computations. This algorithm is a main subroutine of a VLSI placement tool that is used for the design of many of the most complex chips.

[1]  Manuel Blum,et al.  Time Bounds for Selection , 1973, J. Comput. Syst. Sci..

[2]  Jens Vygen,et al.  Algorithms for large-scale flat placement , 1997, DAC.

[3]  Raymond E. Miller,et al.  Complexity of Computer Computations , 1972 .

[4]  Klaus Jansen,et al.  Improved Approximation Schemes for Scheduling Unrelated Parallel Machines , 2001, Math. Oper. Res..

[5]  Takeshi Tokuyama,et al.  Efficient algorithms for the Hitchcock transportation problem , 1992, SODA '92.

[6]  Jens Vygen Plazierung im VLSI-Design und ein zweidimensionales Zerlegungsproblem , 1996 .

[7]  Jan Karel Lenstra,et al.  Approximation algorithms for scheduling unrelated parallel machines , 1987, 28th Annual Symposium on Foundations of Computer Science (sfcs 1987).

[8]  Jürgen Koehl,et al.  A flat, timing-driven design system for a high-performance CMOS processor chipset , 1998, Proceedings Design, Automation and Test in Europe.

[9]  Jens Vygen,et al.  On dual minimum cost flow algorithms , 2002, Math. Methods Oper. Res..

[10]  Robert E. Tarjan,et al.  Improved Algorithms for Bipartite Network Flow , 1994, SIAM J. Comput..

[11]  Joseph Naor,et al.  Divide-and-conquer approximation algorithms via spreading metrics , 1995, Proceedings of IEEE 36th Annual Foundations of Computer Science.

[12]  Sanjeev Khanna,et al.  A PTAS for the multiple knapsack problem , 2000, SODA '00.

[13]  Endre Boros,et al.  Optimality of Nested Partitions and Its Application to Cluster Analysis , 1996, SIAM J. Optim..

[14]  Thomas Lengauer,et al.  Combinatorial algorithms for integrated circuit layout , 1990, Applicable theory in computer science.

[15]  Andrew B. Kahng,et al.  Recent directions in netlist partitioning , 1995 .

[16]  Éva Tardos,et al.  An approximation algorithm for the generalized assignment problem , 1993, Math. Program..

[17]  G. Dantzig Discrete-Variable Extremum Problems , 1957 .

[18]  J. Koehl,et al.  IBM's 50 million gate ASICs , 2003, Proceedings of the ASP-DAC Asia and South Pacific Design Automation Conference, 2003..

[19]  E.S. Kuh,et al.  PROUD: a sea-of-gates placement algorithm , 1988, IEEE Design & Test of Computers.

[20]  Ulrich Brenner,et al.  An effective congestion driven placement framework , 2002, ISPD '02.

[21]  James B. Orlin A Faster Strongly Polynomial Minimum Cost Flow Algorithm , 1993, Oper. Res..

[22]  Sachin S. Sapatnekar,et al.  Proceedings of the Asia and South Pacific Design Automation Conference, ASP-DAC , 2006 .

[23]  Jens Vygen,et al.  The Book Review Column1 , 2020, SIGACT News.

[24]  Andrew B. Kahng,et al.  Recent directions in netlist partitioning: a survey , 1995, Integr..

[25]  Alexander Schrijver,et al.  On the history of the transportation and maximum flow problems , 2002, Math. Program..