Simulated Annealing Genetic Algorithm Based Schedule Risk Management of IT Outsourcing Project

IT outsourcing is an effective way to enhance the core competitiveness for many enterprises. But the schedule risk of IT outsourcing project may cause enormous economic loss to enterprise. In this paper, the Distributed Decision Making (DDM) theory and the principal-agent theory are used to build a model for schedule risk management of IT outsourcing project. In addition, a hybrid algorithm combining simulated annealing (SA) and genetic algorithm (GA) is designed, namely, simulated annealing genetic algorithm (SAGA). The effect of the proposed model on the schedule risk management problem is analyzed in the simulation experiment. Meanwhile, the simulation results of the three algorithms GA, SA, and SAGA show that SAGA is the most superior one to the other two algorithms in terms of stability and convergence. Consequently, this paper provides the scientific quantitative proposal for the decision maker who needs to manage the schedule risk of IT outsourcing project.


Introduction
With the increasing development of information technology, IT outsourcing has been developing rapidly.It is currently being used as an important strategy by many companies to focus on the core competency, reduce cost, and increase profit.In Europe and other developed countries, either small businesses or large multinational companies always give the noncore business to external professional company [1][2][3][4].According to Gartner, one of the leading information technology research firms, global spending for IT services was approximately $932 billion in 2013 and is expected to grow to $967 billion in 2014, a growth of 3.8% from 2013 [5].
Although IT outsourcing has many advantages including reducing cost and enhancing the core competence, there also exist some problems that need to be solved urgently, especially the problem of managing the schedule risk of IT outsourcing, which may bring about huge loss to company.Consequently, it is very vital to research how to manage the schedule risk of IT outsourcing.
Researchers have done a lot of related research [6][7][8][9][10][11][12].But most methods and models proposed in the literature only discuss the risk management issues on project itself and ignore the cooperation between principal and agent and the distribution characteristics of the IT outsourcing activities.In recent years, principal-agent theory has been widely employed to solve the problem of risk management of IT outsourcing and good results have been achieved through these studies.
Earl et al. concluded some adverse consequences of IT outsourcing based on existing literatures [13][14][15][16].Then, he argued that the risk of IT outsourcing came from enterprises, agents, and the process of IT activities and proposed corresponding risk management measures based on principal-agent theory [17][18][19].Bahli and Rivard proposed a scenario-based conceptualization of the IT outsourcing risk and applied it to the specific context of IT outsourcing using transaction cost and agency theory [20].Osei-Bryson and Ngwenyama offered a method and some mathematical models for analyzing risks and constructing incentive contracts for information system outsourcing [21].Sanfa et al. analyzed risk factors of producer services outsourcing from the perspective of engineering and afforded managers a theoretic method to manage outsourcing risks by designing the incentive and monitoring mechanism of the producer services outsourcing contract [22].Xianli et al. present the idea of applying DDM (distributed decision making) to the risk management of virtual enterprises and design incentive and punishment mechanism in the principal-agent model [23].
In this paper, we build a two-level principal-agent model combined with reward and punishment mechanism for schedule risk management of IT outsourcing project based on the Distributed Decision Making (DDM) theory and principal-agent theory [24][25][26].According to the feature of problem, the SAGA is designed to solve the proposed model and the optimal plan of managing schedule risk is given based on the simulation analysis.The purpose of this paper is to provide crucial decision support for the people who need to manage the schedule risk of IT outsourcing project.
The remainder of this paper is structured as follows.Section 1 presents the schedule risk management model of IT outsourcing project.In Section 2, the design of algorithm is given.In addition, numerical examples and results analyzed are depicted in Section 3. Finally, conclusion is given in Section 4.

