Multistage Human Resource Allocation for Software Development by Multiobjective Genetic Algorithm



Similar documents
Load Balancing Mechanism in Agent-based Grid

A MOST PROBABLE POINT-BASED METHOD FOR RELIABILITY ANALYSIS, SENSITIVITY ANALYSIS AND DESIGN OPTIMIZATION

Synopsys RURAL ELECTRICATION PLANNING SOFTWARE (LAPER) Rainer Fronius Marc Gratton Electricité de France Research and Development FRANCE

The Online Freeze-tag Problem

Concurrent Program Synthesis Based on Supervisory Control

Re-Dispatch Approach for Congestion Relief in Deregulated Power Systems

Monitoring Frequency of Change By Li Qin

DAY-AHEAD ELECTRICITY PRICE FORECASTING BASED ON TIME SERIES MODELS: A COMPARISON

ENFORCING SAFETY PROPERTIES IN WEB APPLICATIONS USING PETRI NETS

A Virtual Machine Dynamic Migration Scheduling Model Based on MBFD Algorithm

Mean shift-based clustering

Design of A Knowledge Based Trouble Call System with Colored Petri Net Models

Point Location. Preprocess a planar, polygonal subdivision for point location queries. p = (18, 11)

Project Management and. Scheduling CHAPTER CONTENTS

X How to Schedule a Cascade in an Arbitrary Graph

Time-Cost Trade-Offs in Resource-Constraint Project Scheduling Problems with Overlapping Modes

COST CALCULATION IN COMPLEX TRANSPORT SYSTEMS

Static and Dynamic Properties of Small-world Connection Topologies Based on Transit-stub Networks

Local Connectivity Tests to Identify Wormholes in Wireless Networks

On Multicast Capacity and Delay in Cognitive Radio Mobile Ad-hoc Networks

Stochastic Derivation of an Integral Equation for Probability Generating Functions

Alpha Channel Estimation in High Resolution Images and Image Sequences

An effective multi-objective approach to prioritisation of sewer pipe inspection

Design and Development of Decision Making System Using Fuzzy Analytic Hierarchy Process

Machine Learning with Operational Costs

An important observation in supply chain management, known as the bullwhip effect,

Web Application Scalability: A Model-Based Approach

STATISTICAL CHARACTERIZATION OF THE RAILROAD SATELLITE CHANNEL AT KU-BAND

Modeling and Simulation of an Incremental Encoder Used in Electrical Drives

Softmax Model as Generalization upon Logistic Discrimination Suffers from Overfitting

Service Network Design with Asset Management: Formulations and Comparative Analyzes

An Efficient NURBS Path Generator for a Open Source CNC

Branch-and-Price for Service Network Design with Asset Management Constraints

CABRS CELLULAR AUTOMATON BASED MRI BRAIN SEGMENTATION

Joint Production and Financing Decisions: Modeling and Analysis

On the predictive content of the PPI on CPI inflation: the case of Mexico

Failure Behavior Analysis for Reliable Distributed Embedded Systems

Ant Colony Optimization for the Traveling Salesman Problem Based on Ants with Memory

Risk and Return. Sample chapter. e r t u i o p a s d f CHAPTER CONTENTS LEARNING OBJECTIVES. Chapter 7

An Associative Memory Readout in ESN for Neural Action Potential Detection


A Simple Model of Pricing, Markups and Market. Power Under Demand Fluctuations

ANALYSING THE OVERHEAD IN MOBILE AD-HOC NETWORK WITH A HIERARCHICAL ROUTING STRUCTURE

CSI:FLORIDA. Section 4.4: Logistic Regression

Comparing Dissimilarity Measures for Symbolic Data Analysis

Efficient Training of Kalman Algorithm for MIMO Channel Tracking

This document is downloaded from DR-NTU, Nanyang Technological University Library, Singapore.

Automatic Search for Correlated Alarms

Implementation of Statistic Process Control in a Painting Sector of a Automotive Manufacturer

Electric Distribution Network Multi objective Design Using Problem Specific Genetic Algorithm

C-Bus Voltage Calculation

The risk of using the Q heterogeneity estimator for software engineering experiments

Evaluating a Web-Based Information System for Managing Master of Science Summer Projects

Estimation of the COCOMO Model Parameters Using Genetic Algorithms for NASA Software Projects

Service Network Design with Asset Management: Formulations and Comparative Analyzes

Migration to Object Oriented Platforms: A State Transformation Approach

Improved Algorithms for Data Visualization in Forensic DNA Analysis

Jena Research Papers in Business and Economics

