# A Multitime Window Parallel Scheduling System for Large-Scale Offshore Platform Project

Authors: Boxin Yang; Wenhao Yin; Jinghua Li; Qinghua Zhou
Journal: Wireless Communications and Mobile Computing
 (2022)

---

## Abstract

In order to complete the offshore platform project scheduling intelligently, an improved scheduling optimization system based on the parallel genetic algorithm was proposed. An optimal model for the large-scale offshore platform project scheduling problem (LSOPPSP) was built and produced the mathematic model of LSOPPSP, based on the characteristics of the abundance of activities, long duration, high uncertainty, and frequent changes. In long-term unsteady manufacturing, this model can provide good robustness. In addition, the essential steps of the multitime window parallel genetic algorithm were proposed. An improved population initialization algorithm was designed, as well as the coevolution strategy among populations was also proposed in parallel computing. These two strategies can increase population variety while also speeding up convergence. Finally, the suggested parallel scheduling system was deployed in our self-developed schedule optimization software for offshore platform enterprises, and the outperformance of the improved algorithm was proven by simulated examples and practical application.


---

## Body

## 1. Introduction

Offshore platform is a complex giant system, which is usually produced in a single piece. Thus, the construction process belongs to make-to-order (MTO) model [1] and adopts discrete production mode. Offshore platform construction has features such as tailored products, a variety of platform kinds, engineering change frequently, and the demand fluctuation of time and quantity. However, the requirements for construction quality and product delivery period are higher due to the installation time window in fixed sea areas and the long-term bad working environment. During the manufacturing process, it is vital to update the project schedule plan on a regular basis based on the actual progress. The major task in projects’ production process is the fabrication of the deck plate and jacket structure [2]. The assembly and welding of structural blocks necessitate a significant amount of field and equipment resources. In the process of single-block building, a high number of storage and transportation resources must be mobilized at the same time. Furthermore, all production connections need a significant investment in human resources to ensure on-time completion. Considering the limitations of the enterprise’s production conditions, when multiple projects executing, some key resources, such as gantry crane, flat transport vehicle, and block yard, are heavily dependent, which restrict the production rhythm of each link and bring great difficulties to the project progress.The offshore platform project scheduling problem, when combined with the enterprise production mode, falls into the category of time-varying resource constrained project scheduling problems (TRCPSP). This is an NP-hard problem, which is one of the most challenging in operational research [3]. In a project with limited production resources, there is a priority connection between activities in order to satisfy the needs of adequate length and renewable resources for each activity. Compared with the typical TRCPSP, the main differences are long cycle and customization. Usually, an offshore platform project cycle is 1 year or more, which corresponds to a large amount of activities. Long cycle leads to low efficiency and slow convergence speed of heuristic algorithm, and it is difficult to ensure the scientific of a complete project scheduling. Customization means that the degree of standardization is low. Even the schedule is made reasonably, it may not work when dynamic scheduling in the implementation process. Then, a more flexible and robust schedule is needed, adapting to sudden situations in a long cycle, such as equipment failure, job order insertion, and order change. At present, the world’s major offshore enterprises are using the traditional scheduling method by EXCEL or MS Project etc. With the use of ERP, MES, and other systems, the software integrates scheduling algorithms. But considering the timeliness of calculations, algorithms are mostly rule-based methods rather than intelligent optimization calculations.To summarize, we apply multitime window parallel genetic algorithm to deal with the scheduling problem of large-scale offshore platform projects under resource constraints. The rest of this paper is organized as follows. In Section2, some related works are outlined based on literature. In Section 3, the framework of the proposed methodology was defined. Section 4 describes the improved genetic algorithm and designs the steps of the proposed algorithm. Section 5 provided two simulation examples to verify the improved algorithm and discuss the differences of genetic algorithm and improved genetic algorithm. Finally, Section 6 concludes with some advantages and limitations of our improved algorithm and points out some remaining future work.


## 2. Literature Review

TRCPSP for offshore platform projects belongs to an essential branch of the resource-constrained project scheduling problem. Based on the research of semi-active, active, and nondelayed schedules proposed by many researchers [4–7], various types of intelligent optimization algorithms such as hybrid genetic algorithm [8], frog-hopping algorithm [9], bee algorithm [10], and distribution estimation algorithm [3] are used to solve the optimization problem of scheduling scheme under various complex constraints in order to be closer to the project reality. In this paper, we focus on parallel computing and coevolutionary research based on just-in-time (JIT) theory [11–13] and further improve the genetic algorithm to focus on the optimization goal of minimizing duration according to the demand for balanced production and low inventory management in offshore enterprises. However, there are a lot of disturbances in the actual offshore project scheduling process, and the above ideal scheduling model that requires higher adaptability [14] considered the dynamic interferences when a job is interruptible in actual production and proposed a rolling window rescheduling strategy with fuzzy delivery time. But, in the face of long cycles and large task volumes, the computing performance needs to be further improved.In order to improve the computational speed and processing power of algorithms, parallel computing is a hot research topic in recent years. In general, parallel computing can be divided into data parallelism and task parallelism [15]. Data parallelism maps data into different computational units by dividing them into parts, each completing the same computational operation under a unified computational instruction [16]. Task parallelism takes a different model from data parallelism by running several different tasks on the same data to achieve fast computation [17, 18]. At present, the application of parallel computing techniques to optimize TRCPSP is still rare, and in this paper, based on the parallel genetic algorithm proposed by [19], we further investigate a variety of swarm parallel optimization methods applicable to offshore platform projects, combining high-speed computer parallelism with algorithms [20] to overcome the premature convergence problem and improve the global search capability.Improved genetic algorithms based on parallel theory were first systematically studied by [21], who first studied coarse-grained parallel genetic algorithms and implemented a continuous simulation of a formula. [22] proposed four parallel genetic algorithms containing the traditional coarse-grained parallel genetic algorithms. [23] proposed a new parallel genetic algorithm model, called the special island model, which is derived from the original island model. The use of parallel genetic algorithms is not only computationally fast but also sometimes results in better solutions. [24] designed a new parallel computing scheduling decision-making method and constructs an expert system by dispatching rules, which can give more reasonable scheduling results for different situations. This paper is intended to improve the computational efficiency while improving the solution quality, so we design a parallel scheduling system based on cooperative coevolution.Cooperative coevolution has been proved to be effective in solving large-scale global optimization through the divide and conquer paradigm. [25, 26] use cooperative coevolution theory with improved resource allocation methods for large-scale multiobjective optimization. [27] proposed two subpopulations with certain heuristics to select modes and obtain the schedules, respectively, and simplified the complex solving process. The complex problem is divided into several simple subproblems, which affect each other. The decomposition rules and decoupling methods are critical. [28] proposed an automatic decomposition strategy that can keep the interdependence between the decision variables to a minimum. The parallel cooperative computing of multiple populations simplifies the problem to be solved and improves the solving efficiency. Therefore, in this paper, we try to bring cooperative coevolution into the improved genetic algorithm to further enhance the algorithm performance.Nowadays, a substantial amount of research work has been done on the performance improvement and optimal solution search of improved genetic algorithms, but in the offshore platform project scheduling optimization problem, there is a demand for an in-depth study of the multiple changes brought by the actual application environment to the algorithm model. The offshore platform construction process contains a massive number of production activity units, which needs to address the algorithm performance pressure brought by the huge amount of data into focus. In addition, the platform production cycle is long, optimization is not a one-step process, and previous studies do not reflect the dynamic process, so model building and algorithm design need to be completed separately to find their common and original points and combine them naturally.


