Multiobjective Resource-Constrained Project Scheduling with a Time-Varying Number of Tasks

In resource-constrained project scheduling (RCPS) problems, ongoing tasks are restricted to utilizing a fixed number of resources. This paper investigates a dynamic version of the RCPS problem where the number of tasks varies in time. Our previous work investigated a technique called mapping of task IDs for centroid-based approach with random immigrants (McBAR) that was used to solve the dynamic problem. However, the solution-searching ability of McBAR was investigated over only a few instances of the dynamic problem. As a consequence, only a small number of characteristics of McBAR, under the dynamics of the RCPS problem, were found. Further, only a few techniques were compared to McBAR with respect to its solution-searching ability for solving the dynamic problem. In this paper, (a) the significance of the subalgorithms of McBAR is investigated by comparing McBAR to several other techniques; and (b) the scope of investigation in the previous work is extended. In particular, McBAR is compared to a technique called, Estimation Distribution Algorithm (EDA). As with McBAR, EDA is applied to solve the dynamic problem, an application that is unique in the literature.


Introduction
In executing an air traffic schedule, bad weather or emergencies might occur whereby to-be-executed activities in this schedule are no longer feasible. Many real-world problems are set in this type of dynamic scenario where their objectives, constraints, or even dimensions may change in time [1][2][3]. This is particularly true for some resource-constrained project scheduling (RCPS) problems, a class of problems that have ongoing tasks restricted to utilizing a limited number of resources [4]. Some RCPS problems are NP-hard which are often approached using modern heuristic methods, in particular, Evolutionary Algorithms (EA) [5].
Many researches [6][7][8][9] have investigated scheduling problems that have fixed dimensions. However, there are important scheduling problems and each of them has varying dimensions. For example, suppose that in implementing a resource-constrained schedule for an edifice construction, a large buried object is found. As a consequence, a new task to remove this object must be performed before other tasks in the schedule can continue or commence. If each variable in the problem of determining a schedule corresponds to a task, then the revision of the schedule to accommodate a new task entails a new problem that may have a greater number of variables (dimensions) than the original problem.
Many scheduling problems are multiobjective [10][11][12][13]. For example, in creating the edifice construction schedule above, one objective is to reduce the construction duration which could be accomplished by employing large number of laborers. However, due to overhead expenses (e.g., hazard fee) per laborer, the construction cost for many laborers could be higher than that for a few laborers for the same total manhours. Now, if another objective is to reduce the construction cost which could be accomplished by hiring fewer laborers, the construction duration could increase. Thus, in this example, the two conflicting objectives (minimization of construction cost and duration) cannot possibly be achieved simultaneously. A problem that requires simultaneous optimization 2 The Scientific World Journal of conflicting objectives is referred to as multiobjective optimization (MOO) problem [1].
Let Φ 2 denote the biobjective dynamic RCPS problem where minimization of the schedule cost and duration are the conflicting objectives and where the number of tasks varies in time, a variation that brings about a change in the dimension of this problem. Our previous work [14] investigated the performance (solution-searching ability) of the memory and EA-based technique called mapping of task IDs for centroid-based adaptation with random immigrants (McBAR) in solving the Φ 2 problem. However, this investigation was performed on few instances of Φ 2 . Consequently, only a few characteristics of McBAR were found under the dynamics of this problem. Further, only a few techniques were being compared to McBAR with respect to its performance in solving the problem.
The major goals of this paper are to (1) legitimize some subalgorithms constituting McBAR. Legitimization of a subalgorithm of a technique is to manifest the decline in the effectiveness of this technique in solving a problem when the subalgorithm is replaced; (2) extend the investigations in our previous work [14].
In particular, add the techniques being compared to McBAR with the technique that utilizes Estimation Distribution Algorithm (EDA) [15]. As with McBAR, this additional technique is applied to solve the Φ 2 problem. This application is unique in the literature.
This paper is organized as follows. Section 2 explores the knowledge useful to understand the problems and methods presented in this paper. Section 3 provides information on the problems and the methods used to solve these problems. The results obtained for applying these methods are described and investigated in Section 4, together with the demonstration of the way in which the goals above are accomplished. Section 5 presents the conclusion of this work.

Background Knowledge
The following five subsections contain general and specific background knowledge helpful for understanding the techniques and problems discussed in this paper. Section 2.1 investigates some RCPS problems, each with a time-varying number of tasks, and gives special emphasis to approaches applied to solve these problems. Section 2.2 presents the memory-based approach, upon which McBAR is founded. Section 2.3 provides information on some multiobjective optimization problems which are related to that of Φ 2 . EDA is presented in Section 2.5 including its application to some RCPS problems.

Resource-Constrained Project Scheduling (RCPS).
Scheduling as a solution to any RCPS problem is composed of tasks obeying some precedence relationship, such as that exemplified in Figure 1. In this figure, boxed numbers are IDs of tasks of an RCPS; directed links signify precedence relationships of these tasks; and labels "S" and "E" correspond to starting and ending tasks, respectively. Note that any task precedence network that will be mentioned from here onwards is of the form just described. RCPS tasks are characterized by several attributes such as, duration, starting time, and required resources, for example, personnel, materials, and fuel. In RCPS, the number of resources of the same type utilized by all ongoing tasks are constrained not to exceed a predefined limit.
A schedule implemented in a dynamic environment can turn into an infeasible or a low quality one, for example, one involving a high cost of implementation. Thus, there could be a need to revise this schedule. However, the following rule must be taken into account in the revision.
Schedule revision must judiciously be made to avoid the high cost of altering its in-use components which thus may be preserved [16].
Given an RCPS problem, let the total number of tasks be defined as the sum of the number of finished, ongoing, and to-be-executed tasks at the moment of change in the dynamic environment that sets this problem. Note that task cancellation is not considered in this paper. In our previous work [14,17] as well as in this paper, we consider three entities that could change in the environment: resource availability, task duration, and total number of tasks. The change in the total number of tasks is given the major emphasis.

Time-Varying Task Number.
There had been several reactive scheduling approaches to revise schedules to cope The Scientific World Journal 3 with the effects of the time-varying number of tasks. For example, in the job-shop scheduling problem in [18], during the EA process of evolving a population of schedules, genes which correspond to new/old jobs that arrived/finished are inserted/removed to/from genotypes which correspond to the schedules. The resulting population is then evolved further to search for new high-quality schedules. It is worth noting that despite the genotype alteration, significant improvement on the EA's search convergence and solutions/schedules quality was found [16,[19][20][21]. In [22], tasks in processors of a distributed computing system arrive randomly and are put on queue. These tasks are then processed by batch that has varying number of tasks. This process follows a schedule created through Genetic Algorithm to obtain minimal combined execution time of tasks in every batch. In [23], genes that correspond to new tasks are also inserted into genotypes which are then processed by EA to obtain a new high-quality schedule for multiresource scheduling with cumulative constraints. In this EA process, lateness of the new schedule is minimized and at the same time, important properties of the original schedule are preserved. EDA was applied to solve a non-RCPS problem whose dimension changes in time [24,25]. However, the objective functions utilized in this application were simple. More techniques in revising schedules, to cope with the variation of the number of tasks in the environments that set these schedules, can be found in [4].

Schedule Generation.
We now discuss a process of generating schedules referred to as serial schedule generation scheme (SSGS). SSGS is also a popular method to form initial populations used to solve RCPS problems through EA [26]. Before proceeding, some terms will be defined. Let a genotype be viewed as an ordered set of slots to which IDs, of tasks that comprise a schedule, will be filled in consecutively (e.g., from leftmost slot to the right). Consider a genotype devoid of IDs. Once an ID is filled in, its corresponding task will be called a scheduled task. A root task is defined as the task from which all other tasks succeed, for instance, the task labeled "S" in Figure 1. The root task is considered as a scheduled task even though its ID is not filled in to the genotype. Eligible tasks have IDs not yet filled in to the genotype and are the immediate successors of scheduled tasks and/or the root task. For example, given the task precedence in Figure 1, if scheduled tasks have IDs 1, 2 and "S, " the set of eligible tasks have IDs in set = {5, 10, 14} ∪ {6, 7, 12} ∪ {3} whose subsets (indicated by { }) contain ID/s of task/s. These tasks are the immediate successors to their corresponding (based on the figure) scheduled and root tasks.
A version of the SSGS algorithm to create a resourceconstrained schedule is depicted in Algorithm 1. It starts by determining the set of IDs of eligible tasks not yet with any scheduled task, except the root task. This implies that, at the start, is composed of IDs of tasks immediately succeeding the root task. In the last example, the set of eligible tasks at this stage is = {1, 2, 3}. Let be the number of tasks to be scheduled. A loop is then executed times to fill all slots of the genotype utilized in this algorithm. In each cycle,

Procedure SSGS Begin
Determine a set of eligible tasks For = 1 to Randomly select a task ID ∈ Put this ID at genotype location Find = max {0, max {st + | ∈ Pred ( )}} Schedule task with ID at the earliest precedence and resource-feasible start time > Set st = Update End End Algorithm 1: Serial Schedule Generation Scheme (SSGS) Algorithm.
indexed of this loop a task ID is selected randomly from and placed to the genotype at slot indexed . Then set the starting time st of the task that corresponds to this ID to be the earliest time later than the maximum end time-start time st plus duration -of all its predecessors whose IDs are in the set Pred( ). Further, the starting time st is such that there are enough available resources, for task with ID , to utilize over the entire execution period of this task. Note that some resources an RCPS environment could already been allocated to some scheduled tasks and hence could be unavailable. Task with ID is now considered scheduled. And the last step in the loop is to update . After cycles, the genotype is completely filled and the starting times of tasks that correspond to IDs in the genotype are determined. Thus, a schedule is formed.

