# Reconfigurability improvement in Industry 4.0: a hybrid genetic algorithm-based heuristic approach for a co-generation of setup and process plans in a reconfigurable environment

Muhammad Ameer, Mohammed Dahane

<figure><img src="image_1.png" /></figure>

## To cite this version:

Muhammad Ameer, Mohammed Dahane. Reconfigurability improvement in Industry 4.0: a hybrid genetic algorithm-based heuristic approach for a co-generation of setup and process plans in a reconfigurable environment. Journal of Intelligent Manufacturing, 2021, 34 (3), pp.1445-1467. 10.1007/s10845-021-01869-x. hal-03440227

HAL Id: hal-03440227

https://hal.science/hal-03440227

Submitted on 22 Nov 2021

HAL is a multi-disciplinary open access archive for the deposit and dissemination of scientific research documents, whether they are published or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d'enseignement et de recherche français ou étrangers, des laboratoires publics ou privés.

<figure><img src="image_2.png" /></figure>
# Reconfigurability improvement in Industry 4.0: a hybrid genetic algorithm-based heuristic approach for a co-generation of setup and process plans in a reconfigurable environment

Muhammad Ameer<fnref n="1" /> ID · Mohammed Dahane<fnref n="1" /> ID

Received: 21 April 2021 / Accepted: 19 October 2021

© The Author(s), under exclusive licence to Springer Science+Business Media, LLC, part of Springer Nature 2021

## Abstract

Reconfigurable manufacturing systems (RMS) are designed for adjustable production capabilities to cope with the fluctuating market demand. This adjustable capability and customised flexibility are offered by the modular Reconfigurable Machine Tools (RMTs), considered as the key component of an RMS. The main objective of this work is to develop a new approach to jointly consider the setup and process plan constraints. Indeed, based on the relationships between the operations to perform, a integrated setup and process plan is generated, minimising the total cost, including cost of processing, tolerance, setup change and tool module. The proposed new hybrid genetic algorithm-based approach is conducted in two stages. In the first stage, a heuristic is developed for the generation of setups and the assignments of fixtures to each set of operations. While in the second stage, a genetic algorithm is proposed to determine the best process plan to associate with the generated setup plan, under the economic cost consideration. A numerical experiment is performed to show the applicability and the efficiency of the developed approach. A test results highlight the economic gain of the simultaneous consideration of setup and process planning.

**Keywords** Industry 4.0 · Reconfigurable manufacturing system · Process planning · Setup planning · Reconfigurable machine tools · Hybrid optimisation

## Introduction

Due to the challenges like globalisation, rapid technological advancement, saturation of products, environmental changes and uncertainty in market change, the manufacturing system design are also needed to evolve accordingly. To deal with these challenges manufacturing systems must be responsive, agile, and efficient towards unpredictable changes. Efforts have been made in the literature towards the paradigm shift of next-generation manufacturing systems (NGMS). In NGMS, the focus is on improving the product, process, and production system by using modern day smart technologies such as cloud computing, augmented reality, big data, cyber-physical production systems, internet of things and many more which are related under the concepts of industry 4.0. To cope with

the abrupt change in market demand, need for personalised products, the smart technologies of industry 4.0 concept, help NGMS in shift from mass production towards the mass customisation.

In this respect, Koren (2006) defined a manufacturing system called reconfigurable manufacturing system (RMS), which combines the strengths of flexible and dedicated manufacturing systems, by using the technologies of industry 4.0, in order to make the system more responsiveness towards uncertain changes. The integration of the smart technologies under the concept of industry 4.0 can be a potent enabler of RMS.

An RMS has a high production rate and high flexibility for a customised product family and is suited for sudden changes (Koren and Shpitalni 2010). The RMS is designed for capacity adjustment due to the reconfiguration ability of its components, such as the reconfigurable machine tools (RMTs), the material handling systems, the workpiece fixtures, and the related software. This possibility of reconfiguration at different levels of the RMS offers it a high level of responsiveness to change without compromising its produc-

<footnote>✉ Mohammed Dahane
mohammed.dahane@univ-lorraine.fr</footnote>

<footnote>Muhammad Ameer
muhammad.ameer@univ-lorraine.fr</footnote>

<footnote n="1">¹ LGIPM, Université de Lorraine, 57000 Metz, France</footnote>
tion capacity and functionality (Koren 2013). At the process
level of RMS, these characteristics are possible mainly due
to modular reconfigurable machine tools (RMTs) and fix-
tures. RMTs are modular machine structures designed for
customised production capacity for a specific part family,
thus improving the functionality of the RMS (Xu et al. 2017).
While modular reconfigurable fixtures are designed, for hold-
ing specific part family, which help in the capacity adjustment
of the production system for specific product family (Bejle-
gaard et al. 2018).

In the literature of RMS design, reconfigurable process planning (RPP) and integrated process planning and scheduling (IPPS) are active research fields from the past two decades. However, few works of the RPP at the RMS design stage integrate problems like the selection of RMTs and setups of the part. Consequently, the RPP generated at the design stage leads to a lot of changes during the production phase, which can cause a loss of resources and time, thus consequently result in a decrease of the system responsiveness. By considering the setup planning for the part with reconfigurable process planning, during the design phase in RMS, the responsiveness of the system can be further enhanced. This will improve the configuration flexibility of the system.

The reminder of the paper is organised as follows: “Liter-
ature review” section gives the literature review of the related
works to reconfigurable process planning, setup planning and
integrated process planning. “Problem description” section
describes the problem statement and working assumptions.
“Mathematical model” section presents the developed math-
ematical model for the cost minimisation problem. “Solu-
tion approach” section details the new developed hybrid
approach. “Numerical example” section discusses the numer-
ical example to show the applicability of the proposed
approach, and finally “Summary and conclusion” section
gives the concluding remarks and some future works.

Literature review

In today's dynamic market with rapid advancements in the
technological fields, the organisations are trying to adopt
there visions accordingly to be more responsive towards
the change (Zidi et al. 2021). As the vision of European
Union Framework Program for Research and Innovation
(Horizon 2020) is intended towards the development of next-
generation manufacturing systems by considering energy
efficiency, factory of future, digital twins, and the sustainable
process industry (SPIRE). For realisation of the concepts like
“factory of future” (or industry 4.0), different technologies
such as artificial intelligence, robotics, and digital technolo-
gies are integrated into the next generation manufacturing
systems from the factory floor level to networked factories.
Manufacturing systems like RMS, holonic manufacturing

systems, and cyber-physical production system, are intended
to achieve the desire capabilities of industry 4.0 and helps
pave the way by bridging the gap between the concept and
reality (Derigent et al. 2020; Koren et al. 2018),...

Reconfigurable manufacturing system is one of the
NGMS, which is designed to be responsive towards the
unintended changes in product demands and variety. Sev-
eral reviews of RMS are conducted in the literature in an
attempt to organise the existing body of research in this
field, like: Yelles-Chaouche et al. (2020), Khanna and Kumar
(2019), Bortolini et al. (2018), Koren et al. (2018),...(Yelles-
Chaouche et al. 2020), a review of the RMS literature is
presented, based on the optimisation problems studied and
the approaches proposed. The authors classified the studies
into four categories, namely RMS design, production plan-
ning and scheduling, layout design, and line balancing and
re-balancing problems. In the literature review presented in
Khanna and Kumar (2019), a focus is made on the RMS
responsiveness, the RMS conceptual developments, the part
family formation, and RMS design problems. Koren et al.
(2018), devised the operational and the design principles
for RMS and then according to the formulated principles,
the literature review of RMS design and operation research
problems is presented. Bortolini et al. (2018) presented an
RMS literature review by classifying the RMS research into
five main streams: the reconfigurability level assessment,
the analysis of RMS features, the analysis of RMS, applied
research and field applications, and reconfigurability towards
industry 4.0.

This section presents related works in RMS design, in
relation to the proposed study.

Reconfigurable process planing (RPP)

Reconfigurable Process planning is the process of selecting and sequencing manufacturing processes and parameters so that they can achieve a desired objective or multi-objective functions by respecting the set of domain constraints (Ma et al. 2020). RMS design is intended for the part family instead of a single part. For which the process plan is developed considering different part/product varieties, so that it can be adopted for each variant of the part family or even beyond the part family's boundaries (evolving part family) (Azab and ElMaraghy 2007). This makes the design problem more complicated as compare to the conventional systems in which process plan is developed for a single part.

In literature, many works have been carried out to generate
reconfigurable process plan, with different objective func-
tions in order to deal with desired part/product varieties. Azab
and ElMaraghy (2007), developed a mathematical model
for the reconfiguration of process plan, in which existing
process plan for part family can be reconfigured for any
new part, introduced to the same family, by using 0-1 inte-
ger approach. ElMaraghy (2007) wrote a keynote paper on reconfigurable process planning for responsive manufacturing systems. Maniraj et al. (2014) generated optimal process plans for a single product flow-line RMS, by using ant colony optimisation approach.

## Setup planning

Setup planning is the re-positioning of a workpiece on the fixture of a particular machine to get the maximum number of possible machining operations, keeping in view the constraints of the system capability and design requirements. Like process planning, setup planning is also an NP-Hard problem. Researchers had applied different optimisation techniques to solve the problem of setup plan generation, considering various objectives (cost, time,...) under a particular set of constraints related to the system, or the workpiece. Gaoliang et al. (2005) used fuzzy set theory to generate optimum setup plan for a prismatic part. In this work setups of the operations are generated according to common tool approach direction (TAD), then feature precedence relationship (FPR) matrix is developed for sequencing of operations within each setup and in the third step setups are sequenced to get setup plan. Zhang et al. (2001) proposed a graph-based setup planning approach. Feature and tolerance relationship, and datum and feature relationships are represented in the form of graphs. Setup plans are generated based on developed principles for minimising the stack up error under a true positioning GD&T scheme. Very few works had been carried out for the generation of setup plan at reconfigurable process planning stage. Kannan and Saha (2009) proposed a feature-based set up planning approach for the generation of RMT configurations. In there work, enriched features are defined, for generation of setup plan and according to the generated setup plan RMT configurations are designed.

## Integrated RPP and scheduling

In the literature for conventional manufacturing systems, many works are dedicated to the integration of process planning and scheduling of the manufacturing system. Phanden et al. (2013) has given a review on integration of process planning and scheduling. In their work integration is classified into three classes as non-linear, distributed, and close loop process planning and scheduling. Dou et al. (2020) proposed a mathematical modelling for integrated configuration design and scheduling considering multiple processing plans for every product, to minimise the total cost (comprising capital cost and reconfiguration cost), and the total tardiness. Wang et al. (2009) proposed a genetic algorithm (GA) based approach for cross-machine adaptive setup planning of the part. By using the scheduling as objective function, setups are sequenced to get the desired process plans. More recently,

