Keywords

1 Introduction

One of the core activities in the management of production systems is production planning. It deals with the decisions on how and when the production has to be made. These decisions must take into account the customers’ orders and the availability of materials and resources (machines, tools, etc.) with the aim to minimise production time and cost, to use resources efficiently, and to maximise the overall efficiency of the production system. Furthermore, financial, marketing and technological constraints might be present, thus increasing the complexity of the decisions.

Production planning typically addresses tactical decisions (Anthony 1965). The production volumes in the different periods, the size of the workforce, the amount of overtime and subcontracting work are set over a medium-term time horizon, and are typically revised with a frequency not smaller than 6–12 months and not larger than 2–3 years. Considering the time horizon of these decisions, it is clear that they need to be based on aggregate information. In fact, detailed information is not available and/or would increase the complexity of the problem. Hence, similar products are combined into aggregate product families that can be planned together, production resources, such as distinct machines or human workers, are combined into an aggregate machine or labor resource, and time periods are usually defined on a monthly basis. The existence of an aggregation structure for products, resources and time periods is a necessary requirement for aggregate planning.

Once the aggregate plan has been devised, the availability of raw materials and components must be assured. In fact, finished products are usually composed of many components and sub-assemblies that must be available in the production system before the production of end items starts. Otherwise, the production plan cannot be executed. This availability is assured by the so-called material requirements planning (MRP) that works over a shorter time horizon, disaggregating the aggregate demand and considering the bill-of-material structure in details. The MRP provides the supply plan for the dependent-demand items (i.e., components and sub-assemblies) in a coordinated and systematic way (Vollman et al. 1992). Aggregate production planning and material requirement planning heavily depend on each other and their interactions have a strong impact on the production performance (Harris et al. 2002).

The decision phase following the MRP entails the definition of a detailed plan for the production activities at the operational level, e.g., tool loading, job scheduling or dispatching. This phase explicitly considers a higher level of details and addresses the assignment of activities to production resources, the precedence relations among them, etc.

This sequence of approaches resembles the so-called hierarchical production planning and control framework (Hax and Meal 1975; Bitran and Tirupati 1993; Hopp and Spearman 2000). It is characterised by the idea of separating the decisions at the different levels of detail and uses linking mechanisms to transfer the results from higher levels (those with less detailed information) to lower ones (those with more detailed information). The hierarchical approach fits very well mass production systems where repetitive operations (due to the presence of large batches of identical products that require the same operations) do not need to be scheduled in detail when dealing with tactical decisions.

On the contrary, in make-to-order (MTO) systems that produce items with high complexity like instrumental goods, aircrafts, power generation devices, the effectiveness of the hierarchical approach is somewhat decreased. The production, in these cases, is the so-called one-of-a-kind production, much more similar to the execution of a project rather than to the production of goods. Hence, exactly as in project management, planning, scheduling and material procurement tend to work on similar time horizons, as it will be discussed in Sect. 56.2, and project scheduling approaches are a suitable tool to address the production planning problem (Márkus et al. 2003).

This chapter addresses the application of project scheduling approaches to the production planning problem in MTO systems producing high-complexity items. Section 56.2 contains the industrial motivation while Sect. 56.3 revises the application of project scheduling approaches to MTO systems. The mathematical formulation of the production planning problem analysed under a project scheduling framework is described in Sect. 56.4. Finally, Sect. 56.5 presents an application of the proposed approach to an industrial case of machining centre production.

2 Production Planning in MTO

The production of highly complex and customised items, such as production lines, special production equipment, specifically designed civil or military aircrafts or helicopters, can be considered as a one-of-a-kind process. In fact, not only the system must be a MTO system, but each product has its own characteristics, tailored for the specific customer, that need specific/dedicated design, production and delivery activities and specific requirements in terms of work content, number and kind of components.

As anticipated in Sect. 56.1, the hierarchical production planning and control framework does not fit very well one-of-a-kind MTO production systems. However, the concept of aggregation can be used also in this case, to make the planning problem more easy to study. The aggregation can be performed by grouping distinct production operations into aggregate activities and single machines and workers into groups of production resources. The main difference from the mass production case is that, in one-of-a-kind MTO systems, aggregate activities often represent whole production phases whose duration could be within the range of weeks or either months. Also, although aggregate activities are an aggregation of production operations, they refer to a single product (or to a very small batch of products) whose completion has to meet possible due dates negotiated with the customer. Hence, even at the aggregate level, precedence constraints between activities cannot be ignored and have to be considered because of their impact on the resource load. This makes project scheduling approaches more suitable for one-of-a-kind MTO systems compared to production and rough cut capacity planning approaches traditionally adopted in mass production environments.