Memory-Based
Approaches. EA techniques which utilize memory record relevant information that corresponds to previous problems they had solved or to past evolutionary generations they had gone through. This information is retrieved to assist in solving a current problem or a problem at a current evolutionary generation [27]. Suppose that a previous planning problem prev and a current problem curr are close, based on a certain measure. It could then be expected that the fitness landscapes that correspond to these problems are also close, by a different measure. Thus, the solutions to these problems could also be close, based on another measure. By this proximity, few EA cycles could be required to evolve an initial population, containing solutions or representative of solutions to prev , to become solutions to curr [6,28]. This expectation underlies several memorybased approaches in EA [6,[28][29][30].
Performances (solution-searching abilities) of memorybased EA approaches are highly dependent on the diversity of population which they create and then evolve [31]. They can be undertaken either in explicit or implicit styles.

Explicit Memory-Based
Approach. Explicit memorybased Approach defines how information produced by EA 4 The Scientific World Journal in solving problems and/or information about environments that set these problems is stored and retrieved [32]. The combination of competitive learning [33] and explicit memorybased EA approach was applied in [29,32] to solve some problems in an artificial dynamic environment. An explicit memory-based EA approach in [34] is based from the human immune system. For each previous form of a dynamic knapsack problem that has analogues of antigens (molecules foreign to the immune system), a representative of the analogues of the pathogens in the system is kept in a memory and is used for solving a current form of the problem. The basic approach in [35] was to search for and then store to memory solutions suitable for many considered environmental states. Based on some mathematical measures, one of the solutions measured as being the most suitable was retrieved from the memory and then implemented on a current environmental state. However, if none of these solutions was measured as being suitable, a new optimal solution was searched. In [18], a prioritized list of categories of scheduling task properties was created and stored in a memory. Tasks to be executed had their properties matched to the categories to produce a prioritized list of tasks from which an initial population was formed and then evolved to determine the schedule of the tasks. The system in [28] continuously learns of changes in an environment to dynamically update its knowledge base of pairs of environmental properties and solutions to problem set in this environment. A pair that contained environmental properties that match, based on a mathematical measure, those of the current environmental state was retrieved from the knowledge base. The solutions contained in the retrieved pairs were then utilized to form an initial population which was evolved through EA to search for optimal solutions to a problem set in the current state of the environment. A system in [30], closely related to that in [28], was applied to some dynamic resource allocation problem in a command and control environment. This allocation problem considered risk and cost in a project implementation, factors which were lumped into one objective function.

Implicit Memory-Based
Approach. Implicit memorybased approach defines the way in which representatives of information produced by EA for solving problems are stored and retrieved [32]. As in explicit style, this information may or may not be added to the information on the environment that sets the problems. In the scheduling domain, implicit style has advantage over explicit style because, in a dynamic scenario, the schedule produced by explicit style will swiftly become irrelevant due to variation in the priority and precedence order of schedule components [18].
Multistranded chromosome (polyploidy) was utilized in [36][37][38] to store representatives of information that correspond to past environmental changes. This utilization was shown to be useful in searching solutions, through Genetic Algorithm, to some problems in a dynamic environment. Chromosomes utilized in [39] have a multilevel genetic structure which serve as long-term memory and facilitate quick adaptation of a function optimizer to environmental changes.

Multiobjective Optimization (MOO).
Let us now explore some important features of the MOO problem. Let x = { 1 , 2 , . . . , } ∈ C be referred to as decision vector (e.g., genotype) of decision variables (e.g., ID of task in a schedule) and (x) as the th objective function which relates a decision vector to the th objective value (e.g., cost to implement an entire schedule). The objective vector f(x) for a -objective problem is denoted by The concept of dominance of a solution is relevant for comparing the quality of this solution to another solution of the same MOO problem. To explain this concept, consider two sets of indices, = { 1 , 2 , . . . , } and = { 1 , 2 , . . . , } where + = , ∩ = 0, and ∪ = {1, 2, . . . , }. Let the indices be those of the objective functions contained in the expression of f(x) in (1). A solution x 1 dominates another x 2 , denoted by x 1 ⪯ x 2 , if ∃ a nonempty set where (x 1 ) < (x 2 ) ∀ ∈ and (x 1 ) = (x 2 ) ∀ ∈ , that is, if there is one or more of the objective functions each yielding objective value at x 1 less than that at x 2 and if the rest of the objective functions each yielding objective value at x 1 equaled that at x 2 . This definition is applicable when objectives are to be minimized. Otherwise, the inequality sign will be reversed and "greater than" will be used instead of "lesser than" in the definition of dominance.
For example, suppose that there are two conflicting objectives to minimize, schedule duration and cost, which correspond to objective functions 1 (x) and 2 (x), respectively, where x is a schedule. If the cost in implementing schedule x 1 is lesser than that of schedule x 2 , that is, 1 (x 1 ) < 1 (x 2 ) and the duration in accomplishing schedule x 1 is shorter than that of schedule x 2 , that is, 2 (x 1 ) < 2 (x 2 ), then x 1 ⪯ x 2 ; that is, schedule x 1 is of better quality than x 2 . In this example, the sets of indices and in the definition of dominance above are equal to {1, 2} and 0, respectively. If x 1 does not dominate x 2 and x 2 also does not dominate x 1 , they are referred to as nondominated. A set of nondominated solutions is called nondominated set (NDS). There could be many solutions to a MOO problem. At least one of them may constitute an NDS [40]. In practice, guided by his/her experience and intuition, a decision maker may choose one solution from an NDS to implement in his/her field of interest. From here onwards, let the chosen solution be referred to as chosen schedule if it is in the context of scheduling.
One way to compare the quality of the set of solutions, obtained by the method , to another set of solutions, obtained by another method , is through the set coverage. Let ( , ) be the set containing elements of which are dominated by an element in , The set coverage is defined as The Scientific World Journal 5 where | | is the set cardinality. This definition can also be applied to monoobjective optimization. Based on (3), the set coverage has a range of 0 ≤ SC( , ) ≤ 1. It will be convenient for later discussions to have a set coverage-related quantity that has a range symmetric around zero. For this purpose, we define where dSC( , ) is referred to as differential set coverage which is antisymmetric on its arguments. Assuming that | | = | | and based on (4), dSC( , ) has a range of values, We then take the following.
Suppose that and are sets of solutions computed, respectively, by techniques and under similar conditions. Technique performs better than technique under these conditions if dSC( , ) > 0.

Multiobjective Evolutionary Algorithm (MOEA).
As was pointed out in the Introduction, some RCPS problems which are NP-hard are often solved using EA. Further, recall also that Φ 2 is an RCPS problem compounded by multiobjectivity. A class of EA-based methods suitable to solve multiobjective NP-hard problems is referred to as Multiobjective Evolutionary Algorithm (MOEA). A popular member of MOEA is the Nondominated Sorting Genetic Algorithm-II (NSGA-II) [41]. Being a type of EA, NSGA-II has an evolutionary process which starts on an initial population. Further, given an evolutionary stage, the selection process in NSGA-II gives preference to individuals (solutions) far from crowded individuals in the search space associated with the problem being solved through NSGA-II. This preference helps diversify offspring existing into the next evolutionary cycle [41].
Selection. The selection mechanism of NSGA-II is described as follows: at each evolutionary cycle of NSGA-II, fast nondominated sorting is applied to population , and as a consequence, each individual in is endowed with integral Pareto rank > 0 and crowding distance [41]. Let ⊆ be a set of individuals each having a Pareto rank of . Further, let sel be the population of selected individuals. Starting from 1 , each is included in ascending rank to sel which starts from empty. This inclusion will stop before including which will result in | sel | > sel , the number of individuals to be selected. If at the moment of stopping | sel | < sel , then individuals in will be sorted in descending order of their crowding distances, thereby becomes an ordered set . Then , the set of first sel − | sel | elements of , will be included in sel . Thereby, sel have exactly sel elements. As exemplified in Figure 2, if 3 is included in sel , | sel | > sel , such that only its subset is included to sel . Now, if at the moment of stopping, sel has sel number of elements already, then there is no need to include any element of .  which, instead of using EA operators, makes use of sampling and estimation of probability density functions (PDFs) to create its next-generation population [15]. It is a heuristic that has the ability to detect and preserve good quality building blocks of chromosomes [42], an ability that could be important in some applications [15]. It has not been applied to solve the Φ 2 problem. Its application to solve these problems is unique in the literature.

Estimation Distribution
Before discussing a particular algorithm of EDA, let us describe Figure 3. Suppose that genes in genotypes that correspond to individuals in a given population are task IDs. Each color block in this figure signifies the density of the genotypes that have task ID equal to the task ID in the vertical axis at gene index in the horizontal axis. Let the matrix of density depicted in the figure be referred to as the probability matrix.
Algorithm 2 presents a particular EDA algorithm. Beginning at its first generation = 0, EDA creates a probability matrix Pm with equal entries. This probability matrix is then sampled to form a set of genotypes , sized . Genotypes in are then selected to form another set sub of genotypes, sized ⌈ ⌉, where ⌈⋅⌉ is a round-up operator and 0 < ≤ 1 is a constant. Their selection is based on the fitness of their corresponding phenotypes. A new probability matrix Pm +1 is then estimated from sub . The cycle of estimation, sampling, and selection is repeated until a stopping condition is met.
Based on elementary statistics, the probability of a genotype in , for some , to be in the next generation ( ← + 1) after sampling Pm is derivable from Pm . If a prospective genotype of high quality (e.g., fitness value) has less probability of persisting to the next generation, it is less likely to be in the next generation. This EDA drawback was remedied in [43]. Another drawback of EDA is that after several generations, diversity of genotypes in , for large , will be lost; a drawback is remedied in [44].
In Figure 3, there is consideration of the visually detected high (of blue hue) probability block of genes indexed 15 to 17 with task IDs 5, 15, and 17, respectively. During the sampling of the probability matrix depicted in the figure, task IDs that correspond to these high probability blocks are more likely to appear at gene indices of the offspring genotypes that correspond to the blocks, thereby preserving the blocks.

EDA in Scheduling.
In [9,45], EDA was applied to solve an RCPS problem in a static environment with tasks on various execution modes. The authors utilized a probability matrix where is the task index, is the gene index of genotype used in EDA, and is the EDA generation/cycle count resembling that in Algorithm 2. Before the start of the first generation ( = 0) in the applied EDA, all entries of Pm 0 were set to 1/ where is the number of tasks in the environment and is the genotype length. This implies that all of the tasks have equal probability of being placed into any gene location in any genotype formed during sampling of Pm 0 at the first generation.
A copy of Pm was used to generate a genotype as follows: the th column of , that is, (:, ) ≡ { , | 1 ≤ ≤ } is sampled to obtain a task that can be assigned to the gene indexed of the genotype. However, it could happen that not all tasks with nonzero corresponding probability in (:, ) are eligible for the assignment due to the task precedence constraint in the RCPS problem. To remedy this, let be a set of indices of eligible tasks with nonzero corresponding probability in (:, ). Corresponding probabilities of these eligible tasks are provisionally revised tô not for updating entries of , where ∈ . The provisional probability matrix {̂, | ∈ } is then sampled to obtain a task that will be assigned to gene indexed . After this assignment, all entries of row of are set to zero to avoid reassigning the obtained task thereafter. Further, each column of is renormalized. The steps described in this paragraph enable the assignment of a task to one gene only. They are repeated for each gene, from first ( = 1) gene to last ( = ), consecutively, thereby creating one genotype in the next generation genotype set +1 (step 2 of Algorithm 2).
The Scientific World Journal 7 To produce other genotypes in +1 , the steps described in the last paragraph are repeated but starting with a fresh copy of . The remaining steps in Algorithm 2 are executed to complete one cycle.

2.5.2.
Other EDA Applications. EDA was applied in [46] to improve the performance of a technique, based on reinforcement learning (RL) [47], for solving a multiobjective problem. In this work, a probability matrix was revised every time the technique's RL system dynamically interacted with an environment. EDA was applied to classify tissues at molecular level in [48]. The selection of genotypes (an implementation of step 3 in Algorithm 2) in this work is based on the Pareto ranks and crowding distances [41] of their corresponding phenotypes.
EDA was applied in the optimization of a simple function with time-varying dimension in [24,25]. In this application, the utilized probability matrix was a mixed Gaussian model whose number of clusters was determined through the Bayesian information condition. EDA was applied to other dynamic optimization problems with fixed dimensions [44,49,50]. In [49], some parameters of the current state of a dynamic environment were used to retrieve, from a memory, parameters of probability matrix utilized for solving a problem set in a previous state of the environment. These retrieved parameters were utilized to form the probability matrix of an EDA process that solved the problem set in the current state of the environment. Correction to population diversity loss in the EDA process was applied.

Materials and Methods
This section presents a test environment that sets some instances of the Φ 2 problem solved by each technique in T. Further, it explores these techniques. Section 3.1 provides information on the intuitive descriptions of the Φ 2 problem. The formal definition of this problem is in Appendix A. Section 3.2 describes the various instances of the Φ 2 problem from which the dynamics of McBAR's performance for solving these instances are demonstrated. Section 3.3 presents the technique referred to as centroid-based adaptation with random immigrant (CBAR) which is the precursor of McBAR. Section 3.4 provides information on McBAR. Section 3.5 elaborates our approach in applying EDA to the Φ 2 problem. Further, it describes other techniques used to achieve goal 1 in the Introduction.
3.1. Intuitive Description of the Φ 2 Problem. The selection of Φ 2 as the test problem in this paper is based on the popularity of RCPS in the study of adaptation in dynamic environments [4]. The problem Φ 2 is set in a military operation environment such that it is referred to as the military mission scheduling (MMS) problem. MMS is a process by which the goals of a commanding officer will reach fruition. For an extensive review on MMS, one may refer to the work of [6]. Intuitive descriptions of Φ 2 are given in this section with examples. In this section, the military operation environment that sets problem Φ 2 is simply referred to as the environment or the dynamic environment (to stress its variability).

Notation.
Consider the dynamic environment in which a snapshot is taken of its original state and at every moment it changes state. For example, a snapshot is taken of the environment that involves a valley occupied by rebels that pose a certain scheduling problem. Then, the next snapshot is taken when the environment changes to a state that, in addition to its last state, has a road-blocking landslide which hampers transport of logistics from a depot to the battlefield in the environment. This next snapshot poses a different scheduling problem. Note that a snapshot of the dynamic environment is a static environment.
Let 2 be a biobjective RCPS problem where schedule cost and duration are the conflicting objectives to minimize. Further, let this problem be set in a snapshot of a dynamic environment changing state for the th time. Note that since a snapshot is a static environment, then 2 is a static problem. Let the integral-valued index in 2 denote the sequential order of state alteration (SOSA) of the dynamic environment. For instance, third SOSA denotes the third moment the environment is changing state. Let zeroth SOSA correspond to the original state of the environment. Considering that the snapshot of the dynamic environment is taken immediately after this environment changes state, then the sequential order of taking the snapshot is similar to SOSA.
The dynamic RCPS problem Φ 2 is viewed as a sequence of static problems 2 ; that is, where ⟨ ⟩ denotes ordered set; subscripts denote SOSA; and denotes the number of moments at which the environment changes state. From here onwards, 2 will be referred to as subproblem of Φ 2 . In addition, the index in 2 has the range 0 ≤ ≤ , assumed from here onwards. Intuitive descriptions of the 2 subproblem are given first before its formal definitions, found in Appendix A. These intuitive descriptions are as follows.

Inputs.
Tasks in the environment are characterized by the following.
(1) task ID, (2) type of performed activity,    Table 1. The first and second columns in this table are task IDs and durations, respectively.
The precedence relationships of tasks can be expressed as a network of nodes, which represent tasks, and arcs, which represent precedence relationships. An example network is illustrated in Figure 1. Now, suppose that, in Table 1, task 2 is to transport weapons and ammunition, task 16 is to interrogate prisoners of war (POWs), and task 17 is to clear a bombed area. Thus, the network in Figure 1 expresses the concept that the bombing of enemies must be done after the transportation of weapons and ammunitions and before clearing the bombed area and the interrogation of POWs.
Resources such as soldiers, fuel, and weapons are assets that can be utilized for a system to function. In RCPS, each type of resource has a limited number of items, a number that is input information to the 2 subproblem. The third to the last columns of in Table 1, respectively, are the resources 1 to 4 utilized by the tasks with IDs in the first columns. For instance, task 12 is to bomb enemies for 16 time units and to utilize at most four light mortar batteries ( 1 ).
After one task is finished, resource items it had utilized are transferred to another task that will utilize all or some of the items or are returned to a depot called central base. Another input to the 2 subproblem is the cost of moving each resource item from one task location to the next. Task activity location is identified by the ID of the task. For instance, location 7 in a battlefield is where the task with ID 7, for example, to care for refugees by one infantry company, is executed. Central base has a location label of zero.
The transfer status of resource item can either be moved or unmoved. And, the availability-to-task status of resource item can either be available, broken/dead, or occupied (meaning utilized by a task). Additional inputs to the 2 subproblem are items' transfer and the availability status of resource items and the execution locations of tasks.

Objective Functions.
Minimization of schedule cost and duration are the two objectives in 2 . They are mathematically defined in Appendix A. As pointed out in Introduction, these objectives are conflicting.

Constraints.
One constraint in the 2 subproblem is implied by the precedence network of tasks in the environment; namely, the starting time of any task in this network must be later than or equal to the longest end time of its predecessors. For example, based on Table 1, task 3 has duration of 16 time units. Based on Figure 1, if task 3 starts at five time units then, to satisfy the constraint, task 8 must start on or after 21 time units.
As mentioned above, 2 is an RCPS type of subproblem. Thus, in 2 , the number of items of any type of resource utilized by all ongoing tasks in the environment is constrained. For example, there must be at most five C130 airplanes ( 3 resource type) that can be used simultaneously at any instant during the military operation in the environment. This constraint is denoted by the column heading 3 ≤ 5 of Table 1.
where s are the ID of tasks in the environment, is the gene index, and is the genotype length. Note that any genotype mentioned from here onwards has a form similar to that in (9). The ordering of IDs in the genotype is based on a given The Scientific World Journal task precedence network. The ordering rule is the following: any ID in the genotype must correspond to a task whose successors do not have IDs where < . For example, the section ⟨1, 14, 2, 7, 3, 9⟩ of a genotype satisfies the ordering rule based on Figure 4. Any genotype which satisfies the ordering rule is characterized as task-precedence feasible. Genotypes are generated either through SSGS (explained in Section 2.1.2) or by some other means, such as described in Section 3.3.
Some more computational products of solving 2 are the starting times of tasks in the environment. These starting times are determined either through SSGS or by some other means, such as described in Section 3.3.4. Any solution to the 2 subproblem is an ordered set of the tasks with determined starting times and is referred to as a schedule, where task has ID in (9). Based on the above-mentioned ordering rule of IDs in any genotype, every task in (10) must not have successor where < .

Sample schedules are depicted in Figures 5(a) and 5(b)
where the horizontal axis is time; filled rectangles represent tasks whose task IDs are the labels of the rectangles; and the lengths of the rectangles denote the duration of the tasks that correspond to them. All rectangles inside the region labeled correspond to tasks that utilize resources of similar label . All tasks in the schedules obey the task precedence relationship enshrined in Figure 4. For instance, in Figure 5(a), task 2 ends at 13 time units and task 7 starts at that similar time. Hence, task 7 succeeds task 2, thereby maintaining the task precedence relationship. More details of Figures 5(a) and 5(b) will be given in the next section.
3.1.6. Dynamic Factors of Φ 2 . Sections 3.1.2 to 3.1.5 described the static subproblem 2 of Φ 2 . Let us now describe the features of the dynamic Φ 2 . In the above-mentioned military mission environment that sets Φ 2 , it could happen that the estimated completion duration of a military task will not be obeyed due to difficulties in terminating enemies. Thus, the task completion duration could vary from one snapshot of the environment to the next. The dynamic duration of any task with ID in the environment is modeled as where is the normal distribution with the mean as the predefined task duration (e.g., those listed in Table 1) and as the standard deviation. It could also happen that the availability status of resources in the environment will change due to such factors as the fatigue of soldiers, the breakdown of equipment, and the delay in logistics. Further, it could also transpire that enemies retreat to recuperate and then attack at some later time. Consequently, new tasks, not accounted for in an original plan (a plan prior to any change in the environment), could be elicited. Thus, the total number of different tasks in the environment can change. The total number of tasks can only increase or be constant. Further, the number of finished tasks does not reduce the total number of tasks and there are no canceled unexecuted tasks.
To recapitulate, the availability status of resources used, duration, and total number of tasks are the dynamic factors in Φ 2 . To exemplify certain dynamics of Φ 2 , consider Figures 5(a) and 5(b) again. The schedule depicted in Figure 5(a) is one of the solutions to the 2 5 subproblem set in the snapshot taken at the fifth SOSA of the environment and at 13 time units. The schedule depicted in Figure 5(b) is one of the solutions to the 2 6 subproblem set in the snapshot taken at the sixth SOSA of the environment and at 16 time units. Each task in the schedule depicted in Figure 5(b) has a duration that is an alteration, following (11), of the duration of its pair task of similar IDs in the schedule depicted in Figure 5(a). The starting times of the pair of tasks are identical but their durations may not be so due to the dynamics of the environment. This is true for all pairs of tasks from the figures with similar IDs. The four tasks, with IDs 31 to 34, had already been added to the 30 tasks, with IDs 1 to 30, in the original plan.  In Figures 5(a) and 5(b), the darkest-background (redbackground) rectangles correspond to finished task, for example, task 2; lightest-background (yellow) to ongoing tasks, for example, tasks 1 and 7; and the other colored rectangles to tasks yet to be executed. Based on Table 1 and on the task precedence in Figure 4, at 13 time units (which corresponds to Figure 5(a)), tasks 1, 3, and 7 are still ongoing, task 2 is finished, and the rest are yet to be executed. Further, at 16 time units (which corresponds to Figure 5(b)), tasks 1 and 7 are still ongoing, tasks 2 and 3 are finished, and the rest are yet to be executed.

3.2.
Subproblem Instances 2 . Section 3.1 provides an intuitive description of the general features of the Φ 2 problem, while Appendix A presents specific details of these features.
This section provides information on the parametric values and categorical types of the features. Let problem Φ 2 with concrete features be referred to as a problem instance. Different problem instances of Φ 2 could be set in different environments, for example, scheduling problems for sea and land battles being expectedly different. Section 3.2.1 provides information on problem instances of Φ 2 , information such as the types of resources utilized by the tasks and the number of new tasks at every SOSA of an environment. Section 3.2.2 defines the functions used to obtain the concrete features of a problem instance given some parameters. Section 3.2.3 gives details of the several computer simulations of the instances of Φ 2 . Section 3.2.4 defines averages useful for describing the dynamic performances and for solving the problem instances, of techniques in T (defined in Section 3.5.2).

Instances of
where 2 is an instance of 2 which, based on (8), is a subproblem of Φ 2 set in the th snapshot of an environment that has number of moments of changes. Note that there could be several simultaneous changes in the environment at a single moment of changes. As a sample notation of subproblem instance, 12 2 7 denotes a subproblem of the instance, labeled 12, of problem Φ 2 set in the seventh snapshot of the environment. Based on the ordered set ⟨⋅⟩ in (12), 12 2 7 also denotes the seventh subproblem of instance labeled 12 of problem Φ 2 . Any environment mentioned in this section is one that sets the 2 problem instance and will be referred to as the environment.
Each task in the environment utilizes only one of the following four types of resources: The constraint on the number of items of any listed resources that can be utilized by all ongoing tasks in the environment is indicated beside the resource label . Note that the availability status (defined in Section 3.1.2) of any of the resources can change from available to occupied (e.g., mortars firing) or vice versa (e.g., mortars returned from combat to depot) in the course of executing a schedule, that is, without the effects of the environmental dynamics. The only effect of the environment on the availability status, being proposed in this paper, is to change this status to broken (e.g., killed infantry soldier) from being available or occupied.
As mentioned in Section 3.1.2, properties of the tasks in the environment are found in Table 1. The environment has 30 original tasks (existing in the environment before it is changed) that have precedence relationship as depicted in Figure 1. A total of ten new tasks are added to the original tasks during the entire dynamics of the environment. New tasks, that occur in a particular SOSA of the environment, have IDs , < ≤ + , where is the maximum task ID prior to this SOSA. For example, if, at the last SOSA, the maximum task ID is 30 and there are four new tasks added at the current SOSA, then these new added tasks will have IDs 31 to 34.
The considered types of changes in the environment are listed in Table 2. The first column contains labels of types of changes, and the second contains the parameters that change simultaneously. For example, type 6 of the changes is a type of change involving changes in the environment where task duration, total number of tasks, and resource availability change simultaneously.
The types of changes are chained to form a sequence of changes. Each type of sequence of changes (TSC) is presented as a column, labeled , in Table 3. The first and last column   of this table contain, respectively, the SOSAs and times at which specific type of changes occur. For example, sequence 3 begins and followed by changes in task duration only (type 0 in Table 2). The next type of change in this sequence is simultaneous changes in task duration, total number of tasks, and resource availability (type 6 in Table 2) that occur at the third SOSA of the environment. The number of moments at which the environment changes state is = 12. Some components of each TSC are types of changes that involve an increase in the total number of tasks. For example,  1  3  4  5  6  7  2  2  4  3  2  1  3  2  1  1  1  1  4 3 1 1 1 1 number of new tasks, in a given SOSA of the environment, could be different. Task precedence networks that correspond to TNIS of 3 , 5 , 6 , and 7 are illustrated in Figures 6(a) to 6(d), respectively, while that of 4 is in Figure 4. They are formed by placing the new tasks that appear in the environment to the original task precedence network, illustrated in Figure 1, and differing in their forms by the locations in which the new tasks are placed.
Some components of the sequences of changes in Table 3 involve change in task duration. The amount of change in task duration is modeled by (11) whose has to be specified. To recapitulate, a 2 instance is defined by a particular sequence (e.g., 3 ) of changes in the environment, subsequence (e.g., 5 ) of increases in the total number of tasks in the sequence, and the value of in (11). Table 5 lists instances of Φ 2 labeled from 1 to 30. With the column of types of TNIS as the reference column, the instances with labels at the left and right correspond to = 3.0 and = 6.0, respectively; instances with labels under have TSC of ; and instances with labels at the same row as have TNIS of . For example, instance 25 has TSC of 1 , TNIS of 7 , and task duration changes modeled by (11) with of 3.0.

Tables as Functions.
Let us define some functions that yield values in Tables 2 and 4 and which are useful in the succeeding sections. Given a problem instance labeled , a TSC can be obtained using Table 5. Given an SOSA of an environment that sets , a change type label type can be determined using in Table 3. Thus, Tables 5 and 3 serve as a function , type = ( , ) .
Using type in Table 2, the environmental attributes that change simultaneously can be determined. For example, instance 3 has TSC of 3 , based on Table 5. Based on the 3 column of Table 3, the change type at the eighth SOSA of the environment is 5; that is, (3, 8) = 5. Based on Table 2, type 5 of changes signifies simultaneous changes in resource availability and the total number of tasks in the environment. Table 5 serves as a function type to map an instance label to type of task-precedence network, type = ( ) . (14) Note that, based on the 3 column of Table 3, the total number of tasks increases for the 3rd occasion at the eighth SOSA of the environment. Further, 3 = (3); that is, instance 3 has TNIS of 3 . The intersection of the third row, which is the third occasion order, and 3 column in Table 4 is two, the number of new tasks appearing at the eighth SOSA of the environment. Thus, the set of Tables 2, 4, and 5 serve as a function to determine the number of new tasks, This function is applicable only when ( , ) yields a type of changes that is 2, 3, 5, or 6 which, based on Table 2, all involve an increase in the total number of tasks. Otherwise, there is no new task at a given th SOSA of the environment. For convenience in the succeeding discussions, let the functions , , and be distributive to vector elements; that is, if For example, for an ordered set of instance labels ⟨1, 7, 13, 19, 25⟩, (⟨1, 7, 13, 19, 25⟩, 4) = ⟨2, 2, 2, 2, 2⟩.

Simulations.
The environment is computer simulated whereby, to reflect a real-life scenario, its resources may be moved from one location of its task to another (e.g., tanks are moved from base camp to a valley); the status of its tasks and resources (enumerated in Section 3.1.2) may be altered (e.g., soldiers killed); and its type of dynamics (e.g., 2 ) is implemented. The environment is simulated for several times where, in each simulation, 14 The Scientific World Journal environment simulation. The difference could be true for all unfinished tasks in all snapshots taken from the first to the th SOSA of all environment simulations. All other features (e.g., number of in-use resources) of the environment are identical across simulations; (2) subproblem instances are sequentially solved (e.g., from 2 0 to 2 ) independently by every technique in T. Further, the environment is simulated, at its th SOSA, before solving the subproblem instance 2 ( could be any given instance label) set in this environment. Note that despite differences between elements of a set of the subproblem instance simulations (due to the addition of different random values to duration of tasks in different simulations), each technique in T solves this same set. This approach will reduce the number of variables to consider in comparing the techniques; (3) The random seed used, by the evolutionary processes of techniques in T, to solve 2 subproblem, 0 ≤ ≤ , set in a simulation of the environment, could differ from that of the other simulations of the environment.

Averages.
Let us discuss the types of averages utilized to analyze the performances of techniques in T. The average E [dSC( , )] differential set coverage of technique over technique will be used to compare the performances of these techniques in solving subproblem instances of Φ 2 , at different values of . The parameter is found in (11) which models the change in duration of tasks in environments that set the instances. The average E [dSC( , )] is defined as where dSC( , , , , ) is the differential set coverage dSC( , ) (defined in (4)) of technique over technique determined for subproblem instance 2 (in instance with label in Table 5) and at the th simulation of this instance. Further, is the number of simulations and is the number of subproblems in Φ 2 , including 2 0 . Furthermore, In( ) is a set of labels of instances in Table 5 that utilize a given value of ; for example, based on Table 5, 2, 3, 7, 8, 9, 13, 14, 15, 19, 20, 21, 25, 26, 27}.
The average E [dSC( , )] differential set coverage of technique over technique will be used to compare the performances of these techniques at different types of changes listed in Table 2. It is defined as where = 30 is the number of all instances in Table 5; Soc( , ) is the set of SOSAs of the environment that sets instance labeled at which type of changes occurs. To exemplify, consider instance labeled 1 which, based on Table 5, has TSC 1 . In this TSC, SOSAs with type = 0 of changes (task duration change only, based on Table 2) are in the set Soc(1, 0) = {1, 2, 3, 5, 9, 12}, based on Table 3. Note that zeroth SOSA is excluded in the definition of the averages.
The average E , [dSC( , )] differential set coverage of technique over technique will be used to compare the performances of these techniques at different simulations of subproblem instances of Φ 2 . It is defined as where all indices are already defined in this subsection. Note that all of the averages are derived from differential set coverage which, as mentioned in Section 2.3, is a measure of the performance of one technique over another. We then take the following: if any of the averages is greater than zero, then technique performs better than technique , in determining solutions to instances of Φ 2 listed in Table 5, over the domain at which this average is taken.

