Article final ivan f

16
1 “Operations scheduling optimization through mathematical programming in a high mix-low volume manufacturing environment” Author: Ivan F. Rodriguez El Paso, TX| 79912 Phone +1-915-999-6845 [email protected]

description

How to address the High Mix-Low Volume Production Scheduling Programming with an effective

Transcript of Article final ivan f

Page 1: Article final ivan f

1

“Operations scheduling optimization through mathematical programming in a high mix-low volume manufacturing environment”

Author: Ivan F. Rodriguez

El Paso, TX| 79912

Phone +1-915-999-6845

[email protected]

Page 2: Article final ivan f

2

1. Abstract

Consider a manufacturing environment with more than 500 multilevel shippable products, characterized by a high mix and low volume demand profile. This paper presents a multivariable linear programming model that efficiently addresses the challenging master scheduling process, it optimizes the objective function by providing a viable solution to produce the assemblies requested by the customer while maximizing the profit to the Plant; transformation cost, inventory cost, delayed deliveries/expediting cost, overtime cost and setup cost are all involved to generate the best possible production plan where customer demand; capacity constraints; and MOQ are each and every one considered too.

2. Key Words

Profit, multilevel structure, high mix low volume manufacturing configuration, MOQ, batch and queue, continuous flow, lean manufacturing, Overall Equipment Efficiency

3. Introduction

This paper is developed using a metal fabrication plant located in Guadalajara, Mexico, it was selected to present a reality that is probably applicable to many of other companies in this country, first, it´s facing a lot of operation and financial issues mostly related to the way the plan is structured and the way plant has faced the growth; second able, several difficulties to effectively and quickly adapt their production schedule process to the dynamic and always challenging market needs. This particular plant has been losing money for the last 4 quarters; among some others, the way the plant is setup (batch and queue flow, functional layout, vertical organizational structure with a lot of layers in between, etc.) and the way production plan is defined, are severely affecting plant ability to address this issue on a sustainable manner. The combination of unplanned growth and lack of vision to adapt the plant´ master scheduling system, are the main reasons why this plant is struggling to survive and keep stakeholders satisfied.

Fundamental industrial engineering principles and mathematic optimization are combined to create a flexible production plan that supported on a continuous flow operation that will significantly improve the way this plant works making its operational and financial metrics a lot better and more importantly, predictable and sustainable.

The proposal for an effective solution is critical, is a matter of survival, reality that probably not differ much of hundreds of businesses in Mexico that succumb to the violent and continuous assaults of competition, that don´t cease and redefine itself every minute, not giving space to passivity, nor to partial and short term solutions. Mexico has in its people, the biggest if its strengths to, once forever, over pass the historical reactive and fully dependant behavior.

4. Basic concepts

Efficiency is usually expressed as the percentage of time that the resources are used productively. The unproductive utilization is usually the result of activities related to equipments start over (setup), stoppages (downtime), reconfiguration of machines by change of products (mix cost), maintenance, times and interruptions by breakage and/or equipment failures. All of them with the exception of the machinery breakages can be anticipated, so their impact to the overall equipment efficiency through out a good planning system. Equipment failures are obviously, not scheduled events and its consequences to the plant, severely affect its performance. First, it creates significant losses in terms of produced units, giving a low absorption of resources; and secondly, in the case a prolonged breakages, a new production schedule must be generated immediately to minimize the

Page 3: Article final ivan f

3

consequences of the interruption. The planning and scheduling current process used by this Plant is briefly described in Figure 1.

Figure 1 – Planning Process

Indeed, the planning process is divided into several functional components, with multiple support plans. The typical planning model is based on forecasts, master production plan, materials plan, production plan and operations scheduling as detailed in Figure 2. A problem of operations programming on a Flow Shop environment is a problem in which n tasks must be processed by a set of m different machines and tasks must have the same processing or technological stream flow in the respective machines/equipments.

Figure 2 - Typical planning model

Strategic Planning

Tactical Planning

Production Plan

Production System

Decisions

Feedback

Market Forecast

Production

Planning

Master

Production Plan

Materials

requirement

Production

Scheduling

Operations

Planning

Materials Plan

Production Plan

Operations

Schedule

Page 4: Article final ivan f

4

The characteristic considerations of a Flow Shop scheduling problem are:

1) Each of every machine is available continuously and without interruptions.

2) Each of every machine can process one task at a time.

3) Each of every task can only be processed by a specific machine at a time.

4) Tasks processing times are perfectly defined and they are fixed.

5) Tasks have the same likelihood to be scheduled.

6) Setup times are included on the processing times.

