Test-Sheet Composition Using Analytic Hierarchy Process and Hybrid Metaheuristic Algorithm TS/BBO

1 School of Computer Science and Information Technology, Northeast Normal University, Changchun 130117, China 2 Changchun Institute of Optics, Fine Mechanics and Physics, Chinese Academy of Sciences, Changchun 130033, China 3 Graduate School of Chinese Academy of Sciences, Beijing 100039, China 4 School of Electronic and Information Engineering, Yili Normal University, Yining, Xinjiang 835000, China


Introduction
Examination is the process of teaching management which plays an important role in evaluating student achievement, inspiring students' creativity, and improving student learning outcomes.As an important means of testing student learning and teacher teaching,

Constraints
Automatic test-sheet composition with computer is searching for questions to meet the requirements from item bank.We determine the encoding for the main properties according to objective analyzing and preestablish the goal state matrix A for all the questions in the item bank: where M is the total number of items in the item bank; N is the number of attributes for each item here, N 9 .For goal state matrix A, each row represents all properties every item, and each column represents a property of the entire item in the item bank.It has not more than N − 1 constraints because a i1 i 1, 2, . . ., M means item number.The process of composing testsheet is as follows.Firstly, find the row to meet the objectives and requirements of question combination x x 1 , x 2 , . . ., x p in the state matrix A according to the default settings or parameters user input, where x i x i,1 , x i,2 , . . ., x i,l i is a vector composed by the question type i, x i,j ∈ 1, M is the number for question j in the type i, 1 ≤ i ≤ p, 1 ≤ j ≤ l i , where p is the type number of questions in the item bank, l i is the number of the ith question, and p i 1 l i l, l is the total question number in a testsheet.For simplicity, we use Boolean vector K K 1 , K 2 , . . ., K M instead of x x 1 , x 2 , . . ., x p to represent the required question combination at last.Here, K m is the state variable for the mth row i.e., the mth item or question , where, K m 1 means the mth row selected, that is, there exists x i,j m; K m 0 means the mth row not selected, that is, there does not exist x i,j m.To simplify, without loss of generality, we use K i 1 ≤ i ≤ M to represent the ith question selected or not.
Every objective for test-sheet composition corresponds to a constraint, all the N −1 9− 1 8 test-sheet objectives corresponding to the following N − 1 eight constraints.Thus, the mathematical model, that is, the constraints for goal state matrix A, can be constructed as follows: 1 Total score where S P is total score for the test-sheet composed; a i2 is score for the ith question.
2 Test time where T E is the total time completing the test-sheet composed; a i3 is estimated time for the completion of the ith question.where C j 0, j / a i4 1, j a i4 ; S j C is the score of the jth chapter; a i4 is the chapter number for the ith question.4 Knowledge point score where O j 0, j / a i5 1, j a i5 ; S j O is the score for the jth knowledge point; a i5 is the knowledge point number for the ith question.5 Question type score where T j 0, j / a i6 1, j a i6 ; S j T is the score for the jth question type; a i6 is the question type number for the ith question.All the questions in item bank are divided into four kinds i.e., Type 1, Type 2, Type 3, and Type 4 ; 6 Cognitive level score where A j 0, j / a i7 1, j a i7 ; S j A is the score for the jth cognitive level; a i7 is the cognitive level number for the ith question.
7 Difficulty degree where DIF P is the difficulty degree of the test-sheet composed; a i8 is difficult degree for the ith question.
8 Discrimination degree where DIS P is the discrimination degree of the test-sheet composed; a i9 is discrimination degree for the ith question.

Objective Function
Through analysis, eight constraints of the test-sheet composition model total score, test time, chapter score, knowledge point score, question type score, cognitive level score, difficulty degree, and discrimination degree should be equal to the evaluation requirements or with the minimum error of the evaluation requirements.Thus, the test-sheet composition is a multiconstraint, multiobjective optimization problem.In practical application, we can consider the error between the above eight constraints and evaluation requirements as objective function f.Therefore, the composed paper is optimal when f reaches minimum.The mathematical model i.e., objective function for the test-sheet composition is as follows:

2.10
In the above objective function f, d i i 1, 2, 7, 8 , 4, j 1, 2, . . ., l , d ij i 5, j 1, 2, . . ., p , and d ij i 6, j 1, 2, . . ., q are the positive deviation between the test-sheet property and evaluation requirements, that is, the part beyond the evaluation requirements; . ., p , and d − ij i 6, j 1, 2, . . ., q are the negative deviation between the test-sheet property and evaluation requirements, that is, the part less than the evaluation requirements.The positive deviation and negative deviation cannot exist at the same time; therefore, their product will be 0, that is, d − × d 0; ω j j 1, 2, . . ., 8 is weight for test-sheet composition, whose sum is 1.
In practice, the weight ω j j 1, 2, . . ., 8 has an important impact on the test-sheet composition whether the result satisfies the requirements.Therefore, how to scientifically and reasonably determine the weight of the test-sheet goal is worthy of further study.In the next section, we will use AHP to determine the weights.

Determining the Weight in Test-Sheet Composition Using AHP
AHP 13 is an effective combination of qualitative and quantitative analysis of multiobjective evaluation method, proposed by the University of Pittsburgh professor Saaty in the 1970s.Advantages of AHP are easy implementation, simple structure, speed, and robustness.Due to these advantages, it has many real-world applications, such as evaluating course website quality, improving the service quality of e-learning, and evaluating the web-based e-learning system.

Begin
Step 1: Setting up the decision hierarchy by breaking down the decision problem into a hierarchy of interrelated decision elements, as a tree containing the overall goal at the top with many levels of criteria and subcriteria in between and the alternatives at the bottom Step 2: Collecting input data by pairwise comparisons of decision elements Step 3: Using the eigenvalue method to estimate the relative weights of decision elements Step 4: Aggregating the relative weights of decision elements to arrive at a set of ratings for the decision alternatives.End.

Algorithm 1:
The algorithm of analytic hierarchy process.

AHP Algorithm
Proposed by Zahedi 14 , four main steps are identified in using the AHP to solve a decisionmaking problem.The detailed algorithm AHP is described in Algorithm 1.

Determining the Weights Using AHP
AHP can be used to determine goal weight for the test-sheet composition.Integrating the feature of test-sheet composition into the AHP, specific solution process is shown in Algorithm 2 Figure 1 .
We calculate consistency ratio CR 0.0822 for the compassion matrix C with Algorithm 2 and get the weights as shown in Table 2, so we can draw a conclusion that the compassion matrix C has satisfactory consistency.
In the actual exam, test-sheet goal weight is various.AHP can determine different testsheet goal weight responding to different requirements according to the different compassion matrix C.

Biogeography-Based Optimization (BBO)
Biogeography is the study of the migration, speciation, mutation, and extinction of species 15 .Biogeography has frequently been thought of as a process that compels equilibrium in the number of species in islands.However, equilibrium in a system can also be viewed as a minimum-energy configuration, so we see that biogeography can be considered as an optimization process.This idea is further discussed in 16 .
Firstly proposed by Simon in 2008, biogeography-based optimization BBO is a new evolution algorithm developed for the global optimization 8 .It is inspired by the immigration and emigration of species between islands or habitats in search for more compatible islands.Each solution is called a "habitat" or "island" with an HSI habitat suitability index and represented by an n-dimension real vector.An initial individual of the habitat vector is generated at random.The habitat with a high HSI is considered to be good solution, while the habitat with a low HSI is considered to be bad solution.Low HSI can take in many new good features form the high HSI, so that these low HSI solutions have

