Production Scheduling Requirements to Smart Manufacturing

. The production scheduling has attracted a lot of researchers for many years, however most of the approaches are not targeted to deal with real manufacturing environments, and those that are, are very particular for the case study. It is crucial to consider important features related with the factories, such as products and machines characteristics and unexpected disturbances, but also information such as when the parts arrive to the factory and when should be delivered. So, the purpose of this paper is to identify some important characteristics that have been considered independently in a lot of studies and that should be considered together to develop a generic scheduling framework to be used in a real manufacturing environment.


Introduction
The manufacturing systems are going through a significant transformation since market has evolved to a more diversified and customized products demand during the last decades.To deal with this process, factories should adapt themselves and adopt a more dynamic and agile paradigm, able to quickly reconfigure and adapt to the market requirements.The raising of the 4 th Industrial Revolution (4IR), encompassing characteristics and paradigms such as Cyber-physical Production Systems (CPPS), Internet of Things (IoT), Cloud-based manufacturing or Radio Frequency Identification (RFID), is allowing to develop more dynamic and agile approaches which improve the efficiency of the manufacturing systems.
In order to achieve the needed productivity on the shop-floor, it is crucial to develop an efficient schedule of what, where and when is going to be processed within the factory.Nevertheless, the scheduling process can be a hard task to perform in a real manufacturing system, regarding all the complex constraints and limitations that can arise from a dynamic system.
To deploy a generic scheduling solution in a factory it is necessary to consider and combine some features that are sometimes ignored in the literature, mostly due to the complex implementation of them.Although there are functional implementations in real manufacturing systems, those are focused on the specific problem.On the other hand, most studies are focused on testing benchmarks and not developing strategies to be deployed in real environments as demonstrated in Çaliş and Bulkan [1].Nowadays, with the 4 th Industrial Revolution it is necessary to understand which functionalities the factories need in this context.This paper intends to highlight some technical characteristics that are usual in real environments however are sometimes ignored in literature.Bring them together can contribute to develop a robust generic solution, able to be implemented in a real manufacturing system.
The paper is organized as followed: in Section 1 is given an overview of the paper objective; Section 2 does the link between the paper content and the Industrial and Service Systems; Section 3 provides a brief overview of smart manufacturing; Section 4 consists in the analysis of scheduling solution; in Section 5 is done a summary of the analysis; in Section 5 a conclusion of the work, as well as the further work, is presented.

Relation to Industrial and Service Systems
Industrial manufacturing systems are evolving, and the trending paradigm of mass production has been changed to mass customization.The smart factories have emerged, constituted by smart entities along the shop-floor, as well as a lot of sensors, and able to improve processes through self-optimization.By combining production, data and communication technologies it allows the integration of the entire manufacturing supply chain.To deal with the rigorous market demand it is necessary to have an excellent coordination and organization in manufacturing systems.
This paper aims to point out some features that should be considered when developing scheduling solutions and which are often ignored or considered as having no value in a lot of studies.Sometimes these characteristics are not considered due to the raise in complexity that involves considering such a number of details, and this also creates a problem in terms of the performance of the algorithms.
Therefore, instead of worrying with developing better algorithms in terms of performance, this work focusses on searching for requirements that will make possible to develop a generic approach that can be used in real manufacturing systems.

Smart Manufacturing
The factories have been obliged to adapt their systems to respond efficiently to the current trend of highly customized products.Thus, they evolved from Dedicated Manufacturing Lines (DML), dedicated to mass production, to Flexible Manufacturing Systems (FMS) which were adopted to provide responsiveness and agility to the systems, once it was able to ease the changes in products and resources [2].However, the huge demand from the customers led to an insufficient production rate which did not provide the necessary response to the market [2], [3].
The necessity for more responsiveness systems able to launch new products and to react quickly and cost-effectively to market changes, as well as order changes and unexpected failures led to a new manufacturing approach known as Reconfigurable Manufacturing Systems (RMS) [4], [5].As stated in [2] RMS "are not constrained by capacity or by functionality, and are capable of changing over time in response to changing market circumstances".The crucial scopes of RMS are [5]: modularity, integrability, flexibility, scalability, convertibility and diagnosability.
Following the trend of the 4IR, with the development of IoT, Information and Communications Technology (ICT) and CPPS, factories are becoming more digital and smarter, by connecting and networking the manufacturing units with each other [3].The use of more sensors combining with the collaboration between entities makes it possible to extract more data from the system, which should be converted in useful information.Thus, the traditional machines are able to become aware of the environment and provide self-optimization.This enables the companies to deal with the challenge of producing more customized and high-quality products demanded by the market [3], [6]- [8].

