A bio-inspired scheduling approach for machines and automated guided vehicles in flexible manufacturing system using hormone secretion principle

The product quality and production efficiency of a flexible manufacturing system have improved effectively by introducing the computer management and the material transportation system. The flexible manufacturing system performance greatly depends on the performance of the material transportation system. As a mobile robot controlled by a central controller, an automated guided vehicle has a strong ability for material transportation. This article studies a dynamic scheduling problem in a shop floor, where machines and automated guided vehicles run at a specified speed and specifies a mathematical model for the dynamic scheduling problem with the goal of makespan minimization. Meanwhile, inspired by the hormone secretion principle of the endocrine system, a bio-inspired scheduling optimization approach is developed to solve the dynamic scheduling problem in the flexible manufacturing system. To verify its practical application, the bio-inspired scheduling optimization approach and other scheduling approaches are tested, and the results illustrate that the bio-inspired scheduling optimization approach has better scheduling performance as well as optimizes the quality of integrated and real-time scheduling of machines and automated guided vehicles.


Introduction
In recent years, the problems of high production cost, low efficiency, and inadequate innovation ability of manufacturing enterprises, following the vigorous development of economic globalization, have become increasingly prominent. The manufacturing industry is the foundation of the economy. 1 According to its position in the global industrial chain, the mainstream manufacturing nations have launched industrial policies to promote the digital transformation of the manufacturing industry. discretization, intelligentization, and automation. The flexible manufacturing system (FMS) is composed of a unified information control system, material handling system, and digital control processing equipment, and the FMS can adapt to the transformation of processing objects. 2 Also, it can automatically adjust and achieve high-efficiency batch production of a variety of workpieces within certain limits and modify products to meet market demand timely. The FMS has advantages of high equipment utilization rate, relatively stable production capacity, high product quality, flexible operation, and large product adaptability. It has two main functions: one is processing and manufacturing and the other is ensuring that the production efficiency can be timely improved by production management.
As an important part of the FMS, the material handling system of a shop floor should be efficient and automated. 3 The automated guided vehicle (AGV) is an industrial vehicle that loads goods automatically or manually, automatically travels to a designated place according to a designed route, and then unloads goods by automatic or manual means. [4][5][6][7][8] With the support of the Internet of things (IoT) technology, the automated guided vehicles system (AGVS) has become highly skilled in manufacturing production lines, capable of transporting materials efficiently, accurately, and flexibly. [9][10][11][12][13][14][15] The AGVS can provide an efficient scheduling approach in short time using simple operations.
The AGV scheduling is not only safe but also can improve the workshop efficiency and reduce labor costs. [16][17][18][19] At the same time, AGV scheduling can reduce the makespan and total energy consumption of tasks, enabling enterprises to complete orders before the deadline. AGV scheduling helps enterprises realize intelligent management of the workshop. It makes the manufacturing system smarter and automated and more capable of handling complex and a large number of orders. The AGV scheduling implies that the controller communicates with AGVs, selects one AGV from all free AGVs, and guides the selected AGV to complete the transportation task following the designated route. The AGV scheduling can be divided into static AGV scheduling and dynamic AGV scheduling. Static AGV scheduling is to generate an optimized schedule in the beginning, and it does not change throughout the production process. However, such scheduling approach may be invalid in the case of a disturbance. In contrast, dynamic AGV scheduling is to allocate the AGVs based on the existing situation during the plan execution. 20 In recent years, the study on hormone diffusion and reaction in the human body has provided a new direction in the research of the dynamic scheduling problem in a shop floor. As well known, the hypothalamus controls the secretion and diffusion of the hormone through the pituitary to achieve the coordination of all the parts of the human body. The hormone secretion principle (HSP) can be applied to the integrated and real-time scheduling of machines and AGVs in a shop floor.
This article focuses on the dynamic scheduling problem in a shop floor and specifies a mathematical model for the dynamic scheduling problem. Meanwhile, this article designs the real-time coordination mechanism of machines and AGVs based on the HSP, and then based on the real-time coordination mechanism, this article proposes the bio-inspired scheduling optimization approach (BSOA) to reduce the makespan of a processing task. The efficiency of the proposed BSOA in solving the dynamic scheduling problem is thoroughly tested in an experimental platform, and the results show that the BSOA has superior scheduling performance in real-time scheduling in the FMS.
The remainder of this article is organized as follows. Section ''Literature review'' introduces the literature related to the AGV scheduling problem. Section ''Realtime coordination mechanism of machines and AGVs based on the HSP'' illustrates the HSP and the real-time coordination mechanism of machines and AGVs based on the HSP. Section ''Specifying a mathematical model for the dynamic scheduling problem'' presents the mathematical model of a dynamic scheduling problem. Section ''BSOA based on the real-time coordination mechanism'' proposes the principle of BSOA, the execution process of BSOA, and the coordination strategy of BSOA under disturbances. Section ''Experimental evaluation'' introduces an experimental platform and presents the experiment in which the BSOA is compared with the hybrid multi-objective genetic algorithm (HA) 21 and multi-agent system (MAS). 22 Section ''Conclusion'' gives the conclusion and the guidelines for our future work.