As in project scheduling, when considering aggregate activities, the classical finish-to-start precedence relations, representing technological constraints between single manufacturing operations, might not correctly represent the real production process. A common approach to more accurately model the precedence relations is the use of generalised precedence relations (GPRs) (Elmaghraby 1977; Elmaghraby and Kamburowski 1992) that allow a certain amount of overlap among activities and have been extensively considered in the literature on project scheduling to model complex precedence structures in activity networks (Demeulemeester and Herroelen 1997; Neumann and Schwindt 1998; De Reyck and Herroelen 1999; Klein 2000).

In addition, in one-of-a-kind MTO systems, production operations basically refer to the production or the acquisition of a set of components that are assembled together. In other words, each production operation models the assembling, mounting or wiring of a single sub-assembly and many of these operations are often performed manually. This characteristic makes it impossible to precisely define, schedule and control every single activity because its execution, if not constrained to a specific sequence, is autonomously managed at the shop floor level by the workers. Their decisions could depend on the immediate availability of components, material or equipment, the accessibility of the operation area (it could be already occupied by other workers still operating there) or on other factors whose influence is not visible at the planning level. In this context, a detailed planning is difficult or even impossible and aggregate planning is the only viable choice.

As previously stated, single resources are grouped into aggregate production resources. In case of human workers, these aggregate production resources consist of teams of workers in charge of executing a set of tasks (an aggregate operation). In a team, a worker can be assigned to different short activities in the same time period and/or more workers can be assigned to the same activity. Hence, the concepts of unary resource and activity duration need to be reassessed since either the resource used in each time period or the duration of the activity are not univocally defined. This makes the traditional project scheduling approaches no longer suitable and claims for an approach able to consider a variable use of resources during the execution of a production activity, such as the variable intensity formulation of the resource constrained project scheduling problem (Leachman et al. 1990; Kis 2005).

However, combining generalised precedence relations with variable resource intensity is a very critical task since the variable resource effort translates into an infinite number of possible execution modes for the activities. The execution mode of an activity influences its progress in time that is no longer a priori fixed. This leads to the inability of GPRs to exhaustively describe the overlapping among activities (Kis 2006; Tolio and Urgo 2007) and requires the development of a planning and scheduling approach able to consider the execution of the activities both from the temporal and the work content point of view, in order to guarantee that the precedence relations correctly represent the characteristics and the constraints of the real production problem (Alfieri et al. 2012b).

3 Project Scheduling Approaches for MTO

As described in Sect. 56.2, the production of a high-complexity customised product can be modelled as the execution of a project and the simultaneously production of different products can be rephrased as different projects being executed at the same time and competing for the same production resources (machines, workers, etc.). Moreover, the variable intensity of resources has to be consider to correctly model the presence of manually executed operations.

The use of a project scheduling approach for aggregate production planning in MTO systems has been described by Neumann and Schwindt (1998), Hans (2001), Neumann et al. (2003), Márkus et al. (2003), Alfieri et al. (20112012a). Working at an aggregate level, the planner can devise a production plan, constrained by the capacity requirements, over a time horizon ranging from several weeks to several months. This plan serves as a tool to manage customer orders, and their associated due dates, as well as material and resource availability (Alfieri et al. 2012b).

To address the variable resource utilisation and its relation with the execution of the activities, the variable intensity formulation of the resource constrained project scheduling problem has been proposed in the literature. This formulation is based on the introduction of an intensity variable used to define the effort dedicated to process each activity in each time period (Leachman et al. 1990; Kis 2005). Resources are considered continuously divisible and are used to process the activities in amounts that can vary over time. In this framework, the execution of activity i is described by a set of continuous variables x it representing the percentage of activity i executed in time period t. The amount of work performed in each period t is not a priori given but depends on the amount of resources committed to the activity, as it is typical for activities executed by human workers.