in (Ameer and Dahane 2020) work authors propose a new heuristic for the integration of process and setup planning generation. Their proposed heuristic gives a feasible solution based on the system capabilities and the part constraints.

## Research contributions

From the above literature review, in the generation of RPP, most of the researchers are focusing on generating an optimised sequence of operations to machine the part of evolving/mature part family and to perform these operations selection of best RMTs with specific configurations is carried out. In addition, most of the works presented are based on the use of the reconfiguration of machines to achieve the integration of process plans and scheduling. However, there is a lack of works using both machine configurations as well as the re-positioning of the part to achieve the functionality of integrated process plans and scheduling.

In our work, an attempt to increase the performance of the system is made, by the integration of setup planning at process planning stage before the selection of the RMT. In particular, the contributions of this work are two-fold:

- The development of the economic cost mathematical model for a joint consideration of setup plan and process planning generation in order to improve the existing cost models of process planning in the design of a reconfigurable manufacturing system.

- The development of new hybrid genetic algorithm based heuristic approach for co-generation of setup and process plan in RMS.

## Problem description

The design focus of conventional manufacturing systems like dedicated manufacturing systems are on part and flexible manufacturing system is on system capabilities (machines), while in RMS the focus of design is on part family. Keeping in view part design specification of the part family the designer build the system capabilities to be flexible like adjustable structures i-e reconfigurable machine tools, reconfigurable fixtures, and material handling system Koren (2006). The designed system capability can then be easily reconfigured for each change within the part family. Oke et al. (2011) distinguish the design of RMS as the problem of RMT selection at the process level, and machine layout design at a system level.

In this work design problem of RMS at process level is considered where, with selection of RMTs, setups and fixtures are also selected. This is achieved by co-generation of setup and process plan. In order to achieve the objective of co-generation of setup and process plan, we start this
<figure><img src="image_3.png" /><figcaption>**Fig. 1** RMT with Basic, function, and motion modules (adapted from Wang et al. (2019))</figcaption></figure>

section by outlining the difference between machining and non-machining costs, in order to show the importance of this co-generation. Then, we present a detailed description of the considered system and its components, the part characteristics and the working assumptions.

## The machining and non-machining costs

The focus of classical approaches at process level design of RMS is, generation of process plan for a part by selecting RMT from the available RMTs in the system, with RMT configuration and tool modules. The mathematical model developed for RMTs selection, uses the objective functions of cost minimisation. In the work of Yelles-Chaouche et al. (2020), the RMS cost objective is divided into two general categories: capital cost and operating cost. At process level design only operating cost is considered while assuming only machining operations, there are two types of operating costs.

- The machining cost: The machining or processing cost is related to the cost of operational parameters of RMTs, like feed, cutting speed, depth of the cut and material properties.

- The non-machining cost: The non-machining cost is the cost of different parameters between two operations, such as tool module change, RMT configuration change, RMT change, part rotation, setup change and fixture change. Note that the non-machining cost is much higher as compare to the machining cost.

In classical approaches as shown in Yelles-Chaouche et al. (2020), the cost objective considered as an operating cost are the machining cost from non-machining cost only RMT modules and tool usage costs, RMT reconfiguration costs are considered. Because in these approaches only selection of RMT is considered. In this work with co-generation of setup plan and process plan, consideration of fixture selection (part positioning) along with RMT selection is carried out, which makes the other components of non-machining cost like tool

module change, RMT configuration change, RMT change, part rotation, setup change and fixture change possible.

## The reconfigurable machine tools structure and characteristics

RMTs are modular structures designed for customised flexibility. Due to the modular nature of RMT, it can be reconfigured into different configurations by changing (adding, removing, and re-adjusting) the hardware modules. Each RMT consists of basic modules, function modules (Tool modules), and motion modules (axis modules) (Wang et al. 2019; Padayachee et al. 2009). The basic modules (Orange colour) are the fixed modules (Gray colour) and do not change with the configuration change of the RMT. While the function modules (Blue colour) are interchangeable (Green colour) for performing different operations. Motion modules (Purple colour) are also interchangeable (Green colour), to adjust the degree of freedom (DOF) of each RMT. As in this work, only 3-DOF RMTs are considered so we restrict our motion modules, and in the configuration design of RMT consider just the function modules. Each RMT has a specific number of configurations, which are defined by the changeable modules of RMT. The structure of RMT is represented in the Fig. 1.

## The part characteristics

The part is defined by enriched features (Kannan and Saha 2009) which are common machining attributes that contain machine tool configurations required to manufacture a feature, while each feature is machined by a set of operations (Fig. 2).

Setups of the part are the number of positions required to perform all the machining operations of a part. With an increase in complexity of the part the number of setups increases. The visibility of machining features also affects the setup change of the part. For example in the same setup feature, visibility is blocked from the tool by the fixture's
<figure><img src="image_4.png" /><figcaption>Fig. 2 Part characteristics</figcaption></figure>

<figure><img src="image_5.png" /><figcaption>Fig. 3 Initial part TAD and tool module TOS</figcaption></figure>

clamping components or any other possible obstruction. Visibility factors are out of the scope of this work.

## RMTs reconfiguration and part orientation

Tool module change, RMT configuration change, and RMT change are the parameters related to machine reconfiguration capabilities. While part rotation, setup change and fixture change are parameters related to optimum part orientation or setup planning.

The selection of RMTs at the process level design, covers only machine reconfiguration capabilities parameters of non-machining time, ignoring the part orientation parameters. However, the part orientation parameters are addressed after selection of RMTs, during the setup planning stage. Thus, to reduce the overall cost caused by the non-machining operations, the setups of operations, the part orientation parameters are also considered with the RMTs reconfiguration capabilities parameters.

For example, in the Fig. 3, an initial stage of tool modules of RMT and part orientation is shown, with there respective

<figure><img src="image_6.png" /></figure>

<figure><img src="image_7.png" /></figure>

<figure><img src="image_8.png" /><figcaption>Fig. 4 Alternatives of part setups on the basis of TAD and TOS</figcaption></figure>

coordinates, for machining the hole operation. There are three different alternative possibilities to perform next machining operation i-e the slot, as shown in the Fig. 4.

1. The first possibility as shown in the Fig. 4a, is the rotation of the part in the same setup (same fixture), this aligns the part orientation with the tool approach direction of RMT. So, for this case only tool change is required. Fixture and RMT remains the same.

2. The second possibility as shown in the Fig. 4b, is of the part re-positioning to align the part orientation with tool approach direction of RMT. So, for this case setup of the
part needs to be change with tool change of the RMT. Fixture changes and RMT TAD remains the same.

3. The third possibility as shown in the Fig. 4c, is the tool approach direction change for the RMT, to align the tool approach direction of RMT with the part orientation. So, in this case with tool module, tool approach direction also changes. Fixtures remains the same but RMT tool approach direction is changed.

## Setup and process plans co-generation

From the example above, we can see that stack up between two operations occurs because of the setup change of the part. In such situation, we can either: (1) avoid the problem by changing the tool module instead the setup of the part, or (2) increase the RMT precision, which consequently increases the tolerance cost.

Thus, the contribution of this study is the selection of RMTs and tool modules, as well as setups, and fixtures for the developed RPP. The objective is to achieve the RPP generation with the selection of RMTs, tool modules, setups, and fixtures, based on the economic costs (Table 1).

The Table 1, shows the final result of the proposed approach. It is read from left to right, column wise. For example, the first column is read as: the operation $p_1$ is performed on $RMT_3$, under its configuration $CF_1$, with tool module $TM_2$, in the setup $S_1$ on fixture $F_1$. All the other columns are read in the same manner.

Following are the assumption made in the present work.

1. Each RMT is capable to perform at least one operation on the considered part.

2. Each RMT can have a maximum of three degree of freedom (DOF)

3. The RMT reconfiguration is determined by the change of tool modules because motion modules are considered constant for (3-DOF) RMT.

4. Only tool modules are considered for different configurations of RMT, so each configuration of an RMT corresponds to a specific tool module.

5. Part considered for this work is only of prismatic shape.

6. Part can be fixed on one fixture for each setup.

7. The fixture can be moved from one RMT to another RMT.

<table><caption>**Table 1** Integrated setup planning and process planning</caption><tr><td>Setup</td><td>1</td><td>1</td><td>2</td><td>3</td><td>3</td><td>3</td></tr><tr><td>Fixture</td><td>1</td><td>1</td><td>2</td><td>3</td><td>3</td><td>3</td></tr><tr><td>Operation</td><td>1</td><td>2</td><td>4</td><td>3</td><td>5</td><td>6</td></tr><tr><td>RMT</td><td>3</td><td>3</td><td>2</td><td>5</td><td>5</td><td>2</td></tr><tr><td>Configuration</td><td>1</td><td>1</td><td>2</td><td>1</td><td>2</td><td>2</td></tr><tr><td>Tool Module</td><td>2</td><td>1</td><td>3</td><td>1</td><td>3</td><td>2</td></tr></table>

8. The cost of fixture movement from one RMT to another is neglected.

9. Only manufacturing process of machining is considered.

10. Part is composed of enriched features.

11. Each feature is performed by one machining operation.

## Mathematical model

The considered RMS has NR number of RMTs, which are able to perform at-least one operation from the $OP_f$ operations required by the enriched features $EF_l$ of a given workpiece. Each $RMT_i$ has $NM_i$ tool modules $TM_i k$, ($k = 1, ..., NM_i$), and can be in one of its available $NC_i$ configurations $CF_i l$, ($l = 1, ..., NC_i$). Formulation of problem is carried out in the following subsections.

## Notations

Notations used in this work are detailed as follows.

- Indices:

<table><tr><td>i</td><td>Index of RMTs</td></tr><tr><td>k</td><td>Index of modules</td></tr><tr><td>l</td><td>Index of configurations of an RMT</td></tr><tr><td>f</td><td>Index of fixtures</td></tr><tr><td>t</td><td>Index of features</td></tr><tr><td>s</td><td>Index of setups in the integrated process and setup plan</td></tr><tr><td>p</td><td>Index of operations in the integrated process and setup plan</td></tr></table>

- Reconfigurable Machines Tools (RMTs):

<table><tr><td>NR</td><td>Number of RMTs</td></tr><tr><td>NMi</td><td>Number of modules of RMTi</td></tr><tr><td>NCi</td><td>Number of configurations of RMTi</td></tr><tr><td>TMik</td><td>The tool module k of RMTi</td></tr><tr><td>CFil</td><td>The configuration l of RMTi</td></tr><tr><td>TOSi</td><td>Tool orientation space of RMTi</td></tr></table>

