Abstract
Aimed at enhancing the effectiveness and efficiency for offshore project scheduling, the mathematical model of two-stage scheduling is proposed according to the offshore project characteristics discussed in this article, which is used to solve the scheduling problem of large-scale and complex project. Regarding the two-stage scheduling, a system framework with multi-agent technology is presented to facilitate the integration and cooperation of offshore project scheduling. Next, the functional definition and internal structure of each intelligent agent is designed. Moreover, two kinds of intelligent algorithms have been designed to solve the resource conflicts and task assignment, respectively. Finally, the prototype system is developed to test the feasibility and rationality.
Introduction
Offshore project is a large-scale project with long construction period, high production cost, and complex construction process. The installation of offshore platform at sea is greatly affected by climate; therefore, it is crucial for the platform construction to be completed during the golden period. So, a schedule management system for offshore project is in urgent need of implementing to fit the time cost and control the project schedule. Although information management platform for offshore project has ever been developed by some enterprises, these systems are widely used in the information communication especially convenient for the operators, but there has not been a lot of intelligent research in this filed. Additionally, considering the characteristics of offshore project, for example, each segment’s change will have an impact on the scheduling control of the overall project, and thus scheduling control requires a closed-loop control, moreover, scheduling, production, feedback, and re-scheduling is quite common in this process. To achieve the dynamic scheduling, the scheduling problem for two stages of project scheduling and workshop production is needed to implement integration study, and scheduling and production are also needed to be combined closely. Compared with the traditional scheduling management system, this system achieves the closed-loop control of scheduling problem through various feedback methods like data acquisition of terminal equipment in workshop. Besides schedule management, resource-constrained project schedule problem (RCPSP) and job-shop scheduling problem (JSP) are widely studied. In addition, not only the established system but also the proposed matching algorithm has been able to solve most of the problems. However, there is still lack of pertinence for the offshore project which belongs to multiple projects in make-to-order-oriented production or piece production. It can be concluded that different projects are not exactly the same. Therefore, there is not a batch production line to fit all projects. Meanwhile, project organization structure is also different among many enterprises.
Due to the development of group technology, specialization of intermediate products has become a guide regarding complex offshore products. Then, build up professional workshops for different production process according to product characteristics, operation location, similar content of product and working procedure. Consequently, in the production process, faced of multiple projects, the workshop adopts departmental organization structure. The project organization structure and departmental organization structure form a multi-dimensional matrix organization structure, which is one of the characteristics of offshore project. Therefore, combined with the characteristics of offshore project, a scheduling management system will be designed and elaborated in this article. Complex role relationships affect the needs of system design; in actual project management process, each person has multiple roles including stable roles and changeable roles. It is a best use to simulate this flexible relationship through the cooperation between agents. Multi-agent system (MAS) has the intelligent features of independence, sociality, reactivity and interactivity, and so forth. 1 Through the agents’ perception and adaptation for environment changes, event is monitored by different agents, and through the application of intelligent methods in the production system, method selection is completed autonomously. 2 As mentioned above, the process achieved independent collaboration and interaction. Therefore, this article intends to design a scheduling management system, through the configuration of the roles, processes, and methods to adapt to the production characteristics of offshore projects, making full use of the agents’ ability of coordinate operation to achieve flexible applications in the domain of offshore engineering.
Bearing the above observations in mind, we present an offshore project schedule system based on multi-agent technology, and the rest of this article is organized as follows. Section “Literature review” outlines some related work based on the literature. Section “Framework of the proposed environment” presents an agent-based system framework for the schedule process and proposes the functional definition of individual agents and agent internal structure. Section “two-stage scheduling model” describes the two-stage schedule problem and gives a mathematic model. In section “Algorithm for negotiation,” two intelligent algorithms are designed to resolve the resource conflicts and task assignment, respectively. According to the above-mentioned key technologies, a validation for proposed system is implemented, and a prototype system named Offshore Project Scheduling System (OPSS) is developed based on service-oriented architecture (SOA) in section “Case study.” Finally, section “Conclusion and future work” shows the conclusions concerning some advantages and limitations of our multi-agent supported schedule system and points out some future work.
Literature review
Recent publications relevant to this article are mainly concerned with two research streams: offshore project schedule problem and multi-agent technology. In this section, we try to summarize the relevant literature.
At present, in the field of scheduling method, there have been lots of researches, ranging from various domains. TT Dang and B Frankovic 3 found an all products’ schedule to minimize the costs and satisfy all constrains jointed with each product. Compared with normal RCPSP, offshore projects has a main feature of order-oriented, meanwhile, the project deadline is strictly required in the contract. If construction period exceeds deadline, a large number of fines will be caused, on the contrary, if the construction is completed ahead of schedule, lots of space resources will be taken up; for this point, the just-in-time (JIT) model is more suitable for it. Y Yin et al. 4 proposed a method to minimize the cost by scheduling in a make-to-order production system. Y Yin et al. 5 used two competing agents to solve the JIT scheduling problem. And for multiple projects schedule problem, mainly considering the precedence and resource constraints, MAS model was designed to minimize schedule length of each project. A Can and G Ulusoy 6 divided the whole project into two parts, that is, multi-project resource allocation and individual project scheduling, realizing the simplification from multi-project to individual project. The order orientation of offshore project is reflected in single product manufacturing. There are few of the key resources in the enterprise, such as the main gantry crane, which only supports several projects at the same time; thus, most of the different projects should be arranged to different stages of the project cycle, and these key resources are distributed in different workshops. Considering the multi-dimensional matrix organizational structure and the scheduling from project-level to workshop-level, where project-level can be classified as multi-project and single project, so the scheduling management of offshore project is from the multi-project to a single project and then to multi-project. L Asadzadeh 7 presented an agent-based local search genetic algorithm (GA) for solving the job-shop scheduling problem. V Kaplanoğlu 8 referred a multi-objective flexible job-shop scheduling problem (FJSP) problem and solved using object-oriented approach. YR Shiau et al., 9 V Kaplanoğlu, 10 and L Wan et al. 11 separately solved scheduling problem on a single machine. M Hojati 12 addressed a two-stage m-machine disassembly flow-shop scheduling problem and presented three heuristic methods for analysis. L Qiao and S Lv 13 dealt with the process planning and scheduling problem using an improved GA. The process plan was prepared first and then the scheduling would be performed to allocate manufacturing resources according to the process plan. B Du and S Guo 14 proposed a novel hybrid approach to solve planning conflict in group manufacturing. The above study basically covers all aspects of the scheduling management of offshore project, but these methods are independent, and it did not consider all the factors in a comprehensive way. More importantly, the above methods cannot be directly combined to solve a specific problem, which contains the characteristics on scheduling management of offshore project. Although the theoretical value of the study is very high, it cannot be directly applied to the scheduling management of offshore project. Therefore, after determining the solution of solving the scheduling problem, it is required that a system should independently select methods to solve specific problems based on the requirements of project.
Agent-based technology has received significant attention within the last few years in intelligent manufacturing and is applied in various areas. J Hu et al. 15 presented a multi-agent-based modeling technology for simulating and operating a hierarchical energy management of a power distribution system. Sujil et al. 16 provided a comprehensive survey on the power system applications in which MAS technique has been applied. In supply chains management, F Ameri and C McArthur 17 and M Miranbeigi et al. 18 used the multi-agent technology. They proposed an agent-based framework and a full online decentralized predictive control method, respectively. Moreover, Shukla and Kiridena 19 designed a knowledge acquisition agent and knowledge representation agent, which use a set of historical data, adding to supply chains management system. In the MAS application, one of the most important purposes is to achieve decision-making, J Ordieres-Meré et al. 20 used the software-based and multi-agent solutions to realize defect prediction in steel industry, which could guide the decision-making process. Manufacturing execution system is widely designed using the MAS; for instance, Cupek et al. 21 intended to solve short-series production scheduling and support decision-making by simulation, Z Yang et al. 22 and Barenji et al. 23 used the radio-frequency identification (RFID) technology to add senses for agents. In the aspect of scheduling control, the application of global positioning system (GPS), RFID, and other sensors in MAS achieves data collection, through these devices that are able to collect scheduling information 24 the automatic feedback of scheduling is realized. Z Bao et al. 25 developed a production scheduling system based on multi-agent. It is not only that the resources were classified but also the bottleneck resource has been taken into account. P Lou et al. 26 presented a multi-agent-based proactive–reactive scheduling for job shops. P Renna 27 designed a series of policies to reduce the processing time using additional resources in a job-shop manufacturing system based on multi-agent technology. The scheduling process consists of two stages about the proactive scheduling stage and the reactive scheduling stage. Normally, the offshore project is large-scale engineering project, and the scale of the enterprise is also large, which reflects on its yard area and quantity of workshop type, suppliers and subcontractor, and so forth. Mishra et al. 28 designed a cloud-based multi-agent architecture, to achieve distributed production process management and control. In the workshop-level, taking full advantage of agent’s features of the self-organizing and self-adaptive, Y Zhang et al. 29 designed an intelligent control framework, where one of the goals is to realize the resources allocation. Based on these features, Confessore et al. 30 designed a MAS functional schema and provided bidding process. Priego et al. 31 designed an agent-based middleware architecture, which makes the manufacturing system more flexible and efficient; moreover, users can configure agents according to different business requirements. JW Baek and HY Yeom 32 and Manupati et al. 33 set up a scheduling system composed of mobile agents. Giret et al. 34 designed intelligent manufacturing control systems, applying all aspects of industrial production, and in the system, there is not only a global objective of agents but also competitions among them. Through perception for environment change, a sustainable control is provided, and thus a sustainability-oriented mechanism is designed to integrate different system components and realize collaborative work. These systems presented by Giret do not focus on the project scheduling management of the enterprise but provide a good idea for the top-level design of system development.
Although research papers are highly valuable, they did not satisfy all the requirements of offshore project as mentioned earlier in this article. Especially in the production flow, the complex process cannot be expressed separately with the general mathematical model. To the best of our knowledge, the need for realizing integrated, cooperative, and intelligent scheduling environment has almost not been dealt within offshore project field. Based on our past research on scheduling process and agent technology, this article tries to tackle this problem.
In this research, we apply agent technology to scheduling process and set up an agent-based system framework for two-stage scheduling environment. Topic of agent structure, agent working mechanism, and agent cooperation model and agent competition conflicts algorithm will be elaborated.
Framework of the proposed environment
System framework
The agent-based offshore project schedule environment developed in this research consists of project agent (PA), resource agent (RA), scheduling agent (SA), workshop agent (WA), negotiation agent (NA), and interface agent (IA). The framework of the system is illustrated in Figure 1. System simulates the working process among several workshops in offshore enterprise and achieves most of the optimization and decision-making. Through the actual progress of the feedback and a series of iterative process, the knowledge base will be enriched greatly. Then, more reliable decision schemes will be provided to intelligent agents using data mining technology. Network environment including Internet and local area network is the foundation of agents to perform their tasks.