As discussed in Sect. 56.2, the variable intensity formulation allows an infinite number of execution modes since the time to process an activity is not a priori defined. Specifically, the execution time is strictly related to the value of the intensity execution variables x it and ranges between a minimal and a maximal duration. These minimal and maximal durations are related to the minimal and maximal amount of resources that can be allocated to each activity in each time period. Since the durations of the activities are not a priori defined, the percentage executed in a given time interval does not completely depend on the length of the time interval and, if preemption is allowed, the maximum duration, in terms of number of time units from activity starting and ending instant, is also not constrained.

The presence of an infinite number of execution modes for each activity causes GPRs no longer to be suitable for modeling overlapping between activities in terms of their percentage execution. To overcome this difficulty, the concept of feeding precedence relation was introduced by Kis (2005), for the completion-to-start precedence, through binary variables that define an execution mask. Each of these masks cannot be assigned the value zero if the associated activity has not been executed (completely or at least for a given percentage). Feeding precedence relations have been further extended in Alfieri et al. (2011) to model precedences different from the completion-to-start one. They are needed to represent the execution of the activity according to the values of the intensity variables and four cases can be defined:

  • %Completed-to-Start (CtS) precedence: the successor activity j can start its processing only when, in time period t, the percentage of the predecessor activity i that has been processed is greater than or equal to q ij (Fig. 56.1a).

  • %Completed-to-Finish (CtF) precedence: the successor activity j can be completed only when, in time period t, the percentage of the predecessor activity i that has been processed is greater than or equal to q ij (Fig. 56.1c).

  • Start-to-%Completed (StC) precedence: the percentage execution of the successor activity j, in time period t, can be greater than g ij only if the execution of the predecessor activity i has already started (Fig. 56.1b).

  • Finish-to-%Completed (FtC) precedence: the percentage execution of the successor activity j, in time period t, can be greater than g ij only if the execution of the predecessor activity i has been completed (Fig. 56.1d).

Carefully analysing the above described cases, it is clear that feeding precedences provide a different perspective on the role of precedence relations between pairs of activities by considering both their start and finish time and the progression of their execution. Feeding precedence relations or similar concepts have also been addressed in Bianco and Caramia (2012) and Schwindt and Haselmann (2012).

Fig. 56.1
figure 1

Feeding precedence relations

3.1 Aggregate Activity Definition

Aggregate activities are defined applying an aggregation criterion to the detailed set of operations to be scheduled. Several aggregation criteria can be used such as the required resource, the component on which the operations have to operate or the type of tasks to be executed (Fig. 56.2).

Fig. 56.2
figure 2

Aggregation of activities

Given the detailed network of production operations and their precedence relations (Fig. 56.2a), if only Finish-to-Start precedence relations are considered, then the aggregation causes a single precedence relation between two original operations to enforce a precedence relation between two aggregate activities (Fig. 56.2b). The feeding precedence relations are able to properly represent the relations between aggregate activities, matching the real technological constraints. In fact, as illustrated in Fig. 56.3, there exists a set of operations (belonging to the aggregate activity j) that can be executed even if the predecessor aggregate activity i has not yet been completed. The amount of resources required to process the two sets of operations needs to be computed by considering the work content of each single operation. This allows to estimate the percentage of j that can be executed even if i has not been completed (i.e., g ij ).

Fig. 56.3
figure 3

Feeding precedence on aggregate activities

An overlapping between the execution of the two aggregate activities i and j is therefore allowed. This overlapping is not defined on a temporal basis but it refers to a certain percentage of the predecessor or successor activity that has been completed.

3.2 Aggregate Activity Disaggregation

The aggregate production plan provides start and finish times for the aggregate activities but obviously no information about the execution of each single operation within the aggregate activities. However, such information is very important to properly plan the procurement of materials, since the necessary components must be available before the single operation starts. Requiring all the components needed by the aggregate activity to be available before the start of the aggregate activity itself would be ineffective from the point of view of system WIP and might also constrain material procurement too much.

A possible way of dealing with this problem is to combine the information about the start and finish times of each aggregate activity, the information on the single manufacturing operations that are part of the aggregate activity, and the detailed precedence relations among them (Alfieri et al. 2012b). The aggregate planning, working on a medium/long time horizon, gives the exact time intervals for the execution of each aggregate activity. This time interval and the knowledge about the single operations (and their precedences) inside the aggregate activity allow to define a range for the start time and the finish time of each operation. The length of these ranges mostly relies on the structure of aggregate activities, as shown in the example in Fig. 56.4. This approach is referred to as activity disaggregation and is detailed in the following.

