Optimization and Engineering

, Volume 8, Issue 4, pp 397–430 | Cite as

A heuristic for optimizing stochastic activity networks with applications to statistical digital circuit sizing

  • Seung-Jean Kim
  • Stephen P. Boyd
  • Sunghee Yun
  • Dinesh D. Patil
  • Mark A. Horowitz


A deterministic activity network (DAN) is a collection of activities, each with some duration, along with a set of precedence constraints, which specify that activities begin only when certain others have finished. One critical performance measure for an activity network is its makespan, which is the minimum time required to complete all activities. In a stochastic activity network (SAN), the durations of the activities and the makespan are random variables. The analysis of SANs is quite involved, but can be carried out numerically by Monte Carlo analysis.

This paper concerns the optimization of a SAN, i.e., the choice of some design variables that affect the probability distributions of the activity durations. We concentrate on the problem of minimizing a quantile (e.g., 95%) of the makespan, subject to constraints on the variables. This problem has many applications, ranging from project management to digital integrated circuit (IC) sizing (the latter being our motivation). While there are effective methods for optimizing DANs, the SAN optimization problem is much more difficult; the few existing methods cannot handle large-scale problems.

In this paper we introduce a heuristic method for approximately optimizing a SAN, by forming a related DAN optimization problem which includes extra margins in each of the activity durations to account for the variation. Since the method is based on optimizing a DAN, it readily handles large-scale problems. To assess the quality of the resulting suboptimal designs, we describe two widely applicable lower bounds on achievable performance in optimal SAN design.

We demonstrate the method on a simplified statistical digital circuit sizing problem, in which the device widths affect both the mean and variance of the gate delays. Numerical experiments show that the resulting design is often substantially better than one in which the variation in delay is ignored, and is often quite close to the global optimum (as verified by the lower bounds).


