Estimation of f-COCOMO Model Parameters Using Optimization Techniques University of Alabama at Birmingham Birmingham, Alabama, USA Leonard J. Jowers Dr. James J. Buckley Dr. Kevin D. Reilly 1 Introduction This presentation is concerned with promoting use of optimization methods to estimate COCOMO model parameters. We briefly describe fuzzy COCOMO, showing how fuzzy arithmetic is applied to the model. We describe the issue which may be addressed using this technique. We provide an example and note future work. 2 University of Alabama at Birmingham Department of Computer and Information Sciences LEONARD J. JOWERS Bachelor of Sciences, 1969, University of Alabama. Master of Arts, 1972, University of Alabama. PhD candidate, University of Alabama at Birmingham. 2003-pres. 2002-pres. 2001-2002 1982-2001 1974-1982 1972-1974 1970-1972 1967-1970 1965-1968 Doctorial student. UAB President. AuditSoft, Inc. Birmingham, Alabama, USA. Executive Vice-President. Imaging Business Machines, LLC. President. Computer Utilization Services Corporation. VP of Operations. AOM Corporation, Birmingham, Alabama, USA. Unit Supervisor & systems analyst, LTV Aerospace, Langley AFB, Virginia, USA. Head of Software Department & systems analyst, Applied Computer Data Services, Tuscaloosa, AL Programmer, UNIVAC, Bluebell, Pennsylvania, USA. Student programmer, University Of Alabama Computing Center, Tuscaloosa, Alabama, USA Publications on simulating fuzzy systems, numerical computing. Latest book Simulating Continuous Fuzzy Systems (Springer), jointly with Dr. Buckley. 3 University of Alabama at Birmingham Department of Mathematics JAMES J. BUCKLEY, Ph.D. Mathematics; Georgia Tech in 1970 1970-1976 Mathematics Department at University of South Carolina. 1976-pres. Mathematics Department at U. of Alabama at Birmingham. Numerous publications in fuzzy sets/fuzzy logic and 9 books. Department of Computer and Information Sciences KEVIN D. REILLY, Ph.D. Math Biol. (Th. Biol. & Biophy.); U. of Chicago in 1966. 1966-1970 Information Scientist, Institute of Library Research, UCLA 1968-1970 Lecturer, Computer Science, School of Engineering, UCLA 1969-1970 Senior Lecturer, School of Business, University of Southern California 1970-Pres. Professorial staff, Computer & Information Sciences, UAB Numerous publications on simulating fuzzy systems. 4 Origins of Fuzzy Logic Lotfi Zadeh founded fuzzy logic in 1965. A basic principle of fuzzy logic is, “Everything is a matter of degree”. Whereas Boolean logic postulates the concept of truth as a function from a linguistic expression onto the set {0, 1}, fuzzy logic postulates the concept of truth as a function from a linguistic expression onto the interval [0,1]. 5 Fuzzy Numbers 6 Fuzzy Arithmetic Using a-cuts, create membership functions for C = A + B: C[a]=[cL,cR] = [aL,aR] + [bL,bR] = [aL+bL, aR+bR]. C = A - B: C[a]=[cL,cR] = [aL,aR] - [bL,bR] = [aL-bR, aR-bL]. C = A * B: C[a]=[cL,cR] = [aL,aR] * [bL,bR] = [bL, bR]. Where bL = min{aL bL, aL bR, aR bL, aR bR}. bR = max{aL bL, aL bR, aR bL, aR bR}. and if 0 is not in the support of B, C = A / B: C[a]=[cL,cR] =[aL,aR]/[bL,bR] = [aL, aR] * [(1/bR),(1/bL]. 7 f-COnstructive COst MOdel Start with classical COCOMO. Making one or more parameters into a fuzzy variable causes the result to be a fuzzy variable. Use definitions and tables for COCOMO, but allow specific uncertainty in one or more parameters. 8 Motivation At the start of a project, some schedule and budget requirements are known. Values for f-COCOMO project parameters may be generated from expert experience or data. However, project resources and methods may not be fixed. 9 One or more fuzzy parameters may be optimized to meet the schedule or budget. By improving the estimation of parameters, management may make adjustments to improve the project. Optimization to Solve Inverse Problems An inverse problem is one for which an answer is known but the question is not. Such problems are sometimes difficult to solve by analytical methods. Optimization techniques such as Monte Carlo methods or Genetic Algorithms are available for such problems. 10 Method – a Simple Example Consider a ‘Nominal’ project of Size 5K for which a budget of 16 PM has been decreed (but PM=17.26!). PM = A x SizeE < 16. E=B+0.01 x SSFj Allow a couple of Scale Factors more freedom. Use Fuzzy Monte Carlo to optimize TEAM and PMAT for 11 TEAM – nominal to Very High PMAT – nominal to Very High ln(PM) = ln(A x SizeE)< ln(16). ln(PM) = 0.0161 x TEAM + 0.0161 x PMAT < 0.0526. Method – a Simple Example (Cont’d.) It is determined that it is possible to meet the decreed budget by raising TEAM and PMAT (lowering their nominal values) to less than Very High. Also 12 TEAM – 1.43/1.51/2.62 PMAT – 1.62/1.76/2.99 Other constraints may be put into the optimization; such as, limits on costs of improving a Scale Factor. Effort Multipliers can be handled as fuzzy variables also. With specification of a defuzzification of compounded results, additional understanding may be possible. Summary Starting with crisp COCOMO, one may represent linguistic parameters as fuzzy variables to create a fuzzy COCOMO. Fuzzy arithmetic is such that operational using fuzzy variables tends to increase fuzziness in results. Using decreed limitations on person-months, one may use optimization techniques to determine fuzzy values for parameters. 13 Future Work Computer sources will be available on request from jowersl@cis.uab.edu after publication of Monte Carlo Studies with Fuzzy Random Numbers, to appear Sringer-Verlag, 2007. On-going research into extending this method to multi-objective f-COCOMO. 14 Major References Barry W. Boehm, Chris Abts, A. Windsor Brown, Sunita Chulani, Bradford K. Clark, Ellis Horowitz, Ray Madachy, Donald Reifer, and Bert Steece, Software Cost Estimation with COCOMO II, Prentice Hall PTR, Upper Saddle River, NJ, 2000. J.J. Buckley and L.J. Jowers, Simulating continuous fuzzy systems, Springer-Verlag, Heidelberg, Germany, 2005. George J. Klir and Bo Yuan, Fuzzy sets and fuzzy logic: Theory and applications, Prentice-Hall, Inc., Upper Saddle River, NJ, USA, 1995. Petr Musilek, Witold Pedrycz, Giancarlo Succi, and Marek Reformat, Software cost estimation with fuzzy models, SIGAPP Appl. Comput. Rev. 8 (2000), no. 2, 24-29. L. Zadeh, Fuzzy sets, Inf. Control 8 (1965), 338-353. Lotfi A. Zadeh, Computing with Words and Its Application to Information Processing, Decision and Control, The 2003 IEEE International Conference on Information Reuseand Integration (2003), Keynote speech. Toward a Generalized Theory of Uncertainty (GTU)An Outline, January 20, 2005, To appear in Information Sciences, http://www.bisc.cs.berkeley.edu/BISCSE2005/Zadeh2005.pdf. 15 Questions? 16