Given an aggregate activity and a manufacturing operation A within it, the information on the other operations in the aggregate activity is used to provide additional constraints on the start time of A. Considering the structure of the precedence relations, it is possible to identify a set of operations (highlighted in dark gray in Fig. 56.4) that must be executed before operation A can start. The fraction of these operations, with respect to the whole aggregate activity, represents the fraction q of the aggregate activity that must be processed before operation A can start, i.e., the Earliest Start Execution Fraction for operation A (ESEF A ). Similarly, it is possible to find a set of operations (highlighted in light gray in Fig. 56.4) that can be executed only after A has been completed, corresponding to a fraction g of the aggregate activity. Let h A be the fraction of the aggregate activity devoted to the execution of A, then \(1 - g - h_{A}\) is the maximum percentage of the aggregate activity that can be executed even if operation A has not started, i.e., the Latest Start Execution Fraction (LSEF A ) for operation A.

Fig. 56.4
figure 4

Earliest and latest start execution fraction

Both the ESEF and LSEF are based on the percentage execution of the aggregate activity. Thus, the percentage and the temporal execution of each aggregate activity must be matched to have a correct estimation in terms of the earliest and latest start time for operation A. This can be done using the aggregate production plan. Specifically, given the resource effort for the execution of the aggregate activity over time (Fig. 56.5), ESEF and LSEF provide the Earliest Start Time (ES) and the Latest Start Time (LS) for the considered operation.

Fig. 56.5
figure 5

Earliest and latest start time

Given the aggregate production plan, the time interval between ES and LS represents the range for the actual start time of operation A. Because there is a group of materials (components) associated with each operation, according to the bill of materials of the final product, this range also provides the earliest and latest due dates for the materials and components needed for the execution of the manufacturing operation. If these components are available before the earliest due date (ES), the operation can start at any time within the range. On the contrary, if the components are available only after the latest due date LS, the manufacturing operation will have to be delayed and hence also the aggregate activity may be delayed with respect to the planned completion time. Finally, if the components are available at some time between the earliest and latest due dates, the plan is considered feasible by the time analysis but it cannot be assured that no delay will occur. In fact, since the aggregate production plan does not provide the detailed resource utilisation, the joint utilisation of the production resources could constrain the execution of the single operations (if a resource is used for operations A, is not available for other operations that might need it at the same time). However, although not providing a complete description of the feasibility for the material procurement phase, the information obtained through the disaggregation process can play a significant role in the definition of the Material Requirement Plan.

4 Problem Formulation

The aggregate production planning for the MTO systems previously described is modelled using the mathematical formulation proposed in Alfieri et al. (2011) and reported in the following.

Let \(V =\{ 0,\ldots,n + 1\}\) be the set of activities to be scheduled over \(T =\{ 1,\ldots,\overline{d}\}\) time periods and \(\mathcal{R} =\{ 1,\ldots,K\}\) be the set of available resources. Let R k (t) be the total amount of resource \(k \in \mathcal{R}\) available in time period t ∈ T and \(\mathcal{T}\) the set of precedence relations. This set is partitioned into four subsets that refer to the different types of feeding precedence relations:

\(\mathcal{T}_{1}\)::

subset of precedence relations of type %Completed-to-Start

\(\mathcal{T}_{2}\)::

subset of precedence relations of type Start-to-%Completed

\(\mathcal{T}_{3}\)::

subset of precedence relations of type %Completed-to-Finish

\(\mathcal{T}_{4}\)::

subset of precedence relations of type Finish-to-%Completed

Each precedence relations \(p \in \mathcal{T}\) is characterised by a predecessor activity i p  ∈ V and a successor activity j p  ∈ V. In addition, precedence relations in \(\mathcal{T}_{1}\) and \(\mathcal{T}_{3}\), i.e., %Completed-to-Start and %Completed-to-Finish relations, are characterised by a value q p representing the minimal fraction of activity i p that must be processed before activity j p can start or finish. Analogously, precedence relations in \(\mathcal{T}_{2}\) and \(\mathcal{T}_{4}\), i.e., Start-to-%Completed and Finish-to-%Completed relations, are characterised by a value g p that represents the maximal fraction of activity j p that can be processed before activity i p has started or finished.