7) Once an operation starts on any given machine, it cannot be interrupted.

According to theory that studies the mathematical complexity, this problem is classified as NP- Complete.

An example of the sequencing online problem is shown in Figure 3, where in a linear flow layout, there are 3 tasks that must be processed in a set of 4 machines, each task has the same order of technological stream through the machines, i.e., each of the tasks must first be processed on machine 1, then in the 2 machine, and so successively until it´s reached the 4 machine. Scripts are called technically permutation scripts. The task processing time j in the machine i is denoted by pij and total time of processing or execution is called Cmax (Makespan).

Figure 3 – Online sequencing of three tasks in four machines

Execution Time

Page 5: Article final ivan f

5

The plant in which this project is developed has 10 clients, represented by literals A, B, C, … J; these customers demand a total of 500 Products called shippable products, they are comprised by a total of 2.263 purchased parts and 1.083 manufactured ones. Table 1 shows the details of clients with its respective shippable products, manufactured and purchased parts; this data is presented as of July 2009. For the purpose of this paper, one of the ten customers has been selected to develop and run the mathematical model.

Demand is received from customers on a weekly basis; and it is put under a standard process called “Supply Commit” described in Figure 4. Production Plan is generated from it, it details the assemblies and subassemblies that will be manufactured per day, the sequence and the machinery required. This plan will then provide the elements to create the Shipment Plan which will be used by the program managers to provide customers with a day by day delivery schedule. Figure 5 shows how the raw data was collected and organized on an Excel Spreadsheet to later make the mathematical programming using Premium Solver Optimization Tool.

Figure 4 – Supply Demand Process

In this case, purchased parts are administered through a denominated program VMI (Vendor Managed Inventory) its lead time is less than a 1 day, hence, they are not considered as a problem in the model, which is absolutely focused on the make parts.

Page 6: Article final ivan f

6

CLIENT N° OF SHIPPABLE PRODUCTS

N° PURCHASED PARTS

N° MANUFACTURED PARTS

A 56 221 267

B 29 464 168

C 40 332 161

D 20 303 230

E 90 69 34

F 120 760 83

G 20 217 112

H 40 120 27

I 50 210 78

J 100 620 41

Table 1 - Active Clients, Shippable Products, Make Parts and Purchased parts

Figure 5 – Data structuring for mathematical model development

Where:

1. Part Number of shippable product (Top Level) 2. Part Number of subassembly 3. Level in the structure (A, B, C or D) 4. Factor use of the subassembly in the shippable product 5. Operations and processes required to make the product 6. Number of available machines by process type 7. Number of productive processes non used by each specific

subassembly

Page 7: Article final ivan f

7

8. Number of productive processes used by each specific subassembly

9. Number of total productive processes in the plant (this is used to confirm that the total each part is effectively programmed accurately)

10. Minimum order quantity after Lean transformation (MOQ)

4.1. Generic Process Flow

PRENSAS

CORTEPUNZONADO

RECIBO

INSPECCION

CALIDAD

PASA

ALMACEN

PULIDO

DOBLEZ

INSERSION Y

SOLDADURA

PULIDO

SERIGRAFIA

ENSAMBLE

DOBLEZ

Modificación de

Programa

INSPECCION

CALIDAD

MATERIAL

RECHAZADO

AREA DE

SCRAP

INSPECCION

CALIDAD

PASA

NO PASA

EMPAQUE

PASA

NO PASA

PASA

NO PASA

INSPECCION

CALIDAD

INSPECCION

CALIDAD

TREN DE

LAVADO

SECADO

ENMASCARILLADO

PINTURA

POLVO LIQUIDA

HORNO DE

CURADO

DESENMASCARILLADO

INSPECCION

CALIDAD

INSPECCION

CALIDAD

PASA

ALMACEN

INSPECCION

CALIDAD

AREA DE

SCRAP

NO PASA

NO PASA

NO PASA

PASA

INSPECCION

CALIDAD

NO PASA

PASA

NO PASA

Recibo de

Material Inspección AlmacenOperación

Simbologia

DIAGRAMA GENERAL DE PROCESO

Figure 6 – Metal Fabrication Generic Processes Flow

4.2. Graphical representation of the conceptual model

INCOMMING

QUALITY

INSPECTION

REJECTED

MATERIAL

NO PASS

PASS

QUALITY

INSPECTION

WAREHOUSE

STAMPING CUTTING PUNCHING

QUALITY

INSPECTION

PASS NO PASS

POLISHING

BENDING

QUALITY INSPECTION

Program

Modification

NO PASS

HARDWARE AND WELDING PASS

