# Mathematical Model for Processing Multiple Parts on Multi-positional Reconfigurable Machines with Turrets

Olga Battaïa, Alexandre Dolgui, Nicolai Guschinky, Fatme Makssoud

► To cite this version:

Olga Battaïa, Alexandre Dolgui, Nicolai Guschinky, Fatme Makssoud. Mathematical Model for Processing Multiple Parts on Multi-positional Reconfigurable Machines with Turrets. IFIP International Conference on Advances in Production Management Systems (APMS), Sep 2021, Nantes, France. pp.563-573, 10.1007/978-3-030-85902-2_60. hal-04117663

HAL Id: hal-04117663

https://inria.hal.science/hal-04117663

Submitted on 5 Jun 2023

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished 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_1.png" /></figure>

Distributed under a Creative Commons Attribution 4.0 International License
<figure><img src="image_2.png" /></figure>

ifip

International Federation for Information Processing

This document is the original author manuscript of a paper submitted to an IFIP
conference proceedings or other IFIP publication by Springer Nature. As such, there
may be some differences in the official published version of the paper. Such
differences, if any, are usually due to reformatting during preparation for publication or
minor corrections made by the author(s) during final proofreading of the publication
manuscript.
Mathematical model for processing multiple parts on
multi-positional reconfigurable machines with turrets

Olga Battaia¹, Alexandre Dolgui², Nicolai Guschinky³, Fatme Makssoud⁴

¹ Kedge Business School, Talence, France

² IMT Atlantique, Nantes, France

³Operatoinal Research Laboratory, United Institute of Informatics Problems, National Academy of Sciences, Belarus, Minsk

⁴Lebanese University

(e-mail: alexandre.dolgui@imt-atlantique.fr)

**Abstract.** In this paper, we propose a new mathematical model for the combinatorial optimization problem of batch machining at multi-positional machines with turrets where the parts are sequentially machined on *m* working positions. Sequential activation is realized by the use of turrets. Constraints related to the design of machining of turrets and working positions, as well as precedence constraints related to operations are given. The objective of the optimization is to minimize the total cost. The paper provides the problem definition, all aspects of the mathematical modelling and the model has been validated by presenting the case of an industrial example.

**Keywords:** Batch machining, Reconfigurable rotary machine, Mixed Integer Programming, Optimization.

# 1 Introduction

The problem of managing product variety is one of important issues in manufacturing. This industry is facing new challenges like shorter product lifecycles and increasing demand turbulence. The actual market is considered as volatile since customer demand and product design as well as its expected functionalities evolve rapidly. Manufacturing companies are required to adapt to this evolution in the short term and if possible designed to be usable for a large variety of parts. In our previous study, we considered this issue of processing multiple parts in different modes in machining systems: batch machining [1] and mixed-model execution [2]. In this paper, we consider the design of multi-positional reconfigurable machines with turrets.

The concept of Reconfigurable Manufacturing Systems (RMS) has been introduced in [3] with the objective to provide efficient solutions for managing volatile market demand and rapid changes in product design. According to a recent state-of-the-art study [4], the assessment of reconfigurability level is realized on the basis of composite metrics for the main RMS attributes [5-6] or global reconfigurability indices [7]. The
main attributes include modularity [8], integrability [6], diagnosability [5], convertibil-
ity and customization [6], scalability [9]. In terms of principal performances of RMS,
the researchers distinguish responsiveness [10], system complexity [10], reliability [9]
and quality [11].

Due to its impact on all decision levels, the reconfiguration has been addressed in
system design problems [12], layout problems [13], process planning [8], setup plan-
ning [14], scheduling [15], etc. The existing studies in the literature concern both the
level of individual reconfigurable machine tools [12] and reconfigurable flow lines [16]
[32]. In terms of the design options for reconfiguration, some formulations are limited
to the choice from a set of available elements [16], other generalized formulations in-
clude the possibility to introduce new elements in the reconfigurable system [1].

In this study, we focus on combinatorial aspects of the design process and present a
detailed model with the objective of its reproduction by other scholars. The novelty of
this contribution is an original mathematical model developed for a manufacturing sys-
tem that has not been studied in the literature yet. Here below we present the description
of the manufacturing system considered.