The following parameters are associated with each activity j ∈ V and completely characterise it:

B j ::

maximum percentage of work that can be done in a single time period

b j ::

minimum percentage of work that can be done in a single time period

r j ::

release date

d j ::

due date

Q jk ::

amount of resource k needed to completely process activity j

Differently from parameters, variables are not a priori known and represent the decisions that have to be taken to define the production plan. In the problem we study, the following variables can be defined:

C max ::

maximum completion time (makespan)

x jt ::

continuous positive variable representing the percentage of work done on activity j during time bucket t

η jt ::

binary variable whose value is 1 if activity j is processed in time bucket t, 0 otherwise

In addition, an execution mask z jt is defined for each activity j. Activity j can be processed in a time period t only if the value of the execution mask z jt is 1. Each z jt is assigned value 1 at t = 0 and its behaviour is constrained to be non-increasing, assuming value 0 only after activity j has been completed. An execution mask z pt is also associated to each feeding precedence relation \(p \in \mathcal{T}\), in particular:

  • %Completed-to-Start and %Completed-to-Finish precedences: the execution mask z pt associated to these relations has value 1 as long as the percentage of the predecessor activity i p is smaller than q p . If the completed percentage of the predecessor activity i p becomes greater than or equal to q p in time period t, then the value of the execution mask z pt must be 0 for each t ≥ t + 1.

  • Start-to-%Completed and Finish-to-%Completed precedences: the execution mask z pt associated to these relations has value 1 as long as the processing percentage of the successor activity j p is smaller than g p . When, in time period t, this percentage becomes greater than or equal to g p , then the value of the execution mask z pt must be 0 for each t ≥ t + 1.

Execution masks z jt and z pt are represented by binary variables.

Using the variables and parameters previously defined, the production planning problem can be formulated as follows:

$$\displaystyle{ \text{Min. }C_{\mathit{max}} }$$
(56.1)
$$\displaystyle{ \text{s. t. }C_{\mathit{max}} \geq t \cdot z_{\mathit{jt}}\quad (j \in V;\ t \in T) }$$
(56.2)
$$\displaystyle{ \sum _{t=r_{j}}^{d_{j} }x_{\mathit{jt}} = 1\quad (j \in V ) }$$
(56.3)
$$\displaystyle{ x_{\mathit{jt}} \leq B_{j}\eta _{\mathit{jt}}\quad (j \in V;\ t \in T) }$$
(56.4)
$$\displaystyle{ x_{\mathit{jt}} \geq b_{j}\eta _{\mathit{jt}}\quad (j \in V;\ t \in T) }$$
(56.5)
$$\displaystyle{ x_{\mathit{jt}} \leq B_{j}z_{\mathit{jt}}\quad (j \in V;\ t \in T) }$$
(56.6)
$$\displaystyle{ z_{j,t-1} \geq z_{\mathit{jt}}\quad (j \in V;\ t \in T) }$$
(56.7)
$$\displaystyle{ \sum _{j\in V }Q_{\mathit{jk}}x_{\mathit{jt}} \leq R_{k}(t)\quad (k \in \mathcal{R};\ t \in T) }$$
(56.8)
$$\displaystyle{ z_{p,t-1} \geq z_{\mathit{pt}}\quad (p \in \mathcal{T};\ t \in T) }$$
(56.9)
$$\displaystyle{ x_{\mathit{jt}} \leq B_{j}(1 - z_{\mathit{pt}})\quad (p \in \mathcal{T}_{1};\ j = j_{p} \in V;\ t \in T) }$$
(56.10)
$$\displaystyle{ \sum _{h=1}^{t-1}x_{\mathit{ ih}} \geq b_{i} - z_{\mathit{pt}}\quad (p \in \mathcal{T}_{2};\ i = i_{p} \in V;\ t \in T) }$$
(56.11)
$$\displaystyle{ (1 -\sum _{h=1}^{t}x_{\mathit{ jh}}) \geq b_{j}z_{\mathit{pt}}\quad (p \in \mathcal{T}_{3};\ j = j_{p} \in V;\ t \in T) }$$
(56.12)
$$\displaystyle{ x_{\mathit{it}} \leq B_{i}z_{\mathit{pt}}\quad (p \in \mathcal{T}_{4};\ i = i_{p} \in V;\ t \in T) }$$
(56.13)
$$\displaystyle{ \sum _{h=1}^{t-1}x_{\mathit{ ih}} \geq q_{p}(1 - z_{\mathit{pt}})\quad (p \in (\mathcal{T}_{1} \cup \mathcal{T}_{3});\ i = i_{p} \in V;\ t \in T) }$$
(56.14)
$$\displaystyle{ (1 -\sum _{h=1}^{t}x_{\mathit{ jh}}) \geq (1 - g_{p})z_{\mathit{pt}}\quad (p \in (\mathcal{T}_{2} \cup \mathcal{T}_{4});\ j = j_{p} \in V;\ t \in T) }$$
(56.15)

