Dynamic configuration and collaborative scheduling in supply chains based on scalable multiagent architecture
 79 Downloads
Abstract
Due to diversified and frequently changing demands from customers, technological advances and global competition, manufacturers rely on collaboration with their business partners to share costs, risks and expertise. How to take advantage of advancement of technologies to effectively support operations and create competitive advantage is critical for manufacturers to survive. To respond to these challenges, development of a dynamic scheme to better manage collaborative workflows is urgent. In this paper, we will study how to develop a flexible and scalable framework to dynamically and coherently configure workflows that can meet order requirements based on multiagent systems (MAS). Configuring and scheduling collaborative workflows is a challenging problem due to the computational complexity involved, distributed architecture and dependency among different partners’ workflows. To achieve flexibility and reduce the cost and time involved in configuration of a supply chain network, we propose an approach that combines MAS, contract net protocol, workflow models and automated transformation of the workflow models to dynamically formulate the scheduling problem. To attain scalability, we develop a solution algorithm to solve the optimization problem by a collaborative and distributed computation scheme. We implement a software system based on industrial standards, including FIPA and the Petri net workflow specification model. In addition, we also illustrate effectiveness and analyze scalability of our approach by examples. Our approach facilitates collaboration between partners and provides a scalable solution for the increasing size of supply chain networks.
Keywords
Supply chain Configuration Scheduling Scalability Multiagent systemIntroduction
Frequently changing demands, global competition and technological advances pose new challenges to the manufacturing sector. Traditional centralized hierarchical organizations cannot effectively respond to rapidly changing demands, innovative production processes and highly dynamic business partnership in supply chains. How to take advantage of the advancement of technologies to effectively support the operation and create competitive advantage is critical for enterprises to survive. To reap the potential technological benefits, new organizational structure and strategy must be developed to effectively manage the business processes/workflows, resources and changes in business environment to support interenterprise collaboration.
Manufacturers rely on cooperation and collaboration of business partners to share costs, risks and expertise as no single company has all the expertise needed. The partners need to collaborate to achieve a business goal by forming a supply chain network. A supply chain is a system of organizations, people, activities, information and resources involved in transforming resources, materials and components into a finished product that is delivered to the end customer. Please refer to the book by Hugos (2018) for an introduction to supply chain management and the recent works by Moktadir et al. (2018a, b) on sustainable supply chain management and robustness of supply chains by Monostori (2018). The systemic, strategic coordination of the traditional business functions and the tactics across these business functions within a particular company and across businesses within the supply chain for improving the longterm performance is the essence of supply chain management (Mentzer et al. 2001). Lambert et al. defined supply chain management as, “the integration of key business processes from end user through original suppliers, that provides products, services, and information that add value for customers and other stakeholders” (Lambert et al. 2006). The concept of virtual enterprises (VE) makes it possible to achieve business goals through dynamic coalition and sharing of core competencies and resources in supply chains. It also poses new challenges and issues (Petrie and Bussler 2003). A wide variety of research issues and topics of VE have been studied, including cooperation/coordination by CamarinhaMatos and PantojaLima (2001), formation by Afsarmanesh and Analide (2009), CamarinhaMatos et al. (2009), Hoffner et al. (2001), partner selection by CamarinhaMatos and Cardoso (1999), Hsieh and Lin (2012), planning and control by Soares et al. (2000), McFarlane and Bussmann (2000), dynamic network process management by Grefen et al. (2009), dynamic process composition by Hsieh and Chiang (2011) and design and implementation of automated procurement systems by Jagdev et al. (2008) in VE. Recently, Samdantsoodol et al. (2017) studied how to predict the relationships between VE and agility in supply chains. Kovács and Kot (2017) studied economic and social effects of novel supply chain concepts and VE. However, scalability of supply chains and VE is not addressed. Scalability is an important issue but there is little study in the context of supply chains and VE. Scalability is defined by Putnik et al. (2013) as the design of a system with adjustable structure to enable system adjustment in response to market demand changes. Scalability is a system’s feature that provides potentials for resolving a number of problems in supply chains design and operation of VE.
In the existing literature, several issues of supply chain management have been studied. Liu and Chung (2017) considered a twostage supply chain problem in which the first stage is to produce jobs by several suppliers and the second stage is to transport those jobs by a number of vehicles. A centralized mathematical model is established to describe the problem and develop a solution algorithm. However, the scheduling problem for multistage supply chain was not addressed in [a]. Ivanov et al. (2016) studied a twostage supply chain with job shop processes at each supplier stage. Ivanov et al. introduced a robust analysis of schedule coordination in the presence of disruptions in capacities and supply to derive managerial insights for scheduling problem and dynamic control methods for supply chain coordination. However, an extended study of Ivanov et al. (2016) is required for multistage supply chain. To respond to business opportunities, an important issue is to develop a flexible, reconfigurable and scalable technology for integration of collaborative workflows or processes of partners in supply chains.
In this paper, we will focus on dynamic configuration and collaborative workflow scheduling in VE to attain flexibility, reconfigurability and scalability. The problem is to develop a solution methodology for the partners to configure their resources and create workflow schedules to fulfill customers’ orders timely under workflow and resource constraints. An effective scheme for managing collaborative workflows in supply chain networks should provide a methodology that is flexible, reconfigurable and scalable to respond to business opportunities. We will propose architecture and design methodology to reduce cost and time in the development of software for managing collaborative workflows. In addition to develop software to support workflow scheduling in supply chains, we also study the scalability of our approach in terms of response time. Response time is an important performance index in measuring scalability of a supply chain management method. To be applicable in supply chains, response time should be acceptable as the number of partners in the network grows. We exploit recent advancements in multiagent systems, scheduling theory and algorithms to propose a scalable method to dynamically and collaboratively configure and schedule workflows in supply chains.
To achieve flexibility, reconfigurability and scalability, several requirements must be met. First, the workflow of a company in supply chains must be described and specified by a standard format. Second, the multiagent system platform used for implementation must also support information infrastructure and interaction protocols/mechanism defined by industrial standard organization to attain interoperability between agents. Third, the scheduling algorithm must be developed based on dynamic publication and discovery of services. Fourth, the scheduling method must be scalable by taking advantage of distributed computing architecture based on a divideandconquer strategy. Fifth, to achieve interoperability, all information in the negotiation processes, including call for proposals, proposals, awarding of contracts and establishment of contracts, must be described based on a standard format such as XML.
To propose a pragmatic, sustainable, flexible and scalable methodology for solving the workflow management problem, a proper architecture and suitable models must be adopted. Nilsson (1998) and Ferber (1999) indicated that the distributed architecture of multiagent systems (MAS) and agents’ characteristics of autonomy and cooperation make MAS a potential model for managing collaborative workflows. Cooperative distributed problem solving (CDPS) by Durfee et al. (1989) is a technique for loosely coupled network of problem solvers to work together to solve problems that are beyond their individual capabilities. It is an approach for solving a problem based on coordination and cooperation in multiagent systems (MAS). Our solution methodology combines MAS architecture by Ferber (1999) and Nilsson (1998) with Petri net models (Murata 1989) and CDPS.
In our architecture, the workflow to be performed by an agent is represented by a workflow agent and each resource is modeled by a resource agent. The study by Wang et al. (2007) shows that MAS provide a flexible architecture for capturing the main features of VE and agentbased computer integrated manufacturing systems. In MAS, the most wellknown protocol for coordination and negotiation is the contract net protocol (CNP) by Smith (1980). There are a lot of works by Parunak (1987), Ramos (1996), Neligwa and Fletcher (2003), Hsieh and Lin (2014a, b) on distributing tasks in MAS with CNP. Our approach takes advantage of CNP and the service publication/discovery capabilities of MAS defined by FIPA. To facilitate representation of workflows, a modeling tool or specification language is required to represent atomic services. In the existing literature, many workflow specification languages have been proposed, for example XPDL by Workflow Management Coalition (1999) and Web Services Business Process Execution Language (WSBPEL) by OASIS (2009). However, these workflow specification languages lack formal analysis method. The works by van der Aalst (1998), van der Aalst and Kumar (2001) and Weske et al. (2004) indicate that Petri net is an effective model for modeling and analysis of workflows. To endow each agent with the knowledge to perform operations in the workflows, we construct the timed Petri net (TPN) model for each workflow agent and resource agent. The Petri Net Markup Language (PNML) by Weber and Kindler (2002) and Billington et al. (2003) is an XMLbased interchange standard for Petri nets. Therefore, we adopt PNML as the format for representing the Petri net models. Our approach uses a software module to formulate the scheduling problem based on the Petri net models and the order requirements. The cost and time involved in the development of scheduling software can be significantly reduced. The collaborative workflow scheduling problem can be decomposed into a number of interrelated workflow scheduling subproblems that are solved by individual agents. To schedule workflows, we first transform the TPN models into network models and then develop a scheduling algorithm by combining network models, Lagrangian relaxation and subgradient algorithm. We illustrate our dynamic configuration and collaborative workflow scheduling method by examples.
Based on the proposed dynamic configuration and workflow scheduling method, we will present the analysis to show that our method is scalable in terms of response time as the size of supply chain network grows. The response time is the longest response time of all directed paths that start with a leaf node and end with the final node of a supply chain network. We also illustrate scalability of our approach by examples. We have compared our approach with an industrial centralized problem solver used in the existing literature. In the work by Liu and Chung (2017), a twostage supply chain is considered and a centralized mathematical model is established to describe the problem and develop a solution algorithm. Both our analysis and numerical results in “Scalability analysis and verification by examples” section indicate that our approach is much more efficient than the centralized industrial problem solver as the supply chains grow.
The remainder of this paper is organized as follows. In “Dynamic configuration and workflow scheduling of supply chain networks” section, we describe the dynamic configuration and workflow scheduling problem in supply chains and introduce our approach in “A modelbased collaborative scheduling approach” section. In fourth section, we propose a “Subgradient method for scheduling collaborative workflows.” In “Agent interaction model for collaborative scheduling” section, we introduce our agent interaction model for configuring and scheduling collaborative workflows. We present the experimental results by examples in “Numerical results” section. In “Scalability analysis and verification by examples” section, we conduct scalability analysis and verify our analysis by examples. We conclude this paper in “Conclusions” section.
Dynamic configuration and workflow scheduling of supply chain networks
Note that formation of a supply chain network and scheduling of workflows in the supply chain network are two related problems. In practice, a twostage process is usually adopted to find a solution. At the first stage, generation of a supply chain network is done first. At the second stage, scheduling of workflows is then done for the generated supply chain network. However, such a twostage process may not lead to satisfactory results as the configuration of a supply chain network will influence the performance of workflows. In addition, a supply chain network formed at the first stage may not be able to generate feasible schedules to meet the order requirements due to insufficient capacity of the resources provided by the partners. Therefore, an effective approach should generate the supply chain network and schedules simultaneously and dynamically. Workflow scheduling in a supply chain is a complex issue. In supply chains, the requirements of an order are specified by the product demands, price and due date. The decisions of a company depend on those of its upstream partners and have influence on its downstream partners. The decisions of different companies in a supply chain must be coherent so that the customers’ order requirements can be met timely and cost effectively. Development of an effective workflow scheduling method is an important research issue in supply chain management.
Note that \({\text{SCM}}({\text{WA}} \cup {\text{RA}},E)\) only defines the structure of a supply chain. A supply chain must be constructed dynamically to respond to business opportunities. In addition, the operations of \({\text{SCM}}\) must be scheduled properly for each \(a \in {\text{WA}} \cup {\text{RA}}\). Therefore, the workflow management problem in \({\text{SCM}}\) can be broken down into two related subproblems: (1) configuration/formation of \({\text{SCM}}({\text{WA}} \cup {\text{RA}},E)\) and (2) scheduling of operations/workflows for each agent involved in \({\text{SCM}}({\text{WA}} \cup {\text{RA}},E)\) to meet the order requirements, including product demand and due date. The aforementioned problem calls for the development of a problemsolving mechanism to determine whether there exist \({\text{WA}}\), \({\text{RA}}\), where \({\text{WA}} \subseteq {\mathbf{WA}}\) and \({\text{RA}} \subseteq {\mathbf{WR}}\), and associated schedules \(S_{a}\) for each \(a \in {\text{WA}} \cup {\text{RA}}\) such that the order requirements can be met. To solve this problem, a divideandconquer approach that combines distributed computation capability of MAS, formal models of agents’ workflows/activities and optimization theory is adopted. We develop a solution methodology to solve the dynamic supply chain configuration and collaborative workflow scheduling problem based on interaction of agents and application of optimization technique to individual agents. To facilitate negotiation between order agents, workflow agents and resource agents, formal models for workflow agents and resource agents are proposed in the next section.
A modelbased collaborative scheduling approach
Petri nets are a powerful tool to model workflows and activities in a supply chain. To model the workflow agents and resource agents, a brief introduction to Petri net can be found in the paper by Murata (1989). A timed Petri net (TPN) \(G\) is a fivetuple \(G = (P,T,F,m_{0} ,\mu )\), where \(P\) is a finite set of places, \(T\) is a finite set of transitions, \(F \subseteq (P \times T) \cup (T \times P)\) is the flow relation, \(m_{0} :P \to Z^{\left P \right}\) is the initial marking of the TPN with \(Z\) as the set of nonnegative integers and \(\mu :T \to R^{ + }\) is a mapping that specifies the firing time for each transition performed by \({\text{RA}}\). The marking of \(G\) is a vector \(m \in Z^{\left P \right}\) that indicates the number of tokens in each place and is state of the system. In TPN, \({}^{ \cdot }t\) denotes the set of input places of transition \(t\) and \(t^{ \cdot }\) denotes the set of output places of transition \(t\). A transition \(t\) is enabled and can be fired under a marking \(m\) if and only if \(m(P) \ge F(p,t)\;\forall p \in {}^{ \cdot }t\). Firing a transition once removes one token from each of its input places and adds one token to each of its output places. To model the activity of a workflow agent in Petri net, we use a place to represent a state in the workflow while a transition to represent an event or operation that brings the workflow from one state to another.
Definition 3.1
The workflow of a workflow agent \(w_{n}\) is an acyclic timed marked graph ATMG \(W_{n} = (P_{n} ,T_{n} ,F_{n} ,m_{n0} ,\mu_{n} )\). As each transition represents a distinct operation in a task, \(T_{j} \cap T_{k} = \varPhi\) for \(j \ne k\). Individual workflow must satisfy certain timing constraints so that overall collaborative workflow can meet the timing requirements. The timing constraints for a workflow agent are determined by the timing constraints imposed on downstream workflow agent.
A workflow cannot be performed without using the required resources. In each step of the workflow, specific resource requirements must be met to start its operation. Each operation in a workflow consumes a number of different types of resources. An activity is a sequence of operations to be performed by certain type of resources. A cycle indicates that the resource activity includes resource allocation and deallocation. Each resource has an idle state and each resource activity starts and ends with an idle state. The Petri net model for the kth activity of resource agent \(a_{r}\) is described by a Petri net \(A_{r}^{k}\) that starts and ends with the resource idle state place \(p_{r}\) as follows.
Definition 3.2
To formulate the scheduling problem for a collaborative scheduling agent, we first obtain the parameters from the corresponding timed Petri net models. In our system, each order agent places only one order. To formulate the problem, we define the following notations.
 \(O\)