Multi-position reconfigurable machines are equipped with several working posi-
tions. In this study, we denote by *m* the number of working positions. In each position,
several processing modules (spindle heads or turrets) can be installed to process the
operations assigned to that position. They are activated sequentially or simultaneously.
Sequential activation is carried out using turrets. A turret regroups several machining
modules that are activated by rotating the active one. Simultaneous machining is pos-
sible if the machining modules can be applied to different sides of the part and work in
parallel. The number of processing modules and the order of their activation at each
work position are configurable. Horizontal and vertical spindle heads and turrets are
available to access different sides of workpieces in working position. Finally, the ma-
chining module can handle multiple machining operations. The tools to be installed are
selected depending on the machining operations assigned to the module. Several cutting
tools can be installed in one module, for example, Figure 1 shows a horizontal turret
with 5 machining modules, where the module has two cutting tools.

<figure><img src="image_3.png" /><figcaption>Figure 1. A horizontal turret with 5 machining modules, one of them has 2 tools.</figcaption></figure>

In order to help designers to take optimal decisions concerning the machining on multi-
positional machine with turrets, we develop a new mathematical model for the case
where multiple parts are machined on such machines. The rest of the paper is organized
as follows. In Section 2, we detail the problem description and present a new mathematical problem for the defined problem. In Section 3, we run numerical experiments on industrial problem instances in order to validate the proposed mathematical model. Conclusions are given in Section 4.

## 2 PROBLEM DEFINITION AND MIP FORMULATION

There are $d_0$ types of parts to be machined, each type is noted as $d = 1, 2, ..., d_0$. The demand for each part $d$ is defined by $O^d$. Parts are located at the loading position in a given sequence and they are processed simultaneously one per working position in the order of their loading. The rotary transfer machine is reconfigured after the end of processing of $O^d$ parts of type $d$, i.e. the fixtures of parts are changed and some spindles are mounted or dismounted if necessary.

Let $\mathbf{N}^d$ be the set of machining operations needed for machining of elements of the $d$-th part $d = 1, 2, ..., d_0$. Each machining operation is located on one side of the part, and in total we note by $n_d$ sides the number of sides required machining for part $d$. We denote as $N_s^d$, $s = 1, 2, ..., n_d$, the set of operations to be performed on the $s$-th side of part $d$. The part $d$ can be located at machine in different orientations $\mathbf{H}(d)$. The orientation of the part defines which sides are accessible for horizontal and vertical machining modules. The types "vertical" and "horizontal" are denoted in this study by index $j=1,2, j=1$ for "vertical" machining modules and $j=2$ for "horizontal" machining modules. Matrix $\mathbf{H}(d)$ can be represented by $(h_{rs}(d))_{r=1,s=1}^{r,d} n_d$ where $h_{rs}(d)$ is equal $j$, $j=1,2$ if the elements of the $s$-th of the part $d$ can be machined by spindle head or turret of type $j$. The complete set of operations $\mathbf{N}$ to be realized in the manufacturing system can be obtained by a merge of all operations required for all parts, i.e. $\mathbf{N}=\bigcup_{d=1}^{d_0} \mathbf{N}^d$. All operations $p \in \mathbf{N}$ are characterized by the following parameters:

- the length $\lambda(p)$ of the working stroke for operation $p \in \mathbf{N}$, i.e. the distance to be run by the tool in order to complete operation $p$;

- range $[\gamma_1(p), \gamma_2(p)]$ of feasible values of feed rate which characterizes the machining speed;

- set $\mathbf{H}(p)$ of feasible orientations of the part (indexes $r \in \{1, 2, ..., r_d\}$ of rows of matrix $\mathbf{H}(d)$) for execution of operation $p \in N_s^d$ by spindle head or turret of type $j$ (vertical if $h_{rs}(d)=1$ and horizontal if $h_{rs}(d)=2$).

Let subset $N_k$, $k=1,...,m$ contain the operations from set $\mathbf{N}$ assigned to the $k$-th working position. Let sets $N_{k1}$ and $N_{k2}$ be the sets of operations assigned to working position $k$ that are concerned by vertical and horizontal machining, respectively. Finally, let $b_{kj}$ be the number of machining modules (not more than $b_0$) of type $j$ installed at the $k$-th working position and respectively subsets $N_{kjl}, l=1,...,b_{kj}$ contain the operations from set $N_{kj}$ assigned to the same machining module. This assignment has to respect the technological constraints that emanate from the machining process required. They can be grouped in three following families.