Framework of the proposed agent-based system.
Functional definition of individual agents
In this agent-based system, each agent has its specific functionality. As shown in Figure 2, all the agents are cooperating toward a common goal through the network. The functionality of each agent is given as follows:
PA. PAs consist of a collaborative group and every PA on behalf of the corresponding project. According to the status of the project, PA is divided into three types: planning PA, constructing PA, and completed PA. With the progress of the project, three kinds of intelligent agents can be converted to each other. PA provides the construction requirements of each project, including technical requirements, schedule requirements, and cost requirements. The PA receives the project mission and obtains the expected duration and the basic information from the knowledge base, like work breakdown structure (WBS). Meanwhile, order requirements can be obtained from enterprise database while the RAs provide the key resources information. In addition, the related resources will be locked which means the resource state has been set to “occupied.” And then, the PA begins to scheme the preliminary schedule including start time, end time, and milestone time. Order requirements are clarified by PA then the PA is going to be activated when all the requirements are satisfied.
RA. RAs are responsible for resource scheduling and displaying the load of resources performance, where the information is from the enterprise database. According to the resource type, the agent can be divided into renewable resources agent, semi-renewable RA, and non-renewable RA, while the key resource (bottleneck resource) agents and the general RAs are classified depending on the frequency of resources usage. In the face of demand of SA, RAs provide different schemes and make purchase plans.
SA. SA is the core of schedule management system, which can access to enterprise database, knowledge base, and algorithm library. Its work is a series of important operations including all projects planning, progress monitoring, and changing of plan. The overall planning of enterprise projects is made by SA regarding the multi-level constraints of PAs. Then, the schedule will be sent to the WAs, and the feedback information will be returned to SA so as to analyze the progress of the projects and achieve dynamic planning. SA has the ability of early warning and quick response for any emergencies.
WA. WAs receive the project schedule and arrange the production plan in the production dimension. Moreover, the information of task progress and resource usage will be fed back as well.
IA. Composed by the proposed system and other external systems, an integrated environment is set up. IA realizes the data exchange with other external systems like enterprise resource planning (ERP), Tribon, and computer-aided design (CAD) by following a set of rules and protocols. In addition, IA provides human–machine interface through dialog boxes, reports, or graphical visualization window.
NA. When conflicts occur, NA cooperates with SA, PAs, and RAs to resolve the conflicts.

