بهینه سازی پرتفولیو پروژه نرم افزار با الگوریتم های تکاملی چندمنظوره پیشرفته
|کد مقاله||سال انتشار||مقاله انگلیسی||ترجمه فارسی||تعداد کلمات|
|21931||2011||11 صفحه PDF||سفارش دهید||8619 کلمه|
Publisher : Elsevier - Science Direct (الزویر - ساینس دایرکت)
Journal : Applied Soft Computing, Volume 11, Issue 1, January 2011, Pages 1416–1426
Large software companies have to plan their project portfolio to maximize potential portfolio return and strategic alignment, while balancing various preferences, and considering limited resources. Project portfolio managers need methods and tools to find a good solution for complex project portfolios and multiobjective target criteria efficiently. However, software project portfolios are challenging to describe for optimization in a practical way that allows efficient optimization. In this paper we propose an approach to describe software project portfolios with a set of multiobjective criteria for portfolio managers using the COCOMO II model and introduce a multiobjective evolutionary approach, mPOEMS, to find the Pareto-optimal front efficiently. We evaluate the new approach with portfolios choosing from a set of 50 projects that follow the validated COCOMO II model criteria and compare the performance of the mPOEMS approach with state-of-the-art multiobjective optimization evolutionary approaches. Major results are as follows: the portfolio management approach was found usable and useful; the mPOEMS approach outperformed the other approaches.
Project portfolio management (PPM) is a set of processes used to support a business in conducting the mix of projects, which best fit the organisation’s various needs. This set of processes includes the selection of projects an organisation conducts, maintaining the selected projects in portfolios, and periodically reviewing the mix of projects, to check whether the selection still supports the main business goals. Various portfolio processes have already been presented. Most of them do cover the whole life cycle of portfolios, from selecting projects and optimizing portfolios to phase gate review steps  and . Portfolio optimization is a process in PPM that create the best mix of projects, out of all potential candidates. Selection of projects, and optimization of projects can be conducted either manually or automatically. Manual approaches to select projects are for example the Analytic Hierarchy Process (AHP), Q-Sort, scoring models, and portfolio matrices . Commonly used manual approaches are based on some sort of direct comparison and ranking of the alternatives based on project data and individual preferences. Manually conducting the selection of projects is restricted in the number of projects it can deal with, constraints and objective preferences which can be taken care of, as well as the number of objectives the decision makers are able to optimize. This is especially true, since the complexity grows exponentially with the number of available project alternatives . The project selection problem is NP-hard problem  thus there is no exact algorithm that solves larger instances of this problem to proven optimality. Hence, heuristic algorithms are an option for finding at least approximate solutions to the optimal ones. The complexity of the project selection problem is based on the often high number of projects from which a subset has to be chosen, various existent restrictions and a multitude of objective preferences which the optimal portfolio should adhere to. Common goals of portfolio optimization are maximization of potential revenue and strategic alignment, as well as minimization of negative synergy effects in-between projects selected for a portfolio. Furthermore, portfolios often have to be balanced regarding characteristics of the portfolios. These balancing requirements are found in the number of projects assigned to a specific category, or in the optimization of a portfolio regarding its overall mean risk value. Manual approaches to this demanding decision problem are restricted in their usefulness for the problem at hand. Promising alternatives to manually selecting projects are found in the field of mathematically based portfolio optimization, and multiobjective optimization. Automated approaches are superior to manual approaches in a way that they are able to create a set of efficient portfolios, for which it can be assured that there exist no solutions in the search space which promises better values in at least one of the objectives, and offers at least the same in all the others. This set of efficient solutions is commonly referred to as the Pareto-optimal front. Furthermore, the utilized computational power and sophisticated multiobjective meta-heuristics ensure that the solutions found do have at least the same quality as manually created portfolios. With a high probability, solutions on the Pareto-optimal front found by automated approaches are much better than solutions found with manual approaches. Furthermore, manual approaches will never be able to keep up with the search ability of automated approaches, and the number of considered projects, objectives, restrictions and constraints. This paper presents the first phase of a decision support framework, which focuses on the selection of projects, using an evolutionary optimization algorithm. An implementation of a nature-inspired optimization framework is presented, using the evolutionary algorithm mPOEMS, based on general goals which the portfolio management should support. This optimization framework is able to find efficient portfolios on or close to the Pareto-optimal front. The second phase, not presented in this paper, comprises a group decision process to efficiently select one portfolio out of the Pareto-optimal front. mPOEMS is an iterative optimization algorithm that seeks in each iteration for such a modification of the current solution, called prototype, that improves its quality the best. Modifications are represented as sequences of elementary actions (simple mutations in standard EAs), defined specifically for the problem at hand. mPOEMS uses an evolutionary algorithm to search for the best action sequence that can be considered an evolved hypermutation. We have chosen mPOEMS since it was recently shown to be suitable for solving discrete multiobjective optimization problems like multiobjective 0/1 knapsack problem . In  mPOEMS was shown to produce better or at least competitive results to the state-of-the-art MOEAs such as NSGA-II and SPEA2 on that problem. The iterative optimization concept based on the evolved hypermutations has proven to be successful approach also for solving hard single-objective combinatorial problems such as the sorting network problem , the multiple sequence alignment problem  and the shortest common supersequence problem . The presented approach is evaluated on a test set of 50 IT projects. COCOMO II is used to calculate the effort and schedule data of the utilized project pool. The optimization framework claims to consider a very broad range of portfolio optimization characteristics and goals found in the literature. It has been empirically verified that mPOEMS is able to generate high-quality solutions with respect to the given set of optimization objectives. Results of the multiobjective optimization using mPOEMS are compared with results found with the state-of-the-art multiobjective evolutionary NSGA-II and SPEA2.1 Analyses presented in this paper show, that mPOEMS performs significantly better than NSGA-II and SPEA2 on this problem.
نتیجه گیری انگلیسی
In this paper we presented an effective approach to model the complex project portfolio selection environment in a formal model, with special focus on the adaptability to multiobjective optimization algorithms. The model comprises all characteristics found in the literature about project portfolio optimization. Selection of projects and optimization of portfolios was found very useful and the presented tools regarding project selection, project sequencing, goal maximization respectively minimization, resource optimization, and balancing of preferences have proven to work efficiently. The quality of the presented optimization approach is especially based on the combined number of optimization tools a project portfolio manager can use with the proposed approach. Furthermore the presented approach is highly modular and scalable. Goals, restrictions, and preferences may be added or removed, and the number of projects to optimize is not restricted. The proposed mPOEMS optimization approach proved to perform comparably to or even better than the state-of-the-art multiobjective optimization evolutionary algorithms. Particularly, mPOEMS is significantly better at generating good trade-off solutions than the compared algorithms. Findings can be briefly described as follows: • A new project selection method is proposed to enable the portfolio optimization to not only conduct optimization in the selection of projects, but also in the sequencing of projects, thus performing resource usage optimization. • A method to deal with objective criteria like number of categories assigned to a specific category in a portfolio is proposed. This method considers such criteria as another objective to optimize and combine it with restrictions which can be relaxed. • The evaluated optimization algorithms proved to be capable to deal with a complex set of goals and restriction. • The mPOEMS approach exhibits better capabilities of finding sets of high-quality solutions than the compared state-of-the-art algorithms. Various topics are subject to further work. The test set with which the approach was tested included 50 projects. It should be investigated how the performance of the optimization algorithms under consideration change for test sets with a greater number of projects, and more interdependencies to take care off. Regarding the test set it would be important to test the approach on a test set with real-world data. The relevance of the proposed project sequencing optimization and resource usage optimization for real-world businesses would be also an interesting topic for further research. The presented approach is unable to deal with incomplete data sets and uncertainty is only considered in the risk metric. Therefore it should be investigated how this optimization approach could deal with incomplete and uncertain data. Furthermore the second phase of the project portfolio decision support framework should be defined. The second phase comprise a decision support process for the selection of one portfolio out of the Pareto-optimal front, especially designed to be applicable to a group of decision makers. This group decision support has to use sophisticated visualization techniques and data exploration tools in order to provide insight into the multi-dimensional portfolio data, and support the group of decision makers in choosing the best alternative. There are also several open issues regarding the mPOEMS that we plan to focus on in the future. Particularly, different prototype selection strategies and means for boosting the exploration capabilities of the algorithm will be studied first as they seems to have the greatest impact on the efficiency of the algorithm.