## 3. Mathematic Model for LSOPPSP

### 3.1. Description of LSOPPSP

The duration of the offshore platform project has nearly been calculated prior to the commencement of construction. The construction task is divided into several tiers and includes a significant number of work packages, such as parts processing and assembly. Further describe the work order to lead the workshop processing according to the specifications for completion time of intermediate goods in the work package. Start and completion times, manpower inputs, big machine or specialist equipment deployment, consumable supplies, instructions and drawings, and other details are all included in the work order.In this paper, theith work order is defined as activity i and denoted by the symbol ai. The dummy a0 and aN represent the start and end of the project, respectively. di, ti0, and ti are the duration, start time, and end time of ai, respectively. ti=ti0+di. The actual duration by schedule will be
(1)T=tN=Maxtii=1,2,⋯,N−1.The aforementioned labor, machines, equipment, materials, and venues can be regarded as resources.Kk is the capability of the enterprise to provide resource k. rik is the demand for resources k of ai, k=1,2,⋯,ρ. There are sophisticated mathematical models and solution methods for typical RCPSP. The goal of optimization is generally to reduce the project period T to the shortest possible time.Because the offshore installation is influenced by the climate of the target sea area, the installation period needs to be set for offshore platform projects. As a result, cutting the project’s duration to the bare minimum is unnecessary. On the contrary, if the platform is finished too soon, it will remain berthed at the wharf for an extended period, wasting wharf resources, and increasing the daily cost of usage.Offshore platform is an order-oriented single-piece and small-batch production, which scheduling depends more on experience. Therefore, define the experience coefficientCei∈0,1 which is derived from the analysis of historical data of the same or similar activity of ai that has been completed. Offshore platform projects are designed and constructed simultaneously, resulting in frequent design and construction modifications. As a consequence, a sufficient buffer interval is required. [29] analyzed the project scheduling problem under uncertainty, and activity duration tolerance levels were defined. The tolerance level for activity time was equivalent to a discretization buffer, which gives a more robust solution notion for uncertainty. The minimum buffer period of ai is defined as the time threshold Tpi,Tpi≥0. The acquisition method of Tpi is similar to Cei. Based on historical data, the enterprise will create a quota standard library, which will be updated actual data on a regular basis.Table1 is a partial quota standard library of JU2000 jack-up, which shows the main construction stages of an offshore platform. And each stage is subdivided into several processing steps according to the process flow. There is a buffer bs after original duration dso of stage s, and the total duration of this stage can be regarded as dst=dso+bs. Suppose stage s is the prestage of stage s+1, and the relationship is FS. ap and aq are the first activities of stage s and s+1, respectively. So, tq0=tp0+dst=tp0+dso+bs. When any activities in stage s are delayed, and the overall delay time of stage s is δs. If δs≤bs, tq0 remains unchanged, which correspond to the new buffer bs_new=bs−δs. Otherwise, tq0=tp0+dso+δs−bs. Therefore, buffer makes the scheduling plan more stable. Buffer is different from floating time, that aq will not start immediately after the end of stage s. Especially when stage s is completed in advance, the buffer will become larger, which is beneficial to control the production beat. Due to the complex process flow, there are a lot of constraints on activities between different disciplines, and coordination is difficult. However, the installation window of offshore platform is determined, so the pursuit of minimum duration will reduce the robustness and lead to the possibility of project delay. Then, an improved JIT model is used in this paper, and the total deviation time is ∑ti−Ti0, where Ti0 is the expected completion time of ai. The optimization target will be
(2)Min:∑Max1−Cei·Tpi,ti−Ti0,to consider the effect of buffering. When Ce is bigger, the value of Ti0 will be estimated more accurately, which makes the value of Ti0 reduced accordingly.Table 1
Partial quota standard library of JU2000 jack-up.
Total sectionBlockCuttingAssemblyBlock manufactureStructural surveyPreoutfittingPaintingDurationBufferDurationBufferDurationBufferDurationBufferDurationBufferDurationBufferL10—3142235102104127R10—3142235102104127T30T30121321861236467T30221321761236467T30331321961236457T40T401425333121168487Total sectionBlockGeneral groupOutfittingPaintingDock erectionTypeFeature codeDurationBufferDurationBufferDurationBufferDurationBufferL10——6815111PlaneOX24D108901R10——6815111PlaneOX24D108902T30T301183727211PlaneOX24D100401T302PlaneOX24D100402T303PlaneOX24D100403T40T401123527211CurveOX24D104161


### 3.2. The Improved Model of Large Amount Activities Fits the Offshore Platform Project