Scheduling
The production scheduling plays an important role in smart manufacturing systems.To keep it reliable it is crucial to have an online representation of the production and maintenance processes, which can dynamically adapt to the environment, since unexpected events may occur, machines may not be available all the time, and setup times could be sequence-dependent [11].
The development of CPPS, as well as the IoT, brought a strong connection between hardware and software to the factories, through the development of sensor networks equipped with computational intelligence.It allows the real-time access to the system data, providing the information to build and rebuild a schedule faster than ever before, improving the agility and robustness of manufacturing systems.The use of cloud computing and web services can also make the systems more dynamic, reconfigurable, scalable and modular, making possible to develop more robust and adaptable scheduling solutions.The cloud manufacturing, which relies on the is supported by the cloud computing, IoT, virtualization and service-oriented technologies allows to smartly manage the resources and products on the shop-floor and makes it easy to deal with scalability [8], [12].
Using new technologies, such as the use of sensors in robots, integrated with an efficient analysis of the collected data can provide the basis to produce an intelligent schedule of both preventive and corrective operations [3].Besides the production and maintenance scheduling are often executed independently in real manufacturing systems, sometimes the systems can benefit if they are performed together [18].
Currently, and responding to the change in manufacturing paradigm, enterprises have been focus in factors such as time, quality, environment, society, knowledge, and many others, instead of just focusing in reduce the cost production and increase the yield, which can create and add more value to the company [9], [10].