Centroid-Based Adaptation with Random Immigrants (CBAR).
McBAR is an extension of the memory-based EA technique referred to as centroid-based adaptation with random immigrant (CBAR). CBAR was applied in [6] to solve a class Γ 2 of biobjective dynamic RCPS problems with a fixed total number of tasks. Γ 2 is viewed as a sequence of the static RCPS subproblems 2 and each has schedule cost and duration as objectives to minimize where , as in Section 3.1.1, is the index of a snapshot taken at the th SOSA of an environment that sets Γ 2 . From this point to Section 3.3.6, the environment that sets Γ 2 is simply referred to as the environment or the dynamic environment.
Being an implicit memory-based technique (explained in Section 2.2), CBAR utilizes representatives of sets of solutions to past subproblems 2 to compute the solutions to the current subproblem 2 , where < . Each representative is the centroid of genotypes that correspond to nondominated solutions to the 2 problem. A centroid ( ) is a genotype whose th gene is [6] where = 1, . . . , ; is the total number of tasks in the snapshot taken at the th SOSA of the environment; ( ) is a genotype that corresponds to a schedule as a solution to the 2 problem; ( ) is the th gene/ID in the ( ) genotype (defined in (9)); Gnds( ) is a population of genotypes that have one-to-one correspondence to all solutions in the nondominated set Pnds( ) of solutions to the 2 subproblem; and ⌊⋅⌋ is the operator to round its real-value argument to an integer. Note in (23) that the equally-weighted average (mean) of IDs ( ) forms centroid genes.

