Effective Planning and Scheduling in Volatile, Very High Mix and Low
Volume Discrete Manufacturing Environment
H. Adil1, K. Sekkat2, D. Shaw3
1 Group Optimisation Manager at Oxford Engineering Ltd, 6 Colwell Drive, Abingdon Business Park,
Abingdon, Oxfordshire, OX14 1AU, United Kingdom, email@example.com
2 Chairman of Oxford Engineering Ltd, 6 Colwell Drive, Abingdon Business Park, Abingdon,
Oxfordshire, OX14 1AU, United Kingdom, firstname.lastname@example.org
3 Director of Churchill Associates Ltd, Shirley House, High Street, Newent, GL18 1AY, United
The decreasing profit margins and shorter lead times in subcontracting manufacturing due to global competition forced small to medium size enterprises in the Western World to further streamline and eliminate waste in every step of the business processes. One of the ways to do this is to integrate more technology into business processes including planning and scheduling. Most of the enterprise resource planning systems (ERPs) used in subcontract manufacturing have material resource planning (MRP) and scheduling modules, but they cannot deal with the ever-increasing complexity of modern jobshops. A new type of scheduling systems known as advanced planning and scheduling systems (APSs) are used. In this paper, an industrial problem is presented by listing all the scheduling needs of the company. The paper then assesses the available software that can meet these requirements and a solution is selected. The solution is implemented and the outcomes are discussed. Since APSs are subordinates to ERPs and heavily rely on data from ERPs, the workarounds where data could not be facilitated in the ERP are also explained. Further optimisation of the scheduling rules is explained in the future work section.
Keywords: Discrete manufacturing, APS system, manufacturing and planning resource
The subcontract manufacturing/machining industry is under immense pressure due to the increasingly fierce global competition that has resulted in the ever decreasing profit margins. Companies are therefore experiencing increased pressure to improve cycle and delivery times and achieve high level of customisation [1-2]. The traditional lean principles and their variations designed for low-mix high-volume (LMHV) manufacturing environments are no longer sufficient due to the operational complexity of modern jobshops caused by product mix, product routings customer base and volatility of order volumes [1-5].
Most of the subcontract manufacturers are small to medium size enterprises (SMEs) and due to the nature of the business; they do not have products of their own, but produce parts and assemblies for different customers. This leads to large mix of parts that a given manufacturer needs to produce and has no control over the quantity/volume. All these parts have different number of operations on different resources/machines, taking different amounts of machining time, so scheduling them optimally is hard problem to solve. In addition to the work that can be done in-house, these parts may need one or more processes such as heat treatment, painting, anodising etc. in different stages during manufacture. These capabilities may not be available in-house and planning for these operations further complicates scheduling. Effective scheduling in high-mix low-volume (HMLV) environments is paramount to stay competitive and this requires flexible manufacturing systems (FMS) [6-7] to optimise production capacity. If work is not scheduled properly, this will lead to increase in lead time, lower utilisation of machines and other resources which will decrease profit margin for a company and will lose out to competitors on lead time.
The Western subcontracting industry responded to the challenge with different approaches i.e. shifting some of the manufacturing to the far East/Asia with lower labour costs etc. or incorporated more technology in its operation to be competitive. Both of these approaches have their pros and cons and come with significant costs; however it is the later approach that is of interest in this paper.
Traditionally material resource planning (MRP) and enterprise resource planning (ERP) have been used to generate manufacturing plans based on available resources with infinite capacities. MRPs break down sales orders into parts using bill of materials (BOM) and then create works orders (WOs) to start manufacturing based on an estimated lead time for each part; however they do not account for the real capacities of available resources and nor they sequence batches on resources. No account of the workload in the factory is taken and the same lead time is used irrespective of the factory workload or the batch quantity. This leads to resource overload, increased work in progress (WIP) and therefore orders take longer to complete and the deliveries to customers are late (See determining realistic WO start date in Section 4.1).
MRP and ERP vendors realised the shortcomings of their systems and offered scheduling systems either as an add-on module or separate system. Most modern MRPs and ERPs come with built-in or add-on schedulers which can sequence operations and deliveries can be predicted with more confidence than MRP systems. However, most of these schedulers failed [8-9] to keep up with the fast occurring changes in jobshops such as dual and triple running of machines, jig and fixtures constraints, multi-pallet machines that can run unattended. Subcontractor machine shop should also be able to prioritise work for a given customer willing to pay premium for faster service. Section 2 below lists OE scheduling requirements.
To aid understanding Oxford Engineering (OE) Ltd scheduling needs, it is deemed important to understand the planning and scheduling process at OE, explained as the following.
1.2. Planning and Scheduling Process in the Company
The flowchart in Figure 1 illustrates the planning and scheduling process in the company. The process begins when a request for quotation (RFQ) is recevied from a prospect or existing customer; the estimator creates a bill of material (BOM), routings etc. for the job. Estimates are created for different components to determine the costs and capacities required on different resources. The planner then assesses the available capacities on various resources required for the job and decides if the required delivery date can be achieved. If the desired delivery date cannot be met, a possible delivery date is proposed. The customer sends a purchase order when a delivery date is agreed between the customer and the company.
The planner then creates works orders (WOs) and schedules the work along with existing workload. From the time when the quote was sent and the customer sending the purchase order, other orders may have been received and this would have taken some of the capacity. If the scheduled delivery date is too far out compared to when originally estimated at the RFQ stage; overtime, outsourcing, alternative routes are evaluated to bring the delivery date in-line with the promised delivery date. If the promised delivery date cannot be met with the available options; the delivery date is renegotiated with the customer. Since WOs could not be created at the RFQ stage hence the delivery date could not be estimated based on scheduling with existing workload. Scheduling at the RFQ stage is one of the paramount requirements of the new scheduling system (See delivery date estimation at quoting stage in Section 4.1).
2. Industrial Problem and Scheduling Requirements
Oxford Engineering (OE) Ltd has an ERP with a scheduling module and it has been using this ERP for approximately three or more decades. The ERP and all of its modules have evolved over time and it is well-embedded into OE’s business processes. Furthermore, the
ERP is integrated with other systems such as Accounting and it meets most of OE’s operational requirements. However, the scheduling module has not been able to keep up with OE’s requirements to stay competitive.
OE investigated possible solutions including replacing the ERP system with another one with better scheduling system or scheduling system on its own. Replacing an ERP system is complex, time-consuming and extremely expensive, and therefore it was not the preferred choice. Before searching for potential solution, it was deemed important to list OE’s scheduling requirements; it helped filter out systems that could not meet the requirements and would allow investigating viable solutions in more detailed. OE scheduling requirements are given as the following:
- The current scheduling system can only adjust the capacities on resources in weekly buckets. It does this as a percentage of weekly capacity on a given resource which is not realistic and it cannot accurately account for the inter-dependency between operations. For example, the impact of a resource not available on Monday is not the same as not being available on Thursday because the work that could have been completed on Monday would have gone for external process that takes a week and the collection for this could be weekly. The work will therefore be delayed by a week until next collection and this will have knock-on effect on many more resources. The new scheduling system should allow adjusting capacities on specific days (date range) in smaller time bucket i.e. minutes. The same function can be used to apply more targeted overtime on various resources that are bottleneck. Furthermore, it should allow applying different resource efficiencies depending on shift or employee i.e. new starter might be less efficient etc.
- The system should enable to select another route to manufacture for a given part(s) if the primary route is blocked for some reason or the desired delivery deadline cannot be met. It should do this without changing the route in ERP, the route can be changed in ERP once the planner is satisfied with the alternative route. The system should be able to hold all the manufacturing routes. Deviating from the primary manufacturing route might also have cost implication as it will take different amount of machining time on different machines which might have different hourly rates. The reasons for different hourly rates could be operator skill set, depreciation of the machine, overhead, electric consumption etc. The system should display the cost implications when selecting the alternative routes, so the planner can make an informed choice before the alternative route is scheduled.
- The system should allow prioritising works orders (WOs) for customers according to the priority set by the planner. The system should do this with minimum input from the planner. The planner should only change the priority in customer table not on each WO belonging to the customer. The system should also allow to priorities individual WOs instead of all WOs for a given customer. Furthermore, it should allow prioritising WOs for a specific project over the other projects for the same customer.
- The system should identify setup dependent change over time i.e. two batches of the same part and operation scheduled on the same resource one after the other should not be allowed setup time. Furthermore, it should be able to allow product dependent setup time on different resources i.e. if part B is machined after part A; it may require
2 hours to setup the machine, but only 1 hour if machined after part C. The system should also recognise that successive operations of the same orders on the same machine may need to follow on.
- The system should be able to schedule parts that can run unattended or off-shift; this will allow for increased resource utilisation, reduce lead time and labour costs. It should do this while accounting for the quantity of the parts that it can fit onto a table or pallets a resource have. For example, the machine Matsuura Cublex-63 (Figure 2) has 18 pallets and can therefore hold 18 parts at a time for machining. However, if the parts are small and only needs profiling or milling on the top, 4 parts can be fitted into each pallet using the zero-point work holding system (Figure 3). The machine can hold 72 such parts at a time. Furthermore, a non-pallet machine with only one table can also be used as a multi pallet machine with the appropriate zero-point work holding system. For example, many vices can be placed on the machine table, each holding a part (Figure 4).
The same logic can be applied for bar feeding resources (Figure 5) where certain number of parts can be made from a bar of known length therefore appropriate time can be scheduled. This logic can also be used on resources which can be tended or be used with collaborative robots that load and unload machines. The drawer or tray capacity will be the pallet capacity in that case.
If the number of parts loaded onto the machines complete before the next shift begins and manual intervention is required to off-load the finished parts, it should not schedule any more WOs until the next shift begins. This could be useful for weekend or bank holidays where the machine could be fully loaded at the end of the shift before weekend begins, but the work may not be enough to run over the whole weekend or holidays.
In case there is not enough quantity of the same part, but other parts could be loaded, the system should schedule loading appropriate quantities of the respective parts. For example, on empty table 20 parts A or 10 parts B can be loaded, if there is only 10 part A that needs machining, then it should only allow to schedule 5 of parts B. This ratio can be rounded down to be more conservative in scheduling. Furthermore, the schedule should reload the pallets at the end of the shifts with parts that can be run unattended to maximise the resource utilisation.
- The system should enable employees to operate multiple machines while obeying all the constraints. For example, a machine should not be schedule for setup if the setter for the machine is already scheduled setting up another machine. This can done using skill matrix table for employees stating which employees can operate or set which machines. If the part cannot be run unattended and needs the operator during machining, the system should not schedule the operator on another machine.
- The system should be able to schedule or determine delivery dates of jobs for which WOs have not yet been created in MRP, but the part BOM exists either in MRP or Estimate package of the ERP. This is useful where more accurate delivery date can be given when sending out a quote and responding to prospect/customer request for quotation (RFQ).
- The system should allow for grouping of machines or creating WorkCentre cells. A given operation on a part can be completed on any machine/resource in the WorkCentre cell unless a specific resource in the WorkCentre cell is required in that case the operation will be scheduled on that resource.
- The system should allow scheduling concurrent and parallel operations on certain resources. Concurrent scheduling can be used for engineering or CNC programming resources where the CNC programming can start before the material due date. Parallel scheduling can be used i.e. for welding centres where more than one welders can work on different operations at the same time. Concurrent and parallel can be used together if more than one engineers are available programming different jobs.
- The system should enable to easily perform what-if scenarios, for example to see the impact on delivery time if capacity on a given resource is reduced on specific calendar days or time.
- The system should obey real life machine shop constraints such as material or jig and fixture constraints.
Other requirements were ease of use, maintenance, configurable to accommodate future requirements, ease of integration with other systems such as document management system and UK based customer service. Another desired requirement was that the system can work for multi-sites; different schedules can be run for local capacity of one site or global schedule of many manufacturing sites. The system should do all of the above with least amount of input and maintenance required.
3. Research Method and Application Approach
The following two sections research method and application approach describe how Oxford Engineering Ltd went about finding the solution for its scheduling requirements and how it was implemented.
3.1. Research Method
Once detailed scheduling requirements were outlined, they were sent to different scheduler and ERP vendors, the detailed written requirements made it easier for the software vendors to decide whether they can meet the requirements or not. Software advisory services were also contacted to put OE in contact with vendors that OE might have not been aware of. In total 23 different vendors and systems were reviewed and they included systems like Seiki Systems, Optessa, Flexciton, Demand Solutions, Orchestrate, Aurora and many others.
However, Opcenter formerly known as Preactor was selected based on meeting most of OE’s scheduling requirements and being cost-effective. At the time of writing this publication, Opcenter is owned by Siemens.
Opcenter has three licensing types or categories which are standard, professional and ultimate and the ultimate type was needed to meet OE’s requirements. The ultimate type allows writing custom scheduling rules; many of the OE requirements could not be met by the already available scheduling rules in Opcenter.
3.2. Application Approach
As mentioned earlier that out-of-the-box Opcenter could not meet all of the OE’s scheduling requirements and custom scheduling rules had to be designed. However, before any custom rules could be written, it had to be decided whether to use Algorithmic or Event Based scheduling method. Opcenter has these two main scheduling types/methods (Figure 6) and each of these has different rules for scheduling. The two main scheduling methods are described as the following.
3.2.1. Algorithmic Scheduling
In this method, orders are scheduled one at a time after sorting into a chosen sequence using a priority code and/or due date. Its advantages over event based scheduling are:
- High priority order (blue) completed earlier as it will have no competition for resources.
- Compatible with multi-pass rules i.e. some orders could be forward scheduled, and others backward scheduled from due date.
- Automatically uses the advanced scheduling constraints.
3.2.2. Event Based Scheduling
In this method, time moves forward only and at each event time (an event is when a resource becomes available for whatever reason) the operations that can run on that resource, and are available to start, can be sorted into a preferred sequence and the first in the list can be scheduled at that time. The advantages are:
- Overall schedule span is shorter
- Use of alternative resources (parallel loading)
- Explicit control through the API i.e. resource selection
OE scheduling requirements dictated to use event based scheduling with a number of custom rules.
The flowchart in Figure 7 illustrates the steps taken to implement Opcenter. The first step was to install the licence manager on application server followed by installing Opcenter on client computers that were used to run Opcenter. The Opcenter SQL database is in the same server as ERP to hold the data needed for Opcenter operation. SQL queries were created using SQL Server Management Studio to import data from ERP into Opcenter in an organised manner. The multi-level BOM data needed in Opcenter could not be done by writing import script in Opcenter. Even though Opcenter has it is own function to peg materials, but the MRP pegging from ERP were imported into Opcenter to ensure alignment with MRP data. For the purpose of quoting delivery dates to prospective customers, fictitious WOs, material purchase orders (POs) and other data were created in Microsoft Access (See delivery date estimation at quoting stage in Section 4.1) and imported into Opcenter by writing import script in Opcenter.
Custom schedule rules were written to enable Opcenter to fulfil OE scheduling requirements. Various reporting tools were created to help in assessing the custom schedule rules, while in some cases random manual checks were carried out on scheduled data.
Creating better schedules is important, but it is as important to provide accurate data to Opcenter. Many reporting tools were created to help users sanitise data on regular basis such as acknowledging purchase orders with new dates if they are late and the due date has passed. Other reporting tools were created in Microsoft Power BI software to visualise and compare what-if scenarios side by side. For example, the planner made some changes to the schedule and would like to assess which customers, how many orders etc. have been affected. Finally reports were created to enable displaying the work-to-lists live on workstation PCs used near the resources/machines.
4. Results and Discussion
In order to protect the business secrets, detailed and specific results could not be published. The project was considered a success based on the selected key performance indicators (KPIs). The custom schedule rules produced a more efficient and realistic schedule based one real life constraints of the company. The ERP and scheduler used in the company can be assumed to be representative of ERPs mostly used in SMEs, all the ERPs and schedulers investigated during this project were pretty similar to what the existing ERP and scheduler do.
4.1. Technical Workarounds and Limitations of the Proposed Solution
Due to the project data requirements and the ERP & Opcenter being from different vendors, sometimes data was not available for the Opcenter to use. Some of the technical workarounds to facilitate the needed data are given as the following.
Delivery Date Estimation at Quoting Stage
One of the scheduling requirements (7) was that the system should enable to determine delivery time based on scheduling before a quote is sent out. For the system to determine the delivery date based on existing workload and resource capacities; the parts must have BOM and WOs created for them. However, at the request for quotation (RFQ) stage; MRP does not create WOs because there is no demand or sale order even if estimates have been created to cost the job. Estimates are used to create a quote and there is one top level estimate for each item on the quote. Each top level estimate has lower level estimates which could have further lower level estimates depending on the part complexity/BOM.
A programme was developed in Microsoft Access to create fictitious WOs, purchase orders for material and other data needed to schedule the quoted jobs. The BOM and all the information come from the estimate package in ERP using the quote number. The end user has to just select the correct quote number and press a button that then generates all the needed data. The Estimate package/module in the ERP system does not have a field or spare field that could be used to put the lead time for each material. To work around this limitation, the user is required to provide number of days that would take to get the material. This lead time is used to calculate the material due date which is then used by the scheduler not to start the WO before the material due date. The material due date for different parts can be changed manually if it is known. Along with selecting the quote number and lead time for material, the user also provides priority number for the customer; this priority number is used by the scheduler to priorities operations belonging to the customer.
Determining Realistic WO Start Date
WOs are created in MRP and the WO start and end dates are determined by MRP using the lead time assigned to the parts. For example, part A has lead time of 20 days where the actual machining and subcontracting process could take 5 days. The MRP will work backwards from the due date of the WO using lead time and create the start date for the WO. This is done irrespective of taking into account the capacities on resources and is therefore not realistic. If the resources are busy, it may not be possible to finish all the operations on the part in the lead time window. This lead time is a fictitious number based on planner’s guess, and it cannot be determined precisely as the lead time for the same part could be different depending on the workload in a given time.
Generally schedulers especially the ones that come integrated with the ERPs use these as the earliest WOs can start. This causes problem especially in multi-level BOM parts where the lower level or child part has finished earlier than the end date of the WO which was determined using the lead time for the child part. The child part is waiting and cannot be used in the parent part because the parent part WO has not started yet due the WO start date determined by MRP using the fictitious lead time. Most of the work at Oxford Engineering is complex multi-level BOM assemblies which could have up to 500 components and 8 levels. This could increase the work-in-progress (WIP) and lead times; increased WIP also requires higher working capital which costs the company in paying interest.
To work around this limitation, it was decided to calculate a latest start date programmatically for each operation, starting at the top-level item due date, and working back through its operations for the quantity ordered to calculate the latest time it must start in order to finish on time. Lower-level work orders then take their due dates from this, and have their own latest start dates calculated in turn, working down through the BOM to the bottom level. The latest start dates are then used in the event-based scheduling rule to provide the priority for the operations queue at each event time, together with other priority indicators such as customer priority. The custom scheduling rule also allows for priority to be given first to operations for work orders that are actually required ultimately for a sales order rather than for stock.
Unattended Operations and Quantities
Machining a part unattended or lights-out is resource dependent; a given part can run unattended on machine A because it has been proven out, but not on machine B. If parts can run unattended, then the quantities the resource can hold in a pallet or magazine need to be specified in order for the system to schedule the correct amount of time. In the scenarios explained here, the part will have two methods of manufacture; one for unattended operation and the other where operator is required. The ERP system OE uses did not have any spare field to specify the unattended operation and quantity, but there was one field called operation family group. More operation family groups were created such as UA-18 where the UA denotes unattended and 18 is the quantity of the part that the machine can hold. The UA18 was split into 2 fields (UA, 18) upon importing into Opcenter where they could be used by the scheduler.
The custom scheduling rule then uses this information to extend the end of any working shift where a qualifying operation is running by calculating the run time of a full pallet of parts or the outstanding batch quantity if less (less the one part in progress), and extending the shift for that length of time.
Alternative Route Selection
Opcenter has the ability to hold multiple routings for a part, each identified with a route number. A custom program, called from within the sequencer by a right mouse-click on an order that has not yet started, displays all possible routes for the part, showing the total time and cost for each, using cost data imported from ERP. On selecting a different alternative route to the current one, the operations in the sequencer are replaced with the chosen alternative, but using the same order number and quantity. The custom programme compares the number of outstanding operations on a WO against the number of operations in the product routings. If the number of outstanding operations for a WO does not match with number of operations in the product routing, then the WO is considered to have started and therefore the programme does not allow selecting alternative route.
5. Conclusion and Future Work
The paper presented an industrial problem that most machine/job shops face and highlighted how a significant number of scheduling solutions are lacking to meet the requirements of modern evolving machine shops. The goal of this research was to find a scheduling system that meets the company’s scheduling needs and also provide a decision support tool for tactical capacity planning. The system selected was Opcenter formerly known as Preactor and it met most of the company’s scheduling needs. Out-of-the-box Opcenter could not meet some of the requirements, but since it allowed writing custom scheduling rules, they were met after some programming. The project was considered a success; Opcenter schedule more jobs to finish on time despite being more restrictive due to accounting for real-life constraints. During the Opcenter implementation, more requirements were discovered which have already begun or are part of the future work.
5.2. Future Work
Some of the work in progress and future work include the following:
Tool quantity constraint on resources: Each machine can hold a certain number of tools and each job may require a different set of tools. It is possible to group a set of tools used for a particular job such that if another job requiring a very different set of tools were to run next, the machine would have to have the tools changed. This will have impact when scheduling for unattended running, if there is no operator available to change the tool set, the machine will have to stop.
This rule can be further optimised, if the second job requires only a smaller number of different tools in addition to what the second job can use from first job and there is tool capacity available. This will increase machine utilisation by reducing down time for setup or tool change. The tool capacity on some machines can be increased by having another tool magazine.
There is little new work required in OpCenter, but considerable work is required creating the data in ERP and tool management system. OE uses Zoller tool management system and it is currently being populated to facilitate the required data.
Operator, engineer or welder constraints: This is particularly useful for coded welders as certain parts can only be welded by welders with specific weld codes. This is an important constraint to consider when scheduling, parts might be finished machining but if the correct welder is not available at the correct time, delivery dates cannot be met. Furthermore, the same logic can used for CNC programming as certain jobs may only be programmed by a senior engineer.
The authors would like to thank the development teams at Siemens and Kudos Solutions Ltd for their help with Opcenter implementation. Kudos Solutions Ltd is Tier 1 Supplier of Opcenter. All the implementation and development work was carried out by Churchill Associates Ltd with help and support from Oxford Engineering Ltd.
- Hussain A, Munive-Hernandez JE, Campean IF. Lean approach in a high mix, low volume manufacturing environment-case study.
- Khaewsukkho S. New approaches for design of high-mix low-volume facilities (Doctoral dissertation, The Ohio State University).
- Papadopoulou TC. Application of lean scheduling and production control in nonrepetitive manufacturing systems using intelligent agent decision support (Doctoral dissertation, Brunel University School of Engineering and Design PhD Theses).
- McKenney KK. Development and application of management tools within a high-mix, low-volume lean aerospace manufacturing environment (Doctoral dissertation, Massachusetts Institute of Technology).
- Rheaume JM. High-mix, low-volume lean manufacturing implementation and lot size optimization at an aerospace OEM (Doctoral dissertation, Massachusetts Institute of Technology).
- Kocsi B, Matonya MM, Pusztai LP, Budai I. Real-time decision-support system for highmix low-volume production scheduling in industry 4.0. Processes. 2020 Aug;8(8):912.
- Zanchettin AM. Robust scheduling and dispatching rules for high-mix collaborative manufacturing systems. Flexible Services and Manufacturing Journal. 2021 Mar 8:1-24.
- Carvalho AN, Oliveira F, Scavarda LF. Tactical capacity planning in a real-world ETO industry case: An action research. International Journal of Production Economics. 2015 Sep 1;167:187-203.
- Ivert LK. Use of Advanced Planning and Scheduling (APS) systems to support manufacturing planning and control processes. Chalmers Tekniska Hogskola (Sweden); 2012.