Activity network Circuit optimization Design centering Design for manufacture Design for yield Makespan Project network Robust optimization Statistical circuit design 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. Abdel-Malek H, Bandler J (1980a) Yield optimization for arbitrary statistical distributions: part I—theory. IEEE Trans Circuits Syst 27(4):245–253 zbMATHCrossRefGoogle Scholar
  2. Abdel-Malek H, Bandler J (1980b) Yield optimization for arbitrary statistical distributions: part II—implementation. IEEE Trans Circuits Syst 27(4):253–262 zbMATHCrossRefGoogle Scholar
  3. Abramowitz M, Stegun I (eds) (1972) Handbook of mathematical functions with formulas, graphs, and mathematical tables. Wiley, New York zbMATHGoogle Scholar
  4. Agarwal A, Zolotov V, Blaauw D (2003) Statistical timing analysis using bounds and selective enumeration. IEEE Trans Comput Aided Des Integr Circuits Syst 22(9):1243–1260 CrossRefGoogle Scholar
  5. Ben-Tal A, Nemirovski A (1998) Robust convex optimization. Math Oper Res 23(4):769–805 zbMATHMathSciNetGoogle Scholar
  6. Ben-Tal A, Nemirovski A (2001) Lectures on modern convex optimization. Analysis, algorithms, and engineering applications. SIAM, Philadelphia zbMATHGoogle Scholar
  7. Bertsekas D (1999) Nonlinear programming, 2nd edn. Athena Scientific Google Scholar
  8. Bertsekas D, Nedic A, Ozdaglar A (2003) Convex analysis and optimization. Athena Scientific Google Scholar
  9. Bertsimas D, Thiele A (2006) A robust optimization approach to supply chain management. Math Program Ser B 54(1):150–168 MathSciNetGoogle Scholar
  10. Bertsimas D, Natarajan K, Teo C-P (2004) Probabilistic combinatorial optimization: Moments, semidefinite programming and asymptotic bounds. SIAM J Optim 15(1):185–209 zbMATHCrossRefMathSciNetGoogle Scholar
  11. Bhardwaj S, Vrudhula S, Blaauw D (2003) TAU: timing analysis under uncertainty. In: International conference on computer-aided design, San Jose, pp 615–620, November 2003 Google Scholar
  12. Birge J, Maddox M (1995) Bounds on expected project tardiness. Oper Res 43:838–850 zbMATHGoogle Scholar
  13. Bowman R (1995) Efficient estimation of arc criticalities in stochastic activity networks. Manag Sci 41(1):58–67 zbMATHMathSciNetGoogle Scholar
  14. Boyd S, Vandenberghe L (2004) Convex optimization. Cambridge University Press, Cambridge zbMATHGoogle Scholar
  15. Boyd S, Kim S-J, Patil D, Horowitz M (2005) Digital circuit optimization via geometric programming. Oper Res 53(6):899–932 CrossRefMathSciNetGoogle Scholar
  16. Boyd S, Kim S-J, Vandenberghe L, Hassibi A (2007) A tutorial on geometric programming. Optim Eng (to appear). Available from
  17. Bozorgzadeh E, Ghiasi S, Takahashi A, Sarrafzadeh M (2004) Optimal integer delay budget assignment on directed acyclic graphs. IEEE Trans Comput Aided Des Integr Circuits Syst 23(8):1184–1199 CrossRefGoogle Scholar
  18. Burt J, Garman M (1971) Conditional Monte Carlo: A simulation technique for stochastic network analysis. Manag Sci 18(1):207–217 zbMATHGoogle Scholar
  19. Charnes A, Cooper W, Thompson G (1964) Critical path analyses via chance constrained and stochastic programming. Oper Res 12:460–470 zbMATHMathSciNetGoogle Scholar
  20. Conn A, Gould N, Toint PhL (1992) LANCELOT: a Fortran package for large-scale nonlinear optimization (release A). Springer series in computational mathematics, vol 17. Springer, Berlin zbMATHGoogle Scholar
  21. Conn A, Coulman P, Haring R, Morrill G, Visweswariah C, Wu C (1998) JiffyTune: Circuit optimization using time-domain sensitivities. IEEE Trans Comput Aided Des Integr Circuits Syst 17(12):1292–1309 CrossRefGoogle Scholar
  22. Davis E (1966) Resource allocation in project network models—a survey. J Ind Eng 17(4):177–187 Google Scholar
  23. Devroye L (1979) Inequalities for the completion times of stochastic PERT networks. Math Oper Res 4(4):441–447 zbMATHMathSciNetGoogle Scholar
  24. Dodin B (1984) Determining the k most critical paths in PERT networks. Oper Res 32:859–877 zbMATHMathSciNetGoogle Scholar
  25. Dodin B (1985) Bounding the project completion time distribution in PERT networks. Oper Res 33:862–881 zbMATHGoogle Scholar
  26. Dodin B, Elmaghraby S (1985) Approximating the criticality indices of the activities in PERT networks. Manag Sci 31(2):207–223 zbMATHMathSciNetGoogle Scholar
  27. Elmaghraby S (1977) Project planning and control by network models. Wiley, New York zbMATHGoogle Scholar
  28. Eppstein D (1998) Finding the k shortest paths. SIAM J Comput 28(2):652–673 zbMATHCrossRefMathSciNetGoogle Scholar
  29. Esary J, Proschan F, Walkup D (1967) Association of random variables with applications. Ann Math Stat 38:71466–1474 MathSciNetGoogle Scholar
  30. Fishburn J, Dunlop A (1985) TILOS: A posynomial programming approach to transistor sizing. In: IEEE international conference on computer-aided design: ICCAD-85. Digest of technical papers, IEEE Computer Society Press, pp 326–328 Google Scholar
  31. Fox B (1994) Integrating and accelerating tabu search. Ann Oper Res 41:47–67 CrossRefGoogle Scholar
  32. El Ghaoui L, Lebret H (1997) Robust solutions to least-squares problems with uncertain data. SIAM J Matrix Anal Appl 18(4):1035–1064 zbMATHCrossRefMathSciNetGoogle Scholar
  33. Glasserman P (2003) Monte Carlo methods in financial engineering. Springer, Berlin Google Scholar
  34. Hagstrom J, Jane N (1990) Computing the probability distribution of project duration in a PERT network. Networks 20:231–244 zbMATHCrossRefMathSciNetGoogle Scholar
  35. Heller U (1981) On the shortest overall duration in stochastic acyclic network. Methods Oper Res 42:85–104 zbMATHGoogle Scholar
  36. Hongliang C, Sapatnekar S (2003) Statistical timing analysis considering spatial correlations using a single PERT-like traversal. In: International conference on computer-aided design, San Jose, pp 621–625, November 2003 Google Scholar
  37. Hsiung K-L, Kim S-J, Boyd S (2005) Robust geometric programming via piecewise linear approximation. Manuscript, September 2005 Google Scholar
  38. Jess J, Kalafala K, Naidu S, Otten R, Visweswariah C (2003) Statistical timing for parametric yield prediction of digital integrated circuits. In: Proc. of 40th proc. IEEE/ACM design automation conference, Anaheim, pp 343–347, June 2003 Google Scholar
  39. Knowles S (1999) A family of adders. In: Proceedings of 14th IEEE symposium on computer arithmetic, IEEE Computer Society Press, pp 30–34 Google Scholar
  40. Liou J-J, Krstić A, Jiang Y-M, Cheng K-T (2003) Modeling, testing, and analysis for delay defects and noise effects in deep submicron devices. IEEE Trans Comput Aided Des Integr Circuits Syst 22(6):756–769 CrossRefGoogle Scholar
  41. Ludwig A, Möhring R, Stork F (2001) A computational study on bounding the makespan distribution in stochastic project networks. Ann Oper Res 102:49–64 zbMATHCrossRefMathSciNetGoogle Scholar
  42. Ma S, Keshavarzi A, De V, Brews R (2004) A statistical model for extracting geometric sources of transistor performance variation. IEEE Trans Electron Dev 51(1):36–41 CrossRefGoogle Scholar
  43. Mejilson I, Nadas A (1979) Convex majorization with an application to the length of critical path. J Appl Probab 16:671–677 CrossRefMathSciNetGoogle Scholar
  44. Mingozzi A, Maniezzo V, Ricciardelli S, Bianco L (1998) An exact algorithm for the resource constrained project scheduling problem based on a new mathematical formulation. Manag Sci 44:714–729 zbMATHGoogle Scholar
  45. MOSEK ApS (2002). The MOSEK optimization tools version 2.5. User’s manual and reference. Available from
  46. Mutapcic A, Koh K, Kim S-J, Vandenberghe L, Boyd S (2005) GGPLAB: a simple matlab toolbox for geometric programming. Available from
  47. Nesterov Y (2003) Introductory lectures on convex optimization: a basic course. Kluwer Academic, Boston Google Scholar
  48. Nesterov Y, Nemirovsky A (1994) Interior-point polynomial methods in convex programming. Studies in applied mathematics, vol 13. SIAM, Philadelphia Google Scholar
  49. Neumaier A (1998) Solving ill-conditioned and singular linear systems: A tutorial on regularization. SIAM Rev 40(3):636–666 zbMATHCrossRefMathSciNetGoogle Scholar
  50. Nocedal J, Wright S (1999) Numerical optimization. Springer series in operations research. Springer, New York Google Scholar
  51. Okada K, Yamaoka K, Onodera H (2003) A statistical gate delay model for intra-chip and inter-chip variabilities. In: Proc. of 40th IEEE/ACM proc. design automation conference, Anaheim, pp 31–36, June 2003 Google Scholar
  52. Orshansky M, Keutzer K (2002) A general probabilistic framework for worst case timing analysis. In: Proc. of 39th IEEE/ACM design automation conference, New Orleans, pp 556–561, June 2002 Google Scholar
  53. Orshansky M, Chen J, Hu C (1999) Direct sampling methodology for statistical analysis of scaled CMOS technologies. IEEE Trans Semicond Manuf 12(4):403–408 CrossRefGoogle Scholar
  54. Orshansky M, Milor L, Chen P, Keutzer K, Hu C (2002) Impact of spatial intrachip gate length variability on the performance of high-speed digital circuits. IEEE Trans Comput Aided Des Integr Circuits Syst 21(5):544–553 CrossRefGoogle Scholar
  55. Orshansky M, Milor L, Hu C (2004) Characterization of spatial intrafield gate CD variability, its impact on circuit performance and spatial mask-level correction. IEEE Trans Semicond Manuf 17(1):2–11 CrossRefGoogle Scholar
  56. Patil D, Yun Y, Kim S-J, Boyd S, Horowitz M (2004) A new method for robust design of digital circuits. In: Proceedings of the sixth international symposium on quality electronic design (ISQED) 2005, IEEE Computer Society Press, pp 676–681 Google Scholar
  57. Pelgrom M (1989) Matching properties of MOS transistors. IEEE J Solid State Circuits 24(5):1433–1439 CrossRefGoogle Scholar
  58. Pich M, Loch C, De Meyer A (2002) On uncertainty, ambiguity, and complexity in project management. Manag Sci 48(8):1008–1023 CrossRefGoogle Scholar
  59. Plambeck E, Fu B-R, Robinson S, Suri R (1996) Sample-path optimization of convex stochastic performance functions. Math Program 75(2):137–176 CrossRefMathSciNetGoogle Scholar
  60. Pollalis S (1993) Computer-aided project management: a visual scheduling and control system. Vieweg Verlag, Wiesbaden zbMATHGoogle Scholar
  61. Prekopa A (1983) Stochastic programming. Kluwer Academic, Dordrecht Google Scholar
  62. Robillard P, Trahan M (1976) The completion times of PERT networks. Oper Res 25:15–29 MathSciNetGoogle Scholar
  63. Robinson J (1979) Some analysis techniques for asynchronous multiprocessor algorithms. IEEE Trans Softw Eng 5(1):24–31 CrossRefGoogle Scholar
  64. Rockafellar R, Uryasev S (2000) Optimization of conditional value-at-risk criterion. J Risk 2(3):21–41 Google Scholar
  65. Sapatnekar S (1996) Wire sizing as a convex optimization problem: exploring the area-delay tradeoff. IEEE Trans Comput Aided Des 15:1001–1011 CrossRefGoogle Scholar
  66. Sapatnekar S (2000) Power-delay optimization in gate sizing. ACM Trans Des Autom Electron Syst 5(1):98–114 CrossRefGoogle Scholar
  67. Sapatnekar S, Rao V, Vaidya P, Kang S (1993) An exact solution to the transistor sizing problem for CMOS circuits using convex optimization. IEEE Trans Comput Aided Des Integr Circuits Syst 12(11):1621–1634 CrossRefGoogle Scholar
  68. Serfling R (1980) Approximation theorems of mathematical statistics. Wiley, New York zbMATHGoogle Scholar
  69. Shogan A (1977) Bounding distributions for a stochastic PERT network. Networks 7:359–381 zbMATHCrossRefMathSciNetGoogle Scholar
  70. Slowinski R (1980) Two approaches to problems of resource allocation among project activities: a comparative study. J Oper Res Soc 31:711–723 zbMATHMathSciNetGoogle Scholar
  71. Van Slyke R (1963) Monte Carlo methods and the PERT problem. Oper Res 11:839–860 Google Scholar
  72. Van Slyke R, Wets R (1969) L-shaped linear programs with applications to optimal control and stochastic programming. SIAM J Appl Math 17:638–663 zbMATHCrossRefMathSciNetGoogle Scholar
  73. Styblinski M, Opalski L (1986) Algorithms and software tools for IC yield optimization based on fundamental fabrication parameters. IEEE Trans Comput Aided Des 5(1):79–89 CrossRefGoogle Scholar
  74. Sullivan R, Hayya J (1980) A comparison of the method of bounding distributions (MBD) and Monte Carlo simulation for analyzing stochastic acyclic networks. Oper Res 28(3):614–617 MathSciNetGoogle Scholar
  75. Sutherland I, Sproul B, Harris D (1999) Logical effort: designing fast CMOS circuits. Kaufmann, San Francisco Google Scholar
  76. van der Vaart A (1998) Asymptotics statistics. Cambridge University Press, Cambridge Google Scholar
  77. Vanderbei R (1992) LOQO user’s manual. Technical Report SOL 92–05, Dept. of Civil Engineering and Operations Research, Princeton University, Princeton, NJ 08544, USA Google Scholar
  78. Visweswariah C (2003) Death, taxes and failing chips. In: Proc. of 40th IEEE/ACM design automation conference, Anaheim, pp 343–347, June 2003 Google Scholar
  79. Wallace S (1989) Bounding the expected time-cost curve for a stochastic PERT network from below. Oper Res 8:89–94 zbMATHMathSciNetGoogle Scholar
  80. Weiss G (1986) Stochastic bounds on distributions of optimal value functions with applications to PERT, network flows and reliability. Oper Res 34(4):595–605 zbMATHMathSciNetCrossRefGoogle Scholar
  81. White K, Trybula W, Athay R (1997) Design for semiconductor manufacturing-perspective. IEEE Trans Compon Packag Manuf Technol Part C 20(1):58–72 CrossRefGoogle Scholar

Copyright information

© Springer Science+Business Media, LLC 2007

Authors and Affiliations

  • Seung-Jean Kim
    • 1
  • Stephen P. Boyd
    • 1
  • Sunghee Yun
    • 1
  • Dinesh D. Patil
    • 2
  • Mark A. Horowitz
    • 2
  1. 1.Information Systems Laboratory, Department of Electrical EngineeringStanford UniversityStanfordUSA
  2. 2.Computer Systems Laboratory, Department of Electrical EngineeringStanford UniversityStanfordUSA

Personalised recommendations