Schedule Risk Management Model of IT Outsourcing Project
2.1.Problem Description.For IT outsourcing, principal divides a whole project into some serial subprojects in the IT developing process, as shown in Figure 1.The definition of serial subprojects is that subproject  ( = 2, . . ., ) is performed after completion of subproject  − 1.
The schedule risk is reflected in two aspects of duration and risk loss.Each subproject has an initial duration and initial risk loss.In order to effectively manage the schedule risk, the reward and punishment mechanism is added in outsourcing contract; that is, if the project is completed in advance, the agent is rewarded; otherwise the agent is punished.Each subproject will be contracted with different agents, and a typical principal-agent relationship between principal and agent will be generated.For the relationship between principal and agents, see Figure 2.
The optimal solution of top-level model is the optimal combination of risk management capital, and the optimal solution of base-level model is the optimal combination of risk management measure of subproject.In the decision making process, the principal transfers risk management capital to the predicted base-level model.The optimal solution of top-level model is obtained based on the goal of maximizing the profit of the principal and the information returned from the predicted base-level model.Then, the optimal solution of top-level model is transferred to the real base-level model.Under the constraint of risk management capital, the agents obtain the best control measure combination of the subproject according to the goal of maximizing the profit.The information exchange process between the principal and the agents is shown in Figure 3.
For the IT development, the duration of the subproject is determined by the duration of the activities on the critical path.Hence we only consider the schedule of the activities on the critical path.Figure 4 shows the network diagram of subproject , in which the critical path is 1-3-4-6-7-8.So agent  only allocates risk management capital to activities 1, 2, 3, 6, 8, and 9.

Assumptions
(1) Subprojects are serial relation in the IT developing process.
(2) The change of completion probability or duration of subproject will not have an effect on other subprojects; that is, subprojects are independent of each other.
(3) The critical path of subproject will not become noncritical path under the influence of risk management capital.
(4) The duration and risk loss of project only are affected by risk management capital.
(5) Due to the information asymmetry, the risk loss per unit of subproject is clear to the agents, but the principal only masters its distribution function.

The Two-Level Principal-Agent Model.
Based on the DDM theory and principal-agent theory, a two-level schedule risk management model of IT outsourcing project is built [27,28].In the top-level, the decision maker is the principal who determines how to allocate the risk management capital among agents.The objective of top-level is to maximize the profit of principal, and the reward and punishment mechanism is introduced into the model.In the base-level, the decision maker is the agents who determine the best combination of risk management measure of subproject.The objective of base-level is to maximize the agent's benefit.

Top-Level
The objective of top-level shown in formula (1) is to maximize the profit of principal; the reward and punishment mechanism is fulfilled by item ℎ  ( ŷ ).The operation () − is defined as Formula (2) indicates participation constraint; formula (3) indicates incentive compatibility constraint; formula (4) indicates risk management capital constraint; formula (5) indicates that the risk management capital   is a natural integer, which is the decision variable in the top-level model.

Predicted Base-Level.
In the predicted base-level, the decision makers are the agents, and there are  agents.Take agent , for example.

Variable Definition
: the number of management measures of activity j   : the number of activities of subproject i   : initial risk loss of subproject i   : predicted risk loss per unit of subproject i   : reward and punishment standard of subproject i   (  ( ŷ )): predicted cost of subproject i   ( ŷ ): predicted invested risk management capital of subproject i   : confidence level  max

𝑖
: the upper bound of cost of subproject i.
Formula (7) indicates that the objective of predicted baselevel is to maximize agent's benefit.Formula (8) indicates chance constraint.Formula (9) indicates the reward and penalty function based on the duration.Formula (10) indicates the saved risk loss of subproject; the operation () + is defined as Formula (11) indicates that the sum of used risk management capital is not greater than the risk management capital which is allocated to subproject; formula (13) represents a set of the predicted base-level variables; formula (14) represents the value range of ŷ that is the decision variable in the predicted base-level model.

Real Base-Level.
In the real base-level, the decision makers are the agents, and there are  agents.Take agent , for example.

Variable Definition
: the actual combination of risk management measure of subproject i   : risk loss per unit of subproject i Δ  (  ): actual saved risk loss of subproject i   (  ): actual duration of subproject i ℎ  (  ): actual reward and penalty function of subproject i   (  ): actual invested risk management capital of subproject i   (  (  )): actual cost of subproject i.
Formula ( 16) indicates that the objective of real baselevel is to maximize agent's benefit; formula (17) indicates the reward and penalty function based on the duration; formula (18) indicates the saved risk loss of subproject; formula (19) indicates that the sum of used risk management capital is not greater than the risk management capital which is allocated to subproject; formula (20) represents the cost that should not be beyond the upper bound of cost for subproject ; formula (21) represents a set of the real base-level variables; formula (22) represents the value range of   that is the decision variable in the real base-level model.