SCRAP AREA PASS

NO PASS

NO PASS

QUALITY INSPECTION

WASHING TRAIN

DRYING

MASKING

PAINTING

WET PAINT POWDER PAINT

CURE OVEN

UNMASKING QUALITY INSPECTION

NO PASS

PASS

PACKING ASSEMBLY

QUALITY

INSPECTION

NO PASS

PASS

WAREHOUSE

SILK SCREEN

QUALITY INSPECTION

SCRAP AREA

BENDING

NO PASS

PASS

QUALITY

INSPECTION

NO

PASS

Page 8: Article final ivan f

8

The following chart shows the graphical representation of the Model Flow, it starts with the customer demand that triggers the Job Order generation through the Plant ERP System (it is made at a Father Part Number Level), then, these jobs are imploded using the same ERP at a Subassembly level, on this step of physical inventory located in the plant is discounted from the gross requirement, giving the Net Quantity that needs to be produced. In the current master production scheduling process that prevail on this Plant, the planner manually starts programming the available capacity, this process lasts between 1 to 2 working days; as a result of this process, each machine is programmed with a sequence of parts, if something changes in the customer demand, the current “planning system” is not flexible nor faster enough to update the machinery planning accordingly. Figure 7 shows the current flow followed to plan and manufacture multilevel products.

Figure 7 – Graphical representation of the Conceptual Model (Multilevel Structure)

4.3. Model Objective:

Generate the optimal manufacturing sequence that maximizes plant´ profits while ensuring customer demand is reached using available capacity (equipment, machinery and manpower).

Gross profit is the result of the arithmetical difference between Revenue (product of the volume of each shippable product and its respective selling price); minus the incurred costs. There are 5 types of costs considered in the model: (1) Transformation Cost (it includes raw material, labor and overhead); (2) Inventory Cost; (3) Delayed deliveries cost; (4) Overtime Cost; and (5) Setup Cost.

4.4. Input data:

Job order created at a Shippable

P/N Level BOM Implosion is run through the

ERP System to get Sub-Assemblies

Demand Sub-assemblies are organized using

the process sequence, setup and

processing time loaded in the ERP

They are processed sequentially of

Level “D”, to the “C”, of “C” to the

“B” and of the “B” to the “A”

[Shippable P/N]

Page 9: Article final ivan f

9

1) Initial product inventory

2) Preparation Time (setup), it´s specific to each part number and it´s of extreme importance for the correct resource planning, it has a direct effect in the efficiency performance.

3) Processing Time by workstation

4) Process Efficiency, average of 12 months historical performance [90%]

5) Manufacturing sequence, process progression

6) Product structure level by level (Indexed BOM Multilevel)

7) Factor Use (number of times that each subassembly is used in the shippable product)

8) Minimum Order Quantity (MOQ), the plant does not have to produce an inferior number to the MOQ for each product i, since fixed cost will not be recovered; therefore, in the case where the demand of a product is less than MOQ, the demand is replaced by the corresponding MOQ.

9) Standard Gross Profit Margin (SGPM)

4.5. Structural Variables:

Xi, j Production of i-th product in j-th day of the week

i=1, 2,… 267

j=1, 2,… 7

Ii, j Initial inventory of i-th product in j-th day of the week

i= 1, 2,… 267

j=1, 2,… 8*

* Ii,8 correspond to the inventory of i product in day 8, i.e. the final inventory at the end of the week

Yk Unfulfilled demand of k-th product, where k identifies the shippable products

k= 1, 2,…, 56

Dj, dj Non-negative variables used to level load production per day so capacity resources are best utilized, it indeed express the difference of production time between the day j+1 and the day j. This arithmetical difference can be positive, negative or zero. In order to be able to use them in a model of linear programming like the one created on this paper, they are defined as the difference of two nonnegative variables. In the presentation of constraints the followed logic is detailed.

j= 1, 2,… 7

Page 10: Article final ivan f

10

Note: These variables appear in the F.O. with a negative coefficient that penalizes the profit and by as much the model force them to take values from zero or very small ones.

4.6. Constraints:

1) Capacity Constraint, amount of equipment and its respective schedules on watch (as it is in Figure 8) where TP is Time of Processing of i-th product in the resource of limited capacity respective m. Subassembly is raised at level.

TPiXi, j < Capacitym [N° of constraints 10*7]

i= 1, 2,… 267

j= 1, 2,… 7

m= 1.2,…, 10; (m=resources, for example, bending)

In the model this is how the mathematical programming is made using Premium Solver Platform:

Figure 8 – Mathematical Model Programming