TOWARDS REAL-TIME METADATA FOR SENSOR-BASED NETWORKS AND GEOGRAPHIC DATABASES

Moving Objects Tracking in Video by Graph Cuts and Parameter Motion Model

An Analysis Model of Botnet Tracking based on Ant Colony Optimization Algorithm

Two-resource stochastic capacity planning employing a Bayesian methodology

Buffer Capacity Allocation: A method to QoS support on MPLS networks**

Rummage Web Server Tuning Evaluation through Benchmark

Introduction To Genetic Algorithms

THE RELATIONSHIP BETWEEN EMPLOYEE PERFORMANCE AND THEIR EFFICIENCY EVALUATION SYSTEM IN THE YOTH AND SPORT OFFICES IN NORTH WEST OF IRAN

FDA CFR PART 11 ELECTRONIC RECORDS, ELECTRONIC SIGNATURES

Incremental Clustering for Mining in a Data Warehousing Environment

Risk in Revenue Management and Dynamic Pricing

F inding the optimal, or value-maximizing, capital

Title: Stochastic models of resource allocation for services

Managing specific risk in property portfolios

CRITICAL AVIATION INFRASTRUCTURES VULNERABILITY ASSESSMENT TO TERRORIST THREATS

A Fast and Elitist Multiobjective Genetic Algorithm: NSGA-II

Video Mosaicing for Document Imaging

Storage Basics Architecting the Storage Supplemental Handout

A Multivariate Statistical Analysis of Stock Trends. Abstract

ECONOMIC OPTIMISATION AS A BASIS FOR THE CHOICE OF FLOOD PROTECTION STRATEGIES IN THE NETHERLANDS

From Simulation to Experiment: A Case Study on Multiprocessor Task Scheduling

Drinking water systems are vulnerable to

Finding a Needle in a Haystack: Pinpointing Significant BGP Routing Changes in an IP Network

Optimal Routing and Scheduling in Transportation: Using Genetic Algorithm to Solve Difficult Optimization Problems

The impact of metadata implementation on webpage visibility in search engine results (Part II) q

IEEM 101: Inventory control

Rejuvenating the Supply Chain by Benchmarking using Fuzzy Cross-Boundary Performance Evaluation Approach

Asymmetric Information, Transaction Cost, and. Externalities in Competitive Insurance Markets *

CFRI 3,4. Zhengwei Wang PBC School of Finance, Tsinghua University, Beijing, China and SEBA, Beijing Normal University, Beijing, China

Transcription:

The Oen Alied Mathematics Journal, 2008, 2, 95-03 95 Oen Access Multistage Human Resource Allocation for Software Develoment by Multiobjective Genetic Algorithm Feng Wen a,b and Chi-Ming Lin*,a,c a Graduate School of Information, Production & Systems, Waseda University, Kitakyushu, Jaan b School of Information Science and Engineering, Shenyang Ligong University, Shenyang, China c Center for General Education, College of Management, Kainan University, Taoyuan, Taiwan Abstract: Software develoment is a multistage rocess Minimizing the roject duration and minimizing the roject cost are two objectives of software rojects These two goals are often in conflict with each other The most imortant influencing factor of these two objectives is human resource allocation The best comromised human resource allocation lan based on these two objectives should be rovided to the roject manager This is a multistage human resource allocation roblem (MHRAP) which belongs to multile criteria roblems Genetic algorithm is a well-known solving method for multile criteria roblems In this aer, we roose a new multiobjective genetic algorithm (moga) This moga is based on a new encoding method, named Imroved Fied-length Encoding method This encoding method is simle and effective for rogramming An adative-weight fitness assignment mechanism is used to find a Pareto solution set A factor weight method is roosed to find the best comromised solution from a Pareto solution set Project managers can assign weight on each objective to decide how to arrange software for the roject Keywords: Software develoment, imroved fied-length encoding, multistage human resource allocation roblem (MHRAP), multiobjective genetic algorithm (moga) INTRODUCTION Currently, software develoment comanies are facing an etremely increasing rise in market demand for software roducts and services Software rojects usually demand comle management involving scheduling, lanning, and monitoring tasks There is a need to control eole and rocesses, and to efficiently allocate resources in order to achieve secific objectives while satisfying a variety of constraints Usually, the software roject scheduling roblem should consider how to allocate human resources to each task A Project Scheduling Problem consists of deciding who does what during the software roject s lifetime This is a caital issue in the software roject, because the total budget and human resources must be managed otimally in order to result in a successful roject In short, comanies are rincially concerned with reducing the duration and cost of rojects If there occurs a software roject duration etension, fewer eole are usually needed to finish the roject Corresondingly, if we want reduce develoment time, more emloyees are needed More erson-months units are required as a tradeoff for reducing develoment duration And most of the research is concerned with estimating the cost or duration But in a real software develoing environment, the manager faces a roblem in deciding how to comromise these two goals to maimize rofit This roblem is a multistage human resource allocation roblem (MHRAP) *Address corresondence to this author at the Graduate School of Information, Production & Systems, Waseda University, Kitakyushu, Jaan; E-mail: chiminglin@ruriwasedaj In the case of multile-objectives, there does not necessarily eistence a solution that is best with resect to all objectives because of incommensurability and conflict among objectives A solution may be the best in one objective but the worst in another Therefore, there usually eists a set of solutions for the multile-objective case which cannot simly be comared with each other For such solutions, called no-dominated solutions or Pareto otimal solutions, no imrovement is ossible in any objective function without sacrificing at least one of the other objective functions There is considerable literature focusing on the estimated cost and duration Some rediction models such as Function Points Analysis [], Constructive Cost Mode (COCOMO) Models [2-3] and Ordinal Regression Models [4] have been roosed Artificial neural networks (Ann) are used to roduce more accurate resource estimates [5-6] Among them, the Function Point method measures the develoed system by oint counts that can be determined relatively early in the develoment rocess It measures software roject size by studying eternal features of the roject For software effort estimation, the counting of function oints requires comle training to achieve an objective But it does not take into consideration the different stages COCOMO is based on well defined software engineering concets The model is simle to aly and can be calibrated for recision CO- COMO offers a more readily adatable means of develoing a tailored model But it is hard to estimate the cost of the software system at an early stage of the roject Ann is widely used for forecasting roblems But, Ann is at to converge to the local minimum oint during learning Put- 874-42/08 2008 Bentham Oen