Algorithm Design
The top-level model is an integer programming problem, and the base-level model (including the predicted base-level model) is a combinatorial optimization problem.The whole problem is a NP hard problem, because the base-level is embedded in the top-level.So, we use genetic algorithm (GA) to solve the problem in this paper.It is well known that GA that was first introduced by Holland is very effective for solving combinatorial optimization problems.For example, GA has been successfully applied in solving traveling salesman problem, knapsack problem, bin packing problem, and so on.However, the disadvantage of GA is that the local search capability is not strong [29][30][31][32][33]. Simulated annealing (SA) is a general random search algorithm, which is an extension of the local search algorithm [34][35][36][37].Considering the strong local search capability of SA, we designed a hybrid algorithm named simulated annealing genetic algorithm (SAGA) by combining simulated SA with GA.
The overall thought of SAGA is simple.Firstly, some initial solutions of GA are generated randomly.After a period of iteration, some superior solutions are produced.Then, sort the corresponding fitness value of these superior solutions in descending order.And then select the solutions in top 10% as the initial solutions of SA.We try to find the best solution of the proposed problem around these superior solutions.For the random variables of the predicted base-level model, we embed Monte Carlo Simulation in SAGA.

Encoding Scheme.
In top-level, each chromosome represented by real number is a combination of risk management capital and the length of chromosome represents the number of agents.The top-level encoding scheme of SAGA is shown in Figure 5.We can see that there are 4 agents, and $580.2 is allocated to agent 1; $600.9 is allocated to agent 2; the rest can be done in the same manner.
In base-level, each chromosome represented by real number is a combination of risk management capital and the length of chromosome represents the number of the activities on the critical path.Take the base-level encoding scheme shown in Figure 6 as example; it can be seen that there are 5 activities on the critical path, and measure 2 is used to manage the risk of activity 1, measure 4 is used to manage the risk of activity 2, and so on.

Population
Initialization.Initial population is generated randomly.Punishment strategy is adopted to deal with the constraints, so we do not have to judge whether the initial solution meets the constraint conditions.

Fitness Function.
Considering the proposed optimization problems with constraints, we set up a fitness function with punishment term to evaluate individuals.The top-level fitness function is given as where Function ( 24) is top-level objective function;   and  are punishment coefficients, respectively.Figure 5: The top-level encoding scheme of SAGA.The base-level fitness function is given as where 25) is base-level objective function;   and   are punishment coefficients, respectively.
The Monte Carlo Simulation method is used to deal with the random variable [37][38][39][40].The process of calculating the fitness of the predicted base-level model by Monte Carlo Simulation is shown as follows.
Step 1. Set   is equal to [  ];  is sampling number.
Step 4. The   th biggest element of {   ,    , . . .,    } can be used as the fitness value of the th predicted base-level model, which can be seen by the law of large numbers.

Selection.
This paper takes proportional selection strategy [41,42].For each individual, the probability of being selected is the proportion of its fitness to the sum of all individuals' fitness.Then, the probability of selected individual  is given by where   is the fitness of individual  and NP is the population size.Here, we adopt well-known Roulette Wheel scheme.
In order to prevent the best individual in each generation from being destroyed, elite-preservation strategy is also used.That is to say, the best individual of each generation directly becomes one of individuals in the next generation without crossover and mutation operation.

Mutation.
Reversal mutation is adopted in this paper [35].Under the condition of satisfying the mutation rate, randomly select two points in the parent and sort the genes between these two points in reverse order.The reversal mutation operator of SAGA is shown in Figure 8. Parent chromosome  = (1, 4, 2, 3, 1) is selected for mutation operation.And the generated children chromosome is   = (1, 2, 4, 3, 1).

Neighborhood Definition.
The bit   is selected from the current state  = [ 1 ,  2 , . . .,   ], and the value of   is changed in the range of its value.So, a neighborhood solution is generated.