2) Balance Constraint, this constraint ensures that the initial inventory plus the production minus the final inventory is always zero, this allows keeping the mathematical equality between “entrances” and “exits”. Formulas are defined part number by part number, considering its level with respect to shippable product; this constraint has been created to control multilevel structures in which the dependency of the subassembly and the shippable product is required along with the factor use. It is a constraint that practically, defines the manufacturing sequence at the level of each subassembly in the structure, consequently, it´s defined at a subassembly level.

Ii, j + Xi, j - FUi*Xi', j - Ii, j+1 = 0; i is subassembly of i' [N° of constraints 267*7]

i= 1, 2,… 267

j=1, 2,… 7

3) Demand Constraint: The final inventory of the week (Ik, 8) plus unfulfilled demand must be greater or equal to the demand of the client. This constraint is defined at a Shippable Product level, it´s actually the only constraint that works with shippable products.

Ik, 8 + Yk > Demand k [N° of Constraints 56*1]

k= 1, 2,…, 56; k represents shippable products, “top level” or father products

Page 11: Article final ivan f

11

4) Balance of production per day constraints.

jj

i

j

i

ji dDXX 1,1,

[N° of Constraints 4 to 7]

This way:

Dj > 0

i

ji

i

ji XX 1,, Then

dj = 0

And:

Dj = 0

i

ji

i

ji XX 1,, Then

dj > 0

In addition:

Dj = 0

i

ji

i

ji XX 1,, Then

dj = 0

4.7. Objective Function:

For the purpose of this paper, objective function is defined using week 28 data from the Plant´ ERP; considers (July 19 to July 25, 2009), in which customer demand is for 16 shippable products. This demand must be satisfied in the available working days, i.e. Monday, Tuesday, Wednesday and Thursday, this is, j=1,…, 4; if this time is not sufficient, Fridays, Saturdays and Sundays, might be used, j=5,…, 7; but incurring on a overtime fee (OT) since the plant will need to get this skilled personnel to work those days.

)(Dj*100-Z*C6*175-X*C5 - Y*C4- II*C3 - X *C2 - Y *C1D *C1 ZMAX3

1j

i

7

1j

ji,

267

1i

i

7

5j

ji,

267

1i

i

56

1k

kk

267

1i

i,1-i,8i

7

1j

ji,i

267

1i

k

56

1k

k -k

56

1k

k dj

Page 12: Article final ivan f

12

Where:

C1k= Selling price of the k-th product, k= 1,…, 56

C2i= Transformation Cost of the i-th product, i=1,…, 267

C3i= Inventory Cost of the product i-th, i=1,…, 267

C4k= Delayed Deliveries Cost of the k-th product, k=1,…, 56

C5i= Overtime Cost of the i-th product, i=1,…, 267

C6i= Setup Cost of the i-th product, i=1,…, 267

Logic followed by the model to make the demand fulfillment calculation:

Initial inventory + Total Production + Unfulfilled Demand > Demand

Numerical Representation:

Ik, 8 = 100 Final inventory of k-th product

Dk = 80 Demand of k-th product

Ik, 8 - Dk=20 The Revenue could never be greater than product between demand (Dk) times the respective selling price (C1i), i.e. the model does not restrict the production by above of the demand of the client, nevertheless, this does not imply that the client will buy it, for that reason, the Revenue considers the following constraints:

If Ik, 8 < Dk Revenue V= Ik, 8 * C1k If Ik, 8 > Dk Revenue V= Dk * C1k

4.8. Optimization Method:

Linear Programming Optimization implies to determine the production schedule, what to produce, when and how many so the maximum profit is obtained considering the technical and human limitations.

Model of Optimization Deliverables:

1. Production sequence at a Subassembly Level that minimizes the makespan (produce the greater gross profit margin) and maximizes the number of shippable products sent to the customer right on time and right on quantity.

2. Shippable products fulfilled (volumetric and mix on time delivery) 3. Gross Profit reached with proposed production schedule that creates the optimal

manufacturing sequence (considering Revenue, transformation, inventory, overtime and delayed deliveries costs)

Page 13: Article final ivan f

13

4.9. Model Flowchart:

Figure 9 – Optimization Model Flow

4.10. Model Presentation

Figure 10 shows the Model specifications on the Premium Solver Platform:

Figure 10 – Screenshot of the Model Specifications in Premium Solve

CUSTOMER DEMAND AT A SHIPPABLE PART NUMBER LEVEL

SUBASSEMBLY DEMAND IMPLOSION

OPTIMIZER ENGINE CREATES DIFFERENT PRODUCTION

SEQUENCES TO MAXIMIZE THE

PROFIT

ON HAND INVENTORY

SETUP TIMES

PROCESSING TIMES

PROCESS FLOW FEEDBACK

OPTIMAL RESULT

PRODUCTION SEQUENCE CONTRIBUTION MARGIN

Page 14: Article final ivan f

14

4.11. Model Results

Table 2 shows the numeric results of the optimization model. Not only OTD was drastically improved, but the overall productivity of the plant, lower inventory levels, lower transformations cost, zero overtime cost, and significant gross profit improvement.

Table 2 Summary of Results (Comparison between the traditional planning model vs. optimized model)

5. Conclusions

A mathematical programming model has been created that generates the optimal production plan that maximizes the profits of the plant, organizing the manufacturing floor by defining the subassemblies that must be produced, how many of them and the specific day of the week.

While this paper shows the application of a linear programming model on one of the 10 customers that this metal fabrication plant has, it can be straightforwardly escalated to the total number of customers and shippable parts of the plant, capacity resources and client demands are to be updated in the model so the “complete master plan” is generated in less than 15 min.

This is a “quantum leap” step in the way the production scheduling task has historically been performed in the plant, not only assigned manpower was reduced by 85%, but, more importantly, the accuracy, the predictability and the speed to create a scheduling production plan, has been improved. Above and beyond, with this model, different manufacturing scenarios can now be produced in terms of minutes, so new customer requirements can be “added” to the existing plan to see its effect to the OEE (Overall Equipment Efficiency), Revenue and Gross Profit. This is real value to the decision makers of this plant that will help them to improve the time and the quality of their decisions in terms of what needs to be produced, how many prices by part number, the sequence and the specific day of the week. All relevant information such as setup time, manufacturing sequence, available capacity (equipment, machinery, manpower, processing time), MOQ, operation costs, and customer demand are all playing an active/direct role in the objective function to produce the best possible manufacturing plan.

Page 15: Article final ivan f

15

This model efficiently solves the problem of programming complex manufacturing scenarios characterized by the high mix of products and the low volumes; HM-LV-HC (High Mix - Low Volume - High Complexity), which is, indeed, the new reality that the Manufacturing Industry in Mexico has been facing for at least a lustrum and this model will continue.

What is next?

To further expand the application of this model, the planner would need:

(1) Update model parameters, i.e. the number of available machines by process, costs, selling prices and MOQ's

(2) Select the project that he/she wants to program (3) Select the week of the year that he/she wants to program (4) Load the Initial Inventory of each subassembly; with this, the model will run and produce

the master production plan to reach maximum level of gross profit.

DATA ENTRY

PROJECT/CUSTOMER TO PLAN

WEEK OF YEAR TO PLAN

INITIAL INVENTORY BY SUBASSEMBLY

PROGRAMMING PARAMETERS IN THE MODEL

Figure – Sequence of updates to be made by the planner to apply this model

6. Appendix

6.1. About the Optimizer Software

The model is loaded in a spreadsheet in Microsoft Excel and uses Premium Solver to solve the mathematical model. Premium Solver is Frontline Systems' basic upgrade for the standard Excel Solver. It's 100% upwardly compatible from the standard Solver -- which Frontline developed for Microsoft -- with the capacity to solve much larger problems -- up to 2,000 variables -- at speeds anywhere from three to 100 times faster than the standard Solver. Good application for problems like the one presented on this paper with bigger limits than the ones of the standard Solver (200 decision variables). Premium Solver is dramatically enhanced in Version 9.0, with an all-new user interface that uses Excel's Ribbon and Task Pane for easier, faster model definition; new charting features to visualize linear and nonlinear functions; and new features to easily solve multiple, parameterized optimizations. You can easily upgrade Premium Solver to Risk Solver Premium for new simulation power, Premium Solver Platform for greater optimization power, or our "super-product" Risk Solver Platform.

Page 16: Article final ivan f

16

7. Bibliography

1. HILLER F. y LIEBERMAN G. J, Introduction to Operations Research, McGraw Hill Companies, Inc.,

2005.

2. REEVES Colin. A generis Algorithm for Flowshop Sequencing. Pergamon. Computers Ops Res.

Vol. 22 No 1, pp 5-13, 1995 Great Britain.

3. MOCELLIN. Joao Vitor, BUZZO Walter Rogerio. Programacao da Producao em sistemas Flow-

Shop utilizando um Método Heurístico Híbrido Algoritmo Genético- Simulated Annealing.

Revista Gestao & producao. Brasil. VII. No 3, December 2000.