Centroid Repair.
Centroid formed through (23) may not necessarily be task-precedence-feasible, as defined in Section 3.1.5. If this is so, it will be repaired. Before explaining the repair process, a definition will be presented. Given a genotype , its complementary genotype is less the elements of . For example, let the genotype = ⟨2, 1⟩ and the centroid = ⟨14, 1, 2, 7, 9, 3, . . .⟩ , where numbers to the right of 3 are fixed but not shown for brevity. Thus, = ⟨14, 7, 9, 3, . . .⟩. The repair of centroid is undertaken by successively appending (to be described below) IDs to a genotype which starts from empty. The ID from will be appended to if it satisfies the following appending rule: the appending of ID should result in a new whose corresponding complementary genotype has IDs of tasks that are not predecessors of the task with ID and should not be found in the former . However, if does not satisfy the appending rule, a different ID is randomly picked, which satisfies the appending rule from and then appended to the former . Note that the complementary genotype used in checking the satisfiability of to the appending rule is different from where is picked.
At the start of the repair of centroid , the first element of is attempted to be appended to an empty genotype following the process of appending described previously. Note that based on the explanation above, the element or a different element may be appended to . Next, the second element of is attempted to be appended to (which has one element at this stage). This repair process is continued until the last element of is attempted to be appended to . After this stage, is the repaired version of . The following three paragraphs will provide examples of this repair process.
Consider the centroid in (24) whose repair will be based on the task-precedence network in Figure 4. The abovementioned repair process starts by attempting to append the first gene/ID 14 of to an empty genotype . So let the new = ⟨14⟩ whose complementary genotype = ⟨1, 2, 7, 9, 3, . . .⟩. However, ID 1 in is the ID of the task that is the predecessor (based in Figure 4) of task with ID 14. Thus, the above-mentioned appending rule is violated. A random pick of ID, say 1, from is then undertaken. If 1 is appended to the former (which is empty), the new becomes ⟨1⟩ whose complementary genotype = ⟨14, 2, 7, 9, 3, . . .⟩. Now, no task with ID in the new is a predecessor (based in Figure 4) to the task with ID 1. Thus, the appending of 1 to is allowed, thereby obtaining = ⟨1⟩. Notice that, based on Section 3.1.5, the obtained is task-precedence feasible.
The next step to the repair process is to attempt to append the second gene/ID 1 of the centroid to . Note that 1 is already present in = ⟨1⟩ whose complementary genotype = ⟨14, 2, 7, 9, 3, . . .⟩. Thus, based on the above appending rule, a randomly chosen ID, say 14, is randomly picked from . It is then appended to to obtain = ⟨1, 14⟩ whose complementary genotype = ⟨2, 7, 9, 3, . . .⟩. Now, no task with ID in the last is a predecessor to the task with ID 14. Thus, the appending of ID 14 is allowed, thereby obtaining = ⟨1, 14⟩. Again, notice that this obtained is taskprecedence feasible.
Consider now the third gene/ID 2 of . When it is appended to = ⟨1, 14⟩ yields = ⟨1, 14, 2⟩ whose complementary genotype is = ⟨7, 9, 3, . . .⟩. Now, no task with ID in is a predecessor to the task with ID 2. Thus, the appending of 2 is permitted. Again, notice that the obtained = ⟨1, 14, 2⟩ is task-precedence feasible. The repair process is continued until the last gene of is attempted to be appended to . Based on this sample repair process, the resulting at each appending cycle is taskprecedence feasible. It is straightforward to prove that after is completely appended, it is task-precedence feasible.

Initial Population.
One subalgorithm of CBAR is the creation of an initial population which CBAR evolves to obtain solutions to the 2 , ≥ 0, subproblem (defined in (22)) set in the th snapshot of the environment. For = 0, this initial population is a set of SSGS-generated genotypes. For > 0, it is expressed as where (1) ( ) is a set of centroids, (2) ( ) is the repaired centroid of the population Gnds( ) of genotypes that corresponded to all the nondominated solutions to the 2 subproblem; (3) The starting index of population ( ) is (4) is a given maximum number of centroids in any initial population; (5) Rnd( ) is a set of SSGS-generated genotypes, |Rnd( )| = − | ( )| − 1; (6) is a fixed size of the initial population; (7) Ichs( − 1) is the chosen genotype in Gnds( − 1).
Note that the definition of ( ) in (28) restricts the maximum number of centroids in ( ) to . Recall from Section 2.1.2 that SSGS randomly selects IDs of eligible tasks, in a given RCPS environment, to form genotypes. Hence, these genotypes have a stochastic facet. Thus, the SSGS-generated set Rnd( ) in (26) constitutes the random/diversifying component of the initial population 0 ( ).

16
The Scientific World Journal

Genetic Operators.
Being an EA-based technique, CBAR has an evolutionary process. The crossover and mutation operators in this process are designed to suit our system. The designed crossover operator has the following algorithm. Consider two parent genotypes 1 and 2 for crossover from whom two offspring genotypes 1 and 2 are generated. Each of the parent genotypes is broken into three parts at two randomly selected crossing points labeled and . The crossing point is between gene locations and + 1 and the crossing point is between gene locations and + 1, where 1 < < < and is the length of the parent and offspring genotypes. These crossing points are similar for both parents. First, offspring 1 inherits the first part of parent 2 . Second, it inherits the genes of parent 1 and consecutively places these genes at its gene locations + 1 to . Suppose that the th gene location of 1 is to be filled with a gene, where < ≤ . The genes of parent 1 , located from one to , are consecutively searched for a gene different to all genes in 1 located before location . Once found, the search is stopped and the different gene is placed at location of 1 . Third, the second step is repeated with genes of 1 , located from + 1 to , inheriting from 2 where the search process is applied to all genes of parent 2 . The three parts of 2 are inherited by consecutively using parents 1 , 2 , and 1 in the first to the third steps, respectively. The presented inheriting process has similarities to the PMX crossover [51]. The mutation of a genotype swaps two of its consecutive genes, at a randomly selected gene location with predefined probability, provided that the resulting genotype is task-precedence feasible, as defined in Section 3.1.5.

Schedule Formation.
Let us discuss a method, referred to as Schedule Formation, for determining a schedule from a genotype. Given the genotype = ⟨ 1 , 2 , . . . , , . . . , ⟩ of length as described in Section 3.1.5, its corresponding schedule is formed through the following scheme. Each gene/ID in this genotype is used consecutively, from first to last, to determine the starting time of the task with this ID. At the stage of using the gene/ID , the starting time of task with this ID is set to the earliest time later than or equal to where all terms in this equation are defined in Section 2.1.2, except . After the consecutive usage of genes, the starting times of all tasks with IDs in the genotype are all determined. Based on the definition of schedule in Section 3.1.5, the schedule that corresponds to the genotype is obtained. The cost to implement this schedule is determined through (A.8) and its makespan is the end time of its last task to finish.