Begin
Step  a relatively high possibility that become high HSI solutions.In BBO, habitat H is a vector of n suitable index vectors SIVs initialized randomly and then implements migration and mutation operator to achieve the optimal solution.The new candidate solution is generated from the entire habitat in population by using the migration and mutation operators.
In BBO, migration operator can change existing habitat and modify existing solution.Migration is a probabilistic operator that adjusts habitat X i .The probability X i modified is proportional to its immigration rate λ i , and the source of the modified probability from X j is proportional to the emigration rate μ j .Migration operator is shown in Algorithm 3.
Mutation is also a probabilistic operator that randomly modifies habitat SIVs based on the habitat a priori probability of existence.Very high HSI solutions and very low   where m max is a user-defined parameter.
Additionally, the mutation operator tends to increase the population diversity.Mutation can be described in Algorithm 4. The basic framework of BBO algorithm can be simply described in Algorithm 5.More details about the migration operator, mutation operator, and BBO algorithm can be found in 8 and in the Matlab code 17 .

Tabu Search (TS)
Tabu search TS 18 is a metaheuristic framework which takes advantage of its use of adaptive memory strategies to manage simultaneously the variety and intensification searches in the solution space of the optimization problem under way.The TS framework is composed by the following major components.

Solution Configuration
The candidate solution for the optimization problem under way is encoded by a configuration.Relying on the characteristic of the problem, the solution configuration x x 1 , x 2 , . . ., x n , which contains n decision variables, could be a vector taking real numbers, binary values, or mixed combinations of them.Initially, a configuration is set randomly within the reasonable ranges of the decision variables.

Move Function
A move function S x is used to guide the solution configuration x to explore its local solution space.The step size of the move should be limited in an appropriate range according to the practical problem.An oversized step makes the search to step over a promising neighbor, while an undersized step causes the algorithm to be inefficient.By performing the move function, the solution configuration is turned into a neighboring configuration, that is, x S x , where x is a neighboring configuration of x.

Neighborhood
The move function defines a neighborhood which bounds the neighboring configurations which are reachable by implementing a move operation to the current solution configuration using S x .Generally, the neighborhood of solution x is defined by Ω x {x | x S x }.

Tabu List
A tabu list which stops a recent move to be reversed is kept and modified in the TS framework.Once a move say, swapping the ith and the jth entries of x is carried out, the inverse of this move swapping the two entries again is recorded in the tabu list and is labeled tabu-active.All the tabu moves are excluded from the neighborhood Ω x , and thus become inaccessible.

Aspiration Criterion
To allow the solution configuration to move to an attractive but tabu neighboring configuration, an aspiration criterion is strategically designed to overrule the tabu status of such a desired move.Aspiration criterion provides a restricted degree of freedom in accepting a tabu move that achieves a threshold of attractiveness.

Stopping Criterion
The stopping criterion depends on the purpose of the problem.There are a number of alternatives such as a minimal solution quality level, a given CPU time limit, a maximal number of iterations between two improvements of the best solution found.
Basically, the TS approach can be summarized as shown in Algorithm 6.

Tabu Search/Biogeography-Based Optimization (TS/BBO)
As we all know, the standard TS algorithm is good at exploring the search space and locating the region of global minimum, but it is relatively slow at exploitation of the solution.
On the other hand, standard BBO algorithm is usually quick at the exploitation of the solution, though its exploration ability is relatively poor.Therefore, in our work, a hybrid metaheuristic algorithm by integrating tabu search into biogeography-based optimization, so-called TS/BBO, is used to solve the problem of test-sheet composition.The difference between TS/BBO and BBO is that the hybrid migration operator is used to replace the original BBO mutation operator.In this way, this method can explore the new search space by the mutation of the TS algorithm and exploit the population information with the migration of BBO, and therefore it can overcome the lack of the exploitation of the TS algorithm.In the following, we will show the algorithm TS/BBO which is a variety of TS and BBO.Firstly, we describe tabu search migration and mutation operation, and then a mainframe of TS/BBO is shown.

Tabu Search Migration and Mutation Operation
The critical operator of TS/BBO is the tabu search migration operator, which composes the tabu search with the migration of BBO.In this algorithm, we can find that the migration between the population X i and X j has no repeat because of the use of tabu search.The core idea of the proposed hybrid migration operator is based on two considerations.First, poor solutions can receive many new features from good solutions.Second, the final solution cannot include any repeat SIV.Pseudocode of tabu search migration operation can be described in Algorithm 7.
In the same way, we compose the tabu search and original mutation operator which modifies the habitat with low HSI in order to avoid the repeat to improve the search efficiency.Pseudocode of tabu search mutation operation can be described in Algorithm 8.