According to Table1, the offshore platform project manufacturing process is difficult, as evidenced by the large number of activities, extended project duration, high uncertainty, and lack of standardization. Therefore, it is impossible to give all the value of Ti0 at the beginning of the project. Thus, typical activities will be selected from the large number of activities, consist of milestone activities, to participate in the computation of the objective function. These activities’ Ti0 are usually established. The dependent input parameters are lowered, and the operability of the solution is enhanced on the premise of not impacting the rationality of the project scheduling outcomes. A time window is created for the project’s long-term lifetime, with short-term activity scheduling as the primary optimization goal. And then realize the overall scheduling with the backward passage of the time window.Time window here is used to increase the precision of calculation. It can realize the global optimization of the project cycle and the local optimization in the recent time window. The number of time windows isM, and the jth time window is TWj, j=1,2,3,⋯,M. Depending on the project stage, typical activities are assigned to different time frames. If ai is the typical activity and in TWj, in_TWij=1, otherwise, in_TWij=0. Then, define the weight coefficient ωj of TWj, which is influenced by project stage of TWj and the level of importance of all typical activities within it. The optimization objective is updated as a cumulative weighting operation based on the typical activity and the time window weight.
(3)Min:∑j=1Mωj·∑i=1Nin_TWij·Max1−Cei·Tpi,ti−Ti0,s.t(4)ti−di≥tp,ap∈PSi,(5)∑i=1N−1rik·xis≤Rk,s∈0,T,Rk≥0,k∈0,1,⋯,ρ,(6)xis=1,aiisinprocessattimes,0,otherwise,(7)∑j=1Mωj=1.Eq. (4) means that ap is in the preactive set PSi of ai. Equation (5) indicates that each activity arranged satisfies the resource constrain.


### 3.3. Chapter Conclusion

Offshore platform projects are distinguished by a plethora of operations, a lengthy duration, a high level of uncertainty, and frequent adjustments. By selecting typical activities for calculation, the optimization objective is dispersed into the project execution process. Time window is introduced to optimize the short-term local subobjectives and the global objective of the project. The improved JIT model is used to improve the robustness of the solution and deal with the disturbance in the process of project execution.


## 3.1. Description of LSOPPSP

The duration of the offshore platform project has nearly been calculated prior to the commencement of construction. The construction task is divided into several tiers and includes a significant number of work packages, such as parts processing and assembly. Further describe the work order to lead the workshop processing according to the specifications for completion time of intermediate goods in the work package. Start and completion times, manpower inputs, big machine or specialist equipment deployment, consumable supplies, instructions and drawings, and other details are all included in the work order.In this paper, theith work order is defined as activity i and denoted by the symbol ai. The dummy a0 and aN represent the start and end of the project, respectively. di, ti0, and ti are the duration, start time, and end time of ai, respectively. ti=ti0+di. The actual duration by schedule will be
(1)T=tN=Maxtii=1,2,⋯,N−1.The aforementioned labor, machines, equipment, materials, and venues can be regarded as resources.Kk is the capability of the enterprise to provide resource k. rik is the demand for resources k of ai, k=1,2,⋯,ρ. There are sophisticated mathematical models and solution methods for typical RCPSP. The goal of optimization is generally to reduce the project period T to the shortest possible time.Because the offshore installation is influenced by the climate of the target sea area, the installation period needs to be set for offshore platform projects. As a result, cutting the project’s duration to the bare minimum is unnecessary. On the contrary, if the platform is finished too soon, it will remain berthed at the wharf for an extended period, wasting wharf resources, and increasing the daily cost of usage.Offshore platform is an order-oriented single-piece and small-batch production, which scheduling depends more on experience. Therefore, define the experience coefficientCei∈0,1 which is derived from the analysis of historical data of the same or similar activity of ai that has been completed. Offshore platform projects are designed and constructed simultaneously, resulting in frequent design and construction modifications. As a consequence, a sufficient buffer interval is required. [29] analyzed the project scheduling problem under uncertainty, and activity duration tolerance levels were defined. The tolerance level for activity time was equivalent to a discretization buffer, which gives a more robust solution notion for uncertainty. The minimum buffer period of ai is defined as the time threshold Tpi,Tpi≥0. The acquisition method of Tpi is similar to Cei. Based on historical data, the enterprise will create a quota standard library, which will be updated actual data on a regular basis.Table1 is a partial quota standard library of JU2000 jack-up, which shows the main construction stages of an offshore platform. And each stage is subdivided into several processing steps according to the process flow. There is a buffer bs after original duration dso of stage s, and the total duration of this stage can be regarded as dst=dso+bs. Suppose stage s is the prestage of stage s+1, and the relationship is FS. ap and aq are the first activities of stage s and s+1, respectively. So, tq0=tp0+dst=tp0+dso+bs. When any activities in stage s are delayed, and the overall delay time of stage s is δs. If δs≤bs, tq0 remains unchanged, which correspond to the new buffer bs_new=bs−δs. Otherwise, tq0=tp0+dso+δs−bs. Therefore, buffer makes the scheduling plan more stable. Buffer is different from floating time, that aq will not start immediately after the end of stage s. Especially when stage s is completed in advance, the buffer will become larger, which is beneficial to control the production beat. Due to the complex process flow, there are a lot of constraints on activities between different disciplines, and coordination is difficult. However, the installation window of offshore platform is determined, so the pursuit of minimum duration will reduce the robustness and lead to the possibility of project delay. Then, an improved JIT model is used in this paper, and the total deviation time is ∑ti−Ti0, where Ti0 is the expected completion time of ai. The optimization target will be
(2)Min:∑Max1−Cei·Tpi,ti−Ti0,to consider the effect of buffering. When Ce is bigger, the value of Ti0 will be estimated more accurately, which makes the value of Ti0 reduced accordingly.Table 1
Partial quota standard library of JU2000 jack-up.
Total sectionBlockCuttingAssemblyBlock manufactureStructural surveyPreoutfittingPaintingDurationBufferDurationBufferDurationBufferDurationBufferDurationBufferDurationBufferL10—3142235102104127R10—3142235102104127T30T30121321861236467T30221321761236467T30331321961236457T40T401425333121168487Total sectionBlockGeneral groupOutfittingPaintingDock erectionTypeFeature codeDurationBufferDurationBufferDurationBufferDurationBufferL10——6815111PlaneOX24D108901R10——6815111PlaneOX24D108902T30T301183727211PlaneOX24D100401T302PlaneOX24D100402T303PlaneOX24D100403T40T401123527211CurveOX24D104161