Agents’ work process in the proposed system.
Two-stage scheduling model
SA, WA, RA use the collaborative work mode and undertake most of the tasks of schedule control. Task schedule is sent to each WA; for each task, it needs to be divided into a number of jobs, and WAs schedule these jobs from different tasks. Therefore, the offshore project schedule problem can be divided into two parts: one is task planning and resource allocation, the other is workshop scheduling, schedule feedback, and resource usage feedback. Figure 3 shows the model of two-stage scheduling.

Two-stage scheduling model.
Multiple projects’ task schedule problem with resource constrains
In this stage, the main steps are shown in Figure 4. It can be seen from this figure that the SA plays a central role in searching knowledge base and collecting the history schedule. Then, the appropriate algorithm in algorithm library is used to obtain the optimized scheme.

Main steps of project’s schedule.
In multiple projects scheduling optimization, we have defined two schemes, strong-task planning and weak-task planning. Strong-task planning is always on the critical path which has a high production priority as a result of meeting contract requirements or belonging to milestone tasks. In weak-task planning, task schedule can be changed without affecting the strong-task planning. Defining two types of tasks is definitely an advantage for new project planning.
Offshore project is order-oriented which is suitable to use pull system for schedule. However, traditional project management systems like material requirement planning (MRP), MRP2, and ERP belong to push system, where logistics and information flow are combined closely and after the processing of upstream equipment, raw material is processed into final product and arrived at downstream through the production line. On the contrary, pull system is driven by the downstream demand. When demand is not stable, it is difficult to determine and maintain the level of inventory as well as make policy adjustments. Meanwhile, product range cannot be too large because it is not realistic to set permanent inventory for each product. Therefore, in pull system, the fault tolerance is poor, and the impact of a single production broken down is greater than the impact in push system. Considering the characteristics of order-oriented project and advantages of the modes of planning, we propose an optimization model based on JIT. Several projects with n tasks are considered. The precedence relations of tasks are shown by a task on node network with no loops that has
Further planning in workshop within the framework of projects scheduling
WAs also can fully use the knowledge base and algorithm library. WAs get the manufacturing tasks after the SA released the schedule and then determine the constraints depending on project schedule and the production capacity of workshop. Then, each task will be divided into several jobs, and WAs make the job schedule. WAs record the status of tasks and feed the information back; then, they analyze the probability distribution of task duration and resource usage distribution. The feedback data are used to revise the task standard duration and resource quota along with the iterations in the knowledge base.
In this stage, we use the time window scheduling mechanism by WAs. According to the project schedule, there are p jobs assigned to a workshop possessing M machines for processing. The job j is released to workshop at the time of
Flexible interaction model of SA and WAs
Project scheduling and workshop scheduling are not independent of each other. Project planning affects the scheduling of the workshop, on the contrary, the progress of the project also depends on of the workshop. The project tasks will be assigned to the WAs after project scheduling has completed as shown in Figure 5. There are two ways of distribution. First, we call it “Green Channel.” It is because the specific resource is in the exclusive workshop. Once a task enters the “Green Channel,” a matching information will start to work, which is recorded in a map by RAs when the SA makes the project task plan. Second, the remaining tasks will be put into the “Bidding Room.” At this point, WAs begin to bid in a negotiation presided by NA. For a certain project task assigned to the WA, the operations of three processes are shown in Table 1.

