Multiobjective Heuristic Scheduling of Automated Manufacturing Systems Based on Petri Nets

In practice, automated manufacturing systems usually have multiple, incommensurate, and conflicting objectives to achieve. To deal with them, this paper proposes an extend Petri nets for the multiobjective scheduling of AMSs. In addition, a multiobjective heuristic A search within reachability graphs of extended Petri nets is also proposed to schedule these nets. The method can obtain all Pareto-optimal schedules for the underlying systems if admissible heuristic functions are used. Finally, the effectiveness of the method is illustrated by some experimental systems.


I. INTRODUCTION
Automated Manufacturing Systems (AMSs) are a kind of computer-controlled systems that consist of limited resources and can handle different types of parts. In order to execute the automated manufacturing system effectively and make full use of system resources, it is necessary to coordinate and control the use of shared resources. However, this scheduling problem is NP-hard, because the computational time increases exponentially with system size [1].
Petri nets (PNs) are a graphical and mathematical modeling tool that is suitable for modeling distributed, concurrent, parallel, asynchronous in discrete event systems. Recently, they have become a popular tool to model and analyze AMSs [2]- [5]. Petri nets can concisely describe the activities, resources, and constraints in such systems. method that execute an intelligent search within the reachability graphs to schedule AMSs. It uses A * search and heuristic functions to restrict the search space. Base on the method, some improve methods are proposed in literature [7]- [11]. We also developed some approaches to improve the search process, such as a hybrid heuristic A * search [12], dynamic weighted A * search [13], and more informed heuristics [14].
However, the above methods focus on single-objective scheduling problem for AMSs. In practice, the scheduling of AMSs often includes multiple, incommensurate, and, conflicting objectives, such as cost, makespan, and tardiness. When compared with the single-objective approaches, the multiobjective scheduling problems are more difficult and often need to search and find a set of Pareto-optimal or nondominated schedules. In this paper, we propose a multiobjective A * search algorithm within reachability graphs of Petri nets to obtain Pareto-optimal schedules for AMSs.

II. PRELIMINARIES
A. Petri Nets A Petri net [3] is defined as a four-tuple N = (P, T, F, W) where P = {p1, p2,· · · , pm},m > 0 is a set of places; T = {t1, t2,· · · , tn}, n > 0 is a set of transitions such that P∩ T = ∅; F ⊆ (P × T)∪ (T × P) is the set of directed arcs connecting places and transitions; W:  [16], and S * PR [17]. All of them consist of several state machines that share a set of resources. Their places are divided into three disjointed types: idle places P0, operation or activity places PA, and resource places PR. The differences between them are mainly the number and types of resources that can be used at each processing step of a part and the structures of processing subnets.