## 3.2. The Improved Model of Large Amount Activities Fits the Offshore Platform Project

According to Table1, the offshore platform project manufacturing process is difficult, as evidenced by the large number of activities, extended project duration, high uncertainty, and lack of standardization. Therefore, it is impossible to give all the value of Ti0 at the beginning of the project. Thus, typical activities will be selected from the large number of activities, consist of milestone activities, to participate in the computation of the objective function. These activities’ Ti0 are usually established. The dependent input parameters are lowered, and the operability of the solution is enhanced on the premise of not impacting the rationality of the project scheduling outcomes. A time window is created for the project’s long-term lifetime, with short-term activity scheduling as the primary optimization goal. And then realize the overall scheduling with the backward passage of the time window.Time window here is used to increase the precision of calculation. It can realize the global optimization of the project cycle and the local optimization in the recent time window. The number of time windows isM, and the jth time window is TWj, j=1,2,3,⋯,M. Depending on the project stage, typical activities are assigned to different time frames. If ai is the typical activity and in TWj, in_TWij=1, otherwise, in_TWij=0. Then, define the weight coefficient ωj of TWj, which is influenced by project stage of TWj and the level of importance of all typical activities within it. The optimization objective is updated as a cumulative weighting operation based on the typical activity and the time window weight.
(3)Min:∑j=1Mωj·∑i=1Nin_TWij·Max1−Cei·Tpi,ti−Ti0,s.t(4)ti−di≥tp,ap∈PSi,(5)∑i=1N−1rik·xis≤Rk,s∈0,T,Rk≥0,k∈0,1,⋯,ρ,(6)xis=1,aiisinprocessattimes,0,otherwise,(7)∑j=1Mωj=1.Eq. (4) means that ap is in the preactive set PSi of ai. Equation (5) indicates that each activity arranged satisfies the resource constrain.


## 3.3. Chapter Conclusion

Offshore platform projects are distinguished by a plethora of operations, a lengthy duration, a high level of uncertainty, and frequent adjustments. By selecting typical activities for calculation, the optimization objective is dispersed into the project execution process. Time window is introduced to optimize the short-term local subobjectives and the global objective of the project. The improved JIT model is used to improve the robustness of the solution and deal with the disturbance in the process of project execution.


## 4. Multitime Window Algorithm for Offshore Platform Project Scheduling Problem

### 4.1. Framework of the Proposed Methodology

Time windows can be used to adjust long project durations. While the large number of activities is contained in the considerably enlarged chromosomal length, this presents a couple of drawbacks. To begin with, as the code length increases, the convergence rate decreases. Then, for complicated optimization issues a lengthy coding causes evolution in a long period and makes it little practical value. This might lead to a loss of evolutionary population diversity and premature convergence. In the process of offshore platform construction, it is divided into multiple stages. Each stage can be regarded as a whole, and there is a clear sequence among them. The sequence of activities is logically produced in the stage, so the gene location range of activities in each stage is fixed. Then, the concept of time window is combined with the theory of coevolution in this research.Figure1 shows the framework of the proposed methodology.Figure 1
Framework of the proposed methodology.The algorithm processes in Figure2 shows that the coordinate relationship of populations in the procedure of the evolution. Populations are not independent. They interact, cooperate, and coevolve in this process.Figure 2
Coordinate relationship of populations.


### 4.2. The Main Steps

#### 4.2.1. Chromosome Encoding and Decoding

The scheme for chromosomal encoding is based on the sequence of activities that compose the genes. Generate a code chain randomly with the length ofN which satisfies the constraints of the sequence of activities. The order of activities in the code chain represents the scheduling priority, and each coding chain corresponds to a certain schedule. Therefore, the scheme has the features of generating fast and operating easy. The encoding and decoding rules have been described in detail in our previous work [8].


#### 4.2.2. Population Initialization

Determining the number of populations is equal to the time windows, then, all the individuals are initialized as follows.According to individuals’ numberC of each population and the gene length l, make the individual activities meet the requirement of constraint through the population initialization algorithm.
(1)
Set the cycle counter initial valuei=1(2)
Generate an individual of which the length isl(3)
Set the cycle counter initial valuer=1(4)
Choose an activity from coding set as therth gene of the individual i according to a certain rule from coding set(5)
Ifr<l, then, r=r+1 and go to step (1).(6)
Put the individual into the initial population(7)
Ifr<C, then, i=i+1, and turn to step (2)The activities selection rules are as follows. The purpose of using the inverse method is to make the activity not too long in advance and do not affect the overall progress of the project which could be achieved by objective function. However, the activities are belonging to the last stage plan, and every activity duration is negligible compared with the length of time window. Therefore, the situation would not appear that unable to arrange the position for the activity or have big impact on the overall progress. The activities on the back of the network diagram have a larger chance fall on the rear of the chromosome of the time window by inverse select method, whether the cross or mutation, they will not deviate from the time window.Definition:Piα is the probability of choosing the activity i at the αth time.If the use inverse method in the network in Figure3, activity a4 would be selected first, then, a2 and a3 each have a 50% probability, P41=1,P22=0.5,P32=0.5. By calculation, P23=0.5,P13=0.25,P33=0.25,P14=0.5,P34=0.25,P05=1.Figure 3
Graph of the example network.However, according to the network diagram, the actual combination of chromosome has three conditions as following, (0,1,2,3,4), (0,3,1,2,4), and (0,1,3,2,4). Thus, actually,P32=1/3,P22=2/3, and empirical probability selection model would make the probability of some characters increases or decreases. Therefore, a reasonable select model should be explored.Definition:Ri is the activity that is able to reach the ith activity directly. And the number of such activities is NRi.Theith activity will be selected in at least n+2−NRi times. That means when the ith activity has greater possibility to be chosen first, the number of locations can be placed is relatively fewer while the gene position is in the back [30]. Therefore, a heuristic method is used to select activities from unscheduled set. This is called the weighting system, and provide a more balanced opportunity of selection which considers the priority of the activity. In Figure 3, NR0=0,NR1=1,NR2=2,NR3=1,NR4=4, the activity that will be selected in the second time might be a2or a3. Therefore, P32=1/2+1=1/3,P22=2/2+1=2/3, which coincides with actual situation.