Mainframe of TS/BBO
By incorporating above-mentioned tabu search migration and mutation operator into original BBO algorithm, the TS/BBO has been developed as a new algorithm.TS/BBO algorithm is given in Algorithm 9.

Algorithm TS/BBO for Test-Sheet Composition
In TS/BBO, the standard continuous encoding of TS/BBO cannot be used to solve test-sheet composition directly.In order to apply TS/BBO to test-sheet composition, one of the key issues is to construct a direct relationship between the test-sheet sequences and the vector of individuals in TS/BBO.

Begin
Step

Preprocessing
We will do the following preprocessing before the design of TS/BBO algorithm for test-sheet composition a We regroup all the questions in item bank according to question type, and then the candidates take the same question type together to form a subset.So all the questions in item bank can be divided into several different subsets, and then all questions will be renumbered.
b Because question type in the requirements and item bank has the same score, we can calculate the number of questions required for every question type, and then we get the total number of questions in a testsheet.

Encoding
When using TS/BBO to solve test-sheet composition problem, the status code for each habitat represents a candidate solution, that is, a test-sheet composition scheme.Therefore, how to determine the effective habitat status code is a key issue.Traditional encoding method is as follows: the status code of each habitat is represented by a binary string whose length is the number of questions in total in item bank, and the number "1" indicates that the question corresponding to the number is selected, while number "0" indicates that the question corresponding to the number is not selected; the length of the number "1" indicates the number of questions contained in total in a testsheet.This encoding method is simple and maximizes a random search at most, but it has increased the search space, reducing the search efficiency.
Therefore, an alternative encoding method is proposed in this paper.This method rearranges questions into different subsets according to the different question type.
The status code of each habitat is represented by an l-dimensional vector x x 1 , x 2 , . . ., x p .The dimension l for vector x depends on total questions in a testsheet, where the vector x i x i,1 , x i,2 , . . ., x i,l i is composed by the ith question type, the integer x i,j ∈ 1, M means the jth question in the ith question type; 1 ≤ i ≤ p, 1 ≤ j ≤ l i , p is the total question in item bank; l i is the number of the ith question type, and p i 1 l i l, l is the total question in some test-sheet composed.
For example, we have seven questions 1.a, 2.b, 3.c, 4.d, 5.e, 6.f, and 7.g in item bank; questions a and g belong to question type 1, 1 score for each question; questions b, e, and f belong to question type 2, 2 scores for each question; questions c and d belong to question type 3, 3 scores for each question.Questions in item bank will be rearranged and renumbered according to question type and the result is 1.a, 2.g, 3.b, 4.e, 5.f, 6.c, and 7.d .According to the question type requirement {question type 2 : question type 3} {4 : 3}, we get a total of 3 questions in the testsheet, that is, M 7. p 3, l 1 0, l 2 2, l 3 1, and l l 1 l 2 l 3 3.So 4, 5, 7 represents a test-sheet composition scheme; that is, it represents a test-sheet containing three questions which are questions e, f, and d.

The Algorithm TS/BBO for Test-Sheet Composition
Improved BBO can adapt to the needs of testsheet, while optimization algorithms can improve the BBO fast search capabilities and increase the search to the global possible optimum solution.HSI in Habitat i is represented by the objective function f x i in test-sheet composition model the smaller the value f, then the higher HSI in Habitat i.
Based on the above analysis, the pseudo code of improved BBO-TS/BBO for test-sheet composition is described as shown in Algorithm 10.

Simulation Experiments
In this section, we look at the performance of TS/BBO as compared with BBO and other population-based optimization methods.Firstly, we compare performances between BBO and TS/BBO, and then we compare performances between TS/BBO and other populationbased optimization methods such as ACO, DE, ES, GA, PBIL, PSO, and SGA.
To allow a fair comparison of running times, all the experiments were performed on a PC with a Pentium IV processor running at 3.0 GHz, 1 GB of RAM and a hard drive of 160 Gbytes.Our implementation was compiled using MATLAB R2012a 7.14 running under Windows XP.In the following, we will describe the problem we use to test the performance of the TS/BBO.