Literature review
Static AGV scheduling denotes an NP-hard problem. Numerous studies indicate that the heuristic algorithm can effectively solve an NP-hard problem, such as simulated annealing algorithm (SAA), 23 genetic algorithm (GA), 24 ant colony optimization (ACO), 25 and artificial neural network (ANN). 26 Mousavi et al. 27 developed a mathematical model and integrated it with evolutionary algorithms (GA, particle swarm optimization (PSO), and hybrid GA-PSO) to optimize the task scheduling of AGVs with the objectives of minimizing makespan and number of AGVs while considering the AGVs' battery charge. Lyu et al. 28 focused on the machine and AGV scheduling problem in a FMS by simultaneously considering the optimal number of AGVs, the shortest transportation time, a path planning problem, and a conflict-free routing problem (CFRP) and proposed a GA combined with the Dijkstra algorithm that is based on a time window. Demesure et al. 29 proposed the decentralized motion planning and scheduling of AGVs in a FMS. Mehrabian et al. 30 proposed two metaheuristic algorithms of Non-dominated Sorting Genetic Algorithm II (NSGAII) and Multi-objective Particle Swarm Optimization (MOPSO), which could effectively solve a two-objective mathematical programming model integrating flow shop scheduling and routing AVGs in an FMS. Fazlollahtabar and Hassanli 31 formulated the simultaneous scheduling and routing problem for AGVs as a network mathematical model and optimized the problem using a modified network simplex algorithm. Li et al. 32 considered a dynamic harmony memory of rate parameter and proposed an improved harmony search algorithm to solve the AGV scheduling problem in the workshop. However, when some disturbance events occur, the above static scheduling approaches are no longer valid and may even affect the normal operation of a workshop.
As mentioned before, dynamic AGV scheduling can allocate AGVs in real time or reschedule when disturbance events occur to reduce the impacts of disturbance events. From the control perspective, there are two types of dynamic AGV scheduling methods, centralized and distributed. [33][34][35] In a centralized AGV scheduling method, one controller manages all the AGVs. However, in a distributed AGV scheduling method, there are controlling subsystems consisted of different controllers. With the development of the intelligent manufacturing shop floor, a multiagent manufacturing system and a holonic manufacturing system have become distributed, providing the ability to implement a rational path allocation of AGVs. Nishi et al. 36 addressed a local rescheduling procedure for a distributed routing system of multiple AGVs in dynamic environments where the requests for transportation are given in real time. Umar et al. 37 proposed a hybrid multiobjective genetic algorithm for integrated dynamic scheduling and routing of jobs and AGVs in the FMS. This algorithm denotes an integrated approach that can ensure the feasibility of all the solutions generated for various subproblems. The hybridization of the local search algorithm and FLC can adaptively control the crossover and mutation, and it can optimize the scheduling quality greatly. Abbou et al. 38 proposed a method for AGV dynamic routing and scheduling based on max-plus inequalities. The experimental results confirmed that this approach was effective in small-size and medium-size problems. Xu et al. 39 proposed a double-level hybrid genetic algorithm and ant colony optimization (DLH-GA-ACO) to minimize the finish time with the minimum AGVs and limited time in the logistics dynamic scheduling problem. Tai et al. 40 proposed a prioritized path planning algorithm based on time windows to solve the delay problems of multiple AGVs.
Although there have been many studies on the AGV dynamic scheduling and routing path allocation, there have been only a few of them on simultaneous dynamic scheduling of machines and AGVs. Most studies focused on either machine scheduling or AGV scheduling as two separate problems and emphasized only a single-objective optimization. However, considering the relationship between the machining and transportation system, the scheduling process can significantly improve the overall FMS work efficiency. Baruwa and Piera 41 introduce a timed colored Petri net-based hybrid heuristic search approach for the simultaneous scheduling problem of the shop floor. The test showed that the proposed approach outperformed the traditional heuristic search algorithms, and it could provide a quicker first solution and improve ones at different time intervals. Furthermore, Erol et al. 22 introduced an MAS for integrated scheduling in the FMS. This system is based on the negotiation and bidding mechanism and generates a feasible scheduling solution based on the current situation. The experiment was conducted for several problems, and the proposed MAS was compared with five common off-line scheduling methods. The results showed that the MAS could improve the scheduling performance and reduce the makespan efficiently. However, when the shop floor environment became more complex, for instance, when the number of machines and AGVs increased, the system could not provide feasible scheduling solutions before the due date.
As it can be inferred from the above works, the scheduling problems in most of them are just static AGV scheduling problem and dynamic AGV scheduling problem. However, the simultaneous scheduling of AGVs and machines has not been taken into account, while, as mentioned before, considering the collaborative scheduling of the processing system and the transportation system is more in line with the actual production situation, which can improve the overall working efficiency of the manufacturing system. Therefore, based on the HSP of the endocrine system, we have proposed the BSOA to solve the job shop dynamic scheduling problem with transportation constraints.
Real-time coordination mechanism of machines and AGVs based on the HSP