#### 4.2.3. Competition-Cooperation Fitness Calculation

The number of populations is equal to the number of time windowsm, and each population contains m chromosome segments. The segments can be calculated independently after decoupling operation. So, each chromosome segment will participate in evolution independently as a subpopulation.The original objective function can be simplified into(8)Fe=m∑j=1mωje·fje,e∈1,2,⋯,m.fje is the fitness value of the chromosome segment representing TWj from the population e. ωje is weight coefficient of TWj in population e. Then, the process of screening the individual characteristic indicators has been completed in a population. Next is the cooperation and complementarity among populations.Definition: cooperative coefficient matrixRct represents an indicator of the different traits’ variation among populations and cooperation relationships among populations.
(9)Rct=r11tr12tr21tr22t⋯r1mtr2mt⋮⋱riet⋮rm−11trm−12trm1trm2t⋯rm−1mtrmmtt,(10)rjet=α∙∑fje+∑Feα∙∑e=1m∑fje+∑e=1m∑Fe,(11)Fe=∑j=1mfje.In Eq. (10), Fe is the fitness value of individual in population e with the same weight coefficient. We can use Fe to compare individuals in different populations. ∑fje is the sum fitness value of time windows j of all individuals in population e, while ∑Fe is the sum value of Fe of all individuals in population e. α represents the proportion of local fitness value of time window and global fitness value during evaluation, and its value is set to 1 in this paper. rjet and Fe are used to trigger the cooperative operation between populations in Figure 2.


## 4.1. Framework of the Proposed Methodology

Time windows can be used to adjust long project durations. While the large number of activities is contained in the considerably enlarged chromosomal length, this presents a couple of drawbacks. To begin with, as the code length increases, the convergence rate decreases. Then, for complicated optimization issues a lengthy coding causes evolution in a long period and makes it little practical value. This might lead to a loss of evolutionary population diversity and premature convergence. In the process of offshore platform construction, it is divided into multiple stages. Each stage can be regarded as a whole, and there is a clear sequence among them. The sequence of activities is logically produced in the stage, so the gene location range of activities in each stage is fixed. Then, the concept of time window is combined with the theory of coevolution in this research.Figure1 shows the framework of the proposed methodology.Figure 1
Framework of the proposed methodology.The algorithm processes in Figure2 shows that the coordinate relationship of populations in the procedure of the evolution. Populations are not independent. They interact, cooperate, and coevolve in this process.Figure 2
Coordinate relationship of populations.


## 4.2. The Main Steps

### 4.2.1. Chromosome Encoding and Decoding

The scheme for chromosomal encoding is based on the sequence of activities that compose the genes. Generate a code chain randomly with the length ofN which satisfies the constraints of the sequence of activities. The order of activities in the code chain represents the scheduling priority, and each coding chain corresponds to a certain schedule. Therefore, the scheme has the features of generating fast and operating easy. The encoding and decoding rules have been described in detail in our previous work [8].


### 4.2.2. Population Initialization

Determining the number of populations is equal to the time windows, then, all the individuals are initialized as follows.According to individuals’ numberC of each population and the gene length l, make the individual activities meet the requirement of constraint through the population initialization algorithm.
(1)
Set the cycle counter initial valuei=1(2)
Generate an individual of which the length isl(3)
Set the cycle counter initial valuer=1(4)
Choose an activity from coding set as therth gene of the individual i according to a certain rule from coding set(5)
Ifr<l, then, r=r+1 and go to step (1).(6)
Put the individual into the initial population(7)
Ifr<C, then, i=i+1, and turn to step (2)The activities selection rules are as follows. The purpose of using the inverse method is to make the activity not too long in advance and do not affect the overall progress of the project which could be achieved by objective function. However, the activities are belonging to the last stage plan, and every activity duration is negligible compared with the length of time window. Therefore, the situation would not appear that unable to arrange the position for the activity or have big impact on the overall progress. The activities on the back of the network diagram have a larger chance fall on the rear of the chromosome of the time window by inverse select method, whether the cross or mutation, they will not deviate from the time window.Definition:Piα is the probability of choosing the activity i at the αth time.If the use inverse method in the network in Figure3, activity a4 would be selected first, then, a2 and a3 each have a 50% probability, P41=1,P22=0.5,P32=0.5. By calculation, P23=0.5,P13=0.25,P33=0.25,P14=0.5,P34=0.25,P05=1.Figure 3
Graph of the example network.However, according to the network diagram, the actual combination of chromosome has three conditions as following, (0,1,2,3,4), (0,3,1,2,4), and (0,1,3,2,4). Thus, actually,P32=1/3,P22=2/3, and empirical probability selection model would make the probability of some characters increases or decreases. Therefore, a reasonable select model should be explored.Definition:Ri is the activity that is able to reach the ith activity directly. And the number of such activities is NRi.Theith activity will be selected in at least n+2−NRi times. That means when the ith activity has greater possibility to be chosen first, the number of locations can be placed is relatively fewer while the gene position is in the back [30]. Therefore, a heuristic method is used to select activities from unscheduled set. This is called the weighting system, and provide a more balanced opportunity of selection which considers the priority of the activity. In Figure 3, NR0=0,NR1=1,NR2=2,NR3=1,NR4=4, the activity that will be selected in the second time might be a2or a3. Therefore, P32=1/2+1=1/3,P22=2/2+1=2/3, which coincides with actual situation.


### 4.2.3. Competition-Cooperation Fitness Calculation

The number of populations is equal to the number of time windowsm, and each population contains m chromosome segments. The segments can be calculated independently after decoupling operation. So, each chromosome segment will participate in evolution independently as a subpopulation.The original objective function can be simplified into(8)Fe=m∑j=1mωje·fje,e∈1,2,⋯,m.fje is the fitness value of the chromosome segment representing TWj from the population e. ωje is weight coefficient of TWj in population e. Then, the process of screening the individual characteristic indicators has been completed in a population. Next is the cooperation and complementarity among populations.Definition: cooperative coefficient matrixRct represents an indicator of the different traits’ variation among populations and cooperation relationships among populations.
(9)Rct=r11tr12tr21tr22t⋯r1mtr2mt⋮⋱riet⋮rm−11trm−12trm1trm2t⋯rm−1mtrmmtt,(10)rjet=α∙∑fje+∑Feα∙∑e=1m∑fje+∑e=1m∑Fe,(11)Fe=∑j=1mfje.In Eq. (10), Fe is the fitness value of individual in population e with the same weight coefficient. We can use Fe to compare individuals in different populations. ∑fje is the sum fitness value of time windows j of all individuals in population e, while ∑Fe is the sum value of Fe of all individuals in population e. α represents the proportion of local fitness value of time window and global fitness value during evaluation, and its value is set to 1 in this paper. rjet and Fe are used to trigger the cooperative operation between populations in Figure 2.