The Algorithm of CBAR.
Static subproblems in the dynamic problem Γ 2 (expressed in (22)) are solved by CBAR sequentially, from 2 0 to 2 , where is the number of SOSAs of the environment. To determine solutions to the subproblem 2 0 (set in the original state of the environment), CBAR simply executes SSGS (explained in Section 2.1.2) to generate an initial population 0 (0) of genotypes. CBAR then evolves 0 (0) to obtain the population (0) of evolved genotypes. Then by using the genotypes in (0) for the Schedule Formation method described in Section 3.3.4, the population (0) of baseline schedules is then determined. These schedules are solutions to the 2 0 subproblem. The evolutionary process of CBAR is performed through NSGA-II. In each cycle of this process, NSGA-II creates an offspring genotype population from a parent genotype population. We let NSGA-II use the revised genetic operators described in Section 3.3.3 to create the offspring. The offspring genotypes are feed to the Schedule Formation method to obtain the cost and duration of the schedules that correspond to these genotypes. The Pareto rank and crowding distance for each of these schedules are determined based on its cost and duration [41]. Following the explanation in Section 2.4, NSGA-II uses the Pareto ranks and crowding distances of the schedules in its selection process to obtain its next generation genotype and schedule populations.
To determine solutions to the subproblem 2 , > 0, CBAR starts by determining the centroid ( −1) of genotypes that correspond to the nondominated solutions to the subproblem 2 −1 (set in the last snapshot before the th snapshot of the environment) through (23) then repairs this centroid using R (explained in Section 3.3.1), followed by forming an initial population 0 ( ) through (26), and then evolves this initial population using NSGA-II as described above. The schedules that correspond to the evolved genotypes are the solutions to the subproblem 2 and form a population ( ).
From here onwards, CBAR is designated as the one which generates the initial population 0 (0) and the SSGSgenerated genotype population Rnd( − 1) in (26), at any > 0, by having the SSGS algorithm as the generator of these genotypes and as the one which evolves the initial populations described in this section by having NSGA-II as its evolutionary engine.

Chosen Schedule.
After CBAR has computed the population ( ) of solutions to the 2 subproblem, a schedule is chosen from ( ). This chosen schedule is utilized in the simulation of the environment. When, in this simulation, the environment changes state for the ( + 1)th SOSA, CBAR evolves an initial population 0 ( + 1) to obtain the solutions to the 2 +1 subproblem set in this state of the environment. The initial population contains, based on (26), the chosen genotype Ichs that corresponds to the chosen schedule .
Consider the tasks, of a schedule that corresponds to a genotype in 0 ( + 1) different to Ichs, whose IDs are similar to either on-going or finished tasks of the chosen schedule (corresponds to Ichs) at the instant of the ( + 1)th SOSA of the environment. The starting time of each of these tasks is set equal to its counterpart (task of same ID) in the chosen schedule. This process is performed on all schedules that correspond to genotypes in 0 ( + 1) different to Ichs and also on offspring genotypes in every cycle of the evolutionary process of NSGA-II. At the end of the evolutionary process of NSGA-II, the evolved schedules have copies of the ongoing or finished tasks of the chosen schedule. Note that these evolved schedules, as solutions to the 2 +1 subproblem (set in the current state of the environment), are revisions of the chosen schedule Ichs which is one of the solutions to the 2 subproblem (set in the last state of the environment). Thus, the preservation (copying) of the ongoing and finished tasks on the revised schedules demonstrates CBAR to abide by the schedule revision rule described in Section 2.1.

Inapplicability of CBAR.
Let us now discuss how CBAR becomes inapplicable for solving the dynamic problem Φ 2 which involves change in total number of tasks. Suppose that a static subproblem 2 0 in Φ 2 is set in an environment snapshot that has total number of tasks. For this subproblem, a sample task precedence network is depicted in Figure 4 where original tasks (the only tasks found in the original state of the environment) and additional tasks are represented by numbered rectangles and circles, respectively.
Suppose that the total number of tasks is increased for the first time to = + at the th SOSA of an environment that sets the 2 0 subproblem; > 0. When or more tasks are finished at the th SOSA of the environment, IDs of new tasks can be placed instead of the IDs of finished tasks in each genotype in the initial population 0 ( ) used to solve the 2 subproblem through CBAR. Thereby, the need to change genotype length may be avoided. However, in the case where there is no task finished at the th SOSA of the environment, the genotype must have a sufficient number of genes to accommodate IDs of original and new tasks. Thus, this condition requires the genotype to be implemented with number of genes. Therefore, the nondominated set of solutions (schedules) to the 2 subproblem must correspond to genotypes-forming the set ( )-each of length .
Before continuing our discussion, let us take the notation, to denote the combined genotype populations that correspond to the nondominated sets of solutions to static problems 2 to 2 −1 , where ( ) is defined in (28). Based on the definition of ( ) and on (30), the number of genotype populations combined to form [ ] is limited at most to , the maximum number of centroids used in (28).
Suppose that there is no finished task prior to the th SOSA of an environment that sets the dynamic Φ 2 problem, where 0 < < . Thus, each genotype in the combined populations [ ] has number of genes. Based on (26), repaired centroids and chosen genotype in the initial population 0 ( ) are derived from [ ]. Thus, they each have a length of . Considering that CBAR does not increase the length of each of the genotypes as it evolves them, then it cannot evolve 0 ( ) (whose genotypes have the length ) to produce ( ) whose genotypes each must have the length > .

Mapping of Task ID for Centroid-Based Adaptation with Random Immigrants (McBAR).
Let us now consider how CBAR is revised to overcome its unsuitability to solve the dynamic problem Φ 2 (defined in (8)). Let any environment mentioned in this section be the one that sets the Φ 2 problem and be referred to as the environment or the dynamic environment. Now, suppose that new tasks (not found in the original state of the environment) appear for the first time at the th SOSA of the environment. Following [23], the partial remedy for the unsuitability is to insert new genes, that correspond to the new tasks, to each genotype in the population ( ) which correspond to the nondominated set ( ) of solutions to the static subproblem 2 where ( ) ≤ < with ( ) as defined in (28). The insertions of the new genes to genotypes in populations ( ( )) to ( − 1) are depicted in Figure 7 as downward-pointing arrows. In this figure, the horizontal line is the SOSA of the environment. Further, the th SOSA at which arrow point corresponds to subproblem 2 whose nondominated solutions have corresponding genotypes that are being inserted with the new genes. Based on the range of , subproblems encountered in the gene-insertion process are 2 ( ) to 2 −1 . These subproblems are set in the snapshots of the environment taken, respectively, from ( ) until before the first increase in the total number of tasks.
After the insertion of new genes into each genotype of ( ), ( ) ≤ < , the initial population in (26) is formed and then evolved by CBAR. The evolved genotypes are inputted to the Schedule Formation scheme in Section 3.3.4 to obtain the solutions to subproblem 2 . The technique referred to as gene-inserting CBAR (GIBAR) is CBAR that includes executing the gene-insertion process every time new tasks appear in the environment. This nomenclature will be useful in Section 3.5.2. Now, our previous work [14] showed the performance (solution-searching ability) of CBAR to be degraded by the gene insertion. The adopted resolution of this side effect is to map task IDs in each of the gene-inserted genotypes in ( ) to reduce the discontinuity of IDs along each genotype, where ( ) is the population of all gene-inserted genotypes of ( ). The mapping process is applied for each ( ), ( ) ≤ < . To facilitate ease in succeeding discussions, let ( ) be the 18 The Scientific World Journal set of all ID-mapped gene-inserted genotypes of ( ). Note that ( ) is derived from ( ) which is a set of genotypes that correspond to the nondominated solutions of the 2 subproblem. Further, let the combined population be In addition to the gene-insertion and mapping operation, the centroid repair R in CBAR is revised to further increase the performance of CBAR. The resulting CBAR evolves (as explained in Section 3.3.5) an initial population derived from the ID-mapped genotypes in [ ].
Let S be the computing system used to solve the 2 subproblem, 0 ≤ ≤ , where is a given value. One attribute of any resource in the environment is the ID of task that utilizes it. Thus, in system S, IDs are part of the information about (a) resources, (b) genotypes used in the evolutionary process of CBAR to solve the subproblem, (c) and task-precedence network of tasks in the environment. The insertion of new genes into each genotype in ( ) mentioned above is accompanied by the insertion of new nodes, with IDs of the new tasks, into the precedence network of tasks. The mapping of IDs in each gene-inserted genotype in ( ) mentioned above is accompanied by the mapping of IDs in the node-inserted precedence network of tasks and in the resources utilized by these tasks. When all IDs in system S are transformed by the mapping, system S is referred to as being in a mapped mode.
Under system S in mapped mode, in each cycle of the evolutionary process of CBAR, the ID-mapped genotypes in the [ ]-derived initial population are inputted to the Schedule Formation method. This method then uses the mapped tasks IDs in resources and the precedence network of tasks in the ( − 1)th snapshot of the environment, to obtain schedules with mapped IDs. At the end of the evolutionary process, evolved genotypes have corresponding schedules, with mapped IDs, as solutions to 2 . Let ( ) be the set of evolved genotypes which correspond to the nondominated solutions (schedules) to 2 . Now, copies of the ID-mapped genotypes in ( ) and the node-inserted ID-mapped task precedence network are made. Then IDs in each of the copies are unmapped. The IDunmapped genotypes in ( ) are processed in the Schedule Formation method that utilizes the ID-unmapped nodeinserted task precedence network. Thereby, solutions to subproblem 2 are produced. This production is referred to as solution production.
The copying and the subsequent unmapping of the ID-mapped genotypes are only performed when required, for example, for a decision maker, to view the solutions (schedules) to subproblem 2 . However, the evolved IDmapped genotypes in ( ) are utilized for finding solutions to problems set in the snapshots taken after the th SOSA of the environment. The gene-insertion, mapping/unmapping, initial population of gene-inserted genotypes, and the revision of the centroid repair R are fully described in Sections 3.4.1 to 3.4.4 below, respectively.
Suppose that no new tasks appear from the ( + 1)th to the th SOSA of the environment, where < < and that the second batch of new tasks occurs at the th SOSA of the environment. Recall from the above discussion that gene insertion is performed only due to the occurrence of new tasks. Thus, there is no need to insert genes to each genotype in the populations ( + 1) to ( − 1) which correspond to the nondominated sets of solutions to the 2 +1 to 2 −1 , respectively. The non-insertion of genes is depicted in Figure 7 as no arrows being pointed towards the SOSAs. Now, although the population ( ) of genotypes that correspond to the nondominated solutions to 2 is evolved from the initial population derived from the gene-inserted genotype populations in (31), genotypes in ( ) had not undergone gene-insertion process. Thus, there is no downward-pointing arrow at th SOSA in the figure.
To solve the subproblem 2 , first, an initial population is formed using the populations in where ( ) is defined in (28); ( ) could be a population of evolved ID-mapped gene-inserted genotypes-if ( ) ≤ < -or a population of evolved ID-mapped uninserted genotypes-if < < . Note that the insertion or noninsertion is depicted in Figure 7. Further, for ( ) ≤ < , ( ) is the population of genotypes that correspond to nondominated solutions (schedules) to the 2 subproblem. Furthermore, [ ] is a mix of populations of inserted and uninserted genotypes. Next, the initial population derived from [ ] is evolved by CBAR to obtain a population ( ) of evolved genotypes. Let ( ) ⊆ ( ) be a set of evolved genotypes that if fed to the solution production yield all the nondominated solutions to the subproblem 2 . Note that system S is at mapped mode during this evolutionary process.
Let us now consider the th SOSA of the environment where the second batch of new tasks occurs. Let [ ] be a set of populations ( ), where ( ) ≤ < and each could contain either ID-mapped gene-inserted genotypes or ID-mapped gene uninserted genotypes, a composition similar to that of (32). To solve subproblem 2 , first, the ID-mapped genotypes in [ ] are unmapped to obtain a collection [ ] of populations ( ), ( ) ≤ < , of ID-unmapped genotypes. ID unmapping is also applied to task IDs in resources and in the precedence network of tasks in the ( − 1)th snapshot of the environment. Thus, system S is restored to unmapped mode. Second, new genes that correspond to the second batch of new tasks are inserted into the unmapped genotypes in [ ] to obtain a collection [ ] of populations ( ), ( ) ≤ < of ID-unmapped geneinserted genotypes. This second batch of gene insertion is depicted in Figure 7 as upward-pointing arrows. New nodes, which correspond to the new tasks, are placed into the ID-unmapped task-precedence network. Third, a different which is a collection of populations ( ), ( ) ≤ < , of IDunmapped gene-inserted then ID-remapped genotypes. This mapping is also applied to the task IDs in resources and in the precedence network of tasks in the ( − 1)th snapshot of the environment. Thus, system S is restored to mapped mode once again. Fourth, the collection [ ] of population is used to form an initial population which is then evolved by CBAR to obtain the population ( ) of evolved genotypes which has mapped IDs. Note again that system S is in mapped mode during the evolution of the initial population. Fifth, when required, the evolved genotypes in ( ) are used in the solution production to obtain the non-dominated solutions (schedules) to the 2 subproblem. The successive processes of (a) restoring system S to unmapped mode; (b) insertion of new genes that correspond to new tasks; and (c) reverting S to mapped mode, are repeated every time a batch of new tasks appear in the environment after the first batch. Based on the discussions until this point, system S is always in mapped mode when CBAR evolves initial populations to determine solutions to subproblems set at or after the snapshot of the environment where the first batch of new tasks are found. In addition, the formation of the initial population uses the genotype populations that correspond to sets of nondominated solutions.
CBAR that undergoes all of the above-mentioned innovations is labeled as McBAR. In summary, McBAR is comprised of the following subalgorithms used to solve subproblem 2 set in the th SOSA of the environment: (1) gene insertion, (2) ID mapping operation F, Items (1) to (4) are fully discussed in Sections 3.4.1 to 3.4.3, respectively. The algorithm of McBAR is similar to that of CBAR (described in Section 3.3.5), except that items (1) to (4) are applied to form an initial population and that system S is maintained at mapped mode, that is, item (6). Based on the definition of performance in Section 2.3, McBAR was demonstrated in [14] to perform better than CBAR when the environment undergoes an increase in total number of tasks.

