Dynamic Distributed Job-Shop Scheduling Problem Consisting of Reconfigurable Machine Tools

. Keeping pace with rapidly changing customer requirements forces companies to increase the capability of adaptation of their production systems. To fulfill the market requirements in a reasonable time and cost, distributed manufacturing has been emerged as one of the efficient approaches. Moreover, the ability of reconfigurability makes manufacturing systems and tools to be more adaptable. This research deals with a dynamic production scheduling problem simultaneously in several different shop-floors consisting of reconfigurable machine tools (RMTs) by utilizing the real-time data extracted from a cyber-physical system (CPS). First, a mathematical programming model is presented for the static state. Thereafter, by utilizing the CPS capabilities, a dynamic model is extended to schedule new jobs, in which there have already been some other jobs in each facility. A numerical example is solved to illustrate the validation of the model. Finally, some potential solving approaches are proposed to make the model implementable in real-world applications.


Introduction
Over the last decades, due to the globalization of the economy and its requirements, enterprises aim to reach higher operational performance at a lower cost.Hence, distributed manufacturing has been emerged as one of the efficient approaches to overcome these requirements.On the other hand, capabilities of new emerging smart factories are enhancing supported by Industry 4.0 technologies, such as a cyber-physical system (CPS), cloud computing, virtual reality, internet of things (IoT) and big data.To gain competitive advantages of these technologies, companies are going to adapt for a more customer-oriented market [1].Also, new manufacturing systems need to satisfy the main requirements of this market, such as the rapid introduction of new products and high demand fluctuations.A significant approach to cope with these issues is to take advantages of reconfigurability for manufacturing systems and tools.Hence, a new class of production machines, called reconfigurable machine tools (RMTs), have been introduced.An RMT machine usually has a modular structure, which makes it be able to obtain different configurations in order to satisfy manufacturing requirements.One of the benefits of developing RMTs is that the use of several different machines that share many costly and common modules while being rarely used at the same time can be prevented [2].The capacity and functionality of a manufacturing system by relying on abilities of such machines can be adjusted easily.Despite the special capabilities, it seems that the studies in production scheduling in such systems face new challenges considering the high level of dynamism and complexity of needed decisions.De Giovanni and Pezzella [3] studied a static distributed and flexible job-shop scheduling problem.They developed an improved genetic algorithm (GA) to solve the problem efficiently.However, they did not consider a dynamic environment of the production system.Tian et al. [4] designed a production information management system based on industrial IoT technology to tackle the dynamic flexible job-shop scheduling problem in a rolling horizon.Romero-Silva and Hernández [5] studied in different manufacturing contexts the role of the CPS to provide a company by carrying out a better scheduling task.They found that production systems with uncertain demands and complex production processes could benefit the most from implementing a CPS at a shopfloor level.However, they did not consider the effect of reconfigurability on the studied systems.Recently, Mahmoodjanloo et al. [6] presented a new variant of a job-shop scheduling problem, which contains reconfigurable machine tools.They developed two static models to tackle the scheduling problem in a centralized production system.
In this paper, by utilizing the cyber-physical shop-floor capabilities, a distributed flexible job-shop scheduling problem consisting of reconfigurable machine tools in a dynamic environment is studied.

2
Static and Dynamic Model Presentation

Problem description
There is a set  of  jobs, where each one should be processed in one of the existing facilities.Job  has a set of   operations with a predefined sequence (e.g.,  ,1 →  ,2 → ⋯ →  ,  ).The facilities have already been deployed in different geographical areas.
In each facility  ∈ , there is a set of RMTs, in which each RMT  ∈   has a set of  , configurations.It is assumed that operation   can be processed at least on one configuration of one of the existing RMTs in each facility.No setup is needed to perform operations in a machine configuration, while to switch to a different configuration on the machine, the RMT needs to a setup that is dependent on two consecutive configurations.The main decisions of the problem include assigning of each job to one facility, allocating of each job operation to an eligible RMT, sequencing of the jobs and determining the appropriate configurations of each machine to perform the allocated operations.The objective is to minimize the total cost.The scheduling environment can be classified into two main classes; namely, static (offline) and dynamic (online) scheduling.We first present the static model formulation, in which there are several jobs to be processed in the empty facilities.Thereafter, the model will be extended for the dynamic state, in which there are several jobs in each facility that are processing based on a current schedule.By arriving some new jobs, the current schedules should be updated based on a variable-order rescheduling strategy, in which all unprocessed operations can be rescheduled after assigning the new arriving jobs to the facilities.

Sets and indices:
Eq. ( 1) is the objective function, which calculates total system costs.Constraint set (2) ensures that each job should be assigned to one of the facilities.Then, Constraint set (3) guarantees all operations of each assigned job be processed on the machines of the associated facility, where   = |  |, the number of operations which should be done on the job .Constraint set (4) mandates each operation to be assigned to one position of an existing machine configuration of the associated facility.Constraint set (5) prevents the assignment of the operation   to any positions of the configuration of machines  and  of facility  if it is not allowed to be performed on the configuration of machine  of machine  (   = 0).Constraint set (6) guarantees that in each machine position of a facility, at most one operation can be processed.Constraint set (7) shows that each position can be allocated only when the previous position has already been assigned.For each machine, Constraint sets (8) and ( 9) guarantee that a proper setup should be done if two consecutive positions be assigned to different configurations.Constraint set (10) shows that each operation   can be started only after finishing of the previous operation.Constraint set (11) ensures that the finishing time of each machine position should be greater than the completion time of the previous position plus an associated processing time of the position and a possible setup time.Constraints ( 12) and (13) guarantee that the completion time of each machine position be set with its associated job operation ( is a big positive number).Constraint set ( 14) calculates the amount of tardiness for each job.Constraints ( 15) and ( 16) define the decision variables.