Begin
Step 1: Preprocessing.Preprocess the questions in item bank described in subsection 6.3.1, and determine L which is the total number of questions contained in a test-sheet Step 2: Initializing.Set the generation counter G 1; set the status code of habitat i i.e., SIV x i according to subsection 6.3.For BBO and TS/BBO, we used the same following parameters: habitat modification probability 1, immigration probability bounds per gene 0, 1 , step size for numerical integration of probabilities 1, maximum immigration and migration rates for each  4, 5, 6, and 7 show the results of the simulations.In other words, Tables 4, 5, and 6 shows the best, worst, and average performance of BBO and TS/BBO algorithm found by BBO and TS/BBO algorithm over 100 Monte Carlo runs, respectively, while Table 7 shows the average CPU time consumed by BBO and TS/BBO algorithm averaged over 100 Monte Carlo runs.
From Table 4, we see that TS/BBO performed the best on average on four of the 5 groups.Table 5 shows that BBO was the worst at finding objective function minima when multiple runs are made.Table 6 shows that TS/BBO performed the best on average on all the five groups.Table 7 shows that TS/BBO was a little more effective at finding objective function minima when multiple runs are made, performing the best on 3 of the 5 groups, while BBO performed the best effective on two of the groups.In sum, from Tables 4, 5, 6, and 7, we can draw the conclusion that the more generations, the more populations, and the more elitisms, the smaller objective function value, while the CPU time consumes more.

TS/BBO versus Population-Based Optimization Method
In order to explore the benefits of TS/BBO, in this section we compared its performance on test-sheet composition problem with seven other population-based optimization methods.ACO ant colony optimization 19-21 is an algorithm that is based on the pheromone deposition of ants.DE differential evolution 22-25 is a simple method that uses the difference between two solutions to probabilistically adapt a third solution.An ES evolutionary strategy 26, 27 is an algorithm that allows more than two parents to reproduce an offspring.A GA genetic algorithm 28-32 is a method that is based on natural selection in the theory of biological evolution.PBIL probability-based incremental learning 33 is a type of GA that maintains statistics about the population instead of maintaining the population directly.PSO particle swarm optimization 34 is based on the swarming behavior of birds, fish, and other creatures.A stud genetic algorithm SGA 35 is a GA that uses the best individual at each generation for crossover.
We did some fine tuning on each of the optimization algorithms to get optimal performance, to get the optima for every algorithm.For ACO, we used the following parameters: initial pheromone value τ 0 1E − 6, pheromone update constant Q 20, exploration constant q 0 1, global pheromone decay rate ρ g 0.9, local pheromone decay rate ρ l 0.5, pheromone sensitivity α 1, and visibility sensitivity β 5.For TS/BBO, we used the parameters presented in Section 7.1.For DE, we used a weighting factor F 0.5 and a crossover constant CR 0.5.For the ES, we produced λ 10 offspring for each generation and standard deviation σ 1 for changing solutions.For the GA, we used roulette wheel selection, single-point crossover with a crossover probability of 1, and a mutation probability of 0.01.For PBIL, we used a learning rate of 0.05, 1 good population member, 0 bad population members to use to update the probability vector each generation, and a 0 probability vector mutation rate.For PSO, we used only global learning no local neighborhoods , an inertial constant 0.3, a cognitive constant 1, and a social constant 1 for swarm interaction.For the SGA, we used single-point crossover with a crossover probability of 1, and a mutation probability of 0.01.Note that the algorithm DE has not the parameter Keep, so we cannot compare Keep between TS/BBO and DE.
To compare the different effects among the parameters Popsize, Maxgen, and Keep the number of elitism , we ran 100 Monte Carlo simulations of each algorithm on the above problem to get representative performances.Tables 8, 9, 10, and 11 show the results of the simulations.Tables 8, 9, and 10 show the best, worst, and average performance of each algorithm over 100 Monte Carlo runs, respectively, while Table 11 shows the average CPU time consumed by each algorithm over 100 Monte Carlo runs.
From Table 8, we see that TS/BBO performed the best on average on the five groups.Table 9 shows that PBIL was the worst at finding objective function minima on all the five groups when multiple runs are made, while the SGA was the best on three of the groups and TS/BBO was the best on two of the groups in the worst values.Table 10 shows that TS/BBO was the most effective at finding objective function minima when multiple runs are made, performing the best on 3 of the 5 groups, while SGA was the second most effective, performing the best on 2 of the 5 groups.Table 11 shows that TS/BBO was the most effective at finding objective function minima when multiple runs are made, performing the best on all the 5 groups.In sum, from Tables 8, 9, 10, and 11 we can draw the conclusion that the more generations, the more populations, and the more elitisms, the smaller objective function value, while the CPU time consumes more.From Table 8 groups 2 and 3 i.e., row 2 and row 3 , we can arrive at a conclusion that the objective function value is not always better when Popsize is increasing.From Table 8 groups 1 and 2 i.e., row 2 and row 3 or groups 4 and 5 i.e., row 4 and row 5 , we can come to a conclusion that the more Keep, the better results when other parameters are the same.Also, From Table 8 we can reach a decision that increasing Maxgen can get more effective than increasing Popsize.The simulation implemented in this section shows that the algorithm TS/BBO that we proposed performed the best and most effectively, and it can solve the test-sheet problem perfectly.