Neighborhood Movement.
The Metropolis criterion is adopted in this paper.If the objective value of neighborhood solution is smaller than the current solution's objective value, the current solution is replaced by the neighborhood solution.Otherwise, the current solution moves according to a certain probability.
3.9.Thermal Equilibrium.Thermal equilibrium is achieved when the preset number of internal loop is reached.

Cooling Rule.
Reduce   by multiplying a number r, which is in the range [0, 1] and close to 1. Cooling rule is shown as where   is the current temperature,  0 is initial temperature,  is the iterative index, and  ∈ (0.95, 0.99).
3.11.Procedure of SAGA.The flow chart of SAGA is shown in Figure 9.The process of the SAGA is made up of two parts, GA and SA.In Figure 9, the left part is the process of GA; GA  is used firstly to find a good solution of the problem.To cover the defect of GA on the local area search, SA is used to find an optimal solution around the "good solution" find by GA.The process of SA is shown on the right part of the figure.After the local search of SA, the proposed algorithm ended.

Numerical Examples
4.1.Example 1.Take the IT outsourcing project including 1 principal and 1 agent ( = 1) for an example.The principal outsources the whole project to the agent.Schedule risk is reflected by duration and risk loss of project.It is assumed that if the project is completed before planned duration, there will be no risk loss.On the contrary, the project will lose $80 per day; namely,  1 = 80.Due to the information asymmetry, the agent is clear for parameter  1 , but the principal only knows its distribution function, which is approximated as (80, 0.01).The planned duration of project  0 1 is 400, the initial duration of project  1 is 500, and the initial duration of activities  0 1 is {55, 60, 65, 70, 75, 80, 95}.The profit sharing coefficient of principal  1 is 0.51, the expected profit of agent AL 1 is 2000, and confidence level  is 0.9.
There is an initial schedule risk, which can be seen from the parameters of duration.The principal prepares $900 to manage schedule risk,  max = 900.The project consists of 7 activities,  1 = 7.There are 10 available risk management measures for each activity,  1 = 10,  ∈ {1, 2, . . ., 7}.It is assumed that the agent must choose a numbered measure for each activity and that the selected numbered measure can be selected multiple times.
Risk management measure is the only variable that affects the duration and risk loss of project, which can be seen from the proposed model.It is assumed that the impact of risk management measure on the project is enhanced with the increase of the number of measures.For example, for an activity, the implementation of measure 7 will result in a shorter duration and a smaller risk loss than the implementation of measure 2. So, the monotonic decreasing function is used to represent the duration function that is shown in formula (29), and risk loss function is shown in formula (30), respectively, where  1 is control parameter, which is used to represent that a management measure has different effects on different activities.The saved risk loss of project is shown as follows: If the project can be completed before the planned duration, the principal will obtain additional profit.It is assumed that the additional profit  1 is $25 per time unit.So, the reward and punishment function about duration is shown in formula (32), which is designed by the principal It is assumed that the reward and punishment parameter  1 is $21.If the subproject is completed in advance, the agent can get $21 per day; otherwise, he will lose $21 per day.

The Parameters of SAGA.
The parameters of SAGA mainly include population size (), maximum generations (), crossover rate (), mutation rate (), initial temperature (), termination temperature (), and internal loop number ().The parameters have a significant impact on the performance of algorithm.For example, big population size may lead to slower convergence speed but can avoid suboptimal solution.Small population size may lead to premature but can ensure the quick speed of convergence.In this paper, NG is determined by For each initial solution q i Update current temperature T

Calculate fitness difference Δf
Generate neighborhood solution q  i .Generally, Ts is a smaller positive number; let  = 1 here.So, we only need to test the other 5 parameters with the following method.
(1) Provide two values for each parameter.One is relatively small, and the other is relatively big.
(2) For each combination of parameter, run algorithm 20 times.There are 2 5 combinations.
(3) The final parameter combination is the one with best average fitness value.The testing process is shown in Table 1.The final combination is {30, 50, 0.6, 0.1, 100, 10}.