## 4.2.1. Chromosome Encoding and Decoding

The scheme for chromosomal encoding is based on the sequence of activities that compose the genes. Generate a code chain randomly with the length ofN which satisfies the constraints of the sequence of activities. The order of activities in the code chain represents the scheduling priority, and each coding chain corresponds to a certain schedule. Therefore, the scheme has the features of generating fast and operating easy. The encoding and decoding rules have been described in detail in our previous work [8].


## 4.2.2. Population Initialization

Determining the number of populations is equal to the time windows, then, all the individuals are initialized as follows.According to individuals’ numberC of each population and the gene length l, make the individual activities meet the requirement of constraint through the population initialization algorithm.
(1)
Set the cycle counter initial valuei=1(2)
Generate an individual of which the length isl(3)
Set the cycle counter initial valuer=1(4)
Choose an activity from coding set as therth gene of the individual i according to a certain rule from coding set(5)
Ifr<l, then, r=r+1 and go to step (1).(6)
Put the individual into the initial population(7)
Ifr<C, then, i=i+1, and turn to step (2)The activities selection rules are as follows. The purpose of using the inverse method is to make the activity not too long in advance and do not affect the overall progress of the project which could be achieved by objective function. However, the activities are belonging to the last stage plan, and every activity duration is negligible compared with the length of time window. Therefore, the situation would not appear that unable to arrange the position for the activity or have big impact on the overall progress. The activities on the back of the network diagram have a larger chance fall on the rear of the chromosome of the time window by inverse select method, whether the cross or mutation, they will not deviate from the time window.Definition:Piα is the probability of choosing the activity i at the αth time.If the use inverse method in the network in Figure3, activity a4 would be selected first, then, a2 and a3 each have a 50% probability, P41=1,P22=0.5,P32=0.5. By calculation, P23=0.5,P13=0.25,P33=0.25,P14=0.5,P34=0.25,P05=1.Figure 3
Graph of the example network.However, according to the network diagram, the actual combination of chromosome has three conditions as following, (0,1,2,3,4), (0,3,1,2,4), and (0,1,3,2,4). Thus, actually,P32=1/3,P22=2/3, and empirical probability selection model would make the probability of some characters increases or decreases. Therefore, a reasonable select model should be explored.Definition:Ri is the activity that is able to reach the ith activity directly. And the number of such activities is NRi.Theith activity will be selected in at least n+2−NRi times. That means when the ith activity has greater possibility to be chosen first, the number of locations can be placed is relatively fewer while the gene position is in the back [30]. Therefore, a heuristic method is used to select activities from unscheduled set. This is called the weighting system, and provide a more balanced opportunity of selection which considers the priority of the activity. In Figure 3, NR0=0,NR1=1,NR2=2,NR3=1,NR4=4, the activity that will be selected in the second time might be a2or a3. Therefore, P32=1/2+1=1/3,P22=2/2+1=2/3, which coincides with actual situation.


## 4.2.3. Competition-Cooperation Fitness Calculation

The number of populations is equal to the number of time windowsm, and each population contains m chromosome segments. The segments can be calculated independently after decoupling operation. So, each chromosome segment will participate in evolution independently as a subpopulation.The original objective function can be simplified into(8)Fe=m∑j=1mωje·fje,e∈1,2,⋯,m.fje is the fitness value of the chromosome segment representing TWj from the population e. ωje is weight coefficient of TWj in population e. Then, the process of screening the individual characteristic indicators has been completed in a population. Next is the cooperation and complementarity among populations.Definition: cooperative coefficient matrixRct represents an indicator of the different traits’ variation among populations and cooperation relationships among populations.
(9)Rct=r11tr12tr21tr22t⋯r1mtr2mt⋮⋱riet⋮rm−11trm−12trm1trm2t⋯rm−1mtrmmtt,(10)rjet=α∙∑fje+∑Feα∙∑e=1m∑fje+∑e=1m∑Fe,(11)Fe=∑j=1mfje.In Eq. (10), Fe is the fitness value of individual in population e with the same weight coefficient. We can use Fe to compare individuals in different populations. ∑fje is the sum fitness value of time windows j of all individuals in population e, while ∑Fe is the sum value of Fe of all individuals in population e. α represents the proportion of local fitness value of time window and global fitness value during evaluation, and its value is set to 1 in this paper. rjet and Fe are used to trigger the cooperative operation between populations in Figure 2.


## 5. Simulation Examples

A two-stage simulation example approach similar to [31] is used to better verify the effectiveness of the optimization algorithm proposed in this paper. Two simulation examples are put forward in this section to evaluate the suggested technique based on the improved scheduling optimization system. The first simulation example verifies the feasibility and efficiency of the proposed math model and algorithm, while the second simulation example demonstrates that the suggested approach outperforms others.The simulation environment configurations used in our research are presented in Table2. Multithreaded computing is used in the process to simulate the parallel algorithm.Table 2
Configurations of simulation environment.
IndexParameter nameParameter content1Simulation platformPC2Operation systemWindow 103CPUR9 5900HS4Memory16G5Development environmentJava 1.66DatabaseOracle 12c


### 5.1. Simulation Example 1