Conclusion
To improve performance for test-sheet composition, we combined the advantage of tabu search and biogeography-based optimization and proposed a new algorithm TS/BBO.Simulation experiment demonstrates that AHP and TS/BBO that we proposed for test-sheet composition optimization problem have the following advantages.
a Speed up extracting questions and compute the objective function after preprocessing the item bank according to question type.
b Habitat encoding length is equal to the total number of testsheet, saving storage space and reducing the optimization space, to ensure that the constraint for total score is met and improve the solution accuracy.
c We use subencoding according to the question type to ensure that constraint for question type score is satisfied, reducing the optimization space and improving the solution accuracy.
d AHP determines the test-sheet composition weights, comprehensively considering the objective and subjective factors, in line with the actual test environment, fitting real test needs.
e Tabu search optimizes mutation and migration operator to create the algorithm TS/BBO, improving solution efficiency and solution accuracy.
However, the algorithm TS/BBO that we proposed in this paper has the following disadvantages: the preprocessing time increases when the number of questions in item bank is getting bigger, which will affect the entire test-sheet composition speed; need further optimization to improve accuracy; need for further ease the conflict between expanding population diversity and reducing the optimization space.The above problems are worth further study.

Figure 1 :
Figure 1: Level tree structure of test-sheet composition.

Algorithm 2 :
Construct a set of pair-wise comparison matrix C size n × n, here n 8, shown in Table 1 .The pair-wise comparisons are done in terms of which element dominates the other.Step 4: Calculate the sorted weights.Calculate maximum eigenvalue λ max and its eigenvector ω for comparison matrix C through Cx λx, and then normalize ω to get the final weight vector ω Table 2 .Step 5: Test consistency Step 5.1: Calculate consistency index CI through CI λ max − n / n − 1 Step 5.2: Find the average Random Index RI through Table 3. Step 5.3: Calculate consistency ratio CR through CR CI/RI Step 6: If CR < 0.1, the comparison matrix C is consistent and return; if CR ≥ 0.1, the comparison matrix C should be modified, and return Step 4. End.The algorithm of AHP for test-sheet composition.

Table 1 :
Comparison matrix C for test-sheet composition.
C8 present 8 constraints, respectively, that is, total score, test time, chapter score, knowledge point score, question type score, cognitive level score, difficulty degree, and discrimination degree.
HSI solutions are equally improbable.Medium HSI solutions are relatively probable.The mutation rate m is expressed as

