1 / 46

Stochastic Optimization with Learning For Complex Problems

Stochastic Optimization with Learning For Complex Problems. Thrust/Subthrust: Design Synthesis/Logic Synthesis Student: Lixin Su (June, 1999) Advisor: Prof. A. Richard Newton Mentor: Dr. Leon Stok, IBM (http://www-cad.eecs.berkeley.edu/~newton/presentations/SRC3_98).

Download Presentation

Stochastic Optimization with Learning For Complex Problems

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Stochastic Optimization with LearningFor Complex Problems Thrust/Subthrust: Design Synthesis/Logic Synthesis Student: Lixin Su (June, 1999) Advisor: Prof. A. Richard Newton Mentor: Dr. Leon Stok, IBM (http://www-cad.eecs.berkeley.edu/~newton/presentations/SRC3_98) SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

  2. Stochastic Optimization with Learning for Complex Problems DESCRIPTION: To evaluate the effectiveness of learning techniques for improving the performance of stochastic optimization on domain-specific CAD problems. GOALS: • To statistically characterize a number of important CAD problems. • To evaluate the potential of learning techniques (e.g. Bayesian, SVMs) for improving the expected performance of stochastic optimization on these problems over time. • To implement a learning-stochastic-optimizer based on the above results and apply it to representative CAD problems. SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

  3. Stochastic Optimization with Learning for Complex Problems PLANS FOR 1997: • Continue the development of the learning framework and evaluate incremental learning approaches (Bayesian, etc.) Framework development is ongoing and a variety of incremental learning approaches are under evaluation, including BayesNets, SVMs, and classical adaptive techniques • Apply the techniques to one or two new problems: standard-cell library generation, optimal clustering for placement Applied to partitioning (ICCAD97) and BDD sifting (ongoing) • Evaluate the effectiveness of adaptive optimization on other problems: BDD variable sifting ongoing (not funded) ADDITIONAL FOR 1997: • Validated the new algorithm by testing the robustness/generality of the model and doing performance analysis • Determination of the learning sample size and discovery of the window effect of the model • Invented novel approach to tradeoff analysis SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

  4. Stochastic Optimization with Learning for Complex Problems SPECIFIC MILESTONES AND DELIVERABLES 1997: • Milestones: • Develop the adaptive system based on experimental results (31-Mar-1997) • Deliverables: • Master’s thesis “Improvement of stochastic optimization through the use of learning” Brad Peters, (Completed - 28 - Feb - 1997) Pub ID T97050 • SRC review report on the experimentation discussed in goal 3 (Completed - Nov - 1997) Pub ID F97129 • Release of the prototype of the modified stochastic optimization algorithm for 2D placement (P: 31 - Dec - 1997, submission in progress) • Additional: • “Adaptive Methods for Netlist Partitioning,” W. L. Buntine, L. Su, and A. Richard Newton, ICCAD 1997 • Master’s thesis: “Learning as Applied to Simulated Annealing,” Lixin Su, (Completed - 18 - Dec - 1997, submission in progress) • Completed all the planned deliverables SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

  5. Stochastic Optimization with Learning for Complex Problems RESEARCH RESULTS TRANSFERRED THIS YEAR: • See 1997 Deliverables • “Adaptive Methods for Netlist Partitioning,” W. L. Buntine, L. Su, and A. Richard Newton, ICCAD 1997 RESEARCH RESULTS READY TO TRANSFER: • Master’s thesis: “Learning as Applied to Simulated Annealing,” Lixin Su, (Completed - 18 - Dec - 1997, submission in progress) POSSIBLE PATENTABLE RESULTS/INNOVATIONS: • None SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

  6. Stochastic Optimization with Learning for Complex Problems PLANS FOR 1998 • Complete investigation of two-dimensional placement problem. • Implement and evaluate incremental/adaptive learning approach(s) in the framework: Bayesian, Support Vector Machines (SVMs) • Continue work on BDD sifting (if funded) and begin work on clustering (if funded) MILESTONES AND DELIVERABLES DROP DELIVERABLE: • Report on theoretical bases for automating clustering (P: 31-Dec-1998) DROP MILESTONE: • Implement the prototype of the adaptive simulated annealing (P: 31-Dec-1998) ADD DELIVERABLES: • Preliminary report on application of incremental learning (P:Aug-31-98) • Comprehensive report on 2D placement application (P: Dec - 31 - 98) ADD MILESTONE: • Apply multi-objective approach to other CAD problems and implement an adaptive version (P: Dec - 31 - 98) SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

  7. Working Memory Complex Objective Function Stochastic Inference Engine Move Set Domain-Specific “Knowledge Pack” Original Proposal: Stochastic Optimizer with Learning • Goals: • Use incremental learning (Bayesian, SVM) to capture knowledge • Use stochastic pattern recognition • Train using well-characterized problems • Physical design, Logic synthesis • Identify effective approaches to parallel implementation SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

  8. Motivation and Scope • Many complex EDA optimization and search problems with complex and time-varying objectives • Not enough “algorithmic experts” in the world! • Stochastic algorithms often do better anyway! • Vast quantities of MIPS available so if we can find a general-purpose, scaleable multiprocessor (multicomputer) based approach, it would be highly leveraged • BUT… we would like to be able to take advantage of previous runs in improving the utility (performance, QOR, etc.) of a general approach SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

  9. High-Level Goals • Use principles of rationality (Bayesian probability and decision theory) to model complex problems and the use of expensive resources • Use data engineering to help understand opportunities for addressing and simplifying the complexity inherent in most EDA optimization problems • Emphasize scaleable (multiprocessor), “general-purpose” approaches to solving these complex EDA optimization and search problems rather than application-specific heuristic “algorithmic” approaches SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

  10. Information Theory Optimization Data Engineering Visualization Rapid Prototyping Learning and Statistics Data Engineering Develop understanding of complex problems by visualization, analysis and optimization (with Dr. Wray Buntine, Dr. Andrew Mayer) SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

  11. Move Set Move Set Randomly Randomly Learned Model Move Choose Set Move Accept? Accept? Naïve Simulated Annealing (NSA) Trained Simulated Annealing (TSA) Modification to Simulated Annealing SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

  12. Selected Move MAX(*) Comparison (1p1, 2p2, …, npn) ... Model Evaluation (p1, p2, …, pn), for each of m moves ... 1 2 m Choose Set Selecting a Candidate Move SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

  13. Selected Move Conventional Trained Untrained Annealing Model Model only one MAX(m moves) MAX( m moves) only one (1p1+2p2+…+npn) (p1+p2+…+pn)/m m=1 m=10 m=10 Comparison ... Model Evaluation 1 2 m ... Choose Set Naïve (NSA) Trained (TSA) Specific General Three Approaches SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

  14. Stochastic Optimization with Learning for Complex Problems • Test Problem: 2D Standard Cell Placement • Problem Instances: Group1: Circuits used for Training Group 2: Circuits Used to Test the General Model SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

  15. Parameters in the Model • p1: The Euclidian distance between two cells • p2: The square of the distance between C1 and the origin (0,0) (a control parameter) • p3: The square of the distance between C2 and the origin (0,0) (a control parameter) • p4: The number of connections between C1 and C2 • p5: The total weighted connectivity of the cells in the candidate move • p6, p7: Force change to weighted center of gravity • Cost Function: Change in the size of the maximum net bounding-box for all nets connected to the candidate cells to be swapped • Reminder: Our primary goal is to discover structure in the problems butnot to explain the behavior SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

  16. 0.5 Normalized Area 0.4 0.3 0.2 0.2 0.3 0.4 0.5 0.6 0.7 Normalized Cost Estimate Cost Estimate vs. TimberWolf Chip Area MOSAICO chip area using MSU standard-cell library vs. sum of net bounding-box lengths SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

  17. Overall Flow of Experiment MIS Wolfe blif OCT Learning Anneal “.cel” Timberwolf SC-4 result Data Analysis & Visualization Matlab result SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

  18. Performance of Trained Model: Apex6 SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

  19. Variation of Parameter Model Weights with Temperature Zone SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

  20. Example: Industry1 LSS = 5,000 R2 for the Model Final Cost Function Learning Sample Size Determination of Learning Sample Size SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

  21. Final Cost Improvement over Naïve Approach Swaps/Temperature How Many Swaps-per-Temperature?(Training Set) C6288 300 Temperatures in 10 Zones SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

  22. Results of General Model on New Examples industry2 • General model obtained by averaging individual models Final Cost (x !0-3) Swaps/Temperature SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

  23. Discovering the “Windowing Effect” X: Temperature from High to Low Y: Average Proposed Swap Distance avg.small Average Optimal Swap Distance Temperature SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

  24. Average Distance Between Swaps Low High Temperature Windowing Effect For 70 swaps/temp in each case and using general model SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

  25. Normalized Swap Distance • Once again, explaining behavior is not our primary goal… but it is interesting to try! Ave. swap distance/sqrt(cells) Temperature SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

  26. Training Time • For 5,000 Naïve SA runs at 20 swaps/temp • Using DEC Alpha Server 2100A 5/250 with 1Gb of memory SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

  27. avq.small Estimated Wire Length (x 10-4) CPU Time (sec) Runtime Performance SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

  28. Handling Multiple Conflicting Objectives • Pair of contradictory cost functions • c1: sum of half perimeter of bounding boxes of all nets • c2: • Want to minimize both of them, but c1 is more important • Often comes up in need to explore tradeoffs: “banana curves” • TSA can handle this easily and efficiently SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

  29. Handling Multiple Conflicting Objectives • Theorem: Given design matrix , are response vectors, , , , , then, minimizes This theorem enables us to fit the same data set for multi objectives with different weights simultaneously SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

  30. Multiple Objective Functions:Trading Off • Experimental settings • Learn as usual • Using for the acceptance test in TSA • Try the following weight combinations to form 8 models which will be used in picking up a swap from the choose set, record C1 and C2 SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

  31. Final Value of Objective C1 M8 M1 Swaps/Temperature Example Tradeoffs: C5315 SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

  32. M1 M8 Final Value of Objective C2 Swaps/Temperature Example Tradeoffs: C5315 SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

  33. Netlist Partitioning(Dr. Wray Buntine) • Routinely used as an essential preprocessing step for placement and in routing. • One standard approach used is the Fidducia and Mattheysses (FM) algorithm (related to Lin-Kernighan (LK) algorithm). • While implementing Dutt and Deng’s PROP1 approach, we identified and analyzed two improvements for regular FM. 1 “A Probability-Based Approach to VLSI Circuit Partitioning,” Proc. ACM/IEEE Design Automation Conf., June 1996 SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

  34. Examples for Partitioning SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

  35. Examples for Partitioning SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

  36. Dutt and Deng’s PROP • DAC’96 best paper • Uses probabilistic argument to replace the gain heuristic with another • Extensive testing shows is superior non-clustering algorithm SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

  37. Decision-Theoretic FM • DT-FM designed using Data Engineering • DT-FM has an adaptive stochastic wrapper around standard FM. • Currently has simple adaptive methods for proof of concept. • Is comparable to the state-of-the-art PROP algorithm (Dutt & Deng, DAC’96) on all but one problem. • For several O(10,000) cell problems, reconstructs best-known partition. • Initial results published at ICCAD ‘97 SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

  38. f A B C D E Wither BDD Ordering(Adrian Wrixon, Dr. Wray Buntine) • Proposal not funded and concern indicated about relevance of approach to BDD ordering (“sifting works well enough”) • Sifting is very good in general, when it works! • How much better could be done? How might we approach the problem? SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

  39. 1200 s1196 900 600 300 500 8000 1200 7000 s344 s1238 s1423 400 0 900 6000 1 6 11 16 21 26 31 36 41 46 5000 300 600 4000 Variable Sift Number (moves) 200 3000 300 2000 100 1000 0 0 0 1 11 21 31 41 1 21 41 61 81 101 121 141 161 1 6 11 16 21 26 31 36 Variable Sift Number (moves) Variable Sift Number (moves) Variable Sift Number (moves) BDD Sifting Evaluation: Default vs “Optimal” SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

  40. 800 s838 700 600 500 400 300 200 100 0 1 11 21 31 41 51 61 71 81 91 Variable Sift Number (moves) BDD Sifting Evaluation • Comparison of “default” sifting order versus “optimal” sifting order • Still not “optimum”! • Significant improvement possible in adaptive variable ordering for sifting SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

  41. Potential Improvement for BDD Optimization SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

  42. Potential Improvement for BDD Optimization SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

  43. Potential Improvement for BDD Optimization SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

  44. Information Theory Optimization Data Engineering Visualization Rapid Prototyping Learning and Statistics Data Engineering Develop understanding of complex problems by visualization, analysis and optimization (with Dr. Wray Buntine, Dr. Andrew Mayer) SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

  45. Summary • Complexity is a key problem in design, and data engineering can help to improve complex algorithms. • We have demonstrated the use of data engineering technology can improve simple standard-cell placement and standard net-list partitioning methods by up to 20%. • We have identified various opportunities for additional data engineering in optimization and adaptive computation. • We believe data engineering, as a general approach to solving complex optimization and search problems, could have a profound impact on overall EDA systems engineering if resources applied! SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

  46. Support Vector Machines • Support Vector Machines are learning machines that can perform binary classification (pattern recognition) and real valued function approximation (regression estimation) tasks. They perform the structural risk minimization principle. SV machines create a classifier with minimized VC dimension. If the VC dimension is low, the expected probability of error is low as well, which means good generalization. • Support Vector Machines non-linearly map their n-dimensional input space into a high dimensional feature space. In this high dimesional feature space a linear classifier is constructed. • The best reference is V. Vapnik, "The Nature of Statistical Learning Theory", Springer 1995. SRC Task Reviews: U.C. Berkeley Center of Excellence in Design Automation

More Related