HSP in the endocrine system
There are many glands in the endocrine system of human body, which can secrete hormones and spread them into the humoral environment. Different glands have different functions. They have their own unique hormone receptor, which can sense hormones in the humoral environment and only respond to certain hormones. For instance, as shown in Figure 1, gland ''A'' secretes hormone ''a'' stimulated by some hormones from other glands and releases hormone ''a'' to the humoral environment. Stimulated by hormone ''a,'' gland ''B'' then secretes hormone ''b.'' In addition, hormone ''c'' is secreted by gland ''B'' in the autocrine process. Finally, gland ''B'' feeds back hormones ''b'' and ''c'' to gland ''A.' ' Farhy 42 established the basic principle of hormone secretion in the endocrine system in 2004. The HSP conforms to the Hill function. The Hill function consists of the rising function (F u ) and decreasing function (F d ), which can be expressed as where C denotes the hormone concentration, n denotes the Hill coefficient, and n . 1, and T denotes a threshold of hormone concentration and T . 0. The Hill function has the three following properties: The characteristics of HSP are as follows.
1. Microscale and efficiency. Hormone concentration is very low in the blood, but because of the stepwise amplification of the effects of hormones, they generate significant physiological effects. 2. Diffusion through body fluids. The endocrine glands have no catheter, and the secreted hormones carrying various messages diffuse into the blood and flow throughout the human body. Hormone diffusion is non-directional, so hormones can travel throughout the body, but the cells react differently to the specific hormone. 3. Specificity. Hormones act selectively on target organs, target glands, or target cells. 4. Synergism and antagonism. In the endocrine system, different hormones have synergistic and antagonistic effects on the same gland. For instance, when the blood glucose level is low, the secretion of glucagon is increased to increase the blood glucose level, but as the blood glucose level increases, the insulin secretion will increase gradually, so that the blood glucose level does not rise too high. Accordingly, the blood glucose level remains normal all the time.
According to the above description, it is not difficult to find that the hormone secretion and reaction mechanism in the endocrine system can be applied to the real-time coordination mechanism of machines and AGVs in the FMS. See section ''Real-time coordination mechanism of machines and AGVs in the FMS'' for details. Meanwhile, the above fourth characteristic shows that the HSP makes the humoral environment in the endocrine system stable. In other words, the Hill function has good convergence property. Therefore, the Hill function also can be applied to the mutual selection between machines and AGVs in the BSOA to obtain a stable and safe workshop environment. See section ''Principle of BSOA'' for details.

Real-time coordination mechanism of machines and AGVs in the FMS
The mutual selection between machines and AGVs in the FMS is like the hormone secretion and reaction in the endocrine system. As shown in Figure 2, the similarities between the workshop scheduling and hormone regulation are as follows: 1. The shop floor acts as the endocrine system of the human body. 2. Machines and AGVs act as the endocrine glands.

Information transferred in the shop floor is like
hormones secreted by the endocrine glands. Information is diffused and reacted between the machines and AGVs.
The following steps can illustrate in detail the process of mutual selection between the machines and AGVs.
Step 1. The scheduling process begins when machines start operating. Machines need to assign the subsequent transportation tasks to the AGVs before the operation is completed. So, machines send specific information about transportation tasks to all the AGVs. Step 2. The AGVs extract the needed information from the information about the transportation tasks sent by machines, and each AGV calculates its own efficiency corresponding to each task. Then, each AGV selects the task that can be completed in the shortest time and feeds back the information to the corresponding machine.
Step 3. Each machine receives information from the AGVs and selects the AGV that can complete the task in the shortest time. Then, the machine assigns the task to the most suitable AGV. Specifying a mathematical model for the dynamic scheduling problem