Dynamic model formulation
Herein, we extend the presented model for a dynamic situation, in which some new arriving orders should be scheduled to be produced in the manufacturing system.Utilizing the Industry 4.0 technologies, the required real-time data from the distributed shop-floors (e.g., delayed jobs, current configurations and accessibility of machines) and limitations of the logistics system (i.e., availability of raw materials) can be provided by a cyber-physical shop-floors (CPSF).The provided data can be utilized in the scheduling module to update the current schedules of each shop-floor.The shop-floors under an IoT environment can include three basic levels.The conceptual framework of information flow to provide the autonomous analysis of system status and real-time response to dynamic events is presented in Fig. 1.Mathematical formulation of the dynamic problem:

Computational Results and Discussions
In this section, a small-sized example is illustrated to validate the proposed models.The main data of the example are presented in Table 1.At first, jobs 1 to 4 are considered to be scheduled by the static model.The optimum schedule is presented in Fig. 2. Thereafter, it is supposed that job 5 is arrived at  = 85.Moreover, based on the obtained real-time data from the CPSF, it is estimated that the needed time for providing the manufacturing system in facility 1 and 2 are 90 and 45 time units, respectively.In the optimum solution of the dynamic model, the new arriving job is assigned to the facility 1.As can be seen in Fig. 3, the unprocessed operations until  = 175 containing  1,3 ,  1,4 , 3,3 and all operations of job 5 are rescheduled.
A sensitive analysis on ∆ shows that the total cost is strongly affected by this parameter.Hence, the performance of the manufacturing system directly is related to the response time.To make the method applicable in real-world problems, the system must be equipped with some major "hard" and "soft" technological requirements.A significant issue to improve the performance is to enhance the agility of the logistics system.
Developing an appropriate smart logistics system can be helpful to make the manufacturing system much more flexible.Also, the decision-making approach and the related computational time should be considered.For example, the proposed models is coded in GAMS 24.1.3software and solved by CPLEX solver.The written codes are performed on a computer with a 2/5 GHz Intel Core(TM) i7-4710HQ CPU and 8 GB RAM.The static and dynamic models use 496 and 273 seconds of CPU time to be solved, respectively.Hence, developing an efficient algorithm to solve the problem in a reasonable time can be interesting.

Conclusions
Because of current globalization trend, many manufacturing systems have shifted to a distributed production network instead of a single factory production.Moreover, information technology has been utilized to make producers more competitive in today's rapidly changing market requirements.These evolutions can affect many areas of decision making, including scheduling.In this paper, a mathematical model has been presented for a distributed flexible job-shop scheduling in a dynamic environment by utilizing cyber-physical shop-floor capabilities.The full adoption of the framework presented will help companies enhance their global competitiveness, improve the flexibility of their domestic manufacturing systems, and obtain new market opportunities.Due to the different aspects of the decision environment, the high complexity of the problem, and a requirement for real-time decision making, a multi-agent approach can be effective to solve it.Moreover, because of high volume data generated in the shopfloor agents, machine learning approaches by doing a general analysis of data can be utilized to facilitate solving some of specific tasks.

Decision variables of the static model:
Set of jobs, where job index  ∈    Set of operations related to job , where operation  of job  is denoted by    Set of facilities, where facility index  ∈    Set of machines, where machine index  ∈    , Set of configurations of machine k in facility , where configuration index  ∈  ,  , Set of job positions on machine k of facility , where position index  ∈  , (i.e., Configuration-dependent setup time when configuration is changed from  1 to  2 (i.e.,  1 ≠  2 and  1 ,  2 ∈  , ) on machine  in the facility    1 , 2 ,  Configuration-dependent setup cost when configuration is changed from  1 to  2 (i.e.,  1 ≠  2 and  1 ,  2 ∈  , ) on machine  in the facility    Due date of job    Tardiness penalty of job  per time unit   is processed on machine-positions  and  with configuration  of facility ; 0, otherwise.  1 , 2 ,,  1 if at the beginning of positions  and  of facility , in which the machine's configuration is changed from  1 to  2 (i.e.,  1 ≠  2 ); 0, otherwise.,  ∈   ,  ∈ ,  ∈   ,  ∈  , Processing time of operation   on configuration c of machine  in facility     Binary parameter.If operation   can be processed on configuration c of machine  in facility , then    = 1; otherwise,    = 0.    Processing cost of operation   on configuration c of machine  in facility ,  ∈   ,  ∈  , ,  1 ,  2 ∈  , ,  1 ≠  2 ,  ∈   ,  ∈  , ,  1 ,  2 ∈  , ,  1 ≠  2 ,  ∈  , ,  ∈ ,  ∈ respectively instead of the previous sets ,   and  , .

Table 1 .
Data for the illustrated example