Scheduling Requirements
In manufacturing systems, it is possible to find a lot of requirements and constraints to run the system efficiently.Regarding the scheduling process, there are numerous requirements that can be listed to achieve a robust and efficient solution to deal with the factory constraints.Besides basic and common assumptions such as only one operation of each job may be processed at a time, no machine may process more than one operation at a time, an operation can only be performed once and the operation precedence within a product should be respected [13], here other important requirements that should be considered when developing a scheduling solution are presented.
There is a large range of aspects considered when developing a scheduling system, such as economic, managerial, societal and environmental aspects.Most of them focus on classical aspects such as flexibility, transportation time, processing time variations, setup times or maintenance activities [10], [14].More recently, the research community have been focusing on solving problems such as energy cost, carbon emission or other pollutant gas emissions [14].
Chou, Cao and Cheng [15] developed a dynamic scheduling considering machine breakdown, and able to recover from its faults and prevent them from happening.It was proposed an agent-based solution to solve a distributed job-shop scheduling problem.The system is able to self-configure and to manage itself with barely human interaction, and deal with possible system disturbances.Furthermore, the solution tries not only to minimize the makespan but also the energy consumption.Shahrabi, Adibi and Mahootchi [16] proposed a dynamic scheduling approach considering both machine breakdowns and random products arrival to the system.Kaplanoǧlu [11] proposed a dynamic a scheduling approach for a single machine considering dynamic arrival of jobs without the need to re-solving all the problem, due to the flexibility of decentralized control systems.Moreover, it considers maintenance activities, both periodic and non-periodic, where the machine needs a maintenance operation when a deterioration threshold is reached, and a setup time is required before each operation starts and it is based on the previous processed product in that machine.In Zhang et al. [17] was applied the concept of Internet of Manufacturing Things and Real-time Production Scheduling with real-time maintenance operations considering the energy consumption of maintenance, the total maintenance cost and the loading rate of workers to develop a real-time data-driven production scheduling which gets realtime status and information from the shop-floor components, as well as information about unexpected events.Thus, it is possible to dynamically monitor the systems to provide optimal updated schedule solutions.The approach tries to minimize the assembly costs, the energy consumption, and the tardiness delivery rate, as well as to improve the resources management.Liu, Dong and Chen [18] developed a scheduling solution considering both production and maintenance planning in a single machine.The deterioration state of the machine is considered at each time and a predictive maintenance task can be allocated.The solution combines analytical information, such as machine deterioration, and the available resources to get an optimal scheduling considering predictive maintenance activities.This will improve the machine lifetime.
Shen, Dauzère-Pérès and Neufeld [19] considered a flexible scheduling to solve a job-shop problem with flexible machines, where each machine is able to execute more than one operation.The solution also considers sequence-dependent setup times.The setup times can be dependent on the machine or on the sequence of operations processed.The conducted experiments showed that the integration of structural properties in scheduling problems is extremely important.In Lu et al. [20] was developed an approach to solve a flexible job-shop scheduling where an operation of a product can be processed by more than one machine.Chang and Liu [21] proposed an approach to solve a distributed (considering different factories) and flexible jobshop scheduling problem, where products can be assigned to different factories and different machines in each factory.Each machine is able to execute more than one operation, and each job can be performed in a set of possible machines.The solution considers the delivery times of the products, after the process is finished.In Han et al. [22] was proposed a hybrid particle swarm optimization algorithm to solve the deadlock-free scheduling problem in a flexible manufacturing system considering both routing flexibility and machine flexibility.
Alotaibi, Lohse and Vu [23] proposed a multi-agent system solution which eases the reconfigurability and adaption of the schedule in response to unpredictable changes.The main goal of the agents is to reach a global objective from local agent solutions.It aims not only to minimize the tardiness but also to minimize the total energy consumption.A particle swarm optimization together with chaos theory was used in Petrović et al. [24] to solve the process planning and scheduling problem considering the transportation time between different machines.The solution contemplates the production time which considers the processing time of the operation, the transportation time, the total tool change time and the total setup change time.Karimi et al. [13] developed a solution which includes the transportation times between the machines in a flexible job-shop scheduling problem, where the transportation is dependent of the distance between machines and the type of job to be transported.However, it is considered that the number of transporters is infinite, which is not true in real manufacturing systems, and so there is no transportation delays.Jia et al. [25] used an objective function to solve the job-sop scheduling problem in a distributed manufacturing system which considers the transportation cost of the parts between factories.
Yazdani et al. [26] proposed a solution for solving the job-shop scheduling problem with multiple machines where is introduced an objective function with the sum of maximum earliness and tardiness criteria.In Bürgy and Bülbül [27] was developed an approach to solve the job-shop scheduling problem where the storage, earliness and tardiness of products are penalized with different costs, with the objective of finish them just in time.Both release and due dates are considered, so the parts are not always available.Kuhpfahl and Bierwirth [28] developed a solution to solve the total weighted tardiness objective in a flow-shop problem.
Chung and Kim [29] try to solve the scheduling problem in order to the makespan on a single machine with step-deterioration and rate-modifying activities which affect the processing times of the operations.If a value is higher than a given deterioration threshold, then a step deterioration is added to the processing time.A cloud-based solution was developed in Helo, Phuong and Hao [30] to solve a flow-shop scheduling problem.This allows to perform near real-time analysis and collect and update the processing times of each machine very quickly.In Zarook and Abedi [31] was developed an approach to solve a parallel-machine scheduling problem where the time affects the performance of the machines until they are subjected to maintenance.The time to operate a task increases due to the wear caused by the already processed products, that is why it is necessary to consider flexible processing times.The objective is to minimize the earliness and tardiness, and the maintenance cost which is also considered.Just-in-time is pursued by operations managers for achieving both customer and manufacturer satisfaction simultaneously.
Zhang, Gao and Li present [32] present a scheduling solution to solve a job-shop problem, considering random job arrivals and machine breakdowns.Thus, an operation can be interrupted due to machine breakdown.The remaining processing time of the operation is then equal to the total time minus the time already processed.The objective is to minimize the makespan and the stability after performing the reschedule.Nikolakis [33] adopted a strategy to reschedule a task (which is divided in operations) in case of occurrence of unexpected events.The task can be rescheduled entirely or from the beginning of a specific operation.The main goal is to minimize the mean flow time, but "there is no restriction on the kind and number of criteria that can be selected".
Xiong et al. [34] developed a scheduling approach to solve a dynamic job-shop problem, where new jobs can arrive during the process, using dispatching rules considering the precedence constraint between products, and to minimize the tardiness.Furthermore, release and due dates of the parts are considered, which reflects and important aspect in manufacturing systems.
Chan, Choy and Bibhushan [35] developed a solution to solve the job-shop scheduling problem in a flexible shop with the objective of minimizing the makespan.It the study was considered that the parts have a release and due date, and setup times were taken into account.
Azami, Demirli and Bhuiyan [36] developed a solution to solve a specific realworld hybrid flow-shop problem, where machines are arranged into different stages in series.Some constraints were considered such as a limited number of workstations in each cell, the parts cannot stay too long in the buffer area, the buffer has a limited capacity and different parts need to be grouped before being sent for the cure process.The parts also have a due date to be finished.Gao et al. [37] studied a real situation of a remanufacturing enterprise to perform the rescheduling process in a job-shop.Thus, they considered new job insertions during the process, as well as flexible machines able to perform different operations.The objective was to minimize the instability regarding the first scheduling, as well as to minimize the makespan or the total flowtime or the machine workload or the total machine workload.