B. Heuristic A * Search
There are several informed heuristic graph search algorithm, such as best-first (BF), BF * , Z, Z * , and A * , and they use heuristic information to decide which node to expand next.
Among them, A * is the most popular heuristic search algorithm in use.
By using an admissible heuristic function, the A * algorithm only needs to explore a partial graph to find an optimal schedule from an initial node to a goal node if such a schedule exists. It's used evaluation function is applied on each node n, where g(n) is the current lowest cost obtained from the initial node to the current node n, h(n) is a heuristic function that estimates of the lowest cost path from n to the goal node among all paths, and f(n) is an estimate of the lowest cost from the start node to the goal node among all paths going through n. A * iteratively expands the search space from the start node until the node to be expanded reaches the goal node. Once the goal node is found, a path is constructed by tracing the pointers that denote the parenthood of the nodes, from the goal node to the start one. Then, the order of the executable activities, i.e., the system schedule, is obtained. In addition, the obtained schedule is optimal if the used heuristic function f is admissible, that is, for any reachable state n, h(n) less than or equal to h * (n) in which h * (n) denotes the cheapest cost from n to the goal node.
Although Petri nets showed promise as an effective tool to formulate and solve the scheduling problems of AMS's, the actual generation of given much attention in the Petri net community. Recently, there have been some independent efforts to use Petri nets to generate schedules for AMS's.
Shih and Sekiguchi present an AMS scheduling system which simulates the evolution of the AMS as modeled by Petri nets. The scheduling system calls for a beam search routine whenever there is a conflict. The beam search routine then constructs partial schedules within the beam-depth and evaluates them to choose the best one. The cycle is repeated until a complete schedule is achieved. This method based on partial schedules does not guarantee global optimization. Onaga presents a linear programming approach for periodic scheduling of systems modeled by Petri nets. Shen presents a scheme which starts with an arbitrary schedule and applies branch and bound search to find an optimal schedule. Zhang presents a method which translates rules of a rule-based planning system into a timed Predicate/Transition net model and applies the A * algorithm to find an optimal schedule. The scheduling method presented in this paper formulates a scheduling problem using a Petri net model, and employs global search and limits the search space by the use of heuristic functions. The methods generate an optimal or near optimal feasible schedule in terms of the firing sequence of the transitions of the Petri net model. This method is also event driven as opposed to time driven, i.e., the schedule is provided as an order of the initiations of the activities. Most of the current scheduling approaches can be considered as time driven, i.e., the schedule is a list of time instants when certain activities are to happen. This approach may not always be best for the scheduling of automated manufacturing systems that are, by nature, discrete event driven. Event driven scheduling focuses on the precedence constraints of the activities and is robust to disturbances.
There are many targets for optimization in manufacturing.
For example, the minimization of makespan and/or tardiness is one of the frequently adapted goals. The maximum utilization of critical machines is also often considered. Generating a schedule with the minimum or near minimum makespan is the focus in this paper. In timed Petri nets, time can be associated with either places (timed place Petri nets), or transitions (timed transition Petri nets). Generally, a timed transition removes tokens from its input places and takes some time before it introduces tokens to its output places. Therefore, between the initiation and the termination of firing, the marking (the state of the system) is uncertain. Depending on whether timed transitions or timed places are used, activities are associated with transitions or places. respectively. In the case of timed transitions, multiple initiation or firing of transitions must be allowed to represent concurrency of activities. Therefore, the time associated with each initiated transition must be tracked in order to correctly update the marking, or state. Since the initiated transitions may not be tracked in applications of Petri net modeling, an additional tracking method is required.  Let u be the number of objectives to be considered in the scheduling problem. Let PS be the set of start places that represent the start of jobs in an AMS and PE be the end of start places that represent the end of jobs in the system. We define an extended PN for the multiobjective scheduling as (N, D) where N = (P, T, F, W) with P = PS ∪ PE ∪ PA ∪ PR and D denotes a |P| × u attribute matrix on activity places, in which each row represents different non-commensurate costs on a place.

A. Extended Petri Nets
For example, consider an AMS adapted from [18] as an example. The AMS system has two robots R3 and R4, each of which holds one part at a time, and four machines R1, R2, R5, and R6, each of which processes one part at a time, two loading buffers I1 and I2, and two unloading buffers O1 and O2. Two part types, P1 and P2, are processed in the system by using the following routings. P1 is taken from I1 by R3, and after being handled by R2(or R5) and R6, it is moved to O1 by R4. P2 is taken from I2 by R4, and after being handled by R1 and R2, it is moved to O2 by R3. For each part type, six part units are to be processed. Suppose that two objectives that minimize the cost of time and money are considered in the system scheduling. Its attribute matrix D for places is given in Table I where two elements in parentheses represent the operation time and money required by an operation depicted by a place. Its extended Petri net is shown in Fig. 1

B. Domination Relations between Different Paths
Consider a finite set of objectives Oi, i ∈ {1,...,m} with m ∈ Z+. A solution path can be evaluated by a cost vector (C1, ..., Cm) ∈ Z m + where Ci represents the cost of the path with respect to Oi. Thus, the comparison of different paths becomes the comparison of their cost vectors.
Definition 1: Let y, y* be two different vectors in Z m +. We say y dominate y*, denoted as y ≤p y*, if y is at least as good as y* with respect to all elements, i.e., y ≤p y* ⇔ [∀i ∈ {1,...,m},yi ≤ y* i].
Definition 2: Let Y be a set of vectors in Z m + and y* be a vector in Y. y* is said to be non-dominated (or Pareto-optimal) in Y if there does not exist another vector y ∈ Y such that y dominates y*.
Note that, in the reachability graph of an extended Petri net, there often exist different paths from a node to another node with different cost vectors. Accordingly, a path P in the reachability graph is said to be non-dominated (or Paretooptimal) if there does not exist another path whose cost vector dominates the cost vector of P.
For any dominance relation defined on a set X, we will use the following definitions: Definition 3: Any element x ∈ X is said to be ≤-optimal in X if, for all y ∈ X, y ≤ x ⇒ x ≤ y. If x is not ≤-optimal then it is said to be ≤-dominated.
Definition 4: A subset Y ⊆ X is said to be a ≤-covering of X if for all x ∈ X there exists y ∈ Y such that y ≤ x. Whenever no proper subset of Y is a ≤-covering of X, then Y is said to be a minimal ≤-covering of X.
The aim of multiobjective search is to find a ≤p-covering of the set of solution-paths.