Task assignment model in two-stage scheduling.
The contact between two stages.
Algorithm for negotiation
Negotiation for critical resource conflict
In the process of offshore project scheduling, resource conflicts occur frequently. In order to solve this problem, PAs, RAs, SAs, and NAs participate together in conflict negotiation as shown in Figure 6. In this process, a special agent named bid agent is generated. Conflict negotiation can be regarded as a competition-cooperation process. Bid agent competes for opportunities to obtain its own profits, and they unite with NA to constitute a whole system to pursue the global optimization:
1. The NA identifies the goal
2. Generate bid agents
3. Initialize a set of evaluation function
4. NA establishes a set
Define a weighting parameter
5. Each PA gives its estimation for a bid agent according to the evaluation function and a single evaluation
6. Considering weighting element, the evaluation for each PA can be expressed as
7. If the scheme satisfies the minimum requirements of all PAs, the scheme will be added into the solution set and records the global evaluation value.
8. Repeat the operations from step (5) to step (7) and get estimations of all bid agents.
9. Compare the scheme in solution, set and get the best solution.
10. End.

Negotiation process among agents for critical resource conflict.
Negotiation for task assignment
Task assignment negotiation has been mentioned in section “Flexible interaction model of scheduling agent and workshop agents.” In this section, we will introduce the details of the negotiation process as shown in Figure 7. In this process, a special agent named evaluation agent is generated:
The NA identifies the goal
Determine the WAs
According to the attributes of task to be assigned, the NA proposes a set of evaluation criteria
Generate a set of evaluation agents
Propose the weighting coefficients
Each evaluation agent evaluates the criteria