Simulation Results
. The simulation results of example 1 are shown in Table 2.For real results, agent is allocated $597 and he selects measures 2 1 10 1 10 10 10 to manage risk.After that, the duration of project is reduced from 500 days to 377.41 days; that is to say, the project is completed in advance.For index duration and risk loss, the schedule risk of IT outsourcing project has been well managed.
It can be seen that the predicted results and real results are different, such as profit of principal, because there is information asymmetry between principal and agent, and the principal's prediction is not completely correct in the real situation, which always plays an important role in the process of schedule risk management.If there is no prediction, the whole project would be completely out of control; the effect of schedule risk management will be worse than it is now.

Model Comparison.
Model I refers to the proposed model in Section 2.3; Model II is the one in which there is no reward and punishment item.Model I is Model II, when the parameter  1 = 0.For the simulation results in Table 3, from index 3 to 8, Model I is better than Model II.Therefore, it is significant to join the reward and punishment mechanism in the model.

The Parameter of Reward and Punishment Mechanism.
If parameter  1 is not set reasonably, the reward and punishment will not really play its role.Therefore, the effect of the parameter  1 is tested on the proposed model.The test results are shown in Table 4.The influence of  1 on the duration, the profit of agent, and the profit of principal are shown in Figures 10-12, respectively.
We can get some information from Table 4 and Figures 10-12.When  1 ≤  1 = 16 where  1 is additional cost per day due to duration reduction, total risk loss is saved, but duration is not significantly reduced compared to the planned duration.The reason for the above phenomenon is that the agent will not make efforts to shorten duration, if the reward is not greater than the cost because of duration reduction.
When  1 ≥  1 = 25, the reward of agent is greater than the additional profit of principal due to shorting duration, resulting in the decline of principal's profit.Obviously, this is not acceptable to the principal.So, we must determine the specific value of  1 in the interval ( 1 ,  1 ) based on the 4 indexes: duration, saved risk loss, profit of agent, and profit of principal.Considering managing the schedule risk of IT outsourcing project, we set  1 to be 21.Finally, the way for setting the reward and punishment mechanism's parameter is summarized as follows.
(2) Determine the specific value of  1 in the interval [, ] based on the 4 indexes: duration, recovered risk loss, profit of agent, and profit of principal.In this paper, we use three algorithms, SA, GA, and SAGA to carry out the simulation calculation for the proposed model.The simulation results are compared in Table 5. Focusing on indexes, duration, finishing the project before planned duration, saved risk loss, total risk loss saved, profit of agent, and profit of principal, the conclusion can be drawn that SAGA is better than GA and SA The convergence process of 3 algorithms in example 1 is shown in Figure 13.For convergent speed, SA achieves its  convergence after about 40 iterations; GA and SAGA need about 50 iterations.So, the convergence speed of the three algorithms is near.However, considering the fitness from the three algorithms, it is easy to see that SAGA finds the best solution, among the three algorithms.Therefore, SAGA is the best choice for the problem in example 1.  6, and the values of others parameters are the same to example 1.

The Parameters of SAGA.
According to the method of parameters setting in example 1, the parameters combination of SAGA for example 2, 3, and 4 is shown in Table 7.

Simulation Results.
The simulation results of examples 2 and 3 are shown in Tables 8 and 9, respectively.The comprehensive results of example 4 are not shown in this section, for its large amount of data, but a part of selected results is used to analyze the algorithm in the next section.For real results of example 3, the principal allocates $682, $579, $579, $649, $609, $579, $689, $689, $617, and $646 to 10 agents, respectively.The agents select the measure combination shown in table to manage risk.After that, the duration of projects is reduced from 500 days to 391.4,400.1,We can see that the predicted results and real results are different, such as profit of agent, because there is information asymmetry between principal and agent, and the principal's prediction is not completely correct in the real situation, which always plays an important role in the process of schedule risk management.But if there is no prediction, the whole project would be completely out of control; the effect of schedule risk management will be worse than it is now.