Based on the assumption 4 which stipulates that each configuration $CF_i l$ corresponds to one tool module $TM_i k$, we have: $NM_i = NC_i$, $\forall i = 1, ..., NR$, $\forall k = 1, ..., NM_i \forall l = 1, ..., NC_i$.

- Part setup and fixture parameters in RPP:

<table><tr><td>NS</td><td>Number of setups in RPP</td></tr><tr><td>NF</td><td>Number of fixtures in RPP</td></tr><tr><td>Ss</td><td>The s<sup>th</sup> setup of the part</td></tr></table>
- Part operations parameters:

<table><tr><td>NP<sub>f</sub></td><td>Number of operations for the feature EF<sub>f</sub> of the part</td></tr><tr><td>NP</td><td>Number of operations for the part</td></tr><tr><td>TAD<sub>p</sub></td><td>Tool approach direction of operation p</td></tr><tr><td>Prec<sub>pp'</sub></td><td>Precedence constraint between operations OP<sub>p</sub> and OP<sub>p'</sub>:</td></tr><tr><td>Prec<sub>pp'</sub></td><td>= { 1 if OP<sub>p</sub> should be performed before OP<sub>p'</sub><br>0 otherwise</td></tr></table>

<table><tr><td>Rel<sub>pp'</sub></td><td>Relationship constraint between operations OP<sub>p</sub> and OP<sub>p'</sub> by datum relationship, geometric relationship or tolerance relationship:</td></tr><tr><td>Datum<sub>pp'</sub></td><td>= { 1 if OP<sub>p</sub> and OP<sub>p'</sub> are related by datum relationship<br>0 otherwise</td></tr></table>

- Costs parameters:

<table><tr><td>tmc<sub>ikk'</sub></td><td>Tool module change cost for RMT<sub>i</sub> from TM<sub>k</sub> to TM<sub>k'</sub></td></tr><tr><td>mc<sub>ilkp</sub></td><td>Machining cost for the O<sub>p</sub> on RMT<sub>i</sub> under its l<sup>th</sup> configuration, with the tool module TM<sub>k</sub></td></tr><tr><td>sc<sub>pp'</sub></td><td>Stack up cost between operations O<sub>p</sub> and O<sub>p'</sub></td></tr><tr><td>st</td><td>setup cost</td></tr><tr><td>PC</td><td>Processing cost</td></tr><tr><td>TLF</td><td>Tolerance cost factor</td></tr><tr><td>SSC</td><td>Setup change cost</td></tr><tr><td>TLC</td><td>Tolerance cost</td></tr><tr><td>TMCC</td><td>Tool Module Change Cost</td></tr><tr><td>TC</td><td>Total cost of the integrated setup and process plan</td></tr></table>

## Decision variables

Two decision variables used in this model are described as follows.

- Operation/setup relationship variable $\alpha_{ps}$:

It defines the relationship between the operation and the setup, i.e. which operation $OP_p$ is performed in setup $S_s$:

$$ \alpha_{ps} = \begin{cases} 1 & \text{if operation } OP_p \text{ is performed in the setup } S_s \\ 0 & \text{otherwise} \end{cases} \qquad (1) $$

- Operations assignment variable $x_{ilkp}$:

It defines the relationship between the operation, the RMT, the configuration and the tool module, i.e. if the operation $OP_p$ is performed by the configuration $CF_l$ of RMT<sub>i</sub> with the tool module TM<sub>k</sub>:

$$ x_{ilkp} = \begin{cases} 1 & \text{if operation } OP_p \text{ is performed on RMT}_i \text{ under its configuration } CF_{il}, \text{ with tool module } TM_{ik} \\ 0 & \text{otherwise} \end{cases} \qquad (2) $$

## Constraints

Following are the feasibility constraints used in the mathematical model for the considered problem.

- Each $OP_p$ is performed in one setup:

$$ \sum_{p=1}^{NS} \alpha_{ps} = 1 \quad \forall p = 1, \dots, NP \qquad (3) $$

- Each $OP_p$ is performed by one configuration of a given RMT with a specified tool module:

$$ \sum_{i=1}^{NR} \sum_{l=1}^{NC_i} \sum_{k=1}^{NM_i} x_{ilkp} = 1 \quad \forall p = 1, \dots, NP \qquad (4) $$

- The sequence of operations in each setup and in-between the setups of process plan respects the precedence constraints:

$$ \sum_{p'=1}^{p} Prec_{pp'} = 0 \quad \forall p = 1, \dots, NP \qquad (5) $$

- If the operation $O_p$ is performed by the RMT<sub>i</sub> than the TAD needed by $O_p$ are necessarily offered by the TOS of RMT<sub>i</sub>:

$$ \begin{aligned} x_{ilkp} &= 1 \implies TAD_p \subseteq TOS_i \quad \forall i \\ &= 1, \dots, NR, \forall p = 1, \dots, NP \end{aligned} \qquad (6) $$

## Cost modelling

The economic cost minimisation is considered as the objective function for the proposed approach. The cost of manufacturing system is defined as the sum of all the costs of resources used in the process of making a product. These resources are modified or changed depending upon the system's capability and design requirements of the product in reconfigurable manufacturing system. In this work we are considering four types of costs: the processing cost, the tolerance cost, the setup change cost, and the tool module change cost. These four costs are modelled as described below.

- Processing Cost (PC): The processing cost is the cost of machining each operation, on a RMT, under a given
configuration, with specific tool module. Thus, the processing cost of operations requested for the considered workpiece is given by the following equation:

$$PC = \sum_{i=1}^{NR} \sum_{l=1}^{NC_i} \sum_{k=1}^{NM_i} \sum_{p=1}^{NP} mc_{ilkp} \times x_{ilkp} \quad (7)$$

- **Tolerance cost (TLC):** Tolerance stack up error occurs between the operations, when operations are related to each other by design specification and are performed in different setups due to process capability constraints as defined in Wang and Nee (2011). Because of this stack up error, more precise operations are required which need more precise RMTs, thus increasing the overall cost of the system. Due to this reason, a tolerance cost factor is included in the total cost calculation.

This tolerance cost is based on two information: the first one is operations relationships and the second one is the stack up cost between related operations.

So, the total tolerance cost of the operations is given as follows:

$$TLC = \sum_{p=1}^{NP} \sum_{p'=1}^{NP} \sum_{s=1}^{S} \sum_{\substack{s'=1 \\ s' \neq s}}^{S} sc_{pp'} \times Rel_{pp'} \times \alpha_{ps} \times \alpha_{p's'} \quad (8)$$

- **Setup change Cost (SCC):** It is the cost of changing from one setup to another between two successive operations. It is calculated by the following equation:

$$SCC = \sum_{s=1}^{S-1} \sum_{p=1}^{NP-1} st \times \alpha_{ps} \times \alpha_{(p+1)(s+1)} \quad (9)$$

- **Tool Module Change Cost (TMCC):** It the cost of changing from one tool module to another between two successive operations on the same RMT. It is calculated by the following equation:

$$TMCC = \sum_{p=1}^{NP-1} \sum_{i=1}^{NR} \sum_{l=1}^{NC_i} \sum_{k=1}^{NM_i} \sum_{\substack{k'=1 \\ k' \neq k}}^{k'=k} tmc_{ikk'} \times x_{ilkp} \times x_{ilk'(p+1)} \quad (10)$$

- **Total cost (TC):** The total cost (TC) is the sum of processing cost, tolerance cost, setup change cost and module change cost. Thus, the objective function consists in the minimisation of the total cost generated by the co-generated setup and process plan. It is expressed as follows (equation 11):

$$Minimise TC = PC + TLC + SCC + TMCC \quad (11)$$

## Solution approach

Generally in process planning operations are sequenced by respecting the different types of constraints like a precedence and topological constraints. Then for each operation selection of machines with their tools and configurations is carried out. After process planning, setup planning and fixture designing are carried out for a part to be machined. At this stage, many other factors like operation tolerance relationship, datum constraints, geometric feature relationship constraints, and best manufacturing practices are taken into account. Due to these factors, many changes are made in the original process plan from the design stage. This reduces the overall efficiency of the system.

In this context, a new hybrid GA based heuristic approach for setup and process plan generation in an RMS environment is developed. This approach is divided into two stages, in the first stage generation of process plan with setups of the part is carried out and for each setup, a fixture is selected, while in the second stage, a GA is used to select RMT and tool module for each operation of the generated process plan. The input data of the proposed approach are precedence relationship matrix, operation datum/priority matrix, TAD of operations, RMTs, Tool modules table of each RMT, TOS of each RMT with different configurations.

In order to ensure the generalisation of the proposed approach, and its applicability to any part, and any RMS structure, a preliminary stage is included to:

- Check the validity of part and RMS data, and to ensure the feasibility of the considered part manufacturing with the considered RMS (Fig. 6).

- Adapt and generate data required to the setup and process plan generation, based on the input data of the part and the RMS.

After a successful validity and feasibility check (through the preliminary stage) and the adaptation of required data, the co-generation of setup and process plan is carried out in two main stages (Fig. 5):

- Stage I: is performed by a heuristic to generate a feasible setup plan and the related fixtures assignment.

- Stage II: this stage is performed by a genetic algorithm. The objective is to generate the best process plan, based on the result of stage I.

## Setup plan generation and fixtures assignment

As shown in Fig. 8, the first step (Step 1), operations are clustered into setup clusters. In the second step (Step 2), the selection of fixtures is carried out for each setup cluster.

The structure of proposed heuristic approach is as follows.
<figure><img src="image_9.png" /><figcaption>Fig. 5 General overview of the proposed approach</figcaption></figure>

## Step 1: Setups clustering

### Step 1.1: Ranking and prioritising the operations:

- Generation of zero precedence set from Precedence relationship matrix between operations $OP_{ij}$. By this, we will get the ranking of operations. The highest-ranked operation from zero precedence operations is the first option for the first element in a setup plan.

- Generation of priority table from operations relationships.

### Step 1.2: Generation of first operation set/setup:

- Intialise 1st operation set/setup.

- Assign the first operation to first position of the first operation set/setup by checking:

• Zero precedence (Candidate operations).

• Highest ranking (is preferred), if more then one operation have the same ranking, so we select a random one.

- Select TAD of the first operation as TAD of first set of operation/setup.

### Step 1.3: Generation of other possible sets of operations/setups:

- For each non-assigned operation:

• Update the zero precedence set.

- Take one (random) operation from the set of the zero precedence set operations/setup: *nap*

- For each setup *i* from the set of created setups (*i* = 1, ..., *NCS*), check:

• If the precedence constraints of *nap* are validated by operations of the setup *i*, and the TAD required by the operation *nap* are included in the TAD offered by the setup *i*:

• Then assign *nap* to this setup and update TAD of setup.

• Else, generate another setup, assign *nap* to this setup and increment the number of created setups *NCS*.

## Step 2: Fixtures assignment

In order to minimise the impact caused by the change of fixtures, the second step of the proposed heuristic aims to assign the same fixture to setups with the same TADs. In this step, based on the results of the previous step, the heuristic follows the sub-steps below (9):

- **Step 2.1:** For each setup *i* without assigned fixture we assign a new fixture *f*.

- **Step 2.2:** Check TADs of all remaining setups : for each checked setup *j*, if its TADs are similar to those of the setup *i*, then assign to this setup the fixture *f*.

- **Step 2.3:** Repeat Step 2.1 and 2.3 until all the setups have an assigned fixture.
<figure><img src="image_10.png" /><figcaption>**Fig. 6** Preliminary stage: validity and feasibility check</figcaption></figure>
<figure><img src="image_11.png" /><figcaption>**Fig. 7** Preliminary stage: data adaptation and generation</figcaption></figure>
<figure><img src="image_12.png" /><figcaption>Fig. 8 Setup plan generation</figcaption></figure>
<table><caption>**Table 2** A sample of setup plan and fixtures generated by the Stage I</caption><thead><tr><th rowspan="2"></th><th colspan="10">Setup clusters</th></tr><tr><th>1</th><th>2</th><th>3</th></tr></thead><tbody><tr><th>Operations</th><td>1</td><td>14</td><td>11</td><td>4</td><td>5</td><td>9</td><td>13</td><td>2</td><td>3</td><td>8</td><td>10</td><td>12</td><td>6</td><td>7</td></tr><tr><th>Fixtures</th><td>1</td><td></td><td></td><td></td><td></td><td></td><td>2</td><td></td><td></td><td></td><td></td><td>1</td><td></td><td></td></tr></tbody></table>

At Stage 1, a setup plan is generated. It specifies the setups and the set of operations assigned to each setup, and the assigned fixtures.

Table 2 gives a sample of a setup plan and fixtures assignments, generated by the proposed heuristic. In this example, a part requires 14 operations. The heuristic provides 3 setups (NCS = 3): the first one includes 6 operations, the second, and the third setups include respectively 5 and 3 operations. We notice that the same fixture is assigned to setups 1 and 3 (Fixture 1).

## Process plan generation

This second stage of the proposed approach is performed by a genetic algorithm. It aims to determine the best RMT and TM assignments for the required operations. These assignments are generated based on the obtained setup plan (Stage I), to minimise the total cost (equation 11). It is worth noting that Genetic Algorithms (GA) have shown their efficiency to solve industrial problems. We find in the literature several studies proposing a hybrid approach based on GA and other meta-heuristics or heuristics (Singh and Khamparia (2020); Tozzo et al. (2020); Ardjmand et al. (2020); Haoues et al. (2019); Koken et al. (2018),...).

We present below the technique used for the solution encoding and decoding, and the genetic operators. We recall that a configuration of a given RMT corresponds to a tool module (assumption 4). So, determining the configuration to perform an operation is equivalent to determining the tool module able to achieve this operation.

- **Solution encoding:** Solutions have been real coded in a (1 × NP) list (Table 3). For each operation, the real number represents two information: the RMT and the TM to assign in order to perform the concerned operation. Table 4 shows the relationship between the coded solution and the sample setup plan of the Table 2. We note that the order of operations in the coded solution follows the order obtained by the setup plan generated by stage I.

- **Solution decoding:** To evaluate and analyse a solution, the corresponding chromosome should be decoded. The proposed technique for the solution decoding is performed value (gene) by value, from the left to right,

<figure><img src="image_13.png" /><figcaption>**Fig. 9** Fixtures assignments</figcaption></figure>
<table><caption>**Table 3** A coded solution</caption><tr><td>0.66</td><td>0.98</td><td>0.84</td><td>0.90</td><td>0.73</td><td>0.15</td><td>0.54</td><td>0.22</td><td>0.99</td><td>0.96</td><td>0.62</td><td>0.32</td><td>0.13</td><td>0.73</td></tr></table>

<table><caption>**Table 4** Relationship between coded solution and the generated setup plan</caption><thead><tr><th rowspan="2"></th><th colspan="11">Setup clusters</th></tr><tr><th>1</th><th>2</th><th>3</th></tr></thead><tbody><tr><th>Operations</th><td>1</td><td>14</td><td>11</td><td>4</td><td>5</td><td>9</td><td>13</td><td>2</td><td>3</td><td>8</td><td>10</td><td>12</td><td>6</td><td>7</td></tr><tr><th>RMT & TM</th><td>0.66</td><td>0.98</td><td>0.84</td><td>0.90</td><td>0.73</td><td>0.15</td><td>0.54</td><td>0.22</td><td>0.99</td><td>0.96</td><td>0.62</td><td>0.32</td><td>0.13</td><td>0.73</td></tr></tbody></table>

following the order of operations in the generated setup plan.

Thus for each coded gene (CG), the decoding technique is as follows, to obtain the decoded gene (DG):

1. Among all RMTs, identify the RMTs with TM able to perform the operation corresponding to the gene to be decoded.

2. Set up the list L of couples $(RMT, TM)^i$ candidates to perform the operation $(i = 1, \dots, Card(L))$.

3. The decoded gene is computed as follows: $DG = [CG \times Card(L)]$.

4. So, the corresponding RMT and TM assigned to the concerned operation is the couple $(RMT, TM)^{DG}$ from the list L.

For instance, for the first column of the 4 the concerned operation is $OP_1$ and the coded gene value is 0.66.

We suppose that $L = (RMT_2, TM_1), (RMT_3, TM_2), (RMT_3, TM_4)$. It means that $OP_1$ can be performed by the tool module $TM_1$ of $RMT_2$, and the tool modules $TM_2$ and $TM_4$ of $RMT_3$. Thus, $DG = [0.66 \times 3] = 2$. We conclude that $OP_1$ is performed by the $RMT_3$ and the $TM_2$.

- **Genetic operators:** The next generation is generated mainly by two operators: the crossover and the mutation. The crossover operator aims to create new offspring from solutions called parents. In the developed GA the parents are chosen randomly from the current generation, and the operator is done based on two random crossover points (Fig. 10). The mutation operation is a process used to avoid local optima. It consists of a change of a random gene of a randomly chosen solution (Fig. 11). In addition to the solutions resulting from the crossover and mutation process, a set of best solutions for the current generation is added to the next generation. This process is called elitism, and aims to preserve the best solutions throughout the generations evolution.

- **Solution fitness:** The fitness of a solution is the value of the objective function generated by this solution. In our case, the fitness of a solution is evaluated by the equation 11.

<figure><img src="image_14.png" /><figcaption>**Fig. 10** The crossover operator</figcaption></figure>

<figure><img src="image_15.png" /><figcaption>**Fig. 11** The mutation operator</figcaption></figure>

- **Termination condition:** The convergence process of the GA is stopped after a fixed numbers of generations $NGmax$.
<figure><img src="image_16.png" /><figcaption>**Table 5** Operations and features representation</figcaption></figure>

<table><thead><tr><td>Operations</td><td>Features</td></tr></thead><tbody><tr><td>Op<sub>1</sub></td><td>Slot (ST<sub>1</sub>)</td></tr><tr><td>Op<sub>2</sub></td><td>Slot (ST<sub>2</sub>)</td></tr><tr><td>Op<sub>3</sub></td><td>Tee Slot (TS<sub>1</sub>)</td></tr><tr><td>Op<sub>4</sub></td><td>Tee Slot (TS<sub>2</sub>)</td></tr><tr><td>Op<sub>5</sub></td><td>Square slot (SQ<sub>1</sub>)</td></tr><tr><td>Op<sub>6</sub></td><td>Square slot (SQ<sub>2</sub>)</td></tr><tr><td>Op<sub>7</sub></td><td>Square slot (SQ<sub>3</sub>)</td></tr><tr><td>Op<sub>8</sub></td><td>Square slot (SQ<sub>4</sub>)</td></tr><tr><td>Op<sub>9</sub></td><td>Rectangular open pocket (ROP<sub>1</sub>)</td></tr><tr><td>Op<sub>10</sub></td><td>Rectangular open pocket (ROP<sub>2</sub>)</td></tr><tr><td>Op<sub>11</sub></td><td>Square slot (SQ<sub>5</sub>)</td></tr><tr><td>Op<sub>12</sub></td><td>Edge round (ER<sub>1</sub>)</td></tr><tr><td>Op<sub>13</sub></td><td>Edge round (ER<sub>2</sub>)</td></tr><tr><td>Op<sub>14</sub></td><td>Round hole (RH<sub>1</sub>)</td></tr><tr><td>Op<sub>15</sub></td><td>Round hole (RH<sub>2</sub>)</td></tr><tr><td>Op<sub>16</sub></td><td>Counterbore hole (CBH<sub>1</sub>)</td></tr><tr><td>Op<sub>17</sub></td><td>Counterbore hole (CBH<sub>2</sub>)</td></tr></tbody></table>

## Numerical example

### Input data description

In order to show the applicability of the proposed solution approach, a numerical example of a clamping plate (WS5161) from Amaitik and Kilic (2015) is considered. The part, shown in the Fig. 12, has 17 enriched features. Assuming that each feature can be machined by one operation, there are 17 operations. Each operation with its related feature is described in Table 5.

TADs of each operation of the part are selected from data of enriched features. So, there are six possible TADs, in $\pm x$, $\pm y$, and $\pm z$ directions as expressed in the Table 10.

The precedence relationships between the operations are given in Table 11. For the operations with zero precedence, the whole column is of 0's. In the Table 11, $Op_1$, $Op_2$, $Op_3$, $Op_4$, $Op_9$ and $Op_{10}$ are zero precedence operations.

Datum or tolerance relationship between operations are represented in Table 12. This table allows generating the priority for operations selection during the operations assignment in setup plan generation. For example, $Op_1$ has a datum or tolerance relationship with seven other operations while $Op_3$ has datum or tolerance relationships with three other operations. So, $Op_1$ has priority over $Op_3$ in selection during the first stage of the proposed approach.

The stack up cost is based on the datum/priority relationship table, as detailed in Table 13. $Op_2$ and $Op_4$ are related to each other by datum relationship (have same datum plan), so if these two operations are performed in different setups then the stack up cost must be considered, which is 7.1 in this case.

From Table 5, it can be noted that there are three types of enriched features to perform the part: slot, pocket, and hole.

From the available RMTs in the system for the machining of slots feature, milling or slot RMTs can be used, while for pocket features, milling RMTs (with required tool modules) can be selected, and for the hole feature, selection can be made between available milling or drilling RMT.

To machine this part, five RMTs are selected from the available RMTs. These RMTs, with its all tool module (Function modules) configurations are given in the Table 14. This table also shows the capability of RMT to perform particular operations. For example, $TM_{11}$ is capable of performing $Op_3$ and $Op_4$. Similarly, $RMT_1$ and $RMT_3$ are milling RMTs,
<table><caption>**Table 6** GA parameters</caption><thead><tr><td>Parameter</td><td>Value</td></tr></thead><tbody><tr><td>Population size</td><td>100</td></tr><tr><td>Number of generations</td><td>200</td></tr><tr><td>Crossover rate</td><td>0.60</td></tr><tr><td>Mutation rate</td><td>0.05</td></tr><tr><td>Random rate</td><td>0.2</td></tr><tr><td>Elitist rate</td><td>0.15</td></tr></tbody></table>

$RMT_2$ is a slot RMT, $RMT_4$ is a hybrid RMT, with both milling and slot tool modules, and $RMT_5$ is a drilling RMT. These RMTs have four, two, three, three, and two configurations respectively.

Table 15 details TOS of each configuration of the RMT. The processing costs of operations and the tool modules change costs are given by the Tables 16 and 17 respectively. Note that the setup change cost is set at 122.5$.

For the second stage, the Table 6 summarises the GA parameters.

## The obtained results

Figure 13 illustrates the obtained setup and process plan, with a description of the relevant area in the workpiece, concerned by the operation. More details are also shown in the Table 18.

The 17 operations of the considered workpiece are clustered into 7 setups by the heuristic and to each setup cluster, a fixture is assigned. As shown in the Table 18 the operations clustering is as follows:

- Slot ($ST_1$) is performed is setup 1,

- Slot ($ST_2$), Rectangular open pocket ($ROP_1$) and Rectangular open pocket ($ROP_2$) are performed in setup 2,

- Tee Slot ($TS_2$) and Tee Slot ($TS_1$) are performed is setup 3,

- Square slot ($SQ_2$), Square slot ($SQ_1$), Square slot ($SQ_4$), Square slot ($SQ_3$), Counterbore hole ($CBH_1$), Round hole($RH_2$), Round hole($RH_1$) and Counterbore hole ($CBH_2$) are performed is setup 4,

- Edge round ($ER_1$) are performed in setup 5,

- Edge round ($ER_2$) is performed is setup 6,

- Square slot ($SQ_5$) is performed is setup 7.

Table 18 shows also that setup 2 and 6 are assigned to the same fixture positioning, to minimise the fixture handling (clamping and holding devices). So, for both setups 2 and setup cluster 6, the fixture 2 is assigned by the developed heuristic of stage 1.

The heuristic also generates the TAD of each generated setup cluster given in the Table 19.

<table><caption>**Table 7** Final integrated setup and process plan</caption><tr><td>Setup</td><td>1</td><td>2</td><td>2</td><td>2</td><td>3</td><td>3</td><td>4</td><td>4</td><td>4</td><td>4</td><td>4</td><td>4</td><td>4</td><td>4</td><td>5</td><td>6</td><td>7</td></tr><tr><td>Fixture</td><td>1</td><td>2</td><td>2</td><td>2</td><td>3</td><td>3</td><td>4</td><td>4</td><td>4</td><td>4</td><td>4</td><td>4</td><td>4</td><td>4</td><td>1</td><td>2</td><td>5</td></tr><tr><td>Operation</td><td>1</td><td>2</td><td>9</td><td>10</td><td>4</td><td>3</td><td>6</td><td>5</td><td>8</td><td>7</td><td>16</td><td>15</td><td>14</td><td>17</td><td>12</td><td>13</td><td>11</td></tr><tr><td>RMT</td><td>1</td><td>1</td><td>3</td><td>3</td><td>1</td><td>1</td><td>1</td><td>4</td><td>4</td><td>1</td><td>4</td><td>5</td><td>5</td><td>4</td><td>3</td><td>4</td><td>2</td></tr><tr><td>CF/TM</td><td>2</td><td>2</td><td>1</td><td>1</td><td>1</td><td>1</td><td>3</td><td>1</td><td>1</td><td>3</td><td>1</td><td>2</td><td>2</td><td>1</td><td>2</td><td>3</td><td>2</td></tr></table>

The data generated in stage 1 is the input data to stage 2, as explained in the Fig. 5. In stage 2, the developed genetic algorithm selects the RMTs and tool modules for the generation of the best process plan, based on the results of stage 1.

The result obtained with stage 2 of the proposed approach is presented in the Table 7. It is interpreted column by column from the left to the right. For instant $Op_{10}$ (rectangular open pocket ($ROP_2$)) is performed in the setup 2, under the fixture 2, by the $RMT_3$ with its configuration $CF_{31}$, which corresponds to the tool module $CF_{31}$.

The total cost of the integrated process and setup plan generated by the proposed approach is 1233.1$. It is composed of the processing cost: 415$, the setup change cost: 735$, the tolerance cost: 62.8$, and the tool module change cost: 20.3$.

## Results discussion

Through this section, we discuss and analyse different cases of RMT and Tool modules selection by the developed GA (stage 2), based on the setup clusters of operations, generated by the heuristic (stage1):

- Case 1: Selection of best RMT and tool module, amount the candidate RMTs when setup cluster is the same between the operations. There are two situations of case 1, as explained below.

Firstly, for the first operation, $Op_1$ in setup1, the candidates RMTs are given in the Table 14: $RMT_1$ with tool module $TM_{12}$ and $RMT_2$ with tool module $TM_{22}$. GA selects the $RMT_1$ with tool module $TM_{12}$.

Secondly, between operations $Op_9$ and $Op_2$. Setup cluster remains the same and RMT changes from $RMT_1$ to $RMT_3$, because $Op_9$ is different from $Op_2$ and $RMT_1$ doesn't have the tool module to perform the $Op_9$. So in this case, the GA select between two candidates, $RMT_3$ and $RMT_4$ which are capable of performing $Op_9$ as in Table 14. $RMT_3$ with $TM_{31}$ is selected by the GA.

- Case 2: Selection of best RMT and tool module, amount the candidate RMTs when setup clusters are different between the two similar types of operations.

For operation $Op_2$ to be performed after $Op_1$, setup is changed from setup1 to setup2. So $Op_2$ is performed
<table><caption>**Fig. 13** A detailed setup and process plans</caption><thead><tr><th>Setups</th><th>TADs</th><th>Operations</th><th>Clamping part with operations of each setup</th><th>RMT/ Configurations</th></tr></thead><tbody><tr><td>1</td><td>+x, +z, -x, -z</td><td>(OP1) Slot</td><td></td><td>RMT<sub>1</sub> / CF<sub>12</sub></td></tr><tr><td>2</td><td>+y, +z, -x, -z</td><td>(OP2) Slot, (OP9) Rectangular open pocket (OP10) Rectangular open pocket</td><td></td><td>RMT<sub>1</sub> / CF<sub>12</sub>, RMT<sub>3</sub> / CF<sub>31</sub>, RMT<sub>3</sub> / CF<sub>31</sub></td></tr><tr><td>3</td><td>+z, -x, -y</td><td>(OP4) Tee slot (OP3) Tee slot</td><td></td><td>RMT<sub>1</sub> / CF<sub>11</sub>, RMT<sub>1</sub> / CF<sub>11</sub></td></tr><tr><td>4</td><td>+x, -y, -z</td><td>(OP6) Square slot, (OP5) Square slot, (OP8) Square slot, (OP7) Square slot, (OP16) Counter bore, (OP15) Round Hole, (OP14) Round Hole, (OP17) Counter bore</td><td></td><td>RMT<sub>1</sub> / CF<sub>13</sub>, RMT<sub>4</sub> / CF<sub>41</sub>, RMT<sub>4</sub> / CF<sub>41</sub>, RMT<sub>1</sub> / CF<sub>13</sub>, RMT<sub>4</sub> / CF<sub>41</sub>, RMT<sub>5</sub> / CF<sub>52</sub>, RMT<sub>5</sub> / CF<sub>52</sub>, RMT<sub>4</sub> / CF<sub>41</sub></td></tr><tr><td>5</td><td>+x, +z, -x, -z</td><td>(OP12) Round edge</td><td></td><td>RMT<sub>3</sub> / CF<sub>32</sub></td></tr><tr><td>6</td><td>+y, +z, -x, -z</td><td>(OP13) Round edge</td><td></td><td>RMT<sub>4</sub> / CF<sub>43</sub></td></tr><tr><td>7</td><td>+x, +y, -z</td><td>(OP11) Square slot</td><td></td><td>RMT<sub>2</sub> / CF<sub>22</sub></td></tr></tbody></table>

with the same RMT and its tool module as was for $Op_1$. Because the alignment of the TAD of operation with TOS of the tool module is already provided by part setup change. It can be noted here that without the inclusion of setup change of the part, between $Op_1$ and $Op_2$ configurational tool module change of RMT will be required.

- Case 3: Selection of best RMT and tool module, amount the candidate RMTs when setup clusters are different between two different types of operations.

For two different types of operations like $Op_3$ and $Op_6$, which are performed in the different setups, $RMT_1$ with $TM_1$ is selected to carry out $Op_3$. Same RMT with different tool module $TM_3$ is selected for $Op_6$. In this case setup change of the part compensate for RMT change.

All of the above three cases demonstrate the importance of the addition of setup of the part to process plan, with RMT selection, in term of increase in reconfiguration flexibility of the system.

<table><caption>**Table 8** Classical approach setup and process plans</caption><tr><td>Setup</td><td>1</td><td>2</td><td>2</td><td>2</td><td>3</td><td>3</td><td>3</td><td>4</td><td>5</td><td>5</td><td>5</td><td>5</td><td>6</td><td>6</td><td>7</td><td>7</td><td>8</td></tr><tr><td>Fixture</td><td>1</td><td>2</td><td>2</td><td>2</td><td>1</td><td>1</td><td>1</td><td>2</td><td>3</td><td>3</td><td>3</td><td>3</td><td>4</td><td>4</td><td>5</td><td>5</td><td>6</td></tr><tr><td>Operation</td><td>1</td><td>2</td><td>9</td><td>10</td><td>12</td><td>16</td><td>17</td><td>13</td><td>15</td><td>14</td><td>5</td><td>8</td><td>4</td><td>3</td><td>6</td><td>7</td><td>11</td></tr><tr><td>RMT</td><td>1</td><td>1</td><td>3</td><td>3</td><td>3</td><td>4</td><td>4</td><td>4</td><td>5</td><td>5</td><td>4</td><td>4</td><td>1</td><td>1</td><td>1</td><td>1</td><td>2</td></tr><tr><td>CF/TM</td><td>2</td><td>2</td><td>1</td><td>1</td><td>2</td><td>1</td><td>1</td><td>2</td><td>2</td><td>2</td><td>1</td><td>1</td><td>1</td><td>1</td><td>3</td><td>3</td><td>2</td></tr></table>

## Proposed approach validation

To illustrate the validity and the efficiency of the proposed approach, we apply it on the same example using the classical approach. In this classical approach, the setup and process plan constraints are considered separately.

The Table 8 details the setup and the process plans, generated separately the classical approach.

The comparison between the generated plans of the integrated approach (Table 7) and the classical approach (Table 8) show several differences. Indeed, the classical approach generated separately the classical approach.
<table><caption>**Table 9** Approach validation</caption><thead><tr><th rowspan="2"></th><th rowspan="2">Total cost</th><th rowspan="2">Machining cost<br>Processing cost</th><th colspan="3">Non machining costs</th></tr><tr><th>Setup change cost</th><th>Tolerance cost</th><th>Module change cost</th></tr></thead><tbody><tr><td>Proposed integrated approach</td><td>1233.1</td><td>415</td><td>735</td><td>62.8</td><td>20.30</td></tr><tr><td>Classical approach</td><td>1366.6</td><td>415</td><td>857.5</td><td>70</td><td>24.1</td></tr><tr><td>Gap (<sup>classical-integrated</sup>/<sub>integrated</sub>)</td><td>10.82%</td><td>0%</td><td>16.66%</td><td>11.46%</td><td>18.71%</td></tr></tbody></table>

erates: one additional step change, the use on an additional fixture, and tool module changes increase of six changes. In addition, Table 9 summarises an economic performance comparison between the proposed approach (the integrated approach) and the classical approach.

Table 9 shows the good performance of the proposed approach, and demonstrates an improvement of the generated total cost about 10%. This is due to the improvement in costs of the setup change (16.66%), the tolerance (11.46%) and the module change (18.71%). The reason for these improvement in the setup change and tolerance change cost is that both costs are related to setup planning for the part which are not considered in the classical approach. The processing cost remains the same, because even the setup plan with the classical method is not efficient, the processing times of operations do not depend on the operations sequencing, but only on the RMTs capabilities.

## Summary and conclusion

Reconfigurable Manufacturing Systems (RMS) are one of the next-generation manufacturing systems (NGMS), designed to cope with an increasing evolution of products, demand, regulations and technologies. An RMS aims to ensure a high level of responsiveness and efficiency, through the customised flexibility offered by its main component, the reconfigurable machine tools (RMT).

In this work, a new hybrid genetic algorithm based heuristic approach is developed for a co-generation of setup and process plan. The objective is the joint consideration of constraints related to the operations assignments to RMTs as well as the setups of the part and generating the operations sequencing accordingly.

The proposed approach is structured in two stages:

- The first stage consists in a new heuristic to generate a setup plan of the considered part and the fixtures assignments to each setup.

- The second stage is based on a genetic algorithm (GA) developed to determine the best process plan to perform the required operations.

This study made it possible to:

- Develop a new mathematical model integrating constraints of setup planning (operations relationships) and those of process plan (RMTs, Tools and operations relationships).

- Develop a new hybrid genetic algorithm based heuristic approach to determine the best integrated plan, under economic cost consideration.

Numerical experiment in the case study shows the applicability of the proposed approach, and validate that the consideration of the setup clusters of operations improves the performance of the generated plan.

The comparison between the proposed approach and a classical approach in which setup and process plans are considered separately demonstrates the effectiveness of a co-generation of setup and process plans in a reconfigurable environment.

Based on the RMS and RMTs capabilities, many issues remain to be explored, like:

1. The integration of RMS layout reconfiguration in the co-generation of setup and process plan,

2. The integration of new types of machines, like multi-spindle reconfigurable machine tools,

3. The development of multi-objective approach for the generated of integrated setup and process plans, with the consideration of other objective, such as the time, the energy consumption and the carbon footprint.

**Author Contributions** The authors contributed equally.

**Funding** Not applicable.

## Declarations

**Ethical Approval** Not applicable.

**Consent to Participate** Not applicable. The article involves no studies on humans.

**Consent to Publish** All authors have read and agreed to the published version of the manuscript.
**Competing interest** The authors declare that they have no competing interests.

**Availability of data and materials** All the data have been presented in the manuscript.

## A Input data

<table><caption>**Table 10** TADs of operations</caption><thead><tr><th rowspan="2">Op</th><th colspan="6">TAD</th></tr><tr><th>x</th><th>-x</th><th>y</th><th>-y</th><th>z</th><th>-z</th></tr></thead><tbody><tr><td>1</td><td>1</td><td>0</td><td>1</td><td>1</td><td>0</td><td>1</td></tr><tr><td>2</td><td>0</td><td>1</td><td>1</td><td>1</td><td>0</td><td>1</td></tr><tr><td>3</td><td>0</td><td>0</td><td>1</td><td>1</td><td>1</td><td>0</td></tr><tr><td>4</td><td>0</td><td>0</td><td>1</td><td>1</td><td>1</td><td>0</td></tr><tr><td>5</td><td>0</td><td>0</td><td>0</td><td>0</td><td>1</td><td>1</td></tr><tr><td>6</td><td>1</td><td>0</td><td>0</td><td>0</td><td>1</td><td>1</td></tr><tr><td>7</td><td>1</td><td>0</td><td>0</td><td>0</td><td>1</td><td>1</td></tr><tr><td>8</td><td>0</td><td>0</td><td>0</td><td>0</td><td>1</td><td>1</td></tr><tr><td>9</td><td>0</td><td>0</td><td>1</td><td>0</td><td>0</td><td>1</td></tr><tr><td>10</td><td>0</td><td>0</td><td>0</td><td>1</td><td>0</td><td>1</td></tr><tr><td>11</td><td>1</td><td>1</td><td>0</td><td>0</td><td>0</td><td>1</td></tr><tr><td>12</td><td>1</td><td>0</td><td>1</td><td>1</td><td>0</td><td>1</td></tr><tr><td>13</td><td>0</td><td>1</td><td>1</td><td>1</td><td>0</td><td>1</td></tr><tr><td>14</td><td>0</td><td>0</td><td>0</td><td>0</td><td>1</td><td>1</td></tr><tr><td>15</td><td>0</td><td>0</td><td>0</td><td>0</td><td>1</td><td>1</td></tr><tr><td>16</td><td>1</td><td>0</td><td>0</td><td>0</td><td>0</td><td>1</td></tr><tr><td>17</td><td>1</td><td>0</td><td>0</td><td>0</td><td>0</td><td>1</td></tr></tbody></table>

<table><caption>**Table 11** Precedence constraints between operations</caption><thead><tr><th rowspan="2">Op</th><th colspan="17">Op</th></tr><tr><th>1</th><th>2</th><th>3</th><th>4</th><th>5</th><th>6</th><th>7</th><th>8</th><th>9</th><th>10</th><th>11</th><th>12</th><th>13</th><th>14</th><th>15</th><th>16</th><th>17</th></tr></thead><tbody><tr><td>1</td><td>0</td><td>0</td><td>0</td><td>0</td><td>1</td><td>1</td><td>1</td><td>0</td><td>0</td><td>1</td><td>1</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td></tr><tr><td>2</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>1</td><td>0</td><td>0</td><td>1</td><td>1</td><td>1</td><td>0</td><td>0</td><td>0</td></tr><tr><td>3</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td></tr><tr><td>4</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td></tr><tr><td>5</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td></tr><tr><td>6</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td></tr><tr><td>7</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td></tr><tr><td>8</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td></tr><tr><td>9</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>1</td><td>0</td></tr><tr><td>10</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>1</td></tr><tr><td>11</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td></tr><tr><td>12</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>1</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td></tr><tr><td>13</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>1</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td></tr><tr><td>14</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>1</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td></tr><tr><td>15</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>1</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td></tr><tr><td>16</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>1</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td></tr><tr><td>17</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>1</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td></tr></tbody></table>

<table><caption>**Table 12** Operations Datum/priority relationship</caption><thead><tr><th rowspan="2">Op</th><th colspan="17">Op</th></tr><tr><th>1</th><th>2</th><th>3</th><th>4</th><th>5</th><th>6</th><th>7</th><th>8</th><th>9</th><th>10</th><th>11</th><th>12</th><th>13</th><th>14</th><th>15</th><th>16</th><th>17</th></tr></thead><tbody><tr><td>1</td><td>0</td><td>0</td><td>1</td><td>0</td><td>1</td><td>1</td><td>1</td><td>0</td><td>1</td><td>1</td><td>1</td><td>1</td><td>0</td><td>0</td><td>0</td><td>0</td></tr><tr><td>2</td><td>0</td><td>0</td><td>0</td><td>1</td><td>0</td><td>0</td><td>1</td><td>1</td><td>1</td><td>1</td><td>0</td><td>1</td><td>1</td><td>1</td><td>0</td><td>0</td></tr><tr><td>3</td><td>1</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>1</td><td>1</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td></tr><tr><td>4</td><td>0</td><td>1</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>1</td><td>1</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td></tr><tr><td>5</td><td>1</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td></tr><tr><td>6</td><td>1</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td></tr><tr><td>7</td><td>1</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td></tr><tr><td>8</td><td>0</td><td>1</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td></tr><tr><td>9</td><td>1</td><td>1</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td></tr><tr><td>10</td><td>1</td><td>1</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td></tr><tr><td>11</td><td>1</td><td>1</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td></tr><tr><td>12</td><td>1</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td></tr><tr><td>13</td><td>0</td><td>1</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td></tr><tr><td>14</td><td>0</td><td>1</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td></tr><tr><td>15</td><td>0</td><td>1</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td></tr><tr><td>16</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>1</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td></tr><tr><td>17</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>1</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td></tr></tbody></table>
<table><caption>**Table 13** stack up cost between related operations</caption><thead><tr><th rowspan="2">Op</th><th colspan="17">Op</th></tr><tr><th>1</th><th>2</th><th>3</th><th>4</th><th>5</th><th>6</th><th>7</th><th>8</th><th>9</th><th>10</th><th>11</th><th>12</th><th>13</th><th>14</th><th>15</th><th>16</th><th>17</th></tr></thead><tbody><tr><td>1</td><td>0</td><td>0</td><td>7.1</td><td>0</td><td>2.2</td><td>2.4</td><td>2.4</td><td>0</td><td>0.9</td><td>0.9</td><td>3.9</td><td>3.6</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td></tr><tr><td>2</td><td>0</td><td>0</td><td>0</td><td>7.1</td><td>0</td><td>0</td><td>0</td><td>2.2</td><td>0.9</td><td>0.9</td><td>3.9</td><td>0</td><td>3.6</td><td>1.1</td><td>1.1</td><td>0</td><td>0</td></tr><tr><td>3</td><td>7.1</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>4.8</td><td>4.8</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td></tr><tr><td>4</td><td>0</td><td>7.1</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>4.8</td><td>4.8</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td></tr><tr><td>5</td><td>2.2</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td></tr><tr><td>6</td><td>2.4</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td></tr><tr><td>7</td><td>2.4</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td></tr><tr><td>8</td><td>0</td><td>2.2</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td></tr><tr><td>9</td><td>0.9</td><td>0.9</td><td>4.8</td><td>4.8</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>4.2</td></tr><tr><td>10</td><td>0.9</td><td>0.9</td><td>4.8</td><td>4.8</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>4.2</td></tr><tr><td>11</td><td>3.9</td><td>3.9</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td></tr><tr><td>12</td><td>3.6</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td></tr><tr><td>13</td><td>0</td><td>3.6</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td></tr><tr><td>14</td><td>0</td><td>1.1</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td></tr><tr><td>15</td><td>0</td><td>1.1</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td></tr><tr><td>16</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>4.2</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td></tr><tr><td>17</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>4.2</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td></tr></tbody></table>

<table><caption>**Table 14** RMTs capabilities (Tool Modules and operations relationships)</caption><thead><tr><th rowspan="2">RMT</th><th rowspan="2">CONFIG</th><th rowspan="2">TM</th><th colspan="17">Op</th></tr><tr><th>1</th><th>2</th><th>3</th><th>4</th><th>5</th><th>6</th><th>7</th><th>8</th><th>9</th><th>10</th><th>11</th><th>12</th><th>13</th><th>14</th><th>15</th><th>16</th><th>17</th></tr></thead><tbody><tr><td rowspan="4">RMT<sub>1</sub></td><td>CF<sub>11</sub></td><td>TM<sub>11</sub></td><td>-</td><td>-</td><td>1</td><td>1</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td>CF<sub>12</sub></td><td>TM<sub>12</sub></td><td>1</td><td>1</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td>CF<sub>13</sub></td><td>TM<sub>13</sub></td><td>-</td><td>-</td><td>-</td><td>-</td><td>1</td><td>1</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td>CF<sub>14</sub></td><td>TM<sub>14</sub></td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>1</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td rowspan="3">RMT<sub>2</sub></td><td>CF<sub>21</sub></td><td>TM<sub>21</sub></td><td>-</td><td>-</td><td>-</td><td>-</td><td>1</td><td>1</td><td>1</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td>CF<sub>22</sub></td><td>TM<sub>22</sub></td><td>1</td><td>1</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>1</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td>CF<sub>23</sub></td><td>TM<sub>23</sub></td><td>-</td><td>-</td><td>1</td><td>1</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td rowspan="2">RMT<sub>3</sub></td><td>CF<sub>31</sub></td><td>TM<sub>31</sub></td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>1</td><td>1</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td>CF<sub>32</sub></td><td>TM<sub>32</sub></td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>1</td><td>1</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td rowspan="3">RMT<sub>4</sub></td><td>CF<sub>41</sub></td><td>TM<sub>41</sub></td><td>-</td><td>-</td><td>-</td><td>-</td><td>1</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>1</td><td>1</td><td>-</td></tr><tr><td>CF<sub>42</sub></td><td>TM<sub>42</sub></td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>1</td><td>1</td><td>-</td><td>-</td><td>-</td></tr><tr><td>CF<sub>43</sub></td><td>TM<sub>43</sub></td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td rowspan="2">RMT<sub>5</sub></td><td>CF<sub>51</sub></td><td>TM<sub>51</sub></td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>1</td><td>1</td><td>-</td></tr><tr><td>CF<sub>52</sub></td><td>TM<sub>52</sub></td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>1</td><td>1</td><td>-</td><td>-</td></tr></tbody></table>
## Results details

<table><caption>Table 15 TOS of RMT configurations</caption><thead><tr><th rowspan="2">RMT</th><th rowspan="2">CONFIG</th><th rowspan="2">TM</th><th colspan="6">TOS</th></tr><tr><th>x</th><th>-x</th><th>y</th><th>-y</th><th>z</th><th>-z</th></tr></thead><tbody><tr><td rowspan="4">RMT<sub>1</sub></td><td>CF<sub>11</sub></td><td>TM<sub>11</sub></td><td>0</td><td>0</td><td>1</td><td>1</td><td>1</td><td>0</td></tr><tr><td>CF<sub>11</sub></td><td>TM<sub>12</sub></td><td>0</td><td>1</td><td>1</td><td>1</td><td>0</td><td>1</td></tr><tr><td>CF<sub>11</sub></td><td>TM<sub>13</sub></td><td>1</td><td>0</td><td>1</td><td>1</td><td>0</td><td>0</td></tr><tr><td>CF<sub>11</sub></td><td>TM<sub>14</sub></td><td>1</td><td>0</td><td>0</td><td>0</td><td>1</td><td>1</td></tr><tr><td rowspan="4">RMT<sub>2</sub></td><td>CF<sub>21</sub></td><td>TM<sub>21</sub></td><td>1</td><td>0</td><td>0</td><td>0</td><td>1</td><td>1</td></tr><tr><td>CF<sub>22</sub></td><td>TM<sub>22</sub></td><td>1</td><td>1</td><td>0</td><td>0</td><td>1</td><td>1</td></tr><tr><td>CF<sub>23</sub></td><td>TM<sub>23</sub></td><td>0</td><td>0</td><td>1</td><td>1</td><td>1</td><td>0</td></tr><tr><td>CF<sub>31</sub></td><td>TM<sub>31</sub></td><td>1</td><td>0</td><td>1</td><td>1</td><td>0</td><td>1</td></tr><tr><td rowspan="3">RMT<sub>3</sub></td><td>CF<sub>32</sub></td><td>TM<sub>32</sub></td><td>1</td><td>0</td><td>1</td><td>1</td><td>0</td><td>1</td></tr><tr><td>CF<sub>41</sub></td><td>TM<sub>41</sub></td><td>1</td><td>1</td><td>0</td><td>0</td><td>1</td><td>0</td></tr><tr><td>CF<sub>42</sub></td><td>TM<sub>42</sub></td><td>1</td><td>0</td><td>0</td><td>1</td><td>0</td><td>1</td></tr><tr><td rowspan="2">RMT<sub>4</sub></td><td>CF<sub>43</sub></td><td>TM<sub>43</sub></td><td>1</td><td>1</td><td>0</td><td>0</td><td>1</td><td>1</td></tr><tr><td>CF<sub>51</sub></td><td>TM<sub>51</sub></td><td>0</td><td>1</td><td>0</td><td>0</td><td>1</td><td>1</td></tr><tr><td>RMT<sub>5</sub></td><td>CF<sub>52</sub></td><td>TM<sub>52</sub></td><td>1</td><td>0</td><td>0</td><td>0</td><td>1</td><td>1</td></tr></tbody></table>

<table><caption>Table 16 Operations processing costs</caption><thead><tr><th rowspan="2">RMT</th><th rowspan="2">CONFIG</th><th rowspan="2">TM</th><th colspan="17">Op</th></tr><tr><th>1</th><th>2</th><th>3</th><th>4</th><th>5</th><th>6</th><th>7</th><th>8</th><th>9</th><th>10</th><th>11</th><th>12</th><th>13</th><th>14</th><th>15</th><th>16</th><th>17</th></tr></thead><tbody><tr><td rowspan="4">RMT<sub>1</sub></td><td>CF<sub>11</sub></td><td>TM<sub>11</sub></td><td>-</td><td>-</td><td>42</td><td>42</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td>CF<sub>12</sub></td><td>TM<sub>12</sub></td><td>69</td><td>69</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td>CF<sub>13</sub></td><td>TM<sub>13</sub></td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>18</td><td>18</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td>CF<sub>14</sub></td><td>TM<sub>14</sub></td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>33</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td rowspan="4">RMT<sub>2</sub></td><td>CF<sub>21</sub></td><td>TM<sub>21</sub></td><td>-</td><td>-</td><td>-</td><td>-</td><td>18</td><td>20</td><td>20</td><td>18</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td>CF<sub>22</sub></td><td>TM<sub>22</sub></td><td>79</td><td>79</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td>CF<sub>23</sub></td><td>TM<sub>23</sub></td><td>-</td><td>-</td><td>48</td><td>48</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>26</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td>CF<sub>31</sub></td><td>TM<sub>31</sub></td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>15</td><td>15</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><td rowspan="3">RMT<sub>3</sub></td><td>CF<sub>32</sub></td><td>TM<sub>32</sub></td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>20</td><td>20</td><td>-</td><td>-</td><td>-</td></tr><tr><td>CF<sub>41</sub></td><td>TM<sub>41</sub></td><td>-</td><td>-</td><td>-</td><td>-</td><td>14</td><td>-</td><td>-</td><td>14</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>16</td><td>16</td></tr><tr><td>CF<sub>42</sub></td><td>TM<sub>42</sub></td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>11</td><td>11</td><td>-</td><td>-</td></tr><tr><td rowspan="2">RMT<sub>4</sub></td><td>CF<sub>43</sub></td><td>TM<sub>43</sub></td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>25</td><td>25</td><td>-</td><td>29</td><td>29</td><td>-</td><td>-</td><td>-</td></tr><tr><td>CF<sub>51</sub></td><td>TM<sub>51</sub></td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>18</td><td>18</td></tr><tr><td>RMT<sub>5</sub></td><td>CF<sub>52</sub></td><td>TM<sub>52</sub></td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>9</td><td>9</td><td>-</td><td>-</td><td>-</td></tr></tbody></table>
<table><caption>**Table 17** Tool modules change costs</caption><thead><tr><th></th><th>TM<sub>11</sub></th><th>TM<sub>12</sub></th><th>TM<sub>13</sub></th><th>TM<sub>14</sub></th><th>TM<sub>21</sub></th><th>TM<sub>22</sub></th><th>TM<sub>23</sub></th><th>TM<sub>31</sub></th><th>TM<sub>32</sub></th><th>TM<sub>41</sub></th><th>TM<sub>42</sub></th><th>TM<sub>43</sub></th><th>TM<sub>51</sub></th><th>TM<sub>52</sub></th></tr></thead><tbody><tr><th>TM<sub>11</sub></th><td>-</td><td>9.7</td><td>3.5</td><td>3.4</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><th>TM<sub>12</sub></th><td>9.7</td><td>-</td><td>8.4</td><td>8.2</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><th>TM<sub>13</sub></th><td>3.5</td><td>8.4</td><td>-</td><td>2.6</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><th>TM<sub>14</sub></th><td>3.4</td><td>8.2</td><td>2.6</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><th>TM<sub>21</sub></th><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>3.1</td><td>7.5</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><th>TM<sub>22</sub></th><td>-</td><td>-</td><td>-</td><td>-</td><td>3.1</td><td>-</td><td>6.9</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><th>TM<sub>23</sub></th><td>-</td><td>-</td><td>-</td><td>-</td><td>7.5</td><td>6.9</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><th>TM<sub>31</sub></th><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>3.3</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><th>TM<sub>32</sub></th><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>3.3</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td></tr><tr><th>TM<sub>41</sub></th><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>2.9</td><td>3.8</td><td>-</td><td>-</td></tr><tr><th>TM<sub>42</sub></th><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>2.9</td><td>-</td><td>3.6</td><td>-</td></tr><tr><th>TM<sub>43</sub></th><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>3.8</td><td>3.6</td><td>-</td><td>-</td></tr><tr><th>TM<sub>51</sub></th><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>3.3</td></tr><tr><th>TM<sub>52</sub></th><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>-</td><td>3.3</td></tr></tbody></table>

<table><caption>**Table 18** Generated setup clusters of operations and fixtures assignment</caption><thead><tr><th></th><th colspan="12">Setup clusters</th></tr><tr><th></th><th>1</th><th>2</th><th>3</th><th>4</th><th>5</th><th>6</th><th>7</th><th>8</th><th>9</th><th>10</th><th>11</th><th>12</th><th>13</th><th>14</th><th>15</th><th>16</th><th>17</th><th>18</th><th>19</th></tr></thead><tbody><tr><th>Operations</th><td>1</td><td>2</td><td>9</td><td>10</td><td>4</td><td>3</td><td>6</td><td>5</td><td>8</td><td>7</td><td>16</td><td>15</td><td>14</td><td>17</td><td>12</td><td>13</td><td>14</td><td>15</td><td>16</td><td>17</td></tr><tr><th>Fixtures</th><td>1</td><td>2</td><td></td><td></td><td>3</td><td></td><td>4</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td>1</td><td>2</td><td></td><td></td><td></td><td>5</td></tr></tbody></table>

<table><caption>**Table 19** Setups TADs</caption><thead><tr><th></th><th>x</th><th>y</th><th>z</th><th>-x</th><th>-y</th><th>-z</th></tr></thead><tbody><tr><th>Setup 1</th><td>1</td><td>0</td><td>1</td><td>1</td><td>0</td><td>1</td></tr><tr><th>Setup 2</th><td>0</td><td>1</td><td>1</td><td>1</td><td>0</td><td>1</td></tr><tr><th>Setup 3</th><td>0</td><td>0</td><td>1</td><td>1</td><td>1</td><td>0</td></tr><tr><th>Setup 4</th><td>1</td><td>0</td><td>0</td><td>0</td><td>1</td><td>1</td></tr><tr><th>Setup 5</th><td>1</td><td>0</td><td>1</td><td>1</td><td>0</td><td>1</td></tr><tr><th>Setup 6</th><td>0</td><td>1</td><td>1</td><td>1</td><td>0</td><td>1</td></tr><tr><th>Setup 7</th><td>1</td><td>1</td><td>0</td><td>0</td><td>0</td><td>1</td></tr></tbody></table>

## References

Amaitik, S., & Kilic, S. (2015). *St-featcapp digital process plan*. https://doi.org/10.13140/RG.2.1.1382.7042

Ameer, M., & Dahane, M. (2020). New heuristic for setup plan generation and multi tool modules selection in reconfigurable manufacturing systems. In *2020 7th international conference on control, decision and information technologies (CoDIT)* (Vol. 1, pp. 1069–1074). https://doi.org/10.1109/CoDIT49905.2020.9263881

Ardjmand, E., Ghalehkhondabi, I., Young, W. A., II., Sadeghi, A., Sinaki, R. Y., & Weckman, G. R. (2020). A hybrid artificial neural network, genetic algorithm and column generation heuristic for minimizing makespan in manual order picking operations.

Azab, A., & ElMaraghy, H. (2007). Mathematical modeling for reconfigurable process planning. *Cirp Annals*, 56(1), 467–472.

Bejlegaard, M., ElMaraghy, W., Brunoe, T. D., Andersen, A. L., & Nielsen, K. (2018). Methodology for reconfigurable fixture

architecture design. *CIRP Journal of Manufacturing Science and Technology*, 23, 172–186.

Bortolini, M., Galizia, F. G., & Mora, C. (2018). Reconfigurable manufacturing systems: Literature review and research trend. *Journal of Manufacturing Systems*, 49, 93–106.

Derigent, W., Cardin, O., & Trentesaux, D. (2020). Industry 4.0: Contributions of holonic manufacturing control architectures and future challenges. *Journal of Intelligent Manufacturing*, 1–22.

Dou, J., Su, C., & Zhao, X. (2020). Mixed integer programming models for concurrent configuration design and scheduling in a reconfigurable manufacturing system. *Concurrent Engineering*, 28(1), 32–46.

ElMaraghy, H. A. (2007). Reconfigurable process plans for responsive manufacturing systems. In *Digital enterprise technology* (pp. 35–44). Springer.

Gaoliang, P., Wenjian, L., & Yuru, Z. (2005). Intelligent setup planning in manufacturing by fuzzy set theory based approach. In *IEEE
*International Conference on Automation Science and Engineering, 2005* (pp. 130–135). IEEE.

Haoues, M., Dahane, M., & Mouss, N. K. (2019). Outsourcing optimization in two-echelon supply chain network under integrated production-maintenance constraints. *Journal of Intelligent Manufacturing, 30*(2), 701–725.

Kannan, M., & Saha, J. (2009). A feature-based generic setup planning for configuration synthesis of reconfigurable machine tools. *The International Journal of Advanced Manufacturing Technology, 43*(9–10), 994–1009.

Khanna, K., & Kumar, R. (2019). Reconfigurable manufacturing system: A state-of-the-art review. *An International Journal of Benchmarking*.

Koken, P., Raghavan, V. A., & Yoon, S. W. (2018). A genetic algorithm based heuristic for dynamic lot sizing problem with returns and hybrid products. *Computers & Industrial Engineering, 119*, 453–464.

Koren, Y. (2006). General RMS characteristics. Comparison with dedicated and flexible systems. In *Reconfigurable manufacturing systems and transformable factories* (pp. 27–45). Springer.

Koren, Y. (2013). The rapid responsiveness of RMS. *International Journal of Production Research, 51*(23–24), 6817–6827.

Koren, Y., & Shpitalni, M. (2010). Design of reconfigurable manufacturing systems. *Journal of manufacturing systems, 29*(4), 130–141.

Koren, Y., Gu, X., & Guo, W. (2018). Reconfigurable manufacturing systems: Principles, design, and future trends. *Frontiers of Mechanical Engineering, 13*(2), 121–136.

Ma, Y., Du, G., & Jiao, R. J. (2020). Optimal crowdsourcing contracting for reconfigurable process planning in open manufacturing: A bilevel coordinated optimization approach. *International Journal of Production Economics, 228*(107), 884. https://doi.org/10.1016/j.ijpe.2020.107884

Maniraj, M., Pakkirisamy, V., & Parthiban, P. (2014). Optimisation of process plans in reconfigurable manufacturing systems using ant colony technique. *International Journal of Enterprise Network Management, 6*(2), 125–138.

Oke, A., Abou-El-Hossein, K., & Theron, N. J. (2011). The design and development of a reconfigurable manufacturing system. *South African Journal of Industrial Engineering, 22*(2), 121–132.

Padayachee, J., Bright, G., & Masekamela, I. (2009). Modular reconfigurable machine tools: Design, control and evaluation. *South African Journal of Industrial Engineering, 20*(2), 127–143.

Phanden, R. K., Jain, A., & Verma, R. (2013). An approach for integration of process planning and scheduling. *International Journal of Computer Integrated Manufacturing, 26*(4), 284–302.

Singh, A., & Khamparia, A. (2020). A hybrid whale optimization-differential evolution and genetic algorithm based approach to solve unit commitment scheduling problem: Wodega. *Sustainable Computing: Informatics and Systems, 28*(100), 442.

Tozzo, E., Costa, A. P. C. S., & Lins, I. D. (2020). A hybrid multi-objective genetic algorithm for scheduling heterogeneous workover rigs on onshore oil fields. *Journal of Petroleum Science and Engineering, 195*(107), 935.

Wang, B. & Nee, A. Y. (2011). A setup planning approach considering tolerance cost factors. In *Multi-objective evolutionary optimisation for product design and manufacturing* (pp. 251–277). Springer.

Wang, L., Cai, N., Feng, H. Y., & Ma, J. (2009). Asp: An adaptive setup planning approach for dynamic machine assignments. *IEEE Transactions on Automation Science and Engineering, 7*(1), 2–14.

Wang, Y., Zhang, G., & Han, L. (2019). A methodology of setting module groups for the design of reconfigurable machine tools. *The International Journal of Advanced Manufacturing Technology, 104*(5–8), 2133–2147.

Xu, Z., Xi, F., Liu, L., & Chen, L. (2017). A method for design of modular reconfigurable machine tools. *Machines, 5*(1), 5.

Yelles-Chaouche, A. R., Gurevsky, E., Brahimi, N., & Dolgui, A. (2020). Reconfigurable manufacturing systems from an optimization perspective: A focused review of literature. *International Journal of Production Research, 1*–19.

Zhang, Y., Hu, W., Rong, Y., & Yen, D. W. (2001). Graph-based set-up planning and tolerance decomposition for computer-aided fixture design. *International Journal of Production Research, 39*(14), 3109–3126.

Zidi, S., Hamani, N., & Kermad, L. (2021). New metrics for measuring supply chain reconfigurability. *Journal of Intelligent Manufacturing, 1*–22.

**Publisher's Note** Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.