The number of order agents, i.e., \(O = \left {\varvec{OA}} \right\).
 \(N\)

The number of workflow agents, i.e., \(N = \left {\varvec{WA}} \right\).
 \(K_{n}\)

The number of different resource activities involved in \(W_{n}\).
 \(k\)

The index of the \(k\) th resource activity, \(A_{r}^{k}\), in \(W_{n}\); \(k \in \left\{ {1,2, \ldots ,K_{n} } \right\}\).
 \(T\)

The total number of time periods.
 \(t\)

A time period index; \(t \in \left\{ {1,2,3, \ldots ,T} \right\}\).
 \(\Re\)

The set of all resources in the system.
 \(C_{rt}\)

The capacity of resource \(r\) at time period \(t\), where \(C_{rt} = m_{r0}^{k} (r)\).
 \(r_{k}\)

Resource agent that performs the \(k\) th resource activity, \(A_{r}^{k}\), in \(W_{n}\).
 \(\mu_{r}^{k} (t_{s}^{k} )\)

The firing time for starting transition \(t_{s}^{k}\) of the \(k\)th activity, \(A_{r}^{k}\).
 \(\mu_{r}^{k} (t_{e}^{k} )\)

The firing time for ending transition \(\mu_{r}^{k} (t_{e}^{k} )\) of the \(k\)th activity, \(A_{r}^{k}\).
 \(\pi_{nk}\)