96 The Oen Alied Mathematics Journal, 2008, Volume 2 Wen and Lin nam s Model and Boehm s Model were roosed to otimize resource allocation for software develoment [7] But their model cannot solve multicriteria resource allocation Evolutionary Algorithms (EA) are being alied to a wide range of otimization, and can offer significant advantages in solution methodology and otimization erformance Genetic algorithms (GA) are one of EA GA searches from a oulation of oints that can rovide globally otimal solutions In addition, GA uses robabilistic transition rules, and work with a coding of the arameter set Therefore GA can easily handle the integer or discrete variables A genetic method was roosed to solve the software roject scheduling roblem [8] However, the different stages of the software roject were not considered Different weights were assigned to different objective values to calculate fitness value The diversity of solution sace was also not considered In recent years, EA is also increasingly being develoed and used for multiobjective otimization roblems EA rovides a framework of using only objective function information for analyzing many multiobjective roblem tyes Within this framework, otimization techniques can be emloyed to solve the non-smooth, non-continuous and nondifferentiable functions which actually eist in a ractical otimization roblem Surveys on such multiobjective Evolutionary Algorithms were given [9-0] A nondominated sorting-based multiobjective evolutionary algorithm was suggested, that is, nondominated, sorting Genetic AlgorithmⅡ [] In this aer, we develoed an efficient reresentation scheme using Imroved Fied-length Encoding method This method can solve MHRAP effectively Based on this encoding method, a multiobjective Genetic Algorithm (moga) alying Adative Weight fitness value assignment method is develoed This fitness assignment mechanism hels with finding a set of solutions that are close to the global Pareto set If we want to get a global Pareto set, it will usually lead to a very long eecution time In our research, we roose moga to find a near otimal and accetable solution within a reasonable eecution time Numerical eeriments show the effectiveness and the efficiency of our aroach by comaring recent research Then, a distance-based method was roosed to select the best comromised result in a areto solution set by the managers reference Managers can arrange software develoment by this result They can thus achieve the otimal trade-off of the two objectives The rest of the aer is organized as follows In Section 2, the software stages and assumtions are described, then a mathematic model of a multiobjective roblem is formulated The roosed moga is described in Section 3 to solve this roblem In Section 4, an eeriment of moga is given and its results are analyzed In Section 5, we draw a conclusion from the roosed algorithm 2 SOFTWARE DEVELOPMENT STAGES AND MATHEMATICAL MODEL 2 Cost and Time Efforts and Assumtions In here, it shows that when the number of emloyees increases, their rate of effort decreases[7] One would imagine that with more emloyees the roject duration should decrease sharly However, the total contribution of emloyees will increase only slightly when the number of emloyees increases, mainly because of manower and time is not interchangeable There eists a trade-off between erson units and develoment time In other words, when increasing emloyee numbers, the average roductivity rate is reduced Here, to analyze the trade-off ratio between ersonnel unit and develoment time, we consider the comosing of software develoment rocess and then make some assumtions for our research Usually there are si stages in software rojects which includes requirement analysis, architectural design, detailed design, coding, test and maintenance Among them, the requirement analysis and maintenance stages are discrete time rocessing and these two stages should involve contact with clients or investors So we can t use known mathematical methods to estimate the cost and duration of them Here, we consider the other four stages 22 The Network Model and Mathematical Model We can reformulate MHRAP as a network model, where limited activity reresented by stages (such as jobs or tasks), and the resources gives ossible states in each stage (number of workers must be allocated for each stage) The meaning element in network is decision variable As shown in Fig (), the inflows of are objective values (w, w 2,, w jj, w O ) when assign j emloyees to ith stage (w,, w 2,,w,w O ) i j Fig () Illustration of element in network model We start by describing the basic model The network model of MHRAP within multistage is shown in Fig (2) Consider Fig (2), S and T are dummy starting and terminating nodes resectively The inflow of dummy terminating node T is 0 A ath from S to T of this network is one allocation lan for MHRAP We consider the MHRAP as multiobjective with minimizing the total cost and minimizing the total duration In order to calculate these two objective values, we list some assumtions about objective formulation function: In a ratical software roject, there are several kinds of costs in the roject rocess Here we only consider the cost of emloyees A month is the measured unit of software roject duration In a ractical enviroment, the software roject may be interruted by some unredictable event In order to facilitate our research, we only consider the continuous time rocess of software rojects 2 Each roject has a comletion deadline, so we consider that the duration should not etend beyond the deadline 3 Each roject should consider the benefits, so we assume that the total cost should be less than 70 ercent of investment 4 Each stage will allocate at least one emloyee