The objective function simply states that the performance measure to be minimized is the makespan. It is a classical objective function in the theory of scheduling but it also has an industrial relevance since the makespan minimization is linked to the maximization of the utilization rate, i.e., the more efficient use of production resources.

Equation (56.2) defines the makespan as the finishing time of the last activity that finishes. Equations (56.3)–(56.8) model the execution of the activities from the point of view of single activity parameters while Eqs. (56.10)–(56.15) manage the precedence relations. The non-increasing behavior of the execution masks z pt is forced by Eq. (56.9).

5 Industrial Application

A machining centre is a CNC (Computer Numerical Controlled) machine integrated with an automatic tool changer and equipment for pallet or part handling. It is typically made of a multi-axis computer controlled milling machine plus a set of additional equipment providing different functionalities (e.g., devices to automatically change the tools with, a tools storage, devices for automatically change the machined pallets with new ones to be processed, a pallets storage, equipment providing cooling and lubrication, a device for the disposal of metal chips, automatic controllers and computers to manage the high degree of automation, etc.). Although machining centre producers provide standard configurations for their products, customers often ask for modifications tailored to their specific needs. This is a common practice for European (and in particular Italian) machining centre producers.

As a matter of facts, the production of a machining centre is a complex one-of-a-kind process typically addressed by project scheduling approaches. Upon the design of the customised characteristics, the production of a significant set of components is assigned to external suppliers, while only high precision manufacturing activities for critical components are internally executed. Hence, the production process begins with the assembling of the kernel structure of the machining centre together with the main components, e.g., the spindle and the working table, that are internally manufactured (Fig. 56.6). This is a critical step since the capability of the machining centre (in terms of accuracy, repeatability and performance) strictly depends on the quality of these components and on how they are assembled together.

Fig. 56.6
figure 6

Machining centre structure with preassembled components

All the other components and parts are assembled around the main structure and wired together. The final assembly (Fig. 56.7) is tested and then partially disassembled to be delivered to the customer.

Fig. 56.7
figure 7

Complete machining centre

For modelling purposes, the detailed production process has been considered taking into consideration about two hundreds of production activities, each addressing the assembling, wiring or testing of a specific set of components. The definition of aggregate activities has been carried out based on the bill of materials of the machining centre. Components have been grouped into functional units and an aggregate manufacturing or assembling activity has been defined for each group.

Once the definition of aggregate activities have been performed, the production of a machining centre entails eight main phases:

  • A01: Structure Preparation. The machine centre structure is prepared for the assembling phase. Scraping operations are performed to provide a proper finishing level where needed.

  • A02: Pallet Preparation. The pallets are prepared for the assembling phase. Scraping operations are performed to provide a proper finishing level where needed.

  • A03: Structure Painting. The machine centre structure is painted.

  • A04: Autonomous Components Assembling. Autonomous components (e.g., spindle head, machine table, electrical cabinet), to be installed onto the machining centre, are separately assembled.

  • A05: Assembling. The machine centre structure is placed in the assembling area and all the components are installed.

  • A06: Wiring. Electrical connection is provided for all the installed components and for the control system.

  • A07: Testing. The main functionalities are tested according to the main regulations and internal standards. The machine centre accuracy is tested against its declared capabilities and the customer’s specifications.

  • A08: Disassembling and Delivery. The machining centre is partly disassembled and delivered to the customer.