Using our self-developed scheduling tool, we created a feasibility graph to illustrate large-scale offshore platform project scheduling in this research. Figure4 depicts the offshore platform project scheduling model used in Simulation Example 1 as well as the feasibility graph with 200 activities and 3 time windows.Figure 4
Influence ofTp on the performance of the proposed algorithm.The optimization outcomes would be affected by changes in activity. There are two optimization results, and one is the first optimization result and the other based on the first result after some activities changed. Furthermore,F is the fitness value, and ∆T is the difference of completion date between the twice optimization.The values of parameters greatly influence the quality of solution, the influence of parametersCei, Tpi, ωj on the performance of the proposed algorithm was shown in Figure 4 and Table 3. For simplicity, set Cei to 0.8, and make Tp1=Tp2=Tp3=Tp. It was observed that the optimal solution can be achieved with proper values of Tp, ωj. In Figure 4, when the value of Tp increases from 0 to 2, the fitness value decreases to around 1, which conforms to the goal of scheduling optimization. And fitness value continues to decrease slightly with the increase of Tp. Meanwhile, value of ∆T is at the bottom of the curve, when Tp=5. It shows that the value of Tp is too large or too small will lead to the instability of the scheduling plan, and when the Tp equals to 5, a better optimal solution can be obtained in this simulation example.Table 3
Simulation parameters.
ω1ω2ω3r1er2er3e∆TF0.420.520.060.510.380.7111.15.230.430.350.220.140.260.382.31.320.370.370.260.130.150.284.11.610.30.270.430.20.260.192.31.930.430.370.20.070.120.233.11.040.470.330.20.440.490.538.62.70.390.380.230.450.310.673.73.50.430.410.160.240.220.577.21.210.320.460.220.590.360.386.92.130.660.170.170.090.310.3210.81.70.210.270.520.290.260.178.21.810.20.550.250.390.150.32.41.320.540.150.310.070.580.413.32.130.330.470.20.130.140.398.51.820.390.460.150.320.290.6293.040.170.40.430.180.050.127.40.020.410.490.10.310.240.682.82.530.250.730.020.220.190.6631.030.430.350.220.230.390.447.22.170.470.280.250.560.680.7911.33.060.180.360.460.160.020.091.80.020.470.280.250.030.120.085.31.080.50.240.260.580.620.787.34.30.510.440.050.060.010.266.30.010.210.260.530.220.150.179.51.10.150.740.110.540.170.611.62.010.350.250.40.060.110.052.10.030.290.360.350.080.030.041.10.10.280.560.160.180.120.223.910.030.580.390.440.130.156.61.520.250.450.30.30.270.234.61.240.280.370.350.390.420.569.21.650.580.180.240.120.340.357.11.090.20.380.420.110.010.010.300.070.480.450.750.030.111.70.010.10.050.850.570.680.21.92.120.380.060.560.260.830.492.92.120.10.420.480.220.050.113.11.05The values of∆T, F, and its factors are shown in Table 3.


### 5.2. Simulation Example 2

We labeled the basic parallel genetic algorithm system SPGAS (simple parallel genetic algorithm system) and our proposed algorithm IPGAS (improved parallel genetic algorithm system) to distinguish it from the basic parallel genetic algorithm system and our suggested algorithm.To tackle the problem of Simulation Example 1, GA, SPGAS, and IPGAS were supplied in this simulation example. The simulation environment setups for three algorithms were all the same. In GA, the population had 50 chromosomes, the crossover chance was 0.95, the mutation probability was 0.05, and the total number of cycles was 200. SPGAS and IPGAS settings were equal to simulation example 1.Each algorithm was performed 100 times to eliminate random error, and the average values were computed. Table4 displays the average deviation ad=1/n∑i=1nFi−F¯/F¯, maximum deviation md=FMax−FMin/F¯, percent of best solution pbs=cardBset/n, and computation time for three algorithms. n is the size of solution set, while cardBset is the number of best solutions whose fitness value is less than 1 in the simulation example. Fi, F¯, FMax, and FMin are the fitness value of ith solution, average fitness value, maximum fitness value, and minimum fitness value, respectively.Table 4
Comparison of GA, SPGAS, and IPGAS.
AlgorithmsAverage deviationMax deviationPercent of best solutionComputing time (min)GA5.7%33.2%79.9%12.3SPGAS3.2%16.4%87.6%10.9IPGAS0.7%10.3%91.3%13.2The performance of IPGAS was proven to be superior than that of GA and SPGAS. With a lower average deviation, maximum deviation, and superior solution quality, the IPGAS algorithm outperformed the competition. The new algorithm’s robustness and ability to outperform others was verified.Using the strategy of population cooperation, IPGAS algorithm can achieve the optimal solution with higher quality but little slower searching speed than SPGAS algorithm. As a parallel computing approach, the IPGAS algorithm’s searching performance may be improved by increasing the number of time windows.The convergence trend of three algorithms is depicted in Figure5. The calculation results of the three algorithms are all around 0, but the proposed algorithm in this paper obtains the optimal solution in about 100 generations. The convergence efficiency of proposed algorithm is higher than the other two algorithms, and the convergence curve is smooth.Figure 5
Convergence trend of three algorithms.


### 5.3. Application of the Proposed Approach

The proposed algorithm has been implemented and validated in our self-developed schedule optimization software for offshore platform enterprises, Offshore Platform Company Schedule Control System (OPCSCS), as seen in Figure6. Figure 6(c) is the main interface to edit the scheduling plan. Before scheduling optimization, production process should be set in Figure 6(a). After optimization, the scheduling plan will be shown in the form of Gantt chart in figure 6 (b) and (d). Then, some statistical analysis will be displayed graphically, such as figure 6 (e) and (f). OPCSCS can be used to help schedule control managers develop progress reports easily. And the scheduling plan can be generated automatically and intelligently with high efficiency and low cost.Figure 6
Application of the proposed algorithm.


## 5.1. Simulation Example 1