Multistage Human Resource Allocation for Software Develoment The Oen Alied Mathematics Journal, 2008, Volume 2 97 n- n 2 2 n- n S T m- 2 m- n-m- n m- m 2 m n- m nm Fig (2) Model of MHRAP within multistage stage stage 2 stage n- stage n 5 In order to be simly calculated, the salary of emloyees is the same in the same stage 6 Each software Project includes all stages 7 For one roject, we use the number of erson-months required to measure its workload, and we assume that the workload of each stage has been estimated by other algorithms Here, we only consider how to allocate the human resource 8 In a ractical enviroment, when treating the same task, different emloyees will use different times to finish his task because of their different abilities In our research, we assume that if the manager assigns work to different emloyees, they will finish the task in the same time The MHRAP is to assign m staff to n different rojects for maimizing the benefit and minimizing the cost subject to one resource constraint is formulated as a bicriteria integer rogramming model, which has been roosed in [2] These two objective values can be minimizing simultaneously [3] Notations Indices i: inde of stage, i =, 2,, n j: number of emloyee, j=, 2,,m Parameters n: total number of stages in software develoing m: total number of workers T: maimal duration of the whole roject in considered four stages C: maimal cost consumtion c : cost of stage i when j emloyee are assigned t : duration of job i when j emloyee are assigned Decision Variables!, if j emloyees are assigned to stage i = " # 0, otherwise n m min z =!! t () i= j= 0 n m min z2 =!! c (2) s t i= j= 0 n m "" j! m (3) i= j= 0 z z2 m j= 0! T (4)! C (5) " =! i (6) = 0! or!! i, j (7) Constraint (3) ensures that we cannot assign the workers more than the total number of workers Constraint (4) ensures that the total duration of roject is less than maimal duration Constraint (5) ensures that the total cost of the roject is less than maimal cost Constraint (6) ensures that for each job i we just can only assign workers for it one time 3 MULTIOBJECTIVE GENETIC ALGORITHM 3 Genetic Reresentation The encoding mechanism is fundamental to the GA for reresenting the otimisation roblem's variables The encoding mechanism deends on the nature of the roblem variables In network roblems, recently, to encode a short-