Gene Insertion.
Suppose that new tasks appeared at the th SOSA of the environment and consider also a genotype in a collection [ ] (e.g., defined in (30) to (33)) of genotype populations. The new gene that corresponds to a new task is inserted to the right of and as near as possible to the gene, currently in , that corresponds to the immediate predecessor of the new task. This gene insertion abides by the gene ordering rule (mentioned in Section 3.1.5) of genes in any genotype. It is performed for each of the new tasks.
The complete insertion process of the new genes is applied to every genotype in [ ]. Sample gene insertion is illustrated in Figure 8 where genes are represented by boxed numbers. Genes/IDs 31 to 33 correspond to the new tasks and the rest of IDs to those of original tasks (the only tasks found in the original state of the environment). The gene arrangement in this figure abides by the gene ordering rule that uses the taskprecedence network in Figure 4 with circles that represent tasks 34 to 40 replaced with arcs. Empirical investigations in [14] showed gene insertion to degrade the performance (as defined in Section 2.3) of McBAR. In the research of [16,[19][20][21], gene insertion was shown to be beneficial for searching for high quality solutions to some problems. However, there is no centroid (as defined in (23)) utilized in their strategies, such that the benefit does not necessarily apply to the performance of McBAR.
Let us describe a possible cause of the degradation in the performance of McBAR. It is possible that new tasks in the environment cannot be anticipated; this could happen in practice. It is then sensible to label original tasks in the environment with IDs from one to , the number of original tasks. In this set-up, new genes that correspond to the new tasks must have task IDs (e.g., 31 to 33 in Figure 8) greater than . Now, as exemplified in Figure 8, the insertion of the new genes brings about a large discontinuity of task ID values along a gene-inserted genotype. As demonstrated in [14], this large discontinuity is a factor in the degradation of the performance of McBAR; that is, the large ID discontinuity is a gene insertion side effect.

Resolution of Effects.
Before proceeding to discuss the resolution of the gene insertion side effect, let us define the precedence order of a task. This order is the maximum number of directed links that connect the task to the start of a given task precedence network following the reversed direction of the links. For instance, task 16 in Figure 4 is of seventh precedence order.
The insertion side effect was resolved in [14] by mapping IDs of tasks, that belong to a similar precedence order, to unique values that are as close to each other as possible. Let the function F( ) represent the ID-mapping operation, where is the ID to be mapped. For example, second precedence ordered tasks in Figure 4 such as 4,6,7,8,9,10,12,14, and 38 are mapped to themselves, except task 38 which is mapped to 15. As empirically demonstrated in [14], the mapping F reduces, with high likelihood, the abrupt change of IDs along a gene-inserted genotype. Note that although a task ID may be transformed, the task that it represents remains the same. For example, the starting time of and the type of resource utilized by the task are not affected by F, except the task ID in the utilized resource. Further, aside from mapping task IDs in genotypes and resources, node IDs in an associated task precedence network are also mapped by F.  (33)) or a population of uninserted ID-mapped genotypes (e.g., ( )s in (32)). As mentioned above, genotypes in ( ) correspond to the nondominated solutions to the 2 subproblem. The collection [ ] is used to form an initial population,

Initial Population for a Current Static
where (1) ( ) is a set of centroids, (2) ( ) is the M-repaired (described below) centroid of ( ) ∈ [ ]; (3) Rnd( ) is the set of genotypes generated through SSGS which utilizes the ID-mapped and could be nodeinserted precedence network of tasks in the ( − 1)th snapshot of the environment. |Rnd( )| = − | ( )| − 1. Being produced through SSGS (which endows stochasticity to its produced genotypes), the elements of Rnd( ) are referred to as random immigrants. As noted in Section 2.2, memory-based EA approaches need to diversify the solutions at some stages of their evolutionary cycles. In McBAR, this diversification is implemented through the random immigrants, thereby justifying the inclusion of Rnd( ) in (34); (4) is a fixed size of the initial population;

Centroid
Repair. The centroid components of (35) could be task-precedence infeasible based on the ID-mapped node-inserted precedence network of tasks in the ( − 1)th snapshot of the environment. McBAR repairs taskprecedence infeasible centroids using a function M different to R of CBAR. The M centroid repair function perturbs the centroids as little as possible such that, intuitively, their being centroids will diminish least.
Recall from Section 3.3.1 that the ID of a centroid is allowed to be appended to a genotype if it satisfies the appending rule. Otherwise, the function R of CBAR randomly picks a different ID , that satisfies the appending rule, from = − and then appends this to , where is the complementary genotype of . Now, the function M of McBAR differs from R in the following. Instead of randomly picking an element of , the element of that is nearest in value to , and satisfies the appending rule, is the one appended to . If two IDs from are equidistant to and satisfy the appending rule, one of these is randomly picked for appending to . The appending rule uses the node-inserted ID-mapped precedence network of tasks in the ( − 1)th snapshot of the environment if in (34) is greater than or equal to which is the SOSA of the environment at which new tasks appear for the first time. If < , the appending rule uses the precedence network of original tasks.
Let the first three genes of form the vector = ⟨14, 1, 2⟩ and the last be treated as vector. The last , produced through the M function, has a distance of 11 to , while = ⟨1, 14, 2⟩, produced (as mentioned in Section 3.3.1) through the R function, has a distance of 18.38 to . This result supports the lesser perturbation effected by M than by R on repairing centroids. (23) is computed using the mean which is one type of tendency in statistics [52]. It is of interest to determine the performance of McBAR when the centroid is computed using a median, in which case the centroid is renamed as medoid and McBAR as MedianBAR. The th gene of a medoid is

Other
Techniques. This section provides information on techniques, other than CBAR, McBAR, and MedianBAR, that are utilized to legitimize some components of McBAR, that is, to achieve goal 1 in the Introduction.
3.5.1. EDA on Φ 2 Problem. The EDA algorithm described in Section 2.5 is innovated, in order to solve problem Φ 2 , and consequently labeled as EDA/Φ 2 . Recall from Section 3.1.1 that subproblem 2 0 is set in the original state of a dynamic environment. With = 0, EDA/Φ 2 determines a set of solutions to 2 through the following steps, starting with EDA cycle = 0.
(1) The probability matrix in (6) is relabeled as Pm ( ) to indicate the th SOSA of the environment that sets the problem which it is being used to solve. It is set to have equal entries of 1/ ; that is, Pm ( ) = [1/ ], where is the total number of tasks at the th snapshot of the environment. This step is the equivalent of EDA/Φ 2 to step 1 in Algorithm 2.
(2) The probability matrix Pm ( ) is then sampled, following the sampling scheme in Section 2.5, to form a population ( ) of genotypes. This step is related to step 2 in Algorithm 2. where ⌈⋅⌉ is a round-up operator; 0 < ≤ 1; and is a predefined constant referred to as percent of population. This selection is performed following the scheme described in Section 2.4 and is based on the Pareto rank and crowding distance of schedules in ( ). This step is related to step 3 in Algorithm 2.
(6) These sel selected genotypes are included to − sel SSGS-generated genotypes to form a new population +1 ( ) of size . Note that, as explained in Section 3.3.2, SSGS-generated genotypes add diversity to the population in which they are included. The inclusion of the SSGS-generated genotypes is intended to remedy the loss of diversity of the population produced by EDA as the evolutionary cycles of EDA progress [44]. (7) A new probability matrix Pm +1 ( ) is estimated from the new population +1 ( ). Following [43], the probability matrix to be used in the next step is where 0 < ≤ 1 is a chosen value and is referred to as a learning rate. This equation allows the information, embedded in Pm ( ), from the last cycle to be carried over (learned) to the next EDA cycle. This step is related to step 5 in Algorithm 2. When there is no increase in the total number of tasks at the th SOSA of the environment, > 0, step 1 is replaced as follows. Let where ( ) is defined in (28) and Gnds( ) is a set of genotypes that correspond to all nondominated solutions in the set ( ) of solutions to subproblem 2 . From [ ], the probability matrix Pm ( ) is estimated. In this way, solutions (e.g., Gnds( )) to subproblems set in past snapshots are utilized to search for solutions to the current ( th) snapshot of the environment.
If there is an increase in the total number of tasks, say at the th SOSA of the environment, > 0, step 1 is replaced as follows. New genes that correspond to new tasks which appear at the th SOSA are inserted into all genotypes in [ ] of (38) following the scheme in Section 3.4.1. From the gene- is the total number of tasks at the th SOSA. The algorithm of EDA/Φ 2 above implies that any genotype it processed has a fixed length during its evolutionary process. Thus, following the discussion in Section 3.3.7, the gene insertion is a legitimate step.