Problem description and assumptions
The dynamic scheduling problem in this article includes a set of i AGVs , and each operation can only be processed on a specified machine for a certain time. In the beginning, all the AGVs and workpieces are stored in the loading/unloading location until the system allocates tasks. In the production process, when an operation O kr of a job J k has been finished on a machine M q , an AGV is required to convey that the job J k moves from the machine M q to another machine M w corresponding to the next operation O k(r + 1) . And after each job is completed, AGV needs to transport the corresponding workpiece back to the loading/unloading location. The objective of this problem is minimizing the makespan (T). The production process should meet the following constraint conditions: [43][44][45] 1. Each AGV can run without breakdown. 2. There are some AGVs responsible for transportation tasks in the beginning, and all workpieces can be transported by any of them. 3. The next operation cannot begin until the current operation is finished in the same job, and there is no sequence constraint between different jobs. 4. All the AGVs have the unit-load capacity and run at the same speed. 5. Each AGV or machine can carry out at most one task at a time. 6. The transportation time matrix of the AGV between loading/unloading location and each machine is known. 7. All the jobs, machines, and AGVs are available at time zero. 8. The loading or unloading time of the AGV is considered in transportation time.

Makespan minimization
At the beginning, the workpiece corresponding to each job needs to be transported from the loading/unloading location to the specified machine for the first operation.
In addition to the above, as shown in Figure 3, there are two manufacturing processes for each operation of each job in the entire production process: operation task execution and transportation task execution. In other words, after each operation is finished, the corresponding workpiece will be transported by AGV to the machine corresponding to the next operation. It should be noted that after the last operation of each job is finished, the corresponding workpiece will be transported back to the loading/unloading location by AGV. Next, the basic unit (operation task execution and transportation task execution) in the production process is analyzed to get the objective function.
The meanings of all the variables presented in Figure 3 are shown in Table 1.
It should be noted that T o and T t are given variables, while all other variables are indeterminate. When the operation task is executed, T s and T o are determined. Then, T c can be expressed as There are three states of AGV: idle, waiting, and transport in the production process. The idle state means that at the beginning, the AGV is in the loading/ unloading location and has not performed any transportation tasks. The waiting state means that the AGV has completed the transportation task and is waiting in place for the next transportation task. The transport state means that the AGV is transporting the workpiece.
When the machine starts to perform an operation task, the machine begins to select the appropriate AGV to perform subsequent transportation task. During the selection process, AGV needs to calculate a variable (T u ) as the basis for selection. All AGVs that are anyone of the above three AGVs can calculate variables and be selected to perform transportation tasks. Other AGVs cannot be selected to perform transportation tasks, that is, if an AGV is transporting a workpiece and is assigned an additional transportation task, it cannot be selected. Based on the above description and the variable T c , the process of calculating variable (T u ) is as follows.
In different states of the AGV, T l has different values.
When the AGV is in the idle or waiting state, T l can be expressed as where t denotes current time, t 1 denotes the required transportation time between the current location and pickup location of the AGV, and T ep denotes the earliest pickup time of the current operation task. During the scheduling process, T ep will become a known quantity, that is, T ep = T c . T l and T c are related in this way. When t ł T ep , the AGV reaches the next machine to pick up the workpiece. At that time, the next machine may be processing the workpiece, or it may has finished the processing, and it is waiting for the AGV to pick up the workpiece. Therefore, when the next machine is processing the workpiece, T l is equal to T ep ; when the next machine has finished the processing and is waiting for the AGV to pick up the workpiece, T l is equal to the sum of t and t 1 ; and finally, when t . T ep , T l is equal to the sum of t and t 1 .
When the AGV is in the transport state, T l can be expressed as where T ef denotes the earliest finish time of the current transportation task of the AGV and t 2 denotes the required transportation time between the destination of the current transportation task and the pickup location. During the scheduling process, T ef will become a known quantity. When T ef ł T ep , the AGV reaches the next machine to pick up the workpiece. At that time, the next machine may be processing the workpiece or maybe it has finished the processing and is waiting for the AGV to pick up the workpiece. Therefore, when the next machine is processing the workpiece, T l is equal to the T ep ; when the next machine has finished the processing and is waiting for the AGV to pick up the workpiece, T l is equal to the sum of T ef and t 2 ; and finally, when T ef . T ep , T l is equal to the sum of T ef and t 2 .
After T l has been calculated according to the above description, T u can be expressed as where T t denotes the required transportation time between the pickup location and destination location of the AGV.  The completion time of an operation task T o The operation time T l The loading time of a transportation task T u The unloading time of a transportation task T t The transportation time Therefore, the makespan can be expressed as where T denotes the makespan and T 0 u denotes the unloading time of the last performed operation task, that is, the arrival time of the last workpiece returning to the loading/unloading location.