Each feasible design solution has to satisfy the following technical and technological constraints. The *precedence constraints* can be specified by a directed graph $G^{\text{OR}} =$
(N, D<sup>OR</sup>) where an arc (p,p')∈D<sup>OR</sup> if and only if the operation p has to be executed before the operation p'. It should be noted that if such operations p and p' belong to different sides of the part then they cannot be executed at the same position without violating the precedence constraint. The inclusion constraints are given by undirected graphs G<sup>SP</sup> = (N, E<sup>SP</sup>), G<sup>SM</sup> = (N, E<sup>SM</sup>), G<sup>ST</sup> = (N, E<sup>ST</sup>), and G<sup>SS</sup> = (N, E<sup>SS</sup>) where the edge (p,p')∈E<sup>SP</sup> ((p,p')∈E<sup>ST</sup>, (p,p')∈E<sup>SM</sup>, (p,p')∈E<sup>SS</sup>) if and only if the operations p and q must be executed at the same position, in the same machining module, by the same turret or the same spindle. The exclusion constraints are defined by undirected graphs G<sup>DP</sup> = (N, E<sup>DP</sup>), G<sup>DM</sup> = (N, E<sup>DM</sup>), G<sup>DT</sup> = (N, E<sup>DT</sup>), and where the edge (p,p')∈E<sup>DP</sup>, (p,p')∈E<sup>DM</sup>, (p,p')∈E<sup>DT</sup>), if and only if the operations p and p' cannot be executed on the same position, same machining module or the same turret. It is assumed that infeasible combinations of part orientations are given by a set E<sup>DH</sup>, each element of which e = {(d<sub>1</sub>,r<sub>1</sub>), (d<sub>2</sub>,r<sub>2</sub>), ..., (d<sub>k</sub>,r<sub>k</sub>)} represents a collection of pairs (part number d and row number of H(d)) that prohibit simultaneously orientation r<sub>1</sub> for part d<sub>1</sub>, orientation r<sub>2</sub> for part d<sub>2</sub>, and orientation r<sub>k</sub> for part d<sub>k</sub>. Obviously, the set E<sup>DH</sup> includes {(r',d'), (r'',d'')} if there exist p∈N<sub>s'</sub><sup>d'</sub>, s'∈{1,...,n<sub>d'</sub>}, q∈N<sub>s''</sub><sup>d''</sup>, s''∈{1,...,n<sub>d''</sub>} such that (p,q)∈E<sup>SS</sup> ∪ E<sup>SM</sup> ∪ E<sup>ST</sup> and h<sub>r's'</sub>(d') ≠ h<sub>r's''</sub>(d'').

We can build set $\mathbf{N}'$ based on graph $G^{SSM} = (\mathbf{N}, E^{SSM} = E^{SS} \cup E^{SM})$. Let $G_i^{SSM} = (N_i^{SSM}, E_i^{SSM})$, $i=1,..., n^{SSM}$, be connectivity components of $G^{SSM}$ including isolated vertices. Only one vertex (operation) $\wp_i$ is chosen from each $N_i^{SSM}$, let $\chi(p) = \wp_i$ for all $p \in N_i^{SSM}$ and included into $\mathbf{N}'$.