98 The Oen Alied Mathematics Journal, 2008, Volume 2 Wen and Lin Node Id 2 8 4 32 8 Suc i [] Suc i [] 36 20 6 s 20 24 2 {2, 3} 3 t 5 7 5 2 2 {4, 5} 0 27 2 25 2 32 3 3 {2, 5, 6} 3 23 38 3 6 9 4 2 {7, 8} 5 2 {4, 6} 6 2 {7, 9} locus ID: 2 3 4 5 6 7 8 9 0 7 2 {8, 9} Chromosome: 3 3 2 2 3 2 8 2 {9, 0} Path: 2 4 7 8 0 9 {0} 0 0 Ø Fig (3) Eamle of generated chromosome and its decoded ath est routing ath into a chromosome for GAs, there are various non-string encoding techniques that have been created Munemoto et al roosed variable-length chromosomes to reresent a routing [4] But the algorithm requires a relatively large oulation for an otimal solution due to the constraints on the crossover mechanism, and is not suitable for large networks Ahn et al develoed a variable-length chromosomes [5] A new crossover oeration echanges artial chromosomes is introduced But crossover may generate infeasible chromosomes that have loos in the aths We need to check the feasibility and reair mechanism It is not suitable for large networks or unaccetable high comutational comleity Inagaki et al roosed a fied-length chromosome technique [6] The chromosomes in the algorithm are sequences of integers and each gene reresents a node ID that is selected randomly from the set of nodes connected with the node corresonding to its locus number All the chromosomes have the same length In their method, some offsring may generate new chromosomes that resemble the initial chromosomes in fitness, thereby retarding the rocess of evolution In this aer, we roose an Imroved Fied-length Encoding method which combines the merit of fied-length and variable-length chromosome coding method This encoding method is easy to realize as fied-length encoding method As it is known, a gene in a chromosome is characterized by two factors: locus, ie, the osition of gene located within the structure of chromosome, and allele, ie, the value the gene takes In this encoding method, a chromosome of the roosed GA consists of sequences of ositive integers that are randomly created based on maimum successive set length of each node Each locus of the chromosome reresents an order of a node in a routing ath The gene of the first locus is always reserved for the source node The length of the chromosome is fied, and it is the same to the total number of nodes in the network The value of the gene is used to search the net node in decoding method 32 Imroved Fied-Length Encoding In the decoding method, the osition of a gene is used to reresent the node inde in the route and its value is used to decide which node will be selected in successive set of current nodes When destination node occured in successive set, the encoding rocess is ended A ath can be easily determined by this encoding method An eamle of generated chromosome and its decoded ath is shown in Fig (3) We denote the Suc i [] as the successive set of node i in road network, and Suc i [] is nodes number in successive set of node i The maimum value of Suc i [] in eamle network shown in Fig (3) is 3 All value in gene locus is randomly created between to 3 As shown is Fig (3), the are {3,, 3,, 2, 2, 3,, 2, } Node is original node and 0 is destination node At the beginning, we try to find out which node should be selected in Suc [] Nodes 2 and 3 are eligible for the osition, which can be easily found in Suc [] The value in locus is 3, and Suc [] equals 2 Then, we calculate (2 mod 3) mod 2 = 0 The net node inde is Suc [0], here is 2 Reeat these stes until we obtain a comlete ath ( 2 4 7 8 0) We list the whole encoding rocess as follows: rocedure : Imroved Fied-length Encoding inut: number of nodes n, array of successive nodes number Suc[] outut: kth initial chromosome v k[] begin select maimum length assign to j in Suc[]; for i = to n v k[i] random[, j]; outut: kth initial chromosome v k [] End Based on the Imroved Fi-length Encoding method mentioned before, we resent the decoding rocedure as follows: rocedure 2: Imroved Fied-length Decoding inut: chromosome v[], no of nodes n, origin id O, destination id D, Suc[][] outut: ath P[] begin P[] = O; for i = 2 to n P[i] = 0; for i = to n- id = P[i]; // initialize ath with zero inde = ( Suc[id][] % v[i]) % Suc[id][] ; // calculate the inde of net node P[i+] = Suc[id][inde]; // add current node into ath if P[i+] = D then break; // find the destination node outut: ath P[] End