C. Multiobjective Scheduling Algorithm
In this subsection, a multiobjective A * search (denoted as MOA * ) within reachability graphs of extended Petri nets is proposed. The proposed algorithm can find all non-dominated paths from an initial state to a goal state in the reachability graph of a given extended Petri net for an AMS. The MOA * algorithm is given in Algorithm I in which a state of the extended Petri net is defined as S = (M, R) where M denotes a marking and R denotes remaining attribute matrix which represents remaining costs of each place at a specific marking.

Algorithm I: MOA * Algorithm for Amss Based On
Extended Petri Nets Input: An extended Petri net of an AMS, an attribute matrix D, an initial state S0, and a goal state SG. Output: All Pareto-optimal paths from S0 to SG. In Algorithm I, the list OPEN contains nodes that are considered as potential candidates for expansion, the list CLOSED used in MOA * to keep track of nodes that have been generated, but are not on OPEN, and the list SOLUTION are collection of solution paths that have been discovered prior to the start. Note that a transition t in an extended Petri net is enabled at a state S = (M, R) if and only if S.M[t⟩ and the remaining costs of the tokens required by the International Journal of Machine Learning and Computing, Vol. 11, No. 2, March 2021 firing of t are all zero. Introducing SOLUTION helps to collect multiple solutions and illustrates that there may be more than one nondominated paths with different attributes.

D. Heuristic Functions for Multiobjective Search
Similarly as the multiobjective A * algorithm in [19], the proposed MOA * search within the reachability graphs of extended Petri nets has an important property of Paretooptimality.
Definition 5: In MOA * , a heuristic function H is said to be admissible if ∀S ∈ R (N, S0), H(S) is non-dominated in the cost vectors of all paths from the current state S to the goal state SG.
Theorem 1: MOA * with an admissible heuristic function H can find all Pareto-optimal solutions if such solutions exist.
The admissible scheduling algorithm can always find an optimal path if H(S) satisfies the following condition: where H * (S) is the attributes of optimal paths going from the current state S to the goal state SG. They aim to achieve a fairly good solution at a reasonable cost [20].  Table II. The second AMS comes from [7] and it has an intermediate buffer between any two consecutive operations to hold parts that are ready for the next operation. The system consists of four input buffers I1-I4, four output buffers O1-O4, and three resources R1-R3. Four types of parts, J1-J4, are considered in the system. Their processing sequences are as below. The attribute matrix is given in Table III. Note that the places with nonzero attribute vectors represent the operations to be performed with some specific resources. Its Petri net is shown in Fig. 2 which has 24 transitions and 31 places where PS = {p1, p8, p15, p22}, PE = {p7, p14, p21, p28}, PR = {p29, p30,  p31}, and the rest places belong to activity ones PA. For such a net, four sets of lot size are tested by the proposed MOA * algorithm with different heuristic functions. The multiobjective scheduling results are given in Table IV.  The third AMS example is a more complex system adapted from [15]. The attribute matrix is given in Table V. Its Petri net model is shown in Fig. 3 where idle places in its original net have been split into start places and end ones for the sake of scheduling. The net has 20 transitions and 29 places in which start places are {p1, p5, p14}, end places are {p27−p29}, resource places are {p20−p26}, and the rest places are activity ones. Table VI to Table VII give the Pareto schedules in the form of a sequence of transition firings and its fire attributes when the lot size is fixed at 1 for each job. It has two Pareto results, which are (25, 17) and (27, 14), both of them can be the best.    V. CONCLUSIONS Practically, we usually need to consider multiple criteria in the AMS scheduling, such as the minimal makespan, the least money, and the least tardiness. This paper proposes a multiobjective A * search approach within the reachability graphs of Petri nets of AMSs. It can obtain all Pareto-optimal schedules when an admissible heuristic function is adopted.
In the future, we will research on how to design moreinformed heuristic functions for the proposed method. In addition, how to speed up the search process by using some relaxation strategies for large-scale systems also interests us.