Performance Comparison of Algorithms.
Examples 2, 3, and 4 are solved by GA, SA, and the SAGA designed in this paper to give a further test of the performance of SAGA.The convergence process of three algorithms in examples 2, 3, and 4 is shown in Figures 14-16, respectively.In these three examples, SAGA performs better than the other two algorithms in terms of convergent speed and the best fitness value.Therefore, SAGA is the best choice for the problem in examples 2, 3, and 4.
In addition, for each example, run the 3 algorithms 20 times to collect some statistics information, including maximum fitness (Max), minimum fitness (Min), average fitness (Aver), and fitness variance (Var), which is processed using the normalization method.The statistics information is shown in Table 10, where Na represents the number of agents, B represents risk management capital, A represents algorithms, Δ represents the average fitness increasing ratio of SAGA relative to other two algorithms, and Δ represents the difference of fitness variance between SAGA and two other algorithms.
The convergent degree of algorithm is shown by the average fitness, and the reliability of algorithm is shown by the fitness variance.The conclusion that the SAGA designed in this paper shows a certain advantages in each example can be seen from the table.With the increase of the problem scale, the convergence and reliability of SAGA are also compared with GA and SA in Figures 17 and 18, respectively.It can be seen that SAGA performs better than GA and SA on convergence and reliability, especially for the large scale problem.
Besides convergence and reliability, the running time of the algorithm is also an important index to measure the performance of the algorithm.Running time is greatly influenced by the experimental environment.The experimental environment in this experiment: software conditions: Windows 7, hardware conditions: DELL Optiplex 9020 +i7 Core, and development tools: Eclipse. Figure 19 shows the running time of the three algorithms for the four examples.From the Figure 19, it can be seen that when the problem scale is relatively small, the running time of the three algorithms is almost equal.When the scale of the problem is larger, for examples 3 and 4, the running time of SAGA is significantly longer than that of GA and SA, because SAGA takes more time to operate its complex searching process.It also can be seen that the running time of the three algorithms is always in the same order of magnitude for each case.Therefore, the running time of SAGA is acceptable.

Conclusion
This paper focuses on the schedule risk of IT outsourcing project, the DDM theory and principal-agent theory are applied to build a two-level principal-agent schedule risk management model for IT outsourcing project, and the SAGA is also designed to solve the resulting optimization problem.The simulation results illustrate that the model        can greatly reduce the risk loss and the duration of IT outsourcing project, which achieves the goal of managing the schedule risk effectively.In addition, the proposed SAGA is a greatly improved method, which can effectively solve the described problem comparing with the other two algorithms.Consequently, the above model and algorithm can provide important decision support for managing the schedule risk of IT outsourcing project.

Figure 4 :
Figure 4: The network diagram of subproject .

Figure 6 :
Figure6: The base-level encoding scheme of SAGA.

Figure 7 :
Figure 7: The double-point crossover operator of SAGA.

Figure 8 :
Figure 8: The reversal variation operator of SAGA.

Figure 9 :
Figure 9: The flow chart of SAGA.

Figure 10 :
Figure 10: The influence of  1 on duration.

Figure 11 :Figure 12 :
Figure 11: The influence of  1 on the profit of agent.

FitnessFigure 13 :
Figure 13: The convergence process of the three algorithms in example 1.

4. 2 .
Example 2,3,and 4. In this section, further examples 2, 3, and 4 are given in this section to test the performance of SAGA.The values of the main parameters for models in the three examples are shown in Table

Figure 14 :
Figure 14: The convergence process of the three algorithms in example 2.

Figure 15 :
Figure 15: The convergence process of the three algorithms in example 3.

4 Figure 16 :
Figure 16: The convergence process of the three algorithms in example 4.

Figure 17 :Figure 18 :
Figure 17: The convergence advantage change graph of SAGA.
: the aspiration level of agent    : additional profit per time unit of subproject .

Table 1 :
The parameters of SAGA.

Table 2 :
The simulation results of example 1.

Table 3 :
The model comparison of example 1.

Table 4 :
The effect of  1 on the model.

Table 5 :
The comparison of three algorithms.

Table 8 :
The simulation results of example 2.

Table 9 :
The simulation results of example 3.

Table 10 :
The comparison of algorithms' performance.