Multistage Human Resource Allocation for Software Develoment The Oen Alied Mathematics Journal, 2008, Volume 2 99 The trace table of decoding rocedure is listed in Table Table Trace Table of Decoding Procedure Iteration Node ID (i) Suc[i] Suci [ ] Path[ ] {2, 3} 2 2 2 {4, 5} 2-2 3 4 {7, 8} 2-2-4 4 7 {8, 9} 2-2-4-7 5 8 {9, 0} 2-2-4-7-8 6 0 {Ø} 0-2-4-7-8-0 This trace table is used for illustrate the rocess of decoding rocess The data and result is related to Fig (3) 33 Genetic Oeration The net ste is to generate a net generation oulation of solutions from those genetic oerators: crossover (also called recombination), and mutation In the crossover method, two chromosomes are chosen which should have at least one same node inde ecet for source and destination nodes, but there is no requirement that they should be located at the same locus of the chromosome We illustrate the rocedure as follows: rocedure 3: Imroved Fied-length crossover inut: v, v 2 outut: v o, v o 2 //offsring of v, v 2 begin P decoding(v ); P 2 decoding(v 2); if P and P 2 have one or more same node set (SetP[]) then randomly select inde k from the SetP[]; l site in v corresonding SetP[k]; // l is crossover site in v l 2 site in v 2 corresonding SetP[k]; // l is crossover site in v aly crossover to v and v 2 and roduce offsring v o and v o 2 ; outut: v o, v o 2 End Insertion Mutation has been adoted in this aer In this mutation, a gene is randomly selected and inserted into a osition, which is determined randomly 34 Adative-Weight Aroach The selection oeration is intended to imrove the average quality of the oulation by giving the high-quality chromosomes a better chance to get coied into the net generation In this aer we use Roulette Wheel selection, which was roosed by Holland [7] to determine selection robability or survival robability for each chromosome roortional to the fitness value [8] In selection oeration, we should design a fitness assignment mechanism The most imortant issue is how to design a fitness assignment mechanism when we deal with multiobjective otimization roblems Ho et al [9] use a weighted-sum aroach by combining multile objectives into a single-objective function However, in order to obtain good solutions using the weighted-sum aroach, domain knowledge and large comutation costs are required for determining a set of good weight values Here we adot adative-weight Genetic Algorithm (awga), which is an imroved adative-weight fitness assignment aroach roosed by Gen et al [8] This algorithm considers the disadvantages of weighted-sum aroach and Pareto ranking-based aroach This utilizes some useful information from the current oulation to generate an adative weight for each objective, and thereby eerts a search ressure towards the ideal oint To solve multiobjective roblems, we first define etreme oints of each objective: the maimum etreme oint z + {z ma, z 2 ma,,z q ma } and the minimum etreme oint z - {z min, z 2 min,,z q min } in criteria sace, where z ma and z min! =,2,q are the maimum value and the minimum value resectively for th objective in the current oulation We adoted the roulette wheel selection as the sulementary oeration to this interactive adative-weight assignment aroach The fitness assignment rocess is shown as follows: Procedure 4: Adative-weight fitness assignment inut: chormosome v k outut: fitness value eval(v k) ste : define two etreme oints: the maimum etreme oint ma min z and the minimum etreme oint z +! as follows: z = { z, z!!, z } z = { z, z in criteria sace + ma ma ma! min min min 2 q 2,!, zq } ma min where z and z," =,2,!, q are the maimal value and minimal value for each objective in the current oulation They are defined as follows: k z = ma{ f k! osize} k z = min{ f k! osize} ste 2: The adative weight for objective is calculated by the following equation: w = z ma! z min ste 3: Calculate the fitness value for each individual min ( ) q k k $ = eval( v ) = w z! z, " k # osize 35 Overall moga The overall rocedure for solving MHRAP is outlined as follows:

00 The Oen Alied Mathematics Journal, 2008, Volume 2 Wen and Lin rocedure 5: moga for MHRAP inut: network data (V, A, C), GA arameters //C means offsring set outut: Pareto otimal solution E(t) begin t 0; initialize P(t) by Imroved Fied-length Encoding; calculate objectives z by Imroved Fied-length Decoding; create Pareto E(P); fitness eval(p) by adative weight aroach; while (not termination condition) do crossover P(t) to yield C(t) by Imroved Fied-length crossover; mutation P(t) to yield C(t) by insertion mutation; objectives z by Imroved Fied-length Decoding; aly the iterative hill climbing method; udate Pareto E(P, C); fitness eval(p, C) by adative weight aroach; select P(t+) from P(t) and C(t) by roulette wheel selection; t t + ; end outut Pareto otimal solution E(t); End 4 EXPERIMENT RESULTS To evaluate our algorithm, we consider a simle eamle We assign 0 to maimal number of emloyees in each stage, and salaries are different in each stage The table below shows different salaries in different stages In Table 2, we list the inde of software develoing stages with different salaries Table 3 shows the develoment duration effect by various combinations of emloyee number in each stage This value is based on the history work achievement of emloyee and the eerience of the manager To analyze this roblem, we reformulate this roblem as a network model i: inde of stage, i =, 2,, n j: number of emloyees, j =, 2,, m t : eected duration in each stage with different emloyee numbers c : eected cost in each stage with different emloyee numbers To calculate c, we can multile emloyee numbers by salary of different stage (This value is not aeared in followed figure) A ath from O to D is a resource allocation solution We use roosed moga to find Pareto solution set To measure and evaluate the efficency of roosed algorithm, we should find Pareto-otimal set S* as a criterion set In order to make a large number of solutions and make a nearest distance to real Pareto front in Pareto-otimal set S*, first we calculate the solution sets with secial GA arameter settings The eeriments need a long comutation time The results are reference set S* Furthermore, we will assign small but reasonable GA arameter settings for comarison eeriments In this section, the erformance of moga is comared with nsga-ii We use these arameters in nsga-ii and moga to find the reference solution set S*: oulation size, osize =00; crossover robability, C =090; mutation robability, M =090; immigration rate; Stoing criteria: ma evolution generations, magen=0000 Fig (6) shows the reference Pareto solution set We comare these two algorithms under these same GA arameter settings: oulation size, osize =20; crossover robability, C =070; mutation robability, M =030; stoing condition, magen =500 Each simulation was run 20 times to get average result values We denote S as the solution set of each algorithm In this aer, the Average Distance A D (S) is used as a measure which has already used in different moga studies [20] A D (S) is to find an average distance of the solutions of S from S* Here, A D (S) is defined as follows: Table 2 Inde of Salaries in Different Stages No of stage ( i) 2 3 4 Stage of software develoment Architectural design detailed design coding test Average salary er month 3,800 3,500 2,400 2,200 Table 3 Eected Duration in each Stage with Different Emloyee Numbers (Month) i j 2 3 4 5 6 7 8 9 0 522 407 328 272 229 97 7 50 3 9 2 835 650 525 435 366 35 274 240 8 90 3 48 895 722 598 504 433 376 330 249 262 4 48 326 262 28 83 58 37 20 090 095

Multistage Human Resource Allocation for Software Develoment The Oen Alied Mathematics Journal, 2008, Volume 2 0 Fig (4) Element in network model of eeriment t weight for duration objective and cost objective resectively, and w T + w C = All factor weighting should be assigned by manager as his reference a 522 835 48 48 2 3 4 407 65 895 2 2 2 3 2 326 4 2 O D cost ($) 0 20 30 40 9 9 262 095 Fig (5) Network model of test roblem ideal oint duration (month) b cost ($) cost ($) ideal oint Fig (6) Reference solutions D A ( S) = " d (8) S * r! S* ideal oint duration (month) where d is the distance between a current solution S and a reference solution r in the 2-dimensional normalized objective sace, f q () is objective value of qth objective! 2 ( ) 2 " # *# d = min & * fq ( ) $ fq ( r ) r % S ' r # q= ( #) As deicted in Fig (7c) and Fig (8), the Pareto solution of roosed moga is more close to a reference solution by calculating A D (S) So, the roosed algorithm is fit for solving MHRAP We should find the best comromised solution according to manager s reference We roose a Factor Weight method in our algorithm Here we use w T, w C as factor (9) cost ($) duration (month) c duration (month) moga nsga-ii reference Fig (7) (a) Solution using nsga-ii (b) Solution using moga (c) Comared reference solution to different algorithm We calculate the factor value f l to decide which route is the best comromised route in Pareto set by factor value function listed bellow