Negotiation process among agents for task assignment.
The corresponding factor value is positively correlated with the target production, which means the bigger the better
The corresponding factor value is negatively correlated with the target production
It is an advantage to target production when the corresponding factor ranged between
Then a matrix
7. Establish a standard solution
8. Calculate the hamming approach degree and get the best evaluation
9. Considering the weighting coefficients, the final estimation
10. Turn to step (5) until all the WAs have been evaluated.
11.Compare the solution and get the optimal solution.
12. End.
Case study
Example of project and workshop scheduling
Based on the above framework of the MAS, a project task scheduling case is demonstrated in Table 2, and a multiple projects’ job scheduling case in one workshop is shown in Table 3. Each project can be optimized through algorithm in algorithm database, such as project Demo1. The optimization results are stored in the knowledge database as historical data, which provides another way for scheduling optimization. Then, adjust the results according to the actual situation of enterprise and project, such as project Demo2. In the process of optimization and adjustment, the conflict resolution mechanism is working.
A project task scheduling case.
A workshop job scheduling case.
A common solution of JSP is used in Table 3. However, the key point is the interaction in the two scheduling stages, which provides constraints and receives results to each other.
Verification for main functions of system
To verify the effectiveness of this system, we choose three projects named A, B, C, respectively, to conduct scheduling. Project A, project B, and project C are set to the same type, which is to say the WBS and activity properties of them are exactly the same, and the test data are acquired from the database provided by the enterprise. To get a better understanding for the comparison, we registered standard GA in task schedule module of the proposed system to implement calculation, and the final result exported by the system is shown in Figure 8. Due to the use of JIT model (the optimization target indicated by goals is displayed in Table 4), the results satisfy the actual requirements. Meanwhile, we use the same GA mentioned above to directly conduct scheduling for the three projects, and the result comparison between proposed system and GA is shown in Table 4. For Project A, the optimization results from the proposed system and the optimization algorithm that only adopts the GA are much equivalent. However, because of the various components that require to work collaboratively in the system, the running time is longer. In the premise of the optimization for project B and project C, the scheduled project will be re-adjusted. As for the proposed system, namely, the optimization for project B and project C is implemented on the basis of the optimization of project A. Additionally, as a result of the same type project among project A, project B, and project C, quick scheduling can be achieved in the system. It is can be seen that the optimization speed has been greatly improved as Table 4 indicated. The optimization of project B is a complete reference to project A, but this situation will not appear frequently. The common case is more like the scheduling for project C due to the reference to the historical data; after a quick scheduling, there will be a situation of resource conflict; at this time, the system calls the algorithm of negotiation for critical resource conflict to achieve the scheduling plan. Moreover, compared with the computation using GA, the optimization result is also satisfactory. It is worth noting that when scheduling a subsequent project, if applying the algorithm alone to get solution instead of using integrated system, it will consume more time, for the reason that it is necessary to confirm which of the activities in the scheduled projects have not been started yet. The system framework of the scheduling at the workshop-level is the same as the system framework of the first-stage scheduling, and the scheduling method is also similar, so that detailed description will not be mentioned here. The efficiency and effectiveness of the system on the scheduling optimization are closely related to the algorithm selected by the agents; in addition, these algorithms can be configured by the user at any time in the system to be as a supplement or to overwrite existing algorithms, and agents are able to choose algorithms autonomously by setting corresponding rules.