Feeding precedence relations have been used to correctly model the production process. The need for feeding precedence relations is motivated by the fact that finish-to-start precedence relations among aggregate activities would impose unnecessary constraints with respect to the real manufacturing process. Assembling phase is made of a large number of sub-phases devoted to the separate assembling of single autonomous components, i.e., the electrical cabinet, the spindle head, the working table. These autonomous components need to be installed onto the machining centre structure but, as a matter of fact, they need not be completely processed at the time the Assembling phase starts. On the contrary, considering the detailed production process, they can be mounted onto the machining centre’s structure only after a certain set of other assembling operations have been completed. At the same time, they must be completed at latest before the machining centre is ready to have them installed onto.

For such cases, a Finish-to-%Completed precedence constraint can be used to allow the assembly of different autonomous components to be completed at the latest after a certain percentage of the machining centre assembling has been executed. This percentage represents the percentage of the assembling activity that can be carried out even if the considered subassembly is not yet ready to be installed onto the machining centre.

An analogous consideration can be done referring to the relations between the Assembling and the Wiring phase. The last should not wait for the completion of the whole Assembling phase to start but wiring can start as soon as components that need to be wired together are installed. In this case, the wiring activity must be allowed to start at the earliest after a certain percentage of the assembling activity has been completed. Hence a %Completed-to-Start precedence constraint can be used to allow the wiring phase to start as soon as the components that need to be cabled together are installed onto the machining centre.

Fig. 56.8
figure 8

Aggregate activities network

Fig. 56.9
figure 9

Activity execution profile

These phases are mainly processed by workers. Workers are grouped into seven different types according to their particular skills and each production phase requires only one type of skilled workers. The workers in a team can operate on different production operations belonging to the same aggregate activity as well as some of them can be moved to different teams working on different machining centres that are produced at the same time. Their behaviour can be correctly modelled using the variable intensity formulation that allows a variable resource utilisation. The resource availability is considered constant even if, in the real industrial environment, it depends on the requirements of the other orders that might be simultaneously in production (Fig. 56.8).

The obtained schedule is represented in Fig. 56.9 that reports the execution of the production activities in terms of their intensity. The schedule clearly shows that the activity A05, which models the assembling of the machining centre, is the longest one, starting on day 10 and finishing on day 27. As discussed before, the execution of activity A05 is associated to the availability of all the set of components to be assembled together. However, requiring all the components to be available at the beginning of the activity could be over-constraining.

To address this problem, the activity could be disaggregated to estimate time intervals in which the different components should be required. The (aggregate) assembling activity is decomposed into 15 sub-activities, each associated to the assembling of a specific set of components. Thus, given the precedence structure among these sub-activities, the ESEF and LSEF can be calculated and, considering the execution of activity A05 in the schedule, the Earliest Start Time (ES) and Latest Start Time (LS) can be computed for each sub-activity. These values actually provide the Earliest and Latest Due Dates for the availability of the components associated with each sub-activity (Table 56.1). The results also reports the values of the total float (TF), i.e., the range between ES and LS.

Table 56.1 Results

The results show that several manufacturing operations, i.e., AO51, AO52, AO54, AO55, AO56 and AO57, have a range between EST and LST between 1 and 4 days. In such cases, the accuracy in the estimation of the start time of the sub-activity can be considered good. Other assembling operations, i.e., A053, A058, A059, A0510, A0511, A0512, A0513, A0514 and A0515, show a bigger range, between 8 and 13 days, i.e., between 1 and 2 weeks. Such a wide range, however, is mostly due to the fact that these assembling operations can be processed in parallel with other assembling operations that are on a critical path. Hence, a shift of only one of these sub-activities within the provided range, due to a late component supply, will not cause a delay of the whole assembling phase. However, when more than a single group of components is supplied later than the ES, only a detailed scheduling phase can verify the effective occurrence of a delay. Sub-activity AO53, having the widest range, represents the installation of the hydraulic system, an external component that can be installed at any time after the axes and actuators have been assembled onto the machining centre.

Even if the range could be considered not accurate, compared to what can be obtained through a detailed scheduling and material requirement planning approach, these results are based on an aggregate plan and exploit the available information, i.e., the detailed structure of the aggregate activities, Hence, they allow to achieve a fair compromise between the anticipation of procurement and the avoidance of a computationally intensive detailed scheduling phase.

6 Conclusions

In this chapter an application of project scheduling to the production planning problem of MTO manufacturing systems producing highly complex and customized items has been addressed. A mathematical model based on a variable intensity formulation and feeding precedence relations was proposed. The applicability of the suggested approach has been shown through the application to a real industrial case.