Techniques.
As mentioned in Introduction, goal 1 in this paper is to legitimize some subalgorithms of McBAR. These subalgorithms are items 2 to 5 of those enumerated in Section 3.4. The legitimization is based on the idea that if technique differs from technique in regard to some components, and if, in general, performs better than 22 The Scientific World Journal in solving a given set of problems, then the components of distinct from are legitimate for to solve this set of problems. Consider a sample case of the legitimization. Both McBAR and EDA/Φ 2 (described in Section 3.5.1) individually solve some instances of problem Φ 2 . Note that McBAR uses EA operators while EDA/Φ 2 uses distribution sampling to produce offspring. If in solving most of these instances, McBAR performs better than EDA/Φ 2 , then the EA operators utilized in McBAR are legitimate components of McBAR to solve these instances. To accomplish the legitimization goal, a set T of techniques is formed comprised of McBAR and other techniques utilized to legitimize some subalgorithms of McBAR. These other techniques are as follows.
(1) Centroid-based adaptation with minimal repair (CBAM) differs from GIBAR (described in Section 3.4) only in using M instead of R to repair centroids. Based on the descriptions in Sections 3.3 and 3.4 of the subalgorithms of CBAR and McBAR, respectively, GIBAR differs from McBAR in using R, in the mapping F of task IDs in genotypes, and in the maintenance of system S at mapped mode. Considering that CBAM differs from GIBAR by using M which is also used by McBAR, then it differs from McBAR in the mapping F and in the maintenance of system S at mapped mode. Implied in Section 3.4, the application of the mapping F causes the maintenance of the system at mapped mode. Considering this catalysis, the fundamental difference between CBAM and McBAR is only in regard to F. This difference will be used as the basis of legitimizing the F in McBAR.
(2) Mapping of task IDs for centroid-based adaptation with stochastic repair (McBAS) differs from McBAR only in using random centroid repair R instead of the minimal centroid repair M. This difference will be used as the basis of legitimizing the M in McBAR.
(3) Mapping of task IDs for centroid-based adaptation (McBA) differs from McBAR in randomly selecting genotypes from the set Gnds( − 1) of genotypes that correspond to the nondominated solutions to the last subproblem 2 −1 , instead of generating genotypes through SSGS, to form the Rnd( ) component of the initial population in (34), where corresponds to the current subproblem 2 being solved. This difference will be used as the basis of legitimizing the random immigrant component (SSGS-generated genotypes) in McBAR.
(4) Mapping of task IDs for centroid-based adaptation with medoids (MedianBAR) differs from McBAR only in using the median (defined in (36)) instead of the mean to compute for the centroid ( ) in (34). This difference will be used as the basis of legitimizing the process of taking the mean in McBAR.
(5) EDA/Φ 2 is defined in Section 3.5.1 and differs from McBAR in its use of sampling and the estimation of a probability matrix (described in Section 2.5), instead of using mutation and crossover operators, to form the next generation offspring in its evolutionary process. Note that, based on Section 3.5.1, EDA/Φ 2 does not apply the mapping F function, maintain system S in mapped mode, and repair the centroid using M. Based on Section 3.4, these subalgorithms On the other hand, EDA/Φ 2 uses the probability matrix as memory, based on the revised step 1 in Section 3.5.1. Thus, McBAR fundamentally differs from EDA/Φ 2 in the use of EA operators and the centroid. These differences will be used as the basis of legitimizing the use of the EA operators and the centroid in McBAR. (6) NDS of last population (NDLPOP) differs from GIBAR in randomly selecting genotypes, from the abovementioned set of genotypes Gnds( − 1), to form the ( ) component of the initial population in (26). Note that the resulting ( ) is no longer a set of centroids but rather of genotypes of Gnds( −1). Thus, NDLPOP differs from McBAR in being an explicit memory-based approach. This difference will be used as the basis of legitimizing the implicit memorybased approach of McBAR.
It is also of interest to compare the performance of McBAR and the previously enumerated techniques to those of the following techniques.
(7) Random immigrants (RI) creates an initial population for NSGA-II to evolve through SSGS. The length of each genotype in this initial population is equal to the total number of tasks right after the environmental change of state. This technique differs from other techniques in T in applying no rule in creating its initial population, except the rules followed by SSGS. The parametric values of EDA/Φ 2 and other techniques in T are listed in Tables 6(b) and 6(a), respectively. These values enable each of the techniques to yield high quality solutions to a significant problem instance of Φ 2 and are determined through an approach, described in our other work [53,54]. In our preliminary investigations, the performances of the techniques in T other than EDA/Φ 2 are high The Scientific World Journal 23 with evolutionary processes that have selection rate of 0.5. Further, the performances of all techniques in T are found to stabilize before the 300th generation of the evolutionary processes in these techniques. Thus, the evolutionary processes in the techniques are terminated at this value. The approach to determine the tabulated parametric values of EDA/Φ 2 is explained in Section 4.1.

Results and Discussions
Let us explore the results of solving problem instances of Φ 2 , whose labels are listed in Table 5, by each technique in T (defined in Section 3.5.2). Section 4.1 presents the results of determining some performance-enhancing parametric values of EDA/Φ 2 . Note that some EA-parametric values of techniques in T other than EDA/Φ 2 were determined in our other work [53,54]. Section 4.2 provides information on the relative performances of the techniques with respect to the parameter of the amount of change in duration of tasks in environments that set the instances. Based on these relative performances, the subalgorithms of McBAR are legitimized in Section 4.3. Section 4.4 presents the relative performances of the techniques with respect to the type of changes that occur in the environments. Section 4.5 discusses the dynamics of the relative performances with respect to the SOSA of the environments. For brevity, let the environments that set the instances of Φ 2 whose labels are listed in Table 5 be referred in this section as the environments.

4.1.
/Φ 2 Parametric Values. The values of the learning rate (defined in item 7) and the percentage (defined in Item 5) at which the performance of EDA/Φ 2 is boosted are determined as follows. The parameters and are restricted to take values in the range 0.1 to 0.9 with a 0.1 interval. For each pair of permissible and values, EDA/Φ 2 solves a significant instance of Φ 2 defined in our other work [53,54]. Then a performance as defined in terms of hypervolume [55] is computed from the solutions obtained by EDA/Φ 2 that uses the pair in solving the instance. The performances that correspond to all of the pairs are plotted in Figure 9. This figure illustrates that the performances are generally high at greater than 0.6 and greater than 0.4. Among the pairs, EDA/Φ 2 performs best at and each being 0.8.

Relative Performance with respect to Task Duration
Change. Let us now discuss the influence of task duration changes on the average E [⋅] (defined in (19)) relative performances of techniques in T in solving problem instances of Φ 2 . For brevity, let the average E [⋅] be referred simply as performance in this and the next subsection.  E 3.0 [dSC(GIBAR, )] > 0 only when technique is either NDLPOP, RI, or EDA/Φ 2 . Thus, GIBAR performs better than NDLPOP, RI, and EDA/Φ 2 . Note that the degree of performance is based on the definition in Section 3.2.4. Succeeding rows in this table demonstrate that the performance of CBAM is inferior only to that of variants (defined in Section 3.5.2); the performance of NDLPOP is superior only to that of EDA/Φ 2 and RI; the performance of RI is superior only to that of EDA/Φ 2 ; the performance of EDA/Φ 2 is inferior to all other techniques; the performance of McBA is inferior to that of other variants and superior to that of nonvariants; the performance of McBAR is inferior to that of MedianBAR only; the performance of McBAS is inferior to that of McBAR and MedianBAR only; and the performance of MedianBAR is superior to that of all other techniques. Note however that the degree of MedianBAR's superiority to McBAR is small, E 3.0 [dSC(McBAR, MedianBAR)] = 0.01, that is, near zero. Data in this table showed variants to be superior to nonvariants. Table 7(b) presents the performances of technique over technique which are found at the first column and first row of this table, respectively. This average is determined by the techniques in solving problem instances of Φ 2 that have task duration changes parameterized by = 6.0 through (11). Table 7(b) illustrates that the performances between the techniques are generally similar to those of Table 7  The Scientific World Journal   The superiority in performance of McBAR to NDLPOP (Item 6) legitimizes its use of an implicit memory-based approach since it differs from NDLPOP on this type of approach. Its superiority in performance to EDA/Φ 2 (Item 5) legitimizes its combined use of EA operators and centroids since it fundamentally differs from EDA/Φ 2 on these components. Table 8 lists the average number of CPU cycles, on identical computing machines, required by techniques in T to determine solutions to Φ 2 problem instances whose labels are listed in Table 5. This average is taken over a similar domain as in the average E [⋅] in (19). Based on the column with the heading = 3.0, nonvariants require lesser CPU cycles to determine the solutions than variants. Among the variants, MedianBAR requires the most number of CPU cycles to determine the solutions. This last result is expected since the computation of the median is more algorithmically complex than the computation of the mean based on (36) and (23), respectively. The relationships of the numbers of CPU cycles for the column heading = 3.0 are also true for the column heading = 6.0. Thus, the relationships are not affected by the two values of . McBAR requires less computational expense than Medi-anBAR to determine the solutions to all problem instances in Table 5; it has superior (as illustrated in Table 7(b)) performance to MedianBAR in solving problem instances in Table 5 whose task duration changes are parameterized by = 6.0 and it has superior (as illustrated in both Tables 7(a) and 7(b)) performance to all techniques, other than itself and MedianBAR. Despite the inferior (as illustrated in Table 7(a)) performance of McBAR to MedianBAR in solving problem instances in Table 5 whose task duration changes are parameterized by = 3.0, these findings show McBAR to be the most versatile technique among all the techniques in T.

Relative Performance with respect to Type of Changes.
Let us now explore the influence of the type of changes in the environment on the average E [⋅] (defined in (20)) relative performances of techniques in T in solving problem instances of Φ 2 set in the environment. For brevity, let the average E [⋅] be referred to simply as performance in this subsection.
Tables 9 to 11 present the performances E [dSC( , )] where is the technique name under the column heading "technique" and is the technique name in the table heading. Further, the integer under the column heading "type" is the change type label enumerated in Table 2.
In the first row of Table 9 Table 2). CBAM, NDLPOP, and RI also perform worse than variants at change type 0 based, respectively, on the second to the fourth rows of the type 0 group of rows.
The performance of the nonvariants, in the type 5 group of rows in Table 10, is inferior to that of the variants when the change in the environment is of type 5 (simultaneous changes in task duration and number). The degree of inferiority is of an approximately similar degree as to that which is found when the change in the environment is of type 0. The performance of nonvariants, in type 1 group of rows in Table 9, is inferior to that of variants when the change in the environment is of type 1 (change in resource availability). This