Using our self-developed scheduling tool, we created a feasibility graph to illustrate large-scale offshore platform project scheduling in this research. Figure4 depicts the offshore platform project scheduling model used in Simulation Example 1 as well as the feasibility graph with 200 activities and 3 time windows.Figure 4
Influence ofTp on the performance of the proposed algorithm.The optimization outcomes would be affected by changes in activity. There are two optimization results, and one is the first optimization result and the other based on the first result after some activities changed. Furthermore,F is the fitness value, and ∆T is the difference of completion date between the twice optimization.The values of parameters greatly influence the quality of solution, the influence of parametersCei, Tpi, ωj on the performance of the proposed algorithm was shown in Figure 4 and Table 3. For simplicity, set Cei to 0.8, and make Tp1=Tp2=Tp3=Tp. It was observed that the optimal solution can be achieved with proper values of Tp, ωj. In Figure 4, when the value of Tp increases from 0 to 2, the fitness value decreases to around 1, which conforms to the goal of scheduling optimization. And fitness value continues to decrease slightly with the increase of Tp. Meanwhile, value of ∆T is at the bottom of the curve, when Tp=5. It shows that the value of Tp is too large or too small will lead to the instability of the scheduling plan, and when the Tp equals to 5, a better optimal solution can be obtained in this simulation example.Table 3
Simulation parameters.
ω1ω2ω3r1er2er3e∆TF0.420.520.060.510.380.7111.15.230.430.350.220.140.260.382.31.320.370.370.260.130.150.284.11.610.30.270.430.20.260.192.31.930.430.370.20.070.120.233.11.040.470.330.20.440.490.538.62.70.390.380.230.450.310.673.73.50.430.410.160.240.220.577.21.210.320.460.220.590.360.386.92.130.660.170.170.090.310.3210.81.70.210.270.520.290.260.178.21.810.20.550.250.390.150.32.41.320.540.150.310.070.580.413.32.130.330.470.20.130.140.398.51.820.390.460.150.320.290.6293.040.170.40.430.180.050.127.40.020.410.490.10.310.240.682.82.530.250.730.020.220.190.6631.030.430.350.220.230.390.447.22.170.470.280.250.560.680.7911.33.060.180.360.460.160.020.091.80.020.470.280.250.030.120.085.31.080.50.240.260.580.620.787.34.30.510.440.050.060.010.266.30.010.210.260.530.220.150.179.51.10.150.740.110.540.170.611.62.010.350.250.40.060.110.052.10.030.290.360.350.080.030.041.10.10.280.560.160.180.120.223.910.030.580.390.440.130.156.61.520.250.450.30.30.270.234.61.240.280.370.350.390.420.569.21.650.580.180.240.120.340.357.11.090.20.380.420.110.010.010.300.070.480.450.750.030.111.70.010.10.050.850.570.680.21.92.120.380.060.560.260.830.492.92.120.10.420.480.220.050.113.11.05The values of∆T, F, and its factors are shown in Table 3.


## 5.2. Simulation Example 2

We labeled the basic parallel genetic algorithm system SPGAS (simple parallel genetic algorithm system) and our proposed algorithm IPGAS (improved parallel genetic algorithm system) to distinguish it from the basic parallel genetic algorithm system and our suggested algorithm.To tackle the problem of Simulation Example 1, GA, SPGAS, and IPGAS were supplied in this simulation example. The simulation environment setups for three algorithms were all the same. In GA, the population had 50 chromosomes, the crossover chance was 0.95, the mutation probability was 0.05, and the total number of cycles was 200. SPGAS and IPGAS settings were equal to simulation example 1.Each algorithm was performed 100 times to eliminate random error, and the average values were computed. Table4 displays the average deviation ad=1/n∑i=1nFi−F¯/F¯, maximum deviation md=FMax−FMin/F¯, percent of best solution pbs=cardBset/n, and computation time for three algorithms. n is the size of solution set, while cardBset is the number of best solutions whose fitness value is less than 1 in the simulation example. Fi, F¯, FMax, and FMin are the fitness value of ith solution, average fitness value, maximum fitness value, and minimum fitness value, respectively.Table 4
Comparison of GA, SPGAS, and IPGAS.
AlgorithmsAverage deviationMax deviationPercent of best solutionComputing time (min)GA5.7%33.2%79.9%12.3SPGAS3.2%16.4%87.6%10.9IPGAS0.7%10.3%91.3%13.2The performance of IPGAS was proven to be superior than that of GA and SPGAS. With a lower average deviation, maximum deviation, and superior solution quality, the IPGAS algorithm outperformed the competition. The new algorithm’s robustness and ability to outperform others was verified.Using the strategy of population cooperation, IPGAS algorithm can achieve the optimal solution with higher quality but little slower searching speed than SPGAS algorithm. As a parallel computing approach, the IPGAS algorithm’s searching performance may be improved by increasing the number of time windows.The convergence trend of three algorithms is depicted in Figure5. The calculation results of the three algorithms are all around 0, but the proposed algorithm in this paper obtains the optimal solution in about 100 generations. The convergence efficiency of proposed algorithm is higher than the other two algorithms, and the convergence curve is smooth.Figure 5
Convergence trend of three algorithms.


## 5.3. Application of the Proposed Approach

The proposed algorithm has been implemented and validated in our self-developed schedule optimization software for offshore platform enterprises, Offshore Platform Company Schedule Control System (OPCSCS), as seen in Figure6. Figure 6(c) is the main interface to edit the scheduling plan. Before scheduling optimization, production process should be set in Figure 6(a). After optimization, the scheduling plan will be shown in the form of Gantt chart in figure 6 (b) and (d). Then, some statistical analysis will be displayed graphically, such as figure 6 (e) and (f). OPCSCS can be used to help schedule control managers develop progress reports easily. And the scheduling plan can be generated automatically and intelligently with high efficiency and low cost.Figure 6
Application of the proposed algorithm.


## 6. Conclusions and Future Work

Considering LSOPPSP is an NP-hard combinatorial optimization problem, it necessitates the use of an efficient heuristic strategy to solve it. To tackle this problem, we utilize improved genetic algorithm in our research. The suggested method is proven to be capable of generating a near-optimal solution for LSOPPSP in a virtual enterprise in a reasonable period of time, with the quality of schedule activities sequence created and the converge rate being more ideal. When the project involves a high number of activities, the proposed algorithm has apparent advantages. It is also ideal for large-scale engineering projects where the manufacturing design is constantly updated. The proposed algorithm’s key drawbacks is that it is based on some parameters such as the experience coefficient. The authors want to examine the rule of value in future studies and summarize various formulae. For instance, it is intended to use the deep learning to train the parameters. To improve performance, a multimode and multiobjective model might be utilized instead of the single-mode and single-objective model now in use, and an upgraded genetic algorithm could be combined with other intelligent algorithms. The authors’ study also includes the application of the proposed algorithm to additional NP-hard combinatorial optimization problems.



---

*Source: 2352651-2022-09-01.xml*