02 The Oen Alied Mathematics Journal, 2008, Volume 2 Wen and Lin Fig (8) Comare average distance bewteen two algorithms 2 2! f( ) # f( l) "! f2( ) # f2( l) " f = wt $ ma % + wc $ ma % & z # f( l) ' & z2 # f2( l) (0) l ' addition, we gave a secial decoding and encoding method (2) In order to ensure the oulation diversity characteristic in moga, we roosed an adative-weight fitness assignment aroach Their elements reresent that weights are adjusted adatively based on the current generation to obtain search ressure toward the ositive ideal oint It is an effective way when considering the comutation time (3) To get the best comromised solution in a Pareto set, we roosed a weight factor method to decide which solution best fits a manager s reference By the eeriment result, with comarison to other algorithms, we can see the efficiency of our roosed method This efficiency is mainly due to the simle and effective coding method and fitness assignment mechanism In our research, the software roject is a continuous time rocess; we have not considered the cooerative factor value when assigning a task to different numbers of workers In future research, it will be ossible to consider the task and cooerative factor value function in each stage, and decide how to allocate emloyees to reach the best balance of the Table 4 Comarison of Best Solutions with Different Methods (w T =w C =05) Method The number of Emloyee in each stage stage stage 2 stage 3 stage 4 Total duration (month) Total cost (US$) NSGA-II 4 4 7 5 266 57,000 MoGA 2 5 9 4 240 55,500 Here, is the current solution and l is the ideal solution in the 2-dimensional normalized objective sace Using this method, we can get the comromised best solution When we assign 05 to the two weight factors, the best comromised solution of eeriment result is shown in Table 4 After comaring different multiobjective algorithms, the roosed method has been roved to be efficient when solving this roblem 5 DISCUSSIONS AND CONCLUSIONS In this aer, we roosed an Imroved Fied-length Encoding for designing multiobjective genetic algorithm (moga) to solve a multi-criteria software roject By this method, we can get a areto solution set of two objectives that include both roject duration and cost of emloyee An then, we used a distance method to rovide the manager of the software roject with the best comromised solution By comaring different multiobjective algorithms, the roosed method has been roven to be more efficient when solving this roblem We considered the multi-criteria software develoment roblem with the two conflicting objectives To solve this roblem: () We roosed a new chromosome reresentation based on Imroved Fied-length Encoding method In task Managers of software comanies are more concerned about this roblem REFERENCES [] Albrecht AJ Measuring alication develoment roductivity Proc IBM Alication Develoment Symosium 979; 83-92 [2] Boehm B, Clark B, Horowitz E, Westland C, Madachy R, Selby R Cost models for future software life cycle rocesses: COCOMO 20 Ann Software Eng 995; : 57-94 [3] Boehm W, Horowitz E, Madachy R, et al Software cost estimation with COCOMOII Prentice-Hall Saddle River 2000 [4] Sentas P, Angelis L, Stamelos I, Bleris G Software roductivity and effort rediction with ordinal regression J Inform Software Technol 2005; 47(): 7-29 [5] Gray AR, MacDonell SG A comarison of model building techniques to develo redictive equations for software metrics Inform Software Technol 997; 39(6): 425-37 [6] Witting G, Finnie G Estimating software develoment effort with connectionist models Inform Software Technol 997; 39(): 369-476 [7] Ho YC, McDevitt CD Determination of otimal resource allocation for software develoment An alication of a software equation Inform Manag 990; 8(2): 79-85 [8] Alba E, Chicano JF Software roject management with Gas Inform Sci 2007; 77(): 2380-40 [9] Fonseca CM, Fleming PJ An overview of evolutionary algorithms in multiobjective otimization Evol Comut 995; 3(): -6 [0] Horn J Multicriterion decision making In: Bäck T, Fogel DB, Michalewicz Z, Eds, Handbook of evolutionary comutation IOP Publishing and Oford University Press, New York and Bristol, 997; F9: F9:5

Multistage Human Resource Allocation for Software Develoment The Oen Alied Mathematics Journal, 2008, Volume 2 03 [] Deb K, Prata A, Agarwal S, Meyarivan T A fast and elitist multiobjective genetic algorithm: NSGA-II IEEE Trans Evol Comut 2002; 6(2): 82-97 [2] Lin CM, Gen M Multiobjective resource allocation roblem by multistage decision-based hybrid genetic algorithm Al Math Comut 2007; 87(2): 574-83 [3] Khor EF, Lee TH Multiobjective evolutionary algorithms and alications London : Sringer Science, 2005 [4] Munemoto M, Takai Y, Sato Y A migration scheme for the genetic adative routing algorithm In Proc IEEE Int Conf Syst Man Cybern 998; 2774-9 [5] Ahn CW, Ramakrishna RS A genetic algorithm for shortest ath routing roblem and the sizing of oulations IEEE Trans Evol Comut 2000; 6(6): 566-79 [6] Inagaki J, Haseyama M, Kitajima H A genetic algorithm for determining multile routes and its alications In Proc IEEE Int Sym Circuits Syst 999; 37-40 [7] Holland J Adatation in natural and artificial systems, University of Michigan Press 975 [8] Gen M, Cheng R Genetic algorithms and engineering otimization New York: John Wiley & Sons 2000 [9] Ho SY, Liu CC, Liu S Design of an otimal nearest neighbor classifier using an intelligent genetic algorithm Pattern Recog Lett 2002; 23(3): 495-503 [20] Deb K Multiobjective otimization using evolutionary algorithms Chichester, UK: Wiley 200 Received: Aril 08, 2008 Revised: Aril 7, 2008 Acceted: May 28, 2008 Wen and Lin; Licensee Bentham Oen This is an oen access article distributed under the terms of the Creative Commons Attribution License (htt://creativecommonsorg/licenses/by/25/), which ermits unrestrictive use, distribution, and reroduction in any medium, rovided the original work is roerly cited