Analysis and Discussions
Based on the analyzed papers, it is possible to come out with some common requirements which are considered when developing scheduling solutions.The percentage of each characteristic present in the articles is shown in Fig. 1.The percentage of the number of characteristics studied together in each paper is shown in Fig. 2.
The real manufacturing environments need to deal with dynamic events that sometimes are not expected and may occur anytime.Those unexpected disturbances that can happen during the manufacturing process may be changes in the shop-floor, the arrival of new products to the factory or unexpected machine breakdowns, and a dynamic schedule should be able to respond to it in real-time [15], [16].Furthermore, to respond to the market demand for more customized products, manufacturing systems are becoming more flexible, able to produce different products by sharing tools.In a flexible system an operation can be executed in more than one machine (routing flexibility) or each machine can be able to perform more than one operation by sharing resources (machine flexibility).More factories are adopting flexible machines, able to perform more than a unique task, thus a scheduling considering flexible machines is important in the context of the 4IR [13], [20], [22], [38].Likewise, dynamic events and the uncertainty during the processes makes the way for reconfigurable systems, able to respond autonomously and deal with those events [23].Most of the times machines and tools are subject to deterioration.So, maintenance activities play a crucial role in manufacturing systems and should be considered in scheduling solutions in order to achieve a better performance of the system, either a pre (to avoid) or post-failure (to recover) solution [11], [17], [18].A less common requirement, but which can be important in some situations is preemption.Although it could be hard to handle, due to the implementation complexity, sometimes could be important to restart a process from the same point when an operation has been interrupted, so it could improve the performance of some production system.Another not commonly discussed characteristic is the precedence constraints among the operations of different products.For example, in the assembly process of two or more parts [34].However, it is hard to find this constraint being considered in manufacturing scheduling studies.
Some other features present in real environments, often ignored in literature, are: the transportation time of the parts within the factory, a crucial feature to plan an efficient production that can vary a lot during the process [13]; most of the times the products need to be ready for delivery at some time and it could be crucial to not overcome those dates (tardiness).On the other hand, it could be important to not finish the products too soon (earliness) as well, since it can lead to some wear in the parts or involve storage costs [26], [28]; processing times may vary in real manufacturing systems due to the most diverse situations, and they mainly increase over time.It can be caused by resources deterioration, a fault in the setup, or the surrounding conditions [29], [31]; the setup times, which play a crucial role in real manufacturing systems.In some cases setup times are required amongst operations and may depend on the precedent process [11], [19]; release and due dates can be crucial in manufacturing systems and are often present in real situations.An operation should be scheduled to a date after the part is available.On the other hand, there are due dates to be met and when a product should be ready.Also, finishing a product before the due date means that it needs to be stored in the factory and besides taking storage space it may be subject to some wear.The buffer storage, often ignored when developing algorithms, is also a crucial feature in manufacturing environments, since factories do not have infinite storage to hold the products.

Conclusion and Further Work
This paper conducts a comprehensive review of classical requirements of scheduling that need to be considered simultaneously in order to develop a generic scheduling framework.By analyzing the literature, it is possible to identify common requirements that are important to consider to scheduling manufacturing approaches.However, most studies tend to neglect some of these characteristics, trying to achieve better simulation results, instead of validating solutions on industrial environments.Even though the complexity of the solution can increase a when considering all of these conditions, it is important to develop approaches able of being transferred to real manufacturing environments.
This paper presents a collection of some crucial requirements important to consider when developing a production scheduling solution for manufacturing systems.It is critical nowadays, in an era where the factories are becoming more digital and have more data to be processed than ever before, to have more organized and wellstructured manufacturing solutions, starting by the scheduling of the production.
All the requirements presented before are important and should be considered in order to develop a generic scheduling solution to be used in a real manufacturing system, even if some of them are not so important in a specific case.However, a complete and robust generic approach should not ignore and not be restricted to these characteristics only.The 4IR makes it possible to develop flexible, reconfigurable and efficient production systems, and acquire information provided by the sensors, making possible to react to environment disturbances in real-time.
It is important to put some effort in connect and relate what already exists instead of only try to create and improve algorithms to test on benchmark and focus in just a few aspects of the scheduling.
In further work it is necessary to study the importance of characteristics such as societal and environmental characteristics, as well as to understand how the 4IR will help the scheduling process, by autonomously and dynamically adapt the scheduling to the current environment in a smoother way.The development of a framework able to deal with all these different kind of aspects in a generic way, making it possible to use the same scheduling approach for different manufacturing scenarios will be considered.

Fig. 1 -
Fig. 1 -Percentage of characteristics present in analyzed papers

Fig. 2 -
Fig. 2 -Number of characteristics taken into account in the same study based on the analyzed papers.