BSOA based on the real-time coordination mechanism
To solve the dynamic scheduling problem in the FMS, a BSOA based on the real-time coordination mechanism is proposed. The BSOA is a real-time scheduling approach and can implement the distributed coordination control of machines and AGVs to reduce the makespan.

Principle of BSOA
Hormone secretion mechanism of machines. When the machine cell starts to perform an operation task, the need for a transportation task emerges. The machine cell secretes a hormone (U m ) and releases information about the hormone and TT (transportation task) into a shop floor to search for an appropriate AGV. U m can be expressed as where c denotes a positive constant. The derivative of U m to t represents how urgently machines need the AGVs.
The hormone secretion mechanism of machines at c = 4, T c = 40, and T o = 40, obtained by equation (7), is shown in Figure 4.
When t \ T c , U m \ c and U m increases slowly with time. It indicates that the demand for the AGV to complete the transportation task is not urgent. When t ø T c , U m ø c and U m increase rapidly with time. It indicates that the demand for the AGV to complete the transportation task is urgent.

Hormone secretion mechanism of AGVs
Value for evaluation stimulated by U m . When an AGV that is in the idle, waiting, or transport state is stimulated by U m , the AGV calculates the value for evaluation (H S1 ), where H S1 denotes a kind of hormone secretion speed of the AGV and represents the influence of U m on the AGV. H S1 can be expressed as where a 1 denotes the influence coefficient of U m on the hormone secretion speed of the AGV, S b is the basal secretion speed of the AGV, and S b ø 0; F d and F 0 d represent two decreasing functions with the different Hill coefficients (n). Through the analysis of equation (7), U m \ c means that t \ T c and U m ø c means that t ø T c . In addition, in the decreasing function (F d or F 0 d ), T that denotes a threshold of hormone concentration is equal to c. Combined with the Hill function, equation (8) can be expressed as H S1 = a 1 c n 1 U m n 1 + c n 1 + S b t\T c a 1 c n 2 U m n 2 + c n 2 + S b t ø T c ( ð9Þ where n 1 and n 2 are the Hill coefficients and n 2 . n 1 . When a 1 = 0.6, c = 4, n 1 = 2, n 2 = 3, S b = 0, T c = 40, and T o = 40, combined with equation (7), H S1 obtained by equation (9) is shown in Figure 5.
The AGV is inhibited by U m , and H S1 decreases with time. When t ø T c , U m accelerates the inhibition of hormone secretion of the AGV. It ensures that the transportation task with higher U m is preferred.
Value for evaluation stimulated by T u. . An AGV can be stimulated not only by U m but also by T u . The efficiency of the AGV in completing the transportation task is determined by the difference between T u and T 0 s , where T 0 s represents the earliest expected start time of the next operation of the job under the constraints, that is, T 0 s is the sum of T c and T t , and T u can be calculated by equation (5). Stimulated by T u , the AGV calculates the value for evaluation (H S2 ), where H S2 is a kind of hormone secretion speed of the AGV and represents the influence of T u on the AGV. H S2 can be expressed as where a 2 denotes the influence coefficient of T u on the hormone secretion speed of the AGV. In addition, in the Hill function (F d or F u ), T that denotes a threshold of hormone concentration is equal to T 0 s . Combined with the Hill function, equation (10) (11) is shown in Figure 6.
When T u \T 0 s , the hormone secretion speed of the AGV decreases following the Hill decreasing function (F d ); when T u ø T 0 s , the hormone secretion speed of the AGV increases following the Hill rising function (F u ). When T u is close to 50, H S2 is low, which shows that the AGV has better ability to complete the task. Therefore, the AGV can be easily selected in this case. When T u is far away from 50, H S2 is high, which shows that the AGV has poor ability to complete the task. Accordingly, the AGV has a low chance to be selected.
Value for evaluation stimulated by U m and T u. . In summary, when an AGV is stimulated by both U m and T u , the AGV calculates the total value for evaluation (H S ) and releases the information about H S into a shop floor, where H S represents the influence of T u and U m on the AGV; namely, H S denotes the total hormone secretion speed of the AGV, and it can be expressed as Combined with the Hill function, equation (12)   Combined with equation (7) and some given coefficients and variables, H S can be calculated according to equation (13) for the selection of AGV by machine.

Allocation and decision-making of transportation tasks
Selection of transportation task by AGV. An AGV selects the transportation task that can be completed in the shortest time according to T 0 l , where T 0 l is the weighted loading time reflecting the work efficiency of an AGV. The smaller T 0 l is, the more efficient AGV is; T 0 l can be expressed as  Combined with equation (7) and some given coefficients and variables, T 0 l can be calculated according to equation (14) for the selection of transportation task by AGV. In other words, when many transportation tasks stimulate the AGV at the same time, the AGV will select the transportation task with the smallest T 0 l .
Selection of AGV by machine. The machine selects an appropriate AGV according to the hormone secretion speed (H S ) of an AGV because the secretion speed includes the demand information of the machine for AGV and the performance of AGV in carrying out the transportation task. The smaller the H S is, the better the AGV's ability to perform the transportation task is. Therefore, when a machine receives information about H S from different AGVs, the machine will assign the transportation task to the AGV with the smallest H S .
Mutual selection mechanism of machines and AGVs. As shown in Figure 7, the AGV selects the transportation task with the smallest T 0 l , and the machine assigns the transportation task to the AGV with the smallest H S using the BSOA. Through the mutual selection mechanism, the BSOA can achieve the goal of integrated scheduling of machines and AGVs and efficiently solve the dynamic scheduling problem in the FMS.

BSOA execution process
According to the principle of the BSOA, as shown in Table 2, the execution process of the BSOA includes the following steps.
1. At the beginning, when the first operation of the workpiece corresponding to each job needs to be processed, some AGVs transport these workpieces to the corresponding machines. 2. In the scheduling process, when the machine cell starts to process a certain operation of a job, the demand for transportation is triggered, and the machine cell starts to find the appropriate AGV to perform the subsequent transportation task. One transportation task corresponds to one machine cell and one hormone. The machine cells secrete hormones (U m ) in accordance with equation (7) and release information about U m and the transportation tasks into a workshop. 3. When all AGV cells receive the information from the corresponding machine cells, the AGV cells will check their status. For all hormones (U m ), if the AGV cell is in the idle, waiting, or transport state, continue to step (4); otherwise, the AGV cell will feed back the maximum H S to all machine cells secreting the hormones (U m ) and the BSOA will proceed to Step 6. 4. For each hormone (U m ), each AGV cell calculates T 0 l by equation (14) and selects the transportation task with the smallest T 0 l . For one AGV cell, if some results (T 0 l ) corresponding to some transportation tasks are equal, the AGV cell will be marked and select these transportation tasks with some equal results (T 0 l ). 5. After the selection, each AGV cell computes its H S by equation (13) and feeds back H S to the machine cell releasing information about the selected transportation task. If one AGV cell selects multiple transportation tasks, the marked AGV cell needs to compute each hormone (H S ) corresponding to each selected transportation task and mark all hormones (H S ). Then, the marked AGV cell feeds back marked hormones (H S ) to all machine cells releasing information about the selected transportation tasks. 6. When each machine cell receives the information about H S from one or more AGV cells, each machine cell will assign the transportation task to an AGV cell with the smallest H S . If one AGV cell secretes more than one marked hormone (H S ) and multiple machine cells select the same AGV cell according to the smallest H S principle, compare the second smallest hormones (H S ) of these machine cells that select the same AGV cell, and then, the machine cell with the biggest second smallest H S selects the AGV cell, and other machine cells select the AGV cells secreting the corresponding second smallest hormones (H S ). If multiple machine cells select the same AGV cell in the second selection, the allocation will continue according to the above principle, and so on. 7. Repeat Steps 2-6 until all transportation tasks are assigned. 8. Finally, the makespan (T) is calculated by equation (6).

Coordination strategy of BSOA under disturbances
Due to the increasing use of multi-variety and smallbatch production methods in the manufacturing system, the manufacturing system often encounters interference from many disturbance events. These events are mainly classified into the following three categories: 1. Order-related events: including urgent order insertion, order modification, and so on. 2. Process-related events: including product rework, repair or scrap, and so on. 3. Machine-related events: including machine damage, production capacity conflict, and so on.
Therefore, the production site is more dynamic and random. Once the disturbance events occur in a shop floor, each device will adopt a coordination strategy according to the current state of the workshop to ensure continuous and stable operation of the workshop. This article studies the dynamic scheduling problems when machine fails and emergency orders arrive.
Machine failure. In the production process, the failures of machines often occur. When this disturbance event occurs, it is necessary to transfer the processing task on the faulty machine to other machines with similar processing capacity to ensure the continuity of the production process.
When a disturbance occurs in the system, the coordination strategy can coordinate the devices to solve the problem autonomously. If a machine in the workshop fails, the faulty machine will immediately send a message to the controller to report the fault information, and the controller will update the data immediately after receiving the information. So that the faulty machine can no longer assign tasks. Instead, tasks are assigned by other normal machines with similar functions.

Bio-inspired scheduling optimization approach
Begin Size = mJobs*N k Operations*iAGVs*jMachines; Input the information about the task and layout; while (all transportation tasks are not assigned) do for (x = 0; x\size of operations to be executed; x = x + 1) do Calculate U m ; end for for (y = 0; y\AGV size; y = y + 1) do if (AGV is free) then for (x = 0; x\size of operations to be executed; The AGV selects the transportation task with the smallest T 0 l ; The AGV calculates H S and feeds back it to the corresponding machine; end if if (AGV is not free) then The AGV feeds back the maximum H S to every machine; end if end for for (x = 0; x\size of operations to be executed; The machine assigns the transportation task to the AGV with the smallest H S ; end for end while Report the best schedule; End Emergency order insertion. With the intensification of market competition, the processing tasks of manufacturing system often change abruptly, such as the insertion of emergency orders. When the tasks of traditional manufacturing system change, it is necessary to stop production to rearrange the production schedule. In the BSOA, when a new order is added, the controller will add the new order to the production scheduling after AGVs complete the transportation tasks. Meanwhile, in order to complete the new order as soon as possible, a higher processing priority can be set for this task, so that the machine can give priority to processing the task for the new order.

Platform description
In order to test the proposed BSOA, the experimental platform shown in Figure 8 was built. The physical platforms were built using physical entities such as automatic storage/retrieval system (AS/RS), AGVs, MCs (manufacturing cells), and robots. They were connected via Wi-Fi and performed actual manufacturing operations. The controller worked to make decisions for the physical entities based on the updated information from the physical platform. In order to realize the visualization of the controller, a visual platform was developed. On the visual platform, operators could view the production process and adjust and configure the parameters.

Experiment and results
Experimental setup. To illustrate the superior performance of the BSOA, the instances were used to compare the BSOA performance with the performances of the HA 21 and the MAS 22 in a shop floor. In the experiment, the makespan was used as a performance indicator. The HA denotes a static AGV scheduling approach, and it determines the lower bound of the makespan, while the MAS represents a dynamic AGV scheduling approach.
The layout configurations used in the experiment are shown in Figure 9. There are two AGVs and four machines in every layout, and arrows represent the movable direction of AGVs. Table 3 lists the corresponding transportation time of the AGVs between the machines and AS/RS point. In Table 3, the locations in the first column represent the starting points of AGVs, and the locations in the first row represent the destinations of AGVs. Table 4 gives the data for the tasks used in the experiment.
In this study, Visual Studio 2010 was used as a development environment, and the C++ programming language was used to develop the BSOA. The experiment was conducted on a computer with Intel(R) Core (TM) i5-6200U CPU at 2.30 2.40 GHz, and 8.00 GB RAM under Windows 10. Also, 24 instances were processed by all three algorithms (HA, MAS, and BSOA). The BSOA parameters used in the experiment are provided in Table 5.
Results analysis. According to the variable T t /T o , the instances used in the experiment were divided into two groups: instances that corresponded to T t /T o . 0.25   Table 6. In Table 6, the two numbers following ''IN'' represent the task number and the layout configuration. For the instances corresponding to T t /T o \ 0.25, the operation time was doubled, and the transportation time was split. In Table 6, D e1 represents the deviation of the MAS in comparison to the HA, D e2 represents the deviation of the BSOA in comparison to the HA, D e3 represents the deviation of the BSOA in comparison to the MAS, and A d represents the average deviation.
In Table 6, it can be seen that the BSOA outperformed the MAS on most instances. As expected, the static AGV scheduling approach (HA) had the lower bound of the makespan because all the information was known in advance and did not change throughout the process.
For instances that corresponded to T t /T o . 0.25, A d of the BSOA to the MAS was 23.51%. As shown in Figure 10, 66.67% of makespans of the BSOA was less than that of the MAS, which indicates that the BSOA performed better than the MAS on eight instances. For IN61, the makespan of the BSOA was equal to the makespan of the HA. For instances that corresponded to T t /T o \ 0.25, A d of the BSOA to the MAS was 28.49%. As displayed in Figure 11, 83.33% of makespans of the BSOA were less than of the MAS, which indicates that the BSOA performance was better than that of the MAS for instances that corresponded to T t /T o . 0.25. It can be observed in Table 6 that the scheduling capability of the BSOA was closed to that of the HA because A d of the BSOA to the HA was 4.86%. For most instances shown in Figure 11, the BSOA results were close to the HA results. To summarize, the BSOA achieved the best performance among all the tested algorithms in integrated scheduling in the FMS.
From the perspective of the computational complexity of the proposed BSOA, Gap represents the deviation of the objective function value, which can be defined as (BF 2 BP)/BF*%, where BF represents the best solution that can be found, and BP represents a possible optimal solution, which is the lower limit of all the current solutions. It should be noted that the smaller the value of Gap is, the better the result is, and at Gap = 0, the optimal solution to the problem can be obtained. Therefore, Gap is often used as a measure of the  computational complexity of a model or an approach. Based on the above analysis, BP is the makespan of the HA (the off-line scheduling approach), and BF is the makespan of the BSOA. So, the corresponding Gap is shown in Table 7. As shown in Table 7, the average Gap of 24 instances was 14.69%. Therefore, it has been proved that the proposed BSOA is superior in the computational complexity. The Gantt chart of instance IN22 at T t /T o . 0.25 is shown in Figure 12, where the AGV number represents the job and transportation. For instance, the number ''11'' in AGV1 represents the first transportation of the first job. In other words, the number ''11'' means that AGV1 travels from AS/RS point to M1. The machine number represents the job and the operation. For instance, the number ''11'' in M1 represents the first operation of the first job. As can be seen in Figure 12, a new round of selection in the shop floor began at 24 min. At 24 min, AGV1 and AGV2 had the ability to carry out the transportation task. In the same time, operations ''61,''''52,'' and ''32'' needed to be executed. In Step 3, AGV1 and AGV2 selected the operation ''61'' with the smallest T 0 l at the same time. In Step 5, AGV1 and AGV2 computed H S and fed back the computed value to M1, and finally, M1 assigned the transportation task to AGV2 with the smallest H S .
There are very few studies and applications which make use of HSP in scheduling machines and AGVs simultaneously in the literature. Therefore, the present study has a contribution in filling this gap. The experimental results indicated that the BSOA outperformed the MAS in most simulation tests and its scheduling ability even was close to that of the HA for some examples. These results have shown that the BSOA have a promising performance for integrated scheduling of AGVs and machines in real time.

Conclusion
This article proposes an approach (BSOA) for the dynamic scheduling problem in the FMS. First, this article specifies a mathematical model for the problem. And then based on the HSP, the real-time coordination  mechanism of machines and AGVs is designed. Finally, the BSOA is proposed for the dynamic scheduling problem with the goal of makespan minimization. During the scheduling process, the AGVs and machines make appropriate choices based on the BSOA results. The proposed approach is verified experimentally, and the experimental results show that the BSOA has better scheduling performance in integrated scheduling in the FMS compared with common dynamic scheduling approaches, and in some cases, its performance is even close to that of the static scheduling algorithms. This study, based on the HSP of the endocrine system, shows great potential in solving the shop floor scheduling problem. Namely, the BSOA can help to reduce the total makespan and to improve the performance of dynamic scheduling. The main contributions of this article are threefold. First, this article effectively solves the problem of integrated and dynamic scheduling of machines and AGVs in the shop floor. Then, this article uses the HSP of the endocrine system to build a mutual selection mechanism between the machines and AGVs to achieve the real-time scheduling. Finally, the traditional method is that the machine only can trigger the selection after completing one operation and only can choose the idle AGV. However, in the BSOA, when the machine starts processing, it begins to select the appropriate AGV to perform subsequent transportation task, ensuring the processing continuity between operations. In the same time, the machine can choose the AGV in the transport state, and it greatly reduces the makespan of the task and improves the scheduling performance.
However, further research is necessary to improve the proposed method in solving the real-time production scheduling problem with more objectives and practical constraints, such as deadlock, delay, conflict, and rush orders. In addition, how to adjust the parameters of BSOA to achieve better real-time scheduling in a flexible job shop is another issue which will also be addressed in our future work.