In this section, a self-adaptive collaboration method is proposed for IoT-enabled production-logistics systems. TCPN is used to develop the model of production-logistics systems. The mechanism of self-adaptive collaboration between production and logistics is investigated. Conflict-free routing is not dealt with in the proposed TCPN model.
3.1. Problem Definition and Notations
In this part, the production-logistics problem and corresponding notations are given as follows. Generally, an FMS consists of a set of computer numerically controlled machines and a material-handling system. AGVs are widely used to facilitate the transport of raw materials, work in process (WIP), finished products, and waste materials between warehouses and production cells. Consider an FMS that contains a set of machines and a set of AGVs. A set of jobs is to be processed on a list of machines in a predetermined order. A machine can perform one operation once. The warehouse and every production cell has an input buffer and an output buffer served as the unloading point and the loading point respectively. Both the number and the loading space of AGVs are limited.
The notations used in the problem statement, algorithm description, and throughout the paper are as follows:
: machine
: job
: an operation that job is processed on machine
: job should be firstly processed on machine and then on machine
: current time
: starting time of operation
: processing time of operation
: remaining time of operation
: priority of logistics task between operation and operation
: volume of parts transported from machine to machine
: remaining space of AGV at time
: path length of road segment
: speed of AGV
: time cost of AGV passing road segment
: time cost of AGV arriving at machine
: time cost of AGV going from machine to machine
: total waiting time
: waiting time between operation and operation
: waiting time of job on machine before processing
: waiting time of job on machine after processing
: makespan
: completion time of job
: completion time of operation
: total electricity consumption
: electricity consumption of machine
: electricity consumption of AGV
: average power of machine when processing
: average power of machine when idle
: average power of AGV
Assuming that a feasible schedule plan is given as in
Figure 2, first, the job
is processed on the machine
. The starting time of operation
is
. The processing time of operation
is
. The completion time of operation
is
. The remaining time of operation
is
. Then, after the operation
, the WIP is transported to the next machine
. The waiting time between operation
and operation
is
. The waiting time of the job
on machine
before processing is
. The time cost of AGV
going from machine
to machine
is
. The waiting time of the job
on machine
after processing is
. Next, the job
is processed on the machine
. The starting time of operation
is
. The processing time of operation
is
. The completion time of operation
is
. The completion time of the job
is
.
3.2. Timed Colored Petri Net Model
Colored Petri nets (CPNs) form a graphical language for constructing models and analyzing properties of concurrent systems and distributed systems, which extends PNs with data types, functions, and modules.
A CPN is a directed bipartite graph that includes two types of nodes, namely the place and the transition [
22]. The nodes are connected via directed arcs. The place is used to describe resources and status in the system, which contains colored tokens. The colored token is used to describe the entity attributes. The transition is used to describe the event in the system, which can be fired based on the preconditions of input arc expressions and guards. In a CPN, places, transitions, arcs, and guards are graphically represented by ellipses, rectangles, arrows, and parentheses respectively.
In order to evaluate the performance of the model system, TCPNs are introduced with a global clock to represent the model time [
23]. Each token has a time attribute called the time stamp which describes the earliest time at which a token becomes available. Hence, both the temporal behavior and the logical behavior can be described by TCPNs explicitly in a concise manner.
The definition of a TCPN can be formalized as follows [
24].
A TCPN is defined as a nine-tuple,
which satisfies the following conditions:
is a finite set of places.
is a finite set of transitions, and .
is a finite set of directed arcs, .
is a finite set of non-empty color sets.
is a node function defined from into .
: is a color set function that assigns a color set to each place.
:
is a guard function that assigns a guard to each transition
such that:
:
is an arc expression function that assigns an arc expression to each arc
such that:
where
is the place of
.
:
is an initialization function that assigns an initialization expression to each place
such that:
denotes the type of the variable
.
denotes a set of variables in the expression
.
Based on the description of the production logistics problem, TCPN is used to model production and logistics in an FMS. The TCPN model of the self-adaptive collaboration method is established as shown in
Figure 3.
In the TCPN model, the meaning of each transition has been briefly explained in
Table 1.
Table 2 explains the meaning of each place. The global color set declarations are given in
Table 3.
Figure 3 shows the TCPN model of the self-adaptive collaboration method. This model refers to the basic cycle of production-logistics systems, which consists of twenty-three places and fourteen transitions. Conditional statement expressions are assigned to the directed arcs
,
,
,
,
,
,
, and
. The cycle starts with checking workers and materials to be processed in production cells. Transition
denotes the check of workers while transition
denotes the check of materials. If the workers or materials are not ready, they will be requested. Otherwise, the materials will be processed on the machine. Transition
describes machine processing as well as publishing a logistics task. The two processes are performed at the same time. The remaining time of the current operation of the machine is calculated and considered as a critical parameter for selecting an AGV. While a logistics task is published, all AGVs actively request the task. A token in the place
represents the status information of an AGV, including current location and remaining space, which are collected by embedded devices or sensors. Thus, the machine can perceive the status of the AGV. Transition
represents the quality detection of the WIP after machine processing. Unqualified WIP will be reprocessed or abandoned based on the detection standards. Transition
denotes the reprocessing or the scarp. If the WIP is unqualified and needs to be reprocessed or abandoned, this cycle ends and the next cycle begins. Only the qualified one will be sent to the out-buffer of the production cell and wait to be transported to the next production cell. Transition
represents selection of an AGV. The nearest AGV with remaining space will be selected as one of the feasible options. Based on the current tasks and routes, the selected AGV will decide whether to accept the logistics task or not. Finally, the most appropriate AGV will be selected to finish the logistics task.
and
represent that the AGV goes to the out-buffer and then picks and loads the pallet which carries the WIP.
and
represent that the AGV goes to the destination and unloads the pallet on the in-buffer of the next production cell. After the selected AGVs have finished their deliveries, the smart machine will select the nearest AGVs with enough remaining space to conduct the transportation of other jobs. Then, this cycle ends and next cycle begins.
3.3. Mechanism of Self-Adaptive Collaboration
In this part, based on the depiction of the proposed TCPN model, the mechanism of self-adaptive collaboration for production-logistics systems is investigated. The objective of the proposed TCPN model is to minimize the waiting time of all jobs, the makespan, and the electricity consumption of all machines and AGVs. Three KPIs including waiting time, makespan, and electricity consumption are considered.
The KPI waiting time is used to calculate the total waiting time of all jobs. The waiting time represents the time between two sequential operations of the same job. The total waiting time of all jobs is mathematically formulated to minimize the objective
as follows:
In Equations (1) and (2), the waiting time is composed of three parts, namely the waiting time after processing , the transport time , and the waiting time before processing . can be reduced by calling for AGVs once the job begins being processed on machine . The transport time refers to the time cost of transporting materials between machines. can be reduced by selecting the nearest available AGV and planning a time-saving route. is influenced by the former two parts and is related to the production schedule.
The KPI makespan is used to calculate the maximum completion time of all jobs. The makespan is mathematically formulated to minimize the objective
as follows:
In Equations (3) and (4), denotes the completion time of the job , denotes the starting time of the first operation of the job , denotes the processing time of the job , and denotes the total waiting time of the job . To reduce the makespan, the processing sequence or the processing speed of machines can be adjusted based on realities of the situation.
The KPI electricity consumption is used to calculate the total electricity consumption of all machine tools and AGVs. The total electricity consumption is mathematically formulated to minimize the objective
as follows:
In Equations (5)–(7), denotes the electricity consumption of machine , denotes the electricity consumption of AGV , denotes the power of the machine , denotes the average power of the machine when processing, denotes the average power of the machine when idle, and denotes the average power of AGV . To reduce the total electricity consumption, the running time of all machines and AGVs should be shortened.
In the proposed TCPN model, the smart machine can calculate the remaining time of current operations. The remaining time of operation
can be formulated as follows.
where
denotes the remaining time of operation
,
denotes the completion time of operation
, and
denotes the current time.
While the machine processing begins, the smart machine actively publishes a logistics task for the WIP being processed. All AGVs actively request the logistics task and provide with real-time status information, such as current location and remaining space. The smart machine will select AGVs which are nearest and have enough remaining space. For example, if an available AGV can arrive at the smart machine within the remaining time of current operation, the waiting time of the operation after processing will be reduced to 0. The optimization of matches between logistics tasks and AGVs can be formulated as follows.
In Equations (9) and (10), denotes the time cost of AGV arriving at the machine , denotes the remaining time of operation , denotes the volume of WIP transported from machine to machine , and denotes the remaining space of AGV at the current time .
While a logistics task is published, the smart AGV will actively request the task. If several machines choose a smart AGV simultaneously, the smart AGV makes a decision based on the priority of these tasks as well as the remaining space. The priority of tasks can be formulated as follows:
where
denotes the priority of logistics task between operation
and operation
,
denotes the starting time of operation
, and
denotes the current time. Based on the proposed priority, the logistics task can be categorized into two types, namely the urgent logistics task and the normal logistics task. If
, then the task is an urgent task. Otherwise, the task is a normal task. For the urgent logistics task, the next machine is idle and waiting for the task. For the normal logistics task, the next machine is not available and the WIP being transported has to wait in a list. The smart AGV will select logistics tasks that have the highest priority and the volume of tasks must be less than the remaining space of the AGV. Then, the smart AGV can compute the time cost of feasible routes to go to the start point and transport the WIP to the destination. The time cost
for AGV
arriving at the machine
can be formulated as follows:
In Equations (12) and (13), denotes the time cost of AGV passing road segment at current time , denotes the path length of the road segment , and denotes the current speed of AGV . Thus, a feasible route with the least time cost will be selected as the optimal route. The optimization of routes selection is implemented constantly during the transport and in real time.
In this paper, based on the real-time status information of machines, AGVs, and WIP, the objective functions are implemented in the application layer of the cloud service platform and the results are input into the TCPN model through the colored tokens located in the places.