We calculate in advance parameters $t_{pp'} = \max(\lambda(p), \lambda(p'))/\min(\gamma_2(p), \gamma_2(p')) + \tau^a$.
They represent the minimal time necessary for execution of operations $p$ and $p'$ in the
same machining module. It is assumed that $(p,p') \in E^{DM}$ if $\min(\gamma_2(p), \gamma_2(p')) <
\max(\gamma_1(p), \gamma_1(p'))$.

For each operation $p \in \mathbf{N}$, we calculate a set $B(p)$ of block indices from $\{1,2,..., 2m_0b_0\}$ and a set $K(p)$ of position indices from $\{1,2,...,m_0\}$ where operation $p \in \mathbf{N}$ can be potentially assigned.

Let $I(k) = [2(k-1)b_0+1,2kb_0]$, $I(k,j) = [2(k-1)b_0+(j-1)b_0+1,2(k-1)b_0+jb_0]$, and $I(k,j,l) = [2(k-1)b_0+(j-1)b_0+l,2(k-1)b_0+(j-1)b_0+l]$, respectively.

Let us introduce the following notation:

$X_{pq}$ decision variable which is equal to 1 if the operation $p$ from $\mathbf{N}'$ is assigned to the block $q=2(k-1)b_0+(j-1)b_0+l$, i.e. $l$-th machining module of spindle head or turret type $j$ at the $k$-th position;

$Y_{kj}^{ds}$ auxiliary variable which is equal to 1 if at least one operation from $N_s^d$ is as-
signed to spindle head or turret of type $j$ at the $k$-th position;

$Y_{kjl}^{d}$ auxiliary variable which is equal to 1 if at least one operation for machining ele-
ments of the $d$-th part is executed in the $l$-th machining module of spindle head or
turret type $j$ at the $k$-th position;

$Y_{kjl}$ auxiliary variable which is equal to 1 if the $l$-th machining module of spindle head or turret type $j$ is installed at the $k$-th position;
$Y_{1min}$ auxiliary variable which is equal to k if k is the minimal position covered by vertical spindle head or turret;

$Y_{1max}$ auxiliary variable which is equal to k if k is the maximal position covered by vertical spindle head or turret;

$Y_1$ auxiliary variable which is equal to 1 if the vertical spindle head or turret is installed;

$Z_k$ auxiliary variable which is equal to 1 if at least one operation is assigned to the k-th position;

$h_r^d$ auxiliary variable which is equal to 1 if elements of the d-th part are machined with the r-th orientation;

$F_{kjl}^d$ an auxiliary variable for determining the time of execution of operations from $N^d$ in the l-th machining module of spindle head or turret type j at the k-th position;

$F_k^d$ an auxiliary variable for determining the time of execution of operations from $N^d$ at the k-th position;

$F_d$ an auxiliary variable for determining the time of execution of all the operations from $N^d$;

$T_k^d$ an auxiliary variable which is equal to $F^d$ if the k-th position exists and 0 otherwise;

$\tau^a$ a is an additional time for advance and disengagement of tools.

## 2.1 Objective function

Let $C_1, C_2, C_3$, and $C_4$ be the relative costs for one position, one turret, one machining module of a turret, and one spindle head respectively. Since the vertical spindle head (if it presents) is common for several positions its size (and therefore the cost) depends on the number of positions to be covered, $C_5$ is the relative cost for covering one additional position by vertical spindle head. The objective function aims in minimizing the total cost that includes the cost of all positions, all turrets, all machining modules, all spindle heads and all positions covered by the vertical spindle head. The total cost is calculated as the multiplication of the cost coefficients by the number of corresponding equipment used in the line. The objective of the design optimization problem considered in this paper is to minimize this cost.

$$ \text{Min} \quad C_1 \sum_{k=1}^{m_0} Z_k + C_4 \sum_{k=1}^{m_0} Y_{k21} + (C_2 + 2C_3 - C_4) \sum_{k=1}^{m_0} \sum_{j=1}^{2} Y_{kj2} + \\ C_3 \sum_{k=1}^{m_0} \sum_{j=1}^{2} \sum_{l=3}^{b_0} Y_{kjl} + C_4 Y_1 + C_5 (Y_{1max} - Y_{1min}) \quad (1) $$

## 2.2 Assignment constraints

Equations (2) provide assignment of each operation from $N'$ exactly to one machining module.
$$ \sum_{q \in B(p)} X_{pq} = 1; p \in \mathbb{N}' \qquad (2) $$

Expressions (3) are used to model precedence constraints.

$$ \sum_{q \in \bigcup_{k=1}^{k-1} \bigcup_{j=1}^{2} I(k', j') \cap B(p)} qX_{\chi(p)q} + \sum_{q \in I(k,j) \cap B(p)} qX_{\chi(p)q} \le \sum_{q \in I(k,j) \cap B(p)} (q-1)X_{\chi(p)q}, $$

$$ (p, p') \in D^{OR}; p, p' \in \mathbb{N}; k \in K(p'); j=1,2 \qquad (3) $$

Expressions (4) are used to model inclusion constraints for working positions.

$$ \sum_{q \in I(k) \cap B(p)} X_{\chi(p)q} = \sum_{q' \in I(k) \cap B(p')} X_{\chi(p')q'}; (p, p') \in E^{SP}; p, p' \in \mathbb{N}; k \in K(p) \cap K(p') \qquad (4) $$

Expressions (5) are used to model inclusion constraints for turrets.

$$ \sum_{q \in I(k,j) \cap B(p)} X_{\chi(p)q} = \sum_{q' \in I(k,j) \cap B(p')} X_{\chi(p')q'}; (p, p') \in E^{ST}; p, p' \in \mathbb{N}; k \in K(p) \cap K(p'); j=1,2 \quad (5) $$

Expressions (6) are used to model exclusion constraints for working positions, turrets, and machining modules, respectively

$$ \sum_{q \in I(k) \cap B(p)} X_{\chi(p)q} + \sum_{q' \in I(k) \cap B(p)} X_{\chi(p')q'} \le 1, (p, p') \in E^{DP}; p, p' \in \mathbb{N}; k \in K(p) \cap K(p') \quad (6) $$

Expressions (7) are used to model exclusion constraints for turrets.

$$ \sum_{q \in I(k,j) \cap B(p)} X_{\chi(p)q} + \sum_{q' \in I(k,j) \cap B(p)} X_{\chi(p')q'} + Y_{k/2} \le 2; (p, p') \in E^{DT}; k \in K(p) \cap K(p'); j=1,2 \qquad (7) $$

Expressions (8) are used to model exclusion constraints machining modules.

$$ X_{\chi(p)q} + X_{\chi(p')q} \le 1; (p, p') \in E^{DM}; p, p' \in \mathbb{N}; q \in B(p) \cap B(p') \qquad (8) $$

Equations (9) prohibit assignment of operations from $N_s^d$ to machining modules of type j if there is no feasible orientation of part d for such an execution.

$$ X_{\chi(p)d} = 0; p \in N_s^d; d=1,...,d_0; s=1,...,n_d; k \in K(p); \{h_{rs}(d)=j \mid r=1,...,r_d, s=1,...,n_d\}=\emptyset; q \in I(k,j) \cap B(p) \quad (9) $$

Equations (10) guarantee assignment of operations from $N_s^d$ to the same type of spindle head or turret.

$$ \sum_{q \in B(p) \cap \bigcup_{k \in K(p)} I(k,j)} X_{\chi(p)q} = \sum_{q' \in B(p) \cap \bigcup_{k \in K(p)} I(k,j)} X_{\chi(p')q'}; p, p' \in N_s^d; j=1,2; d=1,...,d_0; s=1,...,n. \qquad (10) $$

Constraints (11) – (15) define the existence of machining module l of type j at position k.
Constraints (11) initialize variable $Y_{kjl}^d$ when one operation for machining elements of the d-th part is executed in the l-th machining module of spindle head or turret type j at the k-th position.

$$Y_{kjl}^d \le \sum_{p \in \mathbb{N}^d, q \in I(k,j,l) \cap B(p)} X_{\chi(p)q}; d=1, \dots, d_0; k=1, \dots, m_0; j=1, 2; l=1, \dots, b_0 \quad (11)$$

Constraints (12) verifies the number of operations assigned to $Y_{kjl}^d$.

$$\sum_{p \in \mathbb{N}^d, q \in I(k,j,l) \cap B(p)} X_{\chi(p)q} \le |\mathbb{N}^d| Y_{kjl}^d; d=1, \dots, d_0; k=1, \dots, m_0; j=1, 2; l=1, \dots, b_0 \quad (12)$$

Constraints (13) initialize variable $Y_{kjl}^d$ when if the l-th machining module of spindle head or turret type j is installed at the k-th position.

$$Y_{kjl} \le \sum_{d=1}^{d_0} Y_{kjl}^d; k=1, \dots, m_0; j=1, 2; l=1, \dots, b_0 \quad (13)$$

Constraints (14) limits the number of machining modules installed at the k-th position.

$$\sum_{d=1}^{d_0} Y_{kjl}^d \le d_0 Y_{kjl}; k=1, \dots, m_0; j=1, 2; l=1, \dots, b_0 \quad (14)$$

Constraints (15) verify that variables $Y_{kjl}$ are initialized sequentially.

$$Y_{kjl-1} \ge Y_{kjl}; k=1, \dots, m_0; j=1, 2; l=2, \dots, b_0 \quad (15)$$

Expressions (16) – (24) are used to calculate $Z_k$, $k=1, \dots, m_0$, $Y_1$, $Y_{1min}$ and $Y_{1max}$.

$$Y_{k12} + Y_{k21} \le 1; k=1, \dots, m_0 \quad (16)$$

$$Y_1 \le \sum_{m=1}^{m_0} Y_{k11} \quad (17)$$

$$\sum_{m=1}^{m_0} Y_{k11} \le m_0 Y_1 \quad (18)$$

$$Z_k \le Y_{k11} + Y_{k21}; k=1, \dots, m_0 \quad (19)$$

$$Y_{k11} + Y_{k21} \le 2Z_k; k=1, \dots, m_0 \quad (20)$$

$$(m_0 - k + 1) Y_{k11} + Y_{1min} \le m_0 + 1; k=1, \dots, m_0 \quad (21)$$

$$Y_{1max} \ge k Y_{k11}; k=1, \dots, m_0 \quad (22)$$

$$Y_{1max} \le m_0 Y_1 \quad (23)$$

$$Y_{1min} \le m_0 Y_1 \quad (24)$$

Constraints (25) – (30) provide the choice of feasible orientation of each part d.

$$Y_{kj}^{ds} \le \sum_{p \in \mathbb{N}_S^d, q \in I(k,j) \cap B(p)} X_{\chi(p)q}; d=1, \dots, d_0; s=1, \dots, n_d; k=1, \dots, m_0; j=1, 2 \quad (25)$$

$$\sum_{p \in \mathbb{N}_S^d, q \in I(k,j) \cap B(p)} X_{\chi(p)q} \le |\mathbb{N}_S^d| Y_{kjl}^{ds}; d=1, \dots, d_0; s=1, \dots, n_d; k=1, \dots, m_0; j=1, 2 \quad (26)$$
$$ \sum_{s=1}^{n_d} Y_{k1}^{ds} \le 1; d=1, \dots, d_0; k=1, \dots, m_0 \qquad (27) $$

$$ h_r^d \ge 1 - \sum_{s=1}^{n_d} \sum_{j=1, j \ne h_{rs}}^{2} Y_{kj}^{ds}; d=1, \dots, d_0; r=1, \dots, n_d \qquad (28) $$

$$ \sum_{r=1}^{r_d} h_r^d = 1; d=1, \dots, d_0 \qquad (29) $$

$$ \sum_{(r,d) \in e} h_r^d \le |e|-1, e \in E^{DH}, k=1, \dots, m_0 \qquad (30) $$

## 2.3 Time calculation

Expressions (31) – (34) are used for estimation of execution time of operations from $N^d$ by the l-th machining module, vertical spindle head and at the k-th position respectively.

$$ F_{kjl}^d \ge t_{pp'} X_{\chi(p)q}; p \in N^d; j=1,2; d=1, \dots, d_0; k=1, \dots, m_0; l=1, \dots, b_0; q \in I(k,j,l) \cap B(p) \qquad (31) $$

$$ F_{kjl}^d \ge t_{pp'}(X_{\chi(p)q} + X_{\chi(p')q-1}); p, p' \in N^d; j=1,2; d=1, \dots, d_0; k=1, \dots, m_0; \\ l=1, \dots, b_0; \quad q \in I(k,j,l) \cap B(p) \cap B(p') \qquad (32) $$

$$ F_{k11}^d \ge (\lambda(p)/\gamma_2(p') + \tau^a)(X_{\chi(p)q} + X_{\chi(p')q-1}); p \in N^d; p' \in N; d=1, \dots, d_0; k, k'=1, \dots, m_0; $$

$$ k \neq k' \text{ or } p' \notin N; q \in I(k,1,1) \cap B(p); q' \in I(k',1,1) \cap B(p') \qquad (33) $$

$$ F_k^d \ge \sum_{l=1}^{b_0} F_{kjl}^d + 2\tau^g Y_{kj2} + \tau^g \sum_{l=3}^{b_0} Y_{kjl} + b_0 \tau^g (Y_{kj}^d - 1); d=1, \dots, d_0; k=1, \dots, m_0; j=1,2 \qquad (34) $$

Expressions (35) – (37) provide the required productivity for the problem. Bound constraints for decision variables are straightforward and they are not presented here because of the limited article size.

$$ F_d \ge F_k^d + \tau^d; d=1, \dots, d_0; k=1, \dots, m_0 \qquad (35) $$

$$ T_k^d \ge F_d - T_0(1 - Z_k); d=1, \dots, d_0; k=1, \dots, m_0 \qquad (36) $$

$$ \sum_{d=1}^{d_0} (F^d O^d + \sum_{k=1}^{m_0} T_k^d - F^d) \le T_0 \qquad (37) $$

# 3 NUMERICAL EXPERIMENT

The purpose of this study is to evaluate the effectiveness of the mixed integer linear programming proposed model. It was tested on 25 industrial problem instances presented in Table 1 taken from mechanical parts for automotive industry. In this table $|N|$ is the number of operations, OSP is the order strength of precedence constraints, DM,
DT, DP, SS, and SM are the densities of graphs $G^{DM}$, $G^{DT}$, $G^{DP}$, $G^{SS}$, and $G^{SM}$ respectively. Experiments were carried out on ASUS notebook (1.86 Ghz, 4 Gb RAM) with academic version of CPLEX 12.2. Columns Cost and time are respective the optimal cost of the solution and the solution time in seconds. As it can be seen all industrial problems have been rapidly solved by the proposed model. The solution time takes several seconds, the longest solution time to obtain the optimal solution is less than 5 min. This provides a substantial help in decision making for designers.

<table><caption>Table 1 Parameters of industrial problems and results</caption><thead><tr><th>Test</th><th>N</th><th>OSP</th><th>DB</th><th>DG</th><th>DP</th><th>SSD</th><th>SB</th><th>Cost</th><th>Time</th></tr></thead><tbody><tr><td>1</td><td>92</td><td>0.011</td><td>0.234</td><td>0.339</td><td>0.125</td><td>0.012</td><td>0.021</td><td>67</td><td>4.4</td></tr><tr><td>2</td><td>52</td><td>0.02</td><td>0.434</td><td>0.697</td><td>0.299</td><td>0.027</td><td>0.02</td><td>56</td><td>0.3</td></tr><tr><td>3</td><td>82</td><td>0.013</td><td>0.237</td><td>0.21</td><td>0</td><td>0.014</td><td>0.008</td><td>49</td><td>1.4</td></tr><tr><td>4</td><td>88</td><td>0.034</td><td>0.297</td><td>0.238</td><td>0</td><td>0.012</td><td>0.026</td><td>49</td><td>1.1</td></tr><tr><td>5</td><td>90</td><td>0.039</td><td>0.309</td><td>0.246</td><td>0</td><td>0.011</td><td>0.034</td><td>49</td><td>1</td></tr><tr><td>6</td><td>116</td><td>0.01</td><td>0.173</td><td>0.277</td><td>0.046</td><td>0.006</td><td>0.008</td><td>74</td><td>2.5</td></tr><tr><td>7</td><td>70</td><td>0.012</td><td>0.185</td><td>0.164</td><td>0.004</td><td>0.008</td><td>0.011</td><td>62</td><td>1.6</td></tr><tr><td>8</td><td>74</td><td>0.024</td><td>0.22</td><td>0.182</td><td>0.001</td><td>0.008</td><td>0.01</td><td>77</td><td>266.1</td></tr><tr><td>9</td><td>40</td><td>0.026</td><td>0.515</td><td>0.636</td><td>0.164</td><td>0.021</td><td>0.026</td><td>67</td><td>0.8</td></tr><tr><td>10</td><td>48</td><td>0.014</td><td>0.363</td><td>0.369</td><td>0.078</td><td>0.018</td><td>0.018</td><td>63</td><td>2.4</td></tr><tr><td>11</td><td>44</td><td>0.023</td><td>0.013</td><td>0.091</td><td>0.101</td><td>0</td><td>0.025</td><td>71</td><td>2.6</td></tr><tr><td>12</td><td>92</td><td>0.011</td><td>0.234</td><td>0.339</td><td>0.125</td><td>0.012</td><td>0.021</td><td>67</td><td>15.8</td></tr><tr><td>13</td><td>52</td><td>0.02</td><td>0.434</td><td>0.697</td><td>0.299</td><td>0.027</td><td>0.02</td><td>56</td><td>1.6</td></tr><tr><td>14</td><td>116</td><td>0.01</td><td>0.174</td><td>0.275</td><td>0.043</td><td>0.006</td><td>0.011</td><td>89</td><td>58.2</td></tr><tr><td>15</td><td>70</td><td>0.014</td><td>0.185</td><td>0.164</td><td>0.004</td><td>0.008</td><td>0.011</td><td>93</td><td>3.8</td></tr><tr><td>16</td><td>40</td><td>0.026</td><td>0.515</td><td>0.636</td><td>0.164</td><td>0.021</td><td>0.026</td><td>63</td><td>5.3</td></tr><tr><td>17</td><td>74</td><td>0.024</td><td>0.22</td><td>0.182</td><td>0.001</td><td>0.008</td><td>0.01</td><td>74</td><td>69</td></tr><tr><td>18</td><td>40</td><td>0.026</td><td>0.515</td><td>0.636</td><td>0.164</td><td>0.021</td><td>0.026</td><td>67</td><td>1.8</td></tr><tr><td>19</td><td>92</td><td>0.011</td><td>0.234</td><td>0.339</td><td>0.125</td><td>0.012</td><td>0.021</td><td>67</td><td>1</td></tr><tr><td>20</td><td>78</td><td>0.013</td><td>0.24</td><td>0.176</td><td>0.039</td><td>0.007</td><td>0.008</td><td>68</td><td>3.1</td></tr><tr><td>21</td><td>80</td><td>0.013</td><td>0.234</td><td>0.175</td><td>0.078</td><td>0.007</td><td>0.009</td><td>63</td><td>9.9</td></tr><tr><td>22</td><td>116</td><td>0.01</td><td>0.174</td><td>0.275</td><td>0.043</td><td>0.006</td><td>0.011</td><td>89</td><td>11.8</td></tr><tr><td>23</td><td>70</td><td>0.014</td><td>0.185</td><td>0.164</td><td>0.004</td><td>0.008</td><td>0.011</td><td>65</td><td>2.4</td></tr><tr><td>24</td><td>48</td><td>0.014</td><td>0.363</td><td>0.369</td><td>0.078</td><td>0.018</td><td>0.018</td><td>63</td><td>1.5</td></tr><tr><td>25</td><td>74</td><td>0.024</td><td>0.22</td><td>0.182</td><td>0.001</td><td>0.008</td><td>0.01</td><td>87</td><td>35.3</td></tr></tbody></table>

## 4 CONCLUSION

We proposed a new mathematical model for the combinatorial optimization problem of processing multiple parts at multi-positional machines with turrets. A comprehensive mixed integer linear programming model has been developed for this optimization problem and it includes all technical and technological constraints, as well as productivity constraints and some preferences of the designers. The objective of the optimization is to minimize the total cost of the machining system. The numerical tests realized on 25 industrial problems showed that the proposed model is capable to find the optimal cost and the design solution in acceptable short time. The future research will be devoted to the extension of this study to the case of a flow line equipped with several multi-positional machines.

**Acknowledgements:** This work is supported by the region Pays de la Loire, France
References

1. Battaša O., Dolgui A., Guschinsky N. (2020) Optimal cost design of flow lines with reconfigurable machines for batch production. International Journal of Production Research 58(10): 2937-2952.

2. Battaša O., Dolgui A., Guschinsky N. (2017) Integrated process planning and system configuration for mixed-model machining on rotary transfer machine. International Journal of Computer Integrated Manufacturing 30 (9): 910-925.

3. Koren Y, Heisel U, Jovane F, Moriwaki T, Pritschow G, Ulsoy G, Van Brussel H. (1999) Reconfigurable Manufacturing Systems. CIRP Annals-Manufacturing Technology 48(2): 527-540.

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

5. Gumasta K, Kumar Gupta S, Benyoucef L, Tiwari MK. (2011) Developing a reconfigurability index using multi-attribute utility theory. International Journal of Production Research 49(6):1669–1683.

6. Farid AM. (2017) Measures of reconfigurability and its key characteristics in intelligent manufacturing systems. Journal of Intelligent Manufacturing 28: 353–369.

7. Goyal KK, Jain PK, Jain M. (2012) Optimal configuration selection for reconfigurable manufacturing system using NSGA II and TOPSIS. International Journal of Production Research 50(15): 4175–4191.

8. Chaube A, Benyoucef L, Tiwari MK. (2012) An adapted NSGA-2 algorithm based dynamic process plan generation for a reconfigurable manufacturing system. Journal of Intelligent Manufacturing 23(4): 1141–1155.

9. Bruccoleri M, Pasek ZJ, Koren Y. (2006) Operation management in reconfigurable manufacturing systems: reconfiguration for error handling. International Journal of Production Economics 100(1): 87–100.

10. Youssef A. and ElMaraghy H. (2008) Availability consideration in the optimal selection of multiple-aspect RMS configurations. International Journal of Production Research 46: 5849–5882.

11. Singh RK, Khilwani N, Tiwari MK. (2007) Justification for the selection of a reconfigurable manufacturing system: a fuzzy analytical hierarchy based approach. International Journal of Production Research 45(14): 3165–3190.

12. Youssef AM, ElMaraghy HA. (2006) Modelling and optimization of multiple-aspect RMS configurations. International Journal of Production Research 46(22): 4929–4958.

13. Haddou Benderbal, H, Benyoucef L. (2019) Machine layout design problem under product family evolution in reconfigurable manufacturing environment: a two phase-based AMOSA approach. The International Journal of Advanced Manufacturing Technology 104 (1-4): 375–389.

14. Borgia S, Pellegrinelli S, Petro S, Tolio T. (2014) Network part program approach based on the STEP-NC data structure for the machining of multiple fixture pallets. International Journal of Computer Integrated Manufacturing 27: 281-300,

15. Dou J, Li J, Su C. (2016) Bi-objective optimization of integrating configuration generation and scheduling for reconfigurable flow lines using NSGA-II. The International Journal of Advanced Manufacturing Technology 86(5-8): 1945–1962.

16. Ashraf M, Hasan F. (2018) Configuration selection for a reconfigurable manufacturing flow line involving part production with operation constraints. The International Journal of Advanced Manufacturing Technology 98(5-8): 2137–2156.