The processing time \(\pi_{nk}\) of the \(k\)th resource activity \(A_{r}^{k}\) in \(W_{n}\).
 \(D_{n}\)

The quantity of products demand for order \(o\).
 \(d_{n}\)

The due date of order \(o\) that is placed to workflow agent \(w_{n}\).
 \(S_{nkt}\)

The input buffer constraint of the \(k\)th resource activity of \(W_{n}\) at time period \(t \in \left\{ {1,2,3, \ldots ,T} \right\}\).
 \(u_{onkt}\)

The number of parts of order \(o\) loaded onto the corresponding resource \(r_{k}\) for processing the \(k\)th resource activity in \(W_{n}\) during time period \(t\), where \(u_{onkt} \ge 0\) and \(u_{onkt} \in Z^{ + }\) is the set of nonnegative integers.
 \(z_{ot}\)

The number of parts of order \(o\) in workflow \(W_{n}\) finished during time period \(t\).
 \(x_{onkt}\)

Be the number of parts of order \(o\) at the input buffer of the \(k\)th resource activity in \(W_{n}\) at the beginning of period \(t\), where \(x_{onkt} \ge 0\) and \(x_{onkt} \in Z^{ + }\) is the set of nonnegative integers.
Note that the due date \(d_{n}\) for workflow agent \(w_{n}\) is set by its downstream workflow agents in the negotiation processes.
Given \(W_{n}\), \(A_{r}^{k}\), \(\pi_{nk}\), \(D_{n}\) and \(d_{n}\), where \(n \in \left\{ {1,2,3, \ldots ,N} \right\}\) and \(k \in \left\{ {1,2,3, \ldots ,K_{n} } \right\}\), the problem for scheduling the parts in \(W_{n}\) requested by the orders is formulated as follows.
Note that constraints (3.1) are the capacity constraints, constraints (3.2) state the number of parts of order \(o\) in workflow \(W_{n}\) finished during time period \(t\) and constraints (3.3)–(3.5) are the flow balance equations. Constraints (3.6) state the buffer level of intermediate parts.
Subgradient method for scheduling collaborative workflows
In this paper, we combine optimization theory with multiagent system architecture to allocate resources and perform the operations of workflows. We adopt a divideandconquer approach to perform optimization locally by each workflow agent involved and determine whether the temporal constraint can be satisfied based on the solutions of individual workflow agents. Optimization is achieved by each workflow agent that applies the Lagrangian relaxation technique to develop a solution algorithm for workflow scheduling. To apply optimization scheme, an optimization problem is formulated based on transformation of the corresponding time Petri net model. The structure of the scheduling problem faced by each workflow agent can be represented by a minimum cost flow (MCF) problem. The Lagrangian relaxation technique provides a systematic way to determine the cost of each arc in MCF.
Our approach to finding a solution of \(\max_{\lambda \ge 0} L(\lambda )\) is based on an iterative scheme for adjusting Lagrangian multipliers according to the solutions of MCF subproblems.
Let \(l\) be the iteration index. Let \(v^{l}\) denote the optimal solution to MCF subproblems for given Lagrange multipliers \(\lambda^{l}\) at iteration \(l\). We define the subgradients of \(L(\lambda )\) with respect to Lagrangian multipliers \(\lambda^{l}\) as follows: \(g_{onkt}^{l} = \sum\limits_{o = 1}^{O} {\sum\limits_{n = 1}^{N} {\sum\limits_{{\tau = t  \pi_{nk} + 1}}^{t} {u_{onk\tau } } }  C_{{r_{k} t}} } ,\quad \forall k = 1, \ldots ,K_{n} ,\;\forall t = 1, \ldots ,T\)
The subgradient method proposed by Polyak (1969) is adopted to update \(\lambda\) as follows:\(\lambda_{onkt}^{l + 1} = \left\{ {\begin{array}{*{20}l} {\lambda_{onkt}^{l} + \alpha^{l} g_{onkt}^{l} } \hfill & {{\text{if}}\quad \lambda_{onkt}^{l} + \alpha^{l} g_{onkt}^{l} \ge 0} \hfill \\ 0 \hfill & {\text{otherwise}} \hfill \\ \end{array} } \right.,\)
where \(\alpha^{l} = \frac{{\beta [\bar{L}(\lambda^{*} )  L(\lambda^{l} )]}}{{\sum\nolimits_{k,t} {(g_{onkt}^{l} )^{2} } }}\) and \(\bar{L}\) is an estimate of the optimal dual cost and \(0 < \beta < 2\).
Iterative application of the subgradient algorithm will converge to an optimal dual solution (\(u^{*}\), \(\lambda^{*}\)). It should be emphasized that Lagrangian relaxation does not guarantee the optimal solution to the underlying problem. Thus, the solution generated may not satisfy the complementary slackness conditions. In case the solution is not feasible, we must develop a heuristic algorithm to find a feasible solution. In our system, we implement a simple heuristic algorithm that removes the excessive flows from the arcs with capacity violation by setting the arc capacity to zero and reroutes the excessive flows to other part of the network based on MCF algorithm.
Agent interaction model for collaborative scheduling
Interactions among resource agents, workflow agents, order agents and collaborative scheduling agents are through a mechanism that extends the wellknown contract net protocol originally proposed by Smith (1980) by taking into account the dependency between workflows in supply chains. In contract net protocol, there are two roles an agent can play: manager or bidder. Four stages are involved to establish a contract between a manager and one or more bidders: (1) call for proposals (CFP): The manager announces a task to all potential bidders. The announcement contains the description of the task. (2) Submission of proposals: On receiving the tender announcement, bidders capable of performing the task draw up proposals and submit them to the manager. (3) Awarding of contract: On receiving and evaluating the submitted proposals, the manager awards the contract to the best bidder. (4) Establishment of contract: The awarded bidder may either commit itself to carry out the task or refuse to accept the contract by sending messages to the manager. For the latter case, the manager will reevaluate the bids and award the contract(s) to another bidder(s).
Each workflow may rely on some type of products from other workflows and may produce some other type of products. Each workflow agent has an internal process flow, the required input types and output types. This leads to dependency between workflows. Due to the dependency between workflows, the original contract net protocol must be extended to be applied to solve the collaborative scheduling problem in supply chains.
We have implemented a software system based on the methodology proposed in this paper. Each agent has a graphical user interface (GUI) and a software module to interact with other agents in the system. The requirements of an order agent are specified by a GUI and are represented and stored in XML format. In addition, a workflow agent consists of a proper GUI to specify its properties and represent its workflow model. The workflow model is described by a timed Petri net model. The properties of a workflow agent are described by an XML file. The activities of the workflow to be performed by resource agents are also represented by timed Petri net models. The capabilities of a resource agent are defined by a GUI and are also described by an XML file. The order requirements are the inputs of order agents and are represented in XML in our system. The inputs of workflow agents are the workflow Petri net models represented in PNML, and the inputs of resource agents are the activity Petri net models represented in PNML.
Numerical results
Based on the algorithms proposed in the previous section, we verify our method by examples. We first use a small example to illustrate the functions of the software developed in this paper. We then present the results for several examples by applying our software.
Example 1
Firing time of transitions
Transition  Firing time 

\(t_{1}\)  \(\mu_{r1}^{1} (t_{1} ) = 2\) 
\(t_{2}\)  \(\mu_{r1}^{1} (t_{2} ) = 3\) 
\(t_{3}\)  \(\mu_{r2}^{1} (t_{3} ) = 2\) 
\(t_{4}\)  \(\mu_{r2}^{1} (t_{4} ) = 1\) 
\(t_{5}\)  \(\mu_{r3}^{1} (t_{5} ) = 2\) 
\(t_{6}\)  \(\mu_{r3}^{1} (t_{6} ) = 2\) 
\(t_{7}\)  \(\mu_{r4}^{1} (t_{7} ) = 1\) 
\(t_{8}\)  \(\mu_{r4}^{1} (t_{8} ) = 1\) 
\(t_{9}\)  \(\mu_{r5}^{1} (t_{9} ) = 1\) 
\(t_{10}\)  \(\mu_{r5}^{1} (t_{10} ) = 2\) 
For this example, three workflow agents (\(W_{1}\), \(W_{2}\), \(W_{3}\)), five resource agents (\(R_{1}\), \(R_{2}\), \(R_{3}\), \(R_{4}\), \(R_{5}\)) and one order agent (\(O_{1}\)) need to be defined and created.
Schedules for resource agents
Resource  Start time  End time  Quantity  Activity 

R1  2015/4/27–16:22  2015/4/27–16:27  5  1 
R2  2015/4/27–16:15  2015/4/27–16:18  1  2 
R2  2015/4/27–16:18  2015/4/27–16:21  4  2 
R3  2015/4/27–16:19  2015/4/27–16:23  1  3 
R3  2015/4/27–16:23  2015/4/27–16:27  4  3 
R4  2015/4/27–16:27  2015/4/27–16:29  5  4 
R5  2015/4/27–16:37  2015/4/27–16:40  5  5 
Example 2
Firing time of transitions
Transition  Firing time 

\(t_{1}\)  \(\mu_{r1}^{1} (t_{1} ) = 115\) 
\(t_{2}\)  \(\mu_{r1}^{1} (t_{2} ) = 5\) 
\(t_{3}\)  \(\mu_{r2}^{1} (t_{3} ) = 80\) 
\(t_{4}\)  \(\mu_{r2}^{1} (t_{4} ) = 10\) 
\(t_{5}\)  \(\mu_{r3}^{1} (t_{5} ) = 70\) 
\(t_{6}\)  \(\mu_{r3}^{1} (t_{6} ) = 2\) 
\(t_{7}\)  \(\mu_{r4}^{1} (t_{7} ) = 45\) 
\(t_{8}\)  \(\mu_{r4}^{1} (t_{8} ) = 15\) 
\(t_{9}\)  \(\mu_{r5}^{1} (t_{9} ) = 85\) 
\(t_{10}\)  \(\mu_{r5}^{1} (t_{10} ) = 5\) 
\(t_{11}\)  \(\mu_{r6}^{1} (t_{11} ) = 30\) 
\(t_{12}\)  \(\mu_{r6}^{1} (t_{12} ) = 30\) 
\(t_{13}\)  \(\mu_{r7}^{1} (t_{13} ) = 110\) 
\(t_{14}\)  \(\mu_{r7}^{1} (t_{14} ) = 10\) 
Schedules for resource agents
Resource  Start time  End time  Quantity  Activity 

R1  2017/4/22–14:00  2017/4/22–16:00  25  1 
R1  2017/4/22–16:00  2017/4/22–18:00  25  1 
R1  2017/4/22–18:00  2017/4/22–20:00  25  1 
R1  2017/4/22–20:00  2017/4/22–22:00  25  1 
R1  2017/4/22–22:00  2017/4/23–00:00  25  1 
R1  2017/4/23–00:00  2017/4/23–20:00  25  1 
R2  2017/4/22–14:00  2017/4/22–15:30  10  2 
R2  2017/4/22–15:30  2017/4/22–17:00  20  2 
R2  2017/4/22–17:00  2017/4/22–18:30  20  2 
R2  2017/4/22–18:30  2017/4/22–20:00  20  2 
R2  2017/4/22–20:00  2017/4/22–21:30  20  2 
R2  2017/4/22–21:30  2017/4/22–23:00  20  2 
R2  2017/4/22–23:00  2017/4/23–00:30  20  2 
R2  2017/4/23–00:30  2017/4/23–02:00  20  2 
R3  2017/4/23–02:00  2017/4/23–03:12  30  3 
R3  2017/4/23–03:12  2017/4/23–04:24  30  3 
R3  2017/4/23–04:24  2017/4/23–05:36  30  3 
R3  2017/4/23–05:36  2017/4/23–06:48  30  3 
R3  2017/4/23–06:48  2017/4/23–08:00  30  3 
R4  2017/4/23–03:00  2017/4/23–04:00  30  4 
R4  2017/4/23–04:00  2017/4/23–05:00  30  4 
R4  2017/4/23–05:00  2017/4/23–06:00  30  4 
R4  2017/4/23–06:00  2017/4/23–07:00  30  4 
R4  2017/4/23–07:00  2017/4/23–08:00  30  4 
R5  2017/4/22–20:00  2017/4/22–21:30  10  5 
R5  2017/4/22–21:30  2017/4/22–23:00  20  5 
R5  2017/4/22–23:00  2017/4/23–00:30  20  5 
R5  2017/4/23–00:30  2017/4/23–02:00  20  5 
R5  2017/4/23–02:00  2017/4/23–03:30  20  5 
R5  2017/4/23–03:30  2017/4/23–05:00  20  5 
R5  2017/4/23–05:00  2017/4/23–06:30  20  5 
R5  2017/4/23–06:30  2017/4/23–08:00  20  5 
R6  2017/4/23–08:00  2017/4/23–09:00  30  6 
R6  2017/4/23–08:00  2017/4/23–09:00  30  6 
R6  2017/4/23–08:00  2017/4/23–09:00  30  6 
R6  2017/4/23–09:00  2017/4/23–10:00  40  6 
R6  2017/4/23–10:00  2017/4/23–11:00  40  6 
R6  2017/4/23–11:00  2017/4/23–12:00  40  6 
Scalability analysis and verification by examples
Response time is an important performance index in supply chain management. To be applicable in supply chains, response time should be acceptable as the number of partners in the network grows. In the remainder of this paper, we will present the analysis and numerical results to show that our method is scalable in terms of response time as the size of supply chain network grows. Response time is the total amount of time it takes to respond to a request for service. The response time for solving the problem defined in this paper consists of two parts: computation time and transmission time. With the widespread adoption of broadband network, transmission time is much less than computation time for solving the problem defined in this paper. To evaluate the scalability of our proposed methodology in terms of response time, we first analyze and compare the computational complexity of our proposed method and that of an industrial centralized optimizer. We then conduct experiments based on the developed software system.
We focus on assembly supply chain networks. In this type of networks, the response time can be measured based on the concept of “depth” of supply chains. In a typical assembly supply chain network, let’s call a node without any upstream node a leaf node and a node without any downstream node a final node. Note that there is one and only one final node in an assembly supply chain network. For each directed path that starts with a leaf node and ends with a final node, the number of nodes in the directed path is called the depth of the path. The response time of a supply chain network is the longest response time of all directed paths that start with a leaf node and end with the final node.
As the number of Lagrange multipliers is proportional to \(K_{n}\) and \(T\), the computation time involved in updating \(\lambda\) will increase approximately with \(O(K_{n} T)\). Therefore, the overall computational complexity is \(O(K_{n}^{2} T^{2} D_{n} )\). This indicates the computational complexity of our algorithm is polynomial with respect to problem size. Suppose the depth is \(V\). In a distributed MAS architecture, a supply chain with depth \(V\) has at most \(V\) node in each directed path from a leaf node to the final node. Therefore, the overall response time will be \(O(\sum_{n} K_{n}^{2} T^{2} D_{n} )\). Let \(K = \max_{n} K_{n}\). Then, the overall response time will be bounded by \(O(VK_{{}}^{2} T^{2} D_{n} )\).
Let’s analyze the overall response time for a centralized computing architecture as follows. If we solve the scheduling problem for V echelon supply chain based on a centralized computing architecture, the Petri net models of all V workflow agents will be merged first. As the number of nodes in the network associated with \(L(\lambda )\) is proportional to \(({\mathop {\varSigma }\nolimits_{{\rm n}} {\text{K}}_{{\rm n}}} )T\) and the flow is \(D_{n}\), the computational complexity to compute \(L(\lambda )\) is bounded by \(O(V^{2} {\text{K}}_{{}}^{ 2} T^{2} D_{n} )\). As the number of Lagrange multipliers is proportional to \((\sum_{n} K_{n} )T\), the computation time involved in updating \(\lambda\) will increase approximately with \(O((\varSigma_{n} K_{n} )T)\) and is bounded by \(O(VKT)\). Therefore, the overall response time for a centralized architecture will be bounded by \(O(V^{2} K_{{}}^{2} T^{2} D_{n} )\).
Conclusions
Management of collaborative workflows in supply chains is an important issue. In supply chains, the workflows of a company depend on those of its upstream partners and have influence on those of its downstream partners. Such dependency complicates the workflow management problem in supply chains. The workflow scheduling problem in supply chains is a dynamic and challenging one. Scheduling workflows in supply chains relies on the development of a methodology that is flexible, reconfigurable and scalable. In this paper, we propose a reconfigurable, flexible and scalable architecture for scheduling workflows in supply chains based on MAS, workflow specification language and optimization theories. Our proposed methodology achieves reconfigurability and flexibility by using Petri net as the workflow specification language, specifying all the messages of CNP in XML and adopting a FIPA compliant multiagent platform that supports ACL, contract net protocol (CNP) and publication/discovery infrastructure. Our approach attains scalability by developing algorithms based on distributed computing architecture to solve collaborative workflow scheduling problem. To take into account the dependency among the different workflow scheduling subproblems, a multilevel contract net protocol is applied in this paper to facilitate negotiation of different companies. A divideandconquer approach is adopted to take advantage of the distributed computation provided by MAS to optimize the workflow schedules. The original workflow scheduling problem is decomposed into a number of agents’ subproblems that can be solved efficiently based on the collaboration of agents. A prototype system has been implemented based on our proposed methodology. As Petri net is adopted as a process specification language in our scheduling system, our approach formulates the scheduling problem based on the Petri net models and the order requirements dynamically. The cost and time involved in the development of scheduling software can be significantly reduced. In addition to the advantage of reduction in development cost and time, we also illustrate the effectiveness and analyze scalability of our approach by examples. To study scalability of our approach, we analyze response time with respect to the depth and the demand of supply chains. Both our analysis and numerical results indicate that our approach is much more efficient than an industrial centralized problem solver as the depth and the demand of supply chains grow. Our approach relies on the service discovery function which is provided by many multiagent platforms. It relies on construction of workflow models and activity models for individual partners represented by agents in the supply chains. Currently, the class of workflow models used in the proposed approach is acyclic timed marked graph. Extension of workflow models to more general classes of Petri nets is one of our current research directions. As the ability to cope with external and internal disruptions and disturbances gains more and more importance, another research direction relevant to this paper is to study mechanisms to deal with uncertainties in supply chains.
References
 Afsarmanesh H, Analide C (2009) Virtual enterprises: methods and approaches for coalition formation. Int J Prod Res 47(17):4655–4659CrossRefGoogle Scholar
 Billington J, Christensen Søren, van Hee Kees, Kindler Ekkart, Kummer Olaf, Petrucci Laure, Post Reinier, Stehno Christian, Weber Michael (2003) The Petri net markup language: concepts, technology, and tools. Lect Notes Comput Sci 2679:483–505MathSciNetCrossRefGoogle Scholar
 CamarinhaMatos LM, Cardoso T (1999) Selection of partners for a virtual enterprise. In: CamarinhaMatos LM, Afsarmanesh H (eds) ProVE’99 book, infrastructure for virtual enterprises: networking industrial enterprises. Kluwer Academic Publishers, Boston, pp 259–278CrossRefGoogle Scholar
 CamarinhaMatos LM, PantojaLima C (2001) Cooperation coordination in virtual enterprises. J Intell Manuf 12(2):133–150CrossRefGoogle Scholar
 CamarinhaMatos LM, Oliveira A, Sesana M, Galeano N, Demsar D, Baldo F, Jarimo T (2009) A framework for computerassisted creation of dynamic virtual organisations. Int J Prod Res 47(17):4661–4690CrossRefGoogle Scholar
 Durfee EH, Lesser VR, Corkill DD (1989) Trends in cooperative distributed problem solving. IEEE Trans Knowl Data Eng 1(1):63–83CrossRefGoogle Scholar
 Ferber J (1999) Multiagent systems: an introduction to distributed artificial intelligence. Addison Wesley, Reading, MAGoogle Scholar
 Grefen P, Mehandjiev N, Kouvas G, Weichhart G, Eshuis R (2009) Dynamic business network process management in instant virtual enterprises. Comput Ind 60(2):86–103CrossRefGoogle Scholar
 Hoffner Y, Field S, Grefen P, Ludwig H (2001) Contractdriven creation and operation of virtual enterprises. Comput Netw 37(2):111–136CrossRefGoogle Scholar
 Hsieh FS, Chiang CY (2011) Collaborative composition of processes in holonic manufacturing systems. Comput Ind 62(1):51–64CrossRefGoogle Scholar
 Hsieh FS, Lin JB (2012) Virtual enterprises partner selection based on reverse auction. Int J Adv Manuf Technol 62(5–8):847–859CrossRefGoogle Scholar
 Hsieh FS, Lin JB (2014a) Contextaware workflow management for virtual enterprises based on coordination of agents. J Intell Manuf 25(3):393–412CrossRefGoogle Scholar
 Hsieh FS, Lin JB (2014b) A dynamic scheme for scheduling complex tasks in manufacturing systems based on collaboration of agents. Appl Intell 41(2):366–382CrossRefGoogle Scholar
 Hugos M (2018) Chapter 1: Key concepts of supply chain management. In: Hugos M (ed) Essentials of supply chain management, 4th edn. Wiley, Hoboken, pp 1–41Google Scholar
 Ivanov D, Dolgui A, Sokolov B (2016) Robust dynamic schedule coordination control in the supply chain. Comput Ind Eng 94:18–31CrossRefGoogle Scholar
 Jagdev H, Vasiliu L, Browne J, Zaremba M (2008) A semantic web service environment for B2B and B2C auction applications within extended and virtual enterprises. Comput Ind 59(8):786–797CrossRefGoogle Scholar
 Kovács G, Kot S (2017) Economic and social effects of novel supply chain concepts and virtual enterprises. J Int Stud 10:237–254CrossRefGoogle Scholar
 Lambert DM, Croxton KL, GarciaDastugue SJ, Knemeyer M, Rogers DS (2006) Supply chain management processes, partnerships, performance, 2nd edn. Hartley Press Inc., JacksonvilleGoogle Scholar
 Liu X, Chung TP (2017) An outsourcingscheduling problem in a twostage supply chain via improved immunoglobulinbased artificial immune system. Comput Ind Eng 113:819–830CrossRefGoogle Scholar
 McFarlane DC, Bussmann S (2000) Developments in holonic production planning and control. Int J Prod Plan Control 11(6):522–536CrossRefGoogle Scholar
 Mentzer JT, Dewitt W, Keebler JS, Min S, Nix NW, Smith CD, Zacharia ZG (2001) Defining supply chain management. J Bus Logist 22(2):1–26CrossRefGoogle Scholar
 Moktadir MA, Ali SM, Rajesh R, Paul SK (2018a) Modeling the interrelationships among barriers to sustainable supply chain management in leather industry. J Clean Prod 181:631–651CrossRefGoogle Scholar
 Moktadir MA, Rahman T, Rahman MH, Ali SM, Paul SK (2018b) Drivers to sustainable manufacturing practices and circular economy: a perspective of leather industries in Bangladesh. J Clean Prod 174:1366–1380CrossRefGoogle Scholar
 Monostori J (2018) Supply chains robustness: challenges and opportunities. Proc CIRP 67:110–115CrossRefGoogle Scholar
 Murata T (1989) Petri nets: properties, analysis and applications. Proc IEEE 77(4):541–580CrossRefGoogle Scholar
 Neligwa T, Fletcher M (2003) An HMS operational model. In: Deen SM (ed) Agentbased manufacturing: advances in the holonic approach. Springer, Berlin, pp 163–191CrossRefGoogle Scholar
 Nilsson NJ (1998) Artificial intelligence: a new synthesis. Morgan Kaufmann Publishers Inc, San FranciscozbMATHGoogle Scholar
 OASIS (2009) Web services business process execution language version 2.0. http://docs.oasisopen.org/wsbpel/2.0/OS/wsbpelv2.0OS.html. Accessed 1 Apr 2018
 IBM ILOG CPLEX Optimizer (2015) https://www01.ibm.com/software/commerce/optimization/cplexoptimizer/. Accessed 1 Apr 2018
 Parunak HVD (1987) Manufacturing experiences with the contract net. In: Huhns M (ed) Distributed artificial intelligence. Pitman, London, pp 285–310CrossRefGoogle Scholar
 Petrie C, Bussler C (2003) Service agents and virtual enterprises: a survey. Internet Comput 17(4):68–78CrossRefGoogle Scholar
 Polyak BT (1969) Minimization of unsmooth functionals. USSR Comput Math Math Phys 9:14–29CrossRefGoogle Scholar
 Putnik G, Sluga A, ElMaraghy H, Teti R, Koren Y, Tolio T, Hon B (2013) Scalability in manufacturing systems design and operation: stateoftheart and future developments roadmap. CIRP Ann Manuf Technol 62(2):751–774CrossRefGoogle Scholar
 Ramos C (1996) A holonic approach for task scheduling in manufacturing systems. In: Proceedings of the 1996 IEEE international conference on robotics and automation, pp 2511–2516Google Scholar
 Samdantsoodol A, Cang S, Yu H, Eardley A, Buyantsogt A (2017) Predicting the relationships between virtual enterprises and agility in supply chains. Expert Syst Appl 84:58–73CrossRefGoogle Scholar
 Smith RG (1980) The contract net protocol: highlevel communication and control in a distributed problem solver. IEEE Trans Comput 29(12):1104–1113CrossRefGoogle Scholar
 Soares AL, Azevedo AL, De Sousa JP (2000) Distributed planning and control systems for the virtual enterprise: organizational requirements and development lifecycle. J Intell Manuf 11(3):253–270CrossRefGoogle Scholar
 van der Aalst WMP (1998) The application of Petri nets to workflow management. J Circuit Syst Comput 8(1):21–66CrossRefGoogle Scholar
 van der Aalst WMP, Kumar A (2001) A reference model for teamenabled workflow management systems. Data Knowl Eng 38(3):335–363CrossRefGoogle Scholar
 Wang Dongsheng, Nagalingam Sev V, Lin Grier CI (2007) Development of an agentbased Virtual CIM architecture for small to medium manufacturers. Robot Comput Integr Manuf 23(1):1–16CrossRefGoogle Scholar
 Weber M, Kindler E (2002) The Petri net markup language. http://www2.informatik.huberlin.de/top/pnml/download/about/PNML_LNCS.pdf. Accessed 1 Apr 2018
 Weske M, van der Aalst WMP, Verbeek HMW (2004) Advances in business process management. Data Knowl Eng 50(1):1–8CrossRefGoogle Scholar
 Workflow Management Coalition (1999) The workflow management coalition specifications: terminology and glossary. http://www.wfmc.org. Accessed 1 Apr 2018
Copyright information
Open AccessThis article is distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.