Final optimization results of project A, project B, and project C obtained by the proposed system optimization.
The comparison of scheduling result.
GA: genetic algorithm.
Development of the prototype system
According to the description above, we adopt B/S structure which consists of browser and server to develop our system. In this way, users can operate the agent via browser to realize collaborative scheduling process. In fact, it is common to use Java Agent Development Framework (JADE) to develop multi-agent based system. As a Java-based framework to develop agent-based application, JADE consists of an agent operating survival environment, a class library of agent development application, and a set of graphical tools for debugging and configuration. JADE simplifies the development process of a MAS. However, offshore project is a complex system engineering. Multiple heterogeneous systems need to interact with the schedule system in offshore enterprise. Therefore, our software architecture of the multi-agent-based offshore scheduling system is based on SOA. The framework based on SOA is flexible, customizable, open, reconfigurable, extensible, and maintainable, 35 which can customize personalized function aimed at different offshore products and interact with heterogeneous systems conveniently.
The proposed system has been applied and validated in our self-developed OPSS. And from the system, each type of agent is deployed as a web service. The information flow among the multi agents can be easily reconfigured. As shown in Figure 9, agent functions can be designed according to the requirements and activated for use after system registration. Similarly, in order to adapt to the practical problems, the designated algorithm can be added to the system which provides a unified management platform for the algorithms as shown in Figure 10.

Agent management of the proposed system.

Algorithm management of the proposed system.
For different workshops and different production projects, although the processes may have bigger differences, the agents can be easily reconfigured according to the logical and sequence relationships. 2 Then, the proposed scheduling method is flexible for different object. The proposed system has been applied and validated in our self-developed OPSS as shown in Figure 11.

Visualization application of the proposed system.
Conclusion and future work
In this article, according to the analysis of offshore project characteristics, a multi-agent-based two-stage scheduling system was proposed. In the proposed system, the agent-based system framework and functional definition of individual agents were presented. Two intelligent algorithms were designed to solve the resource conflicts and task assignment, respectively. The advantages of the proposed system can therefore be summarized as four aspects. (1) The proposed system is different from the current status that project scheduling problem and workshop scheduling problem are researched independently. Studying on the two issues combined together is better to meet the demand of complex construction project such as offshore project. (2) According to the characteristics of offshore project, we shape a two-stage scheduling problem and describe the process in each stage. What is more, the relationships of the two stages are analyzed and the two stages are combined as a continuous process. (3) Around the two-stage scheduling, an improved mathematical model is proposed which is appropriate in complex flexible scheduling environment. (4) The schedule system is developed based on SOA, which is convenient to communicate with external systems and add more intelligent functions and modules.
Ongoing and future work will be specialized in the improvement and extension of our system. Some more intelligent functions and modules will also be added into the system. Furthermore, algorithm library which contains schedule algorithm, data mining algorithm, and negotiation algorithm needs to be further enriched.
Footnotes
Handling Editor: Peter Nielsen
Declaration of conflicting interests
The author(s) declared no potential conflicts of interest with respect to the research, authorship, and/or publication of this article.
Funding
The author(s) disclosed receipt of the following financial support for the research, authorship, and/or publication of this article: The support was provided by National Natural Science Foundation of China (No. 51679059).