Table 3 :
Random index RI for different n.The algorithm of habitat migration operator.
The algorithm of mutation operator.Set the generation counter G 1; Initialize the population P randomly and each habitat corresponding to a potential solution to the given problem.Step 2: Evaluate the fitness for each individual in P Step 3: While the termination criteria is not satisfied do Sort the population from best to worst.For each habitat, map the HSI to the number of species S, Calculate the immigration rate λ i and the emigration rate μ i for each individual X i .Modify the population with the migration operator shown in Algorithm 3. Update the probability for each individual.Mutate the population with the mutation operation shown in Algorithm 4.Evaluate the fitness for each individual in P .The algorithm of biogeography based optimization.

Algorithm 6 :
Randomly generate an initial configuration, x x 1 , x 2 , . . ., x n , with an empty tabu list Step 2: Repeat the following statements until the stopping criterion is met Step 2.1: Identify the neighborhood Ω x {x | x S x } of current configuration x, and consider a subset H x from Ω x Step 2.2: Choose the best in terms of a moving evaluation score configuration x * ∈ H x which is either nontabu or is tabu but satisfying the aspiration criterion Step 2.3: Update the tabu list and let x x * Step 3: Output the best configuration found End.Algorithm of tabu search.
Tabu search migration operator of BBO.
1: Initialization.Set the generation counter G 1; and randomly initialize a population of NP individuals P , the parameter TS, M, ALLOW Step 2: Evaluate the fitness HSI for each individual in P according to 4.1 .
2; randomly initialize a population of NP individuals P ; set the maximum variation rate m max and migration rate p mod ; set dimension for the optimization problem D; set the maximum capacity of habitat species S max ; set maximum of immigration function I and the maximum of emigration function E and the maximum of elite individuals retained z; set the parameter TS, M, ALLOW related to tabu search Step 3: Calculating the immigration and emigration rate.Calculating the species number S i , the immigration λ S i and emigration rate μ S i i 1, 2, . . ., n corresponding to habitat i based on its SIV f x i according to 2.10 Step 4: while The halting criteria is not satisfied do Sort the population from worst to best according to HSI For each individual, map the HSI to the number of species Calculate the immigration rate λ i and the emigration rate μ i for each individual X i Modify the population with the taboo search migration operator shown in Algorithm 7 Update the probability for each individual Mutate the population with the taboo search mutation operator shown in Algorithm 8 Evaluate the fitness for each individual in P Algorithm of TS/BBO for test-sheet composition.

Table 4 :
Best normalized optimization results on test-sheet composition problem.The numbers shown are the best results found after 100 Monte Carlo simulations of BBO and TS/BBO algorithm.We must point out that TS/BBO needs to set tabu search table except for the above parameters.To compare the different effects among the parameters Popsize, Maxgen, and Keep the number of elitisms , we ran 100 Monte Carlo simulations of BBO and TS/BBO algorithm on the above problem to get representative performances.Tables

Table 5 :
Worst normalized optimization results on test-sheet composition problem.The numbers shown are the best results found after 100 Monte Carlo simulations of BBO and TS/BBO algorithm.

Table 6 :
Mean normalized optimization results on test-sheet composition problem.The numbers shown are the minimum objective function values found by BBO and TS/BBO algorithm, averaged over 100 Monte Carlo simulations.

Table 7 :
Average CPU time on test-sheet composition problem.The numbers shown are the minimum average CPU time Sec consumed by BBO and TS/BBO algorithm.

Table 8 :
Best normalized optimization results on test-sheet composition problem.The numbers shown are the best results found after 100 Monte Carlo simulations of each algorithm.

Table 9 :
Worst normalized optimization results on test-sheet composition problem.The numbers shown are the best results found after 100 Monte Carlo simulations of each algorithm.

Table 10 :
Mean normalized optimization results on test-sheet composition problem.The numbers shown are the minimum objective function values found by each algorithm, averaged over 100 Monte Carlo simulations.

Table 11 :
Average CPU time on test-sheet composition problem.The numbers shown are the minimum average CPU time Sec consumed by each algorithm.