26
The Scientific World Journal  The type 2 group of rows in Table 9, type 3 group of rows in Table 10, and type 6 group of rows in Table 11 demonstrate that the performance of the nonvariants is inferior to that of the variants when the changes in the environment are of types 2, 3, and 6, respectively. This inferiority is greater when the change in the environment is of type 1. Note that change types 2, 3, and 6, based on Table 2, involve change in the total number of tasks. The above results manifest the superiority of variants over nonvariants when the changes in the environment involve change in total number of tasks, that is, change types 2, 3, 5, and 6. However, the variants in the type 4 group of rows in Table 9 perform less well than CBAM, NDLPOP, and RI when the change in the environment is of type 4 which, according to Table 2, denotes simultaneous changes in task duration and resource availability, for example, a type of changes that does not involve change in the total number of tasks. Tables 9 to 11 Figure Arrangement. The average E , [dSC( , )] is illustrated in Figures 10 and 11 for some combinations of its indices and , related as th subproblem of instance listed in Table 5, where 0 ≤ ≤ and is defined in Section 3.2.1. In Figure 10(a), the heading of the block of white colored small squares is the name of technique , called basis technique (e.g., McBAR). Further, the headings over colored blocks are names of techniques denoted by . For example, the middle block of Figure 10 In Figure 10(a), row of blocks at similar level as the label at the left of this figure correspond to TSC listed in Table 5, where 1 ≤ ≤ 3. For example, the middle blocks correspond to 2 . A colored block in the figure is denoted by the label which is of similar level as this block and by the heading under which this block is found. For example, 2 -RI block is the middle block under the RI column heading. Blocks at the same level as the label also correspond to an ordered set 3.0 of Φ 2 instances listed in Table 5 where For example, the middle blocks correspond to 3.0 2 . Inside a block at the same level as the label, the rows from bottom to top correspond to elements of 3.0 , respectively. For example, the bottom to top rows of 2 -RI block correspond to instances 2, 8, 14, 20, and 26, respectively.
The horizontal coordinate of each small square in each block corresponds to the th SOSA of the environment that sets problem instance in 3.0 . Continuing the example, the fourth small square from the left on the third row of the 2 -RI block corresponds to the fourth SOSA of the environment that sets instance 14 (the third element of 3.0 2 ); that is, it corresponds to problem instance 14 2 4 (refer to Section 3.2.1 for notation). The colorbar at the furthest right of the figure maps colors in the squares to values. In the example, the color of the small square that corresponds to problem instance where (13) is used to obtain the last line. This result implies that the rows in the vertical strip all correspond to change type 2 which, based on Table 2, denotes an increase in number of tasks. Now, using (16) and (40), we obtain a compact form, Following a similar approach and using (17), ( 3.0 2 , 4) = ⟨3, 4, 5, 6, 7⟩. In general, given a vertical strip at SOSA in a block at level, the types of changes and size of increase in the total number of tasks in environments that correspond to the bottom to top rows of this strip can be determined from ( 3.0 , ) and ( 3.0 , ), respectively. Using (18), ( 3.0 ) = ⟨ 3 , 4 , 5 , 6 , 7 ⟩ which implies that the bottom to top rows correspond to the subproblems constrained by the task-precedence networks 3 to 7 , respectively. Figures 10(b) and 10(c) differ from Figure 10(a) only on their corresponding basis techniques, which are McBA and McBAS, respectively. For example, the fifth small square on the second row of the 3 -McBAR block in Figure 10(b) corresponds to E 5,9 [dSC(McBA,McBAR)] where index 9 is the instance label that corresponds to the second row, that is, the second element of 3.0 3 . Note that, based on Table 5, all of Φ 2 instances in 3.
instead of 3.0 1 , 3.0 2 , and 3.0 3 , respectively. Note that the rows from the bottom to the top in blocks of Figure 11(a) to 11(c) correspond to Φ 2 instance labels in 6.0 1 to 6.0 3 , respectively. Based on Table 5, all of Φ 2 instances in sets 6 (13), (1, 1) = 0 which denotes a type of change in the environment that only involves a change in task duration, based on Table 2. This result implies that McBAR performs better than NDLPOP in solving the first subproblem of instance 1 set in the environment that undergoes only changes in task duration at its first SOSA.
The first to third vertical strips from the left of 1 -NDLPOP block show that E , [dSC(McBAR, NDLPOP)] > 0, ∀ , 1 ≤ ≤ 3, and ∀ ∈ 3.0 1 (which corresponds to one vertical strip as explained above). This result implies that McBAR performs better than NDLPOP in solving each of the first to third subproblems of instances in 3.0 1 . Considering that ( , ) = 0, ∀ , 1 ≤ ≤ 3, and ∀ ∈ 3.0 1 , then the instances are set in environments that undergo changes in task duration at each of their first to third SOSA.
The fourth vertical strip of the 1 -NDLPOP block expresses an abrupt increase in the superiority of performance of McBAR over NDLPOP in solving the fourth subproblems of instances ∈ 3.0 1 . As ( , 4) = 2, based on Table 2, the instances are set in environments that undergo changes in the total number of tasks at their fourth. The fifth to seventh vertical strips of the block show that the superiority of McBAR over NDLPOP generally continues till the seventh subproblems of instances in 3.0 1 . However, the first and third rows from the bottom of the eighth vertical strip of the 1 -NDLPOP block show that McBAR is inferior to NDLPOP in solving the eighth subproblems of instances 1 and 13 (which correspond to first and third rows, resp.). As  Table 2) the instances are set in environments that undergo simultaneous changes in task duration and resource availabilities at their eighth SOSA. The first and third rows from the bottom of the ninth vertical strip of the block show that the inferiority continues to the ninth subproblems of instances 1 and 13 set in environments that undergo changes (types 0 = (1,9) and 0 = (13,9)) in task duration at their ninth SOSA.
As implied above, McBAR is superior in performance to NDLPOP in solving the first to third subproblems of instances 1 and 13 set in environments that undergo only changes in task duration at each of their first to third SOSA. Thus, McBAR cannot be expected to be inferior to NDLPOP in solving the ninth subproblems of instances 1 and 13 set in the environments that similarly undergo changes in task duration at their ninth SOSA. However, despite the similarity in the type of changes, the inferiority continues from the eighth to the ninth SOSAs of the environments. This suggests inertia in the performance of McBAR.
In contrast, the second, fourth, and fifth rows from the bottom of the eighth and ninth vertical strips of 1 -NDLPOP block express the continuity of superiority in the performance of McBAR against NDLPOP in solving the eighth to the ninth subproblems of instances 7, 19, and 25 (which correspond to the rows, resp.) set in environments that undergo simultaneous changes in resource availability and task duration (at the eighth SOSA) and sole change in task duration (at the ninth SOSA), respectively.
Based on the tenth to the 12th vertical strips of 1 -NDLPOP block, McBAR is generally superior in performance to NDLPOP in solving the tenth to the 12th subproblems of all instances ∈ 3.0 1 . Each of the environments that set the instances undergoes changes (types 5 = ( , 10) and 3 = ( , 11)) that involve an increase in its total number of tasks at its tenth and 11th SOSA and undergoes changes (type 0 = ( , 12)) in task duration at its 12th SOSA.
Referring back to the fourth vertical strip of the 1 -NDLPOP block, the small squares from bottom to top of this strip correspond, respectively, to fourth subproblems of instances in ⟨1, 7, 13, 19, 25⟩ (= 3.0 1 ) set in environments that undergo, at their fourth, increases in the total number of tasks by ⟨3, 4, 5, 6, 7⟩ (= ( 3.0 1 , 3)), respectively. Based on the colors in the strip and their corresponding increases in the total number of tasks, the superiority in performance 30 The Scientific World Journal of McBAR over NDLPOP in solving the subproblems is not affected by the size of the increase in the total number of tasks at the fourth of the environments that set the instances in 3.0 1 . Based on the discussions in Section 3.2.1, the subproblems are constrained by task precedence networks illustrated in Figures 6(a), 4, and 6(b) to 6(d), respectively. Thus, the superiority in performance of McBAR to NDLPOP is not affected by the type of network that constrained the subproblems. An analogous conclusion can be drawn from the sixth vertical strip of the block, whose bottom to top rows correspond to ⟨2, 4, 3, 2, 1⟩ (= ( 3.0 1 , 6)) increases in the total number of tasks, respectively, and from the tenth vertical strip whose bottom to top rows correspond to ⟨2, 1, 1, 1, 1⟩ (= ( 3.0 1 , 10)) increases in the total number of tasks, respectively. Note, however, that the networks are related by being derived from the original network (illustrated in Figure 1) as explained in Section 3.2.1. Unlike the case of the 1 -NDLPOP block, the abrupt increase in the superiority in performance of McBAR to NDLPOP is expressed by the third vertical strip of the 2 -NDLPOP block. The bottom to top rows of this strip correspond (as explained in Section 4.5.1) to the instances in 3.0 2 , respectively, set in the environments that undergo increases in the total number of tasks at their third SOSA.
Based on the rows of the eighth vertical strip of the 2 -NDLPOP block, McBAR is generally inferior in performance to NDLPOP in solving the eighth subproblem of all instances ∈ 3.0 2 . Each of the environments that set the instances undergoes simultaneous changes (type 4 = ( ,8)) in resource availability and duration of tasks at its eighth SOSA. Unlike the case of the 1 -NDLPOP block, based on the ninth vertical strip of 2 -NDLPOP block, this inferiority is not continued to the next (ninth) SOSA of the environments; each undergoes changes (type 6 = ( , 9)) that involve an increase in the total number of tasks. Based on the ninth to 12th vertical strips, McBAR remains superior in performance to NDLPOP at the ninth to 12th SOSAs of the environments.
In the 3rd vertical strip of the 2 -NDLPOP block, the small squares from bottom to top correspond, respectively, to 3rd subproblem of instances in ⟨2, 8, 14, 20, 26⟩ (= 3.0 2 ) set in environments that undergo, at their 3rd SOSA, increases in the total number of tasks by ⟨3, 4, 5, 6, 7⟩ (= ( 3.0 2 , 6)), respectively. Based on the colors in the strip and their corresponding increases in the total number of tasks, the superiority in performance of McBAR over NDLPOP in solving the subproblems is almost constant with respect to the size of the increase in the total number of tasks. Following the explanation in the last subsection, this superiority is also almost constant with respect to the types of task precedence networks that constrain the subproblems. Analogous conclusions can be drawn from the sixth, ninth, and tenth vertical strips of the 2 -NDLPOP block.

4.5.4.
3 -NDLPOP Block. The first two vertical strips of the 3 -NDLPOP block express the dynamics, of the superiority in performance of McBAR over NDLPOP, similar to that expressed by the first two vertical strips of the 2 -NDLPOP block. The third to fifth rows from the bottom of the fifth vertical strip of the 3 -NDLPOP block illustrate that McBAR is inferior to NDLPOP in solving the fifth subproblems of instances 15, 21, and 27 set in environments that undergo change types ⟨4, 4, 4⟩ = (⟨15, 21, 27⟩, 5) which are simultaneous changes in task duration and resource availabilities (based on Table 2) at their fifth SOSA. This inferiority continues to be expressed at the third to the fifth rows from the bottom of the sixth and seventh vertical strips of the 3 -NDLPOP block where, correspondingly, the environments undergo change types (⟨0, 0, 0⟩ = (⟨15, 21, 27⟩, 6) and ⟨0, 0, 0⟩ = (⟨15, 21, 27⟩, 7)) which are changes in task durations at their sixth and seventh SOSAs, respectively. This result suggests inertia on the performance of McBAR over NDLPOP.
The bottom row of the eighth vertical strip of the 3 -NDLPOP block also shows the inferiority in performance of McBAR over NDLPOP in solving the subproblem of instance 3 set in the environment that undergoes, at its eighth SOSA, simultaneous changes ( (3, 8) = 5) in resource availability and the total number of tasks. The bottom rows of the ninth to 11th vertical strips express the continuity of this inferiority in solving the ninth to 11th subproblems of instance 3. All other unaccounted squares in the 3 -NDLPOP block shows the superiority in performance of McBAR over NDLPOP in solving subproblems that correspond to these squares.
In the third vertical strip of the 3 -NDLPOP block, the small squares from bottom to top correspond, respectively, to the third subproblems of instances in 3.0 3 set in environments that undergo, at their third SOSA, increases in the total number of tasks by ⟨3, 4, 5, 6, 7⟩ (= ( 3.0 2 , 6)), respectively. Based on the colors in the strip and their corresponding increases in the total number of tasks, the superiority in performance of McBAR over NDLPOP in solving the subproblems is almost constant with respect to the size of the increase in the total number of tasks. Based on the explanation in Section 4.5.2, this superiority is also almost constant with respect to the types of task precedence network that constrain the subproblems. Analogous conclusions can be drawn from the 12th vertical strips of the 3 -NDLPOP block.

Other Blocks.
Let us now consider the remaining colored blocks in Figure 10(a). The 1 , 2 , and 3 -RI blocks are generally similar in color profiles to those of the 1 , 2 , and are generally similar to the dynamics of McBAR's superiority over NDLPOP.
The notable exemptions to the last conclusion are as follows. The small squares from the bottom to the top of the first and second vertical strips of the 2 -CBAM, 3 -CBAM, 2 -NDLPOP, 3 -NDLPOP, 2 -RI, and 3 -RI blocks show McBAR as equally, slightly, and highly superior over CBAM, NDLPOP, and RI, respectively. A similar exemption can be drawn on the performances of McBAR over CBAM, NDLPOP, and RI at the small squares from the bottom to the top of the first to the third vertical strips of the 1 -CBAM, 1 -NDLPOP, and 1 -RI blocks, respectively. Following similar reasoning as in Section 4.5.2, the types of changes that correspond to the squares are only on task durations.
The  Figure 10(a) and blocks under similar headings in Figure 10(b) are, respectively, generally similar which implies that the dynamics of performance, expressed in these blocks, of McBA (the basis technique) over NDLPOP, RI, CBAM, and McBAS are generally similar to those of McBAR. Note that although the dynamics are generally similar, the magnitudes in these dynamics are generally different.
Note that the basis technique in Figure 10(c) is McBAS. The color profiles between blocks under NDLPOP, RI, and CBAM headings in Figure 10(a) and blocks under similar headings in Figure 10(c) are, respectively, generally similar which implies that the dynamics of performance, expressed in these blocks, of McBAS over NDLPOP, RI, and CBAM are generally similar to those of McBAR.
Note that as the differential set coverage dSC ( , ) in (4)  The dynamics of performances expressed in blocks of Figure 10 are, respectively, generally similar to those expressed in blocks of Figure 11. Considering that instances corresponding to rows in blocks of Figures 10 and 11 correspond, respectively, to = 3.0 and = 6.0, as discussed in Section 4.5.1, then the dynamics of the performances of the included techniques are generally similar on the two amounts of .

Conclusion and Future Work
In this paper, we investigated multiobjective dynamic resource-constrained project scheduling problems involving an increasing number of tasks. We presented an innovative Evolutionary Algorithm-based approach, called mapping of task ID for centroid-based adaptation with random immigrants (McBAR), and applied this to search for optimal schedules as solutions to the problems. We also presented techniques, other than McBAR, to legitimize subalgorithms of McBAR based on the quality of solutions they obtained in solving the problems.
Compared to the other techniques, McBAR was found to obtain a generally better quality of solutions to the problems. This superiority generally prevails over various types of changes in the environment in which the problems are set. We also supported the legitimacy of several subalgorithms of McBAR through this superiority.
We investigated the dynamics of the performance of McBAR and the other techniques in determining solutions to the problems influenced by various types and sequences of environmental changes. McBAR is found to be generally superior in performance to the other techniques after the first increase in the number of tasks in the environment. Its performance becomes inferior to some of the other techniques when there are simultaneous changes in resources availability and task duration in the environment. This inferiority is generally continued, but diminishing, on few the succeeding environmental changes that do not involve simultaneous changes in resources availability and task duration. This dynamics manifests inertia in McBAR's performance under the influence of environmental dynamics. McBAR's performance does not manifest dependency on the number of new tasks in the environment and on the placement of these new tasks in the task precedence network that constrains the problems. This general stability of McBAR's performances demonstrates the relevance of McBAR for solving the types of dynamical problems investigated in this paper.

32
The Scientific World Journal In the future, we plan to model McBAR's performance in solving the problems through design of experiments.