I recently attended a simulation user group meeting at which an excellent presentation was given on the assembly line balancing problem (ALBP) by Dr. Dave Sly, the President of Proplanner. Dave outlined what solving an ALBP involved (allocating tasks to stations on a manufacturing production line), the constraints that must be satisfied by a feasible solution (satisfying task precedence requirements, meeting the required cycle time, amongst many others), and how his ProBalance software can be used to assist industrial engineers with line balancing. If you're doing line balancing, then the sheer complexity of the issues involved means that you're going to need a tool like ProBalance.
However, Dave's presentation touched upon a related problem that has been a sore point for me for many years in the automotive industry: job sequencing, and - in particular - job re-sequencing. Let me try to explain why...
The three big processes involved in making a car are:
Here's where the ALBP comes in: each of these processes requires that certain tasks be performed, which must be distributed over a number of available stations.
The ALBP is complex enough if all we're trying to do is to make a single variant of a standard product on an assembly line (single product balancing). When we start making a number of different variants of a product on an assembly line (mixed model balancing), things get a lot more complicated. The automotive industry is probably one of the most challenging in this regard. To illustrate this, let's consider a fictitious car called the Lemon. The Lemon is available in three trim levels: No Frills (cloth seats, 1.0L 4C), Family (velour seats, DVD player, cup-holders, air-conditioning, 3.0L V6), and Executive Deluxe (heated leather seats, climate-control, 5.0L V8, Jacuzzi) with all the usual options: external colors, internal colors, all-wheel drive, sun-roof, reversing collision sensor, etc., etc.
For the body shop, the Lemon has only a few variants: body style (saloon, estate or hatchback), number of doors (2-door or 4-door), roof type (sun-roof or solid roof) and drive-hand (left-hand-drive or right-hand-drive). In terms of the ALBP, the sun-roof Lemon has a lot more tasks associated with it than the solid-roof Lemon.
In the paint shop, external color is added as a variant. In terms of the ALBP, pearlescent and metallic colors have different tasks compared to solid colors. Also, the paint machines (or paint robots) have different profiles for each of the relevant body options (body style, number of doors, roof type). However, the most significant problem faced by paint shops is the color change operation. This is a set of tasks conditional upon the sequence of jobs that the paint shop must process. Let's say that I am painting a white Lemon and that the Lemon following it is red. We don't want the latter to turn out pink, so we must purge the paint guns with solvent to clean them of the white paint before we charge them with red paint. (Modern paint machines and paint robots can do this within cycle without requiring a color-change gap as in the old days.) However, there are costs associated with changing the color (cost of solvent, cost of dealing with additional environmental emissions, cost of lost paint, etc.).
It is when we get to general assembly that the complexity of the ALBP sky-rockets. We not only have to cater to all of the body options, but we now have to deal with a huge battery of new options such as radio type, engine type, trim level, etc. (We can usually ignore color - at least in terms of its impact upon the set of tasks required for the ALBP in general assembly. But we still have to match the plastic bumper color to the paint color.)
In the ALBP, we have a number of options for handling the multiple variants. At one extreme, we can balance the lines for the worst case so that, no matter which options are selected on each passing job, we guarantee that we can perform all the required tasks within cycle. In this method, we impose no constraints on the sequence whatsoever and we are not sensitive to the "model mix" (the target proportions of each variant). At the other extreme, we can balance the lines so that we can handle the expected average work content of the jobs; some jobs we will complete within cycle, other jobs we cannot complete within cycle. We will have problems meeting cycle time unless we impose some constraints upon the sequence of jobs that are fed into the line (often called line constraints). If we're over cycle on an Executive Deluxe Lemon at a given station, then we need to schedule lots of No Frills Lemons (which we can process under cycle) around them.
Comparing the two, the former method typically requires more stations and has relatively poor station utilization, whilst the latter typically requires fewer stations and has relatively high station utilization. However, since we do not have any line constraints with the former, we are far more flexible. We can handle any sequence of cars without a problem and we only have to re-balance the line when the models and options are revised. In the latter case, we have to re-balance the line every time the model mix changes, and, if demand drops off for No Frills Lemons whilst demand for Executive Deluxe Lemons increases, then we may have problems with our assembly line being too short (assuming that we optimised the number of stations with our line balance).
The paint shop is interesting in this regard. Just about every car company out there line balances the paint shop for the worst case. It doesn't matter what the model mix is, or what options are available, all jobs are processed within cycle at each station. There are numerous reasons for this, the primary ones being that the production process is a simple sequence of operations that is highly automated.
However, the body shop and - in particular - general assembly, highlight a big discrepancy between how a Japanese company makes cars and how the North American and European companies make cars.
Both tend to line-balance these processes so that high work content vehicles are over cycle on some stations (line-balancing for the worst case can lead to very inefficient processes) - but the American and Europeans do so far more aggressively. Whilst Japanese companies have a few line constraints, the American and Europeans tend to have many. (The Japanese are also a lot smarter at grouping options together and modularizing the assembly process to reduce the variation in the number of tasks required and in harmonizing the time taken to perform similar, but option-related tasks. But that's another story altogether.)
But the big difference is how they go about solving the sequencing problem - that is, how they feed each process so that the line constraints are satisfied.
In European and American car plants, each major process is viewed almost as an independent kingdom ruled by a process director. Each of these kingdom's likes to optimize their own process, regardless of the problems that this may cause their neighbouring kingdoms. So the body shop demands an initial sequence that satisfies its line constraints - but it doesn't really care what happens further down the road, provided that the paint shop can swallow whatever it ships. So the sequence of jobs leaving the body shop is generally not color batched to reduce color changes. Their solution? Well, there are three common alternatives:
All three options generally result in the sequence leaving the paint shop being radically different to the sequence that was fed into the paint shop - and very different to the sequence that was fed into the body shop.
But hold on. Doesn't the general assembly have all those line constraints that we need to satisfy? Whoops! Up to now, we haven't given that any thought whatsoever! The sequence that has left the paint shop isn't ready to go into general assembly. We'd better build a large store so that we can supply a sequence that general assembly can actually handle within cycle. So, now the sequence entering the general assembly is completely different to the sequence that left the paint shop. Yet more job shuffling!
Why is this a problem? (Aside from the cost of all these stores and the resulting higher inventory costs...)
Well, if you're a parts supplier attempting to feed to the assembly line, you now have about two hours notification to get your parts - in sequence (some aspects of lean production actually have been adopted by these companies, but - of course - they apply to their suppliers, not to themselves) - to line-side. Of course, some parts take a lot longer to build and deliver than that, so these parts have to be stock-piled at the supplier so that they can select what is required and deliver it to the site in time. More storage costs - and, hence, higher parts costs. And occasionally the parts don't make it in time. (Some major parts, like engines, have to be present. So, if there's no guarantee that an engine will be available, we can't even launch the job from the re-sequence store to general assembly. This also implies that we need to stock-pile engines too.) By the way, that notification time? It's dictated by a sequence buffer holding the equivalent duration of jobs between the re-sequence store and general assembly.
It is also a problem because the resulting time taken to manufacture a car becomes highly variable. Some cars may be built in two or three days, some in two or three weeks (or even longer). Also, the resulting stores not only cost money to construct, control and operate - they also tie up more inventory.
A European automotive company that I once worked for (which shall remain nameless) was looking at implementing a Japanese-style just-in-time manufacturing process and wanted to know how well a particular plant maintained sequence so that they could gauge the scale of the problem they faced. I was part of a team that surveyed the sequence integrity at this plant. The target was 99% sequence integrity. That is, 99% of cars should be built in their allocated slot in the overall sequence. What did we find? Around 24% of cars were built on the right day! Hmmm. That's not good. In fact, the problems at this plant were so bad (one of the models they manufactured had become wildly popular and they literally couldn't make them fast enough), that the resulting parts shortages resulted in some 5,000 incomplete vehicles sitting in car parks around the plant awaiting parts! When the parts eventually came in, they spent hours trying to track down where the vehicle they belonged to was located! (This is another American/European manufacturing trait - no matter how bad things get, keep the line running! That said, more and more American And European manufacturers have adopted the Andon mechanism for preventing this.)
Japanese manufacturers take a completely different approach to sequence. They recognise the importance of maintaining sequence and they design their car plants (and engineer and market their cars) to facilitate this. Whilst they all have their own distinct manufacturing processes, they all avoid disrupting the build sequence at all costs. This means that the sequence of jobs that enters the body shop is generally the same sequence that enters and leaves the paint shop and is the same sequence that enters general assembly. Pretty much the only time that jobs are re-sequenced is when the order list is turned into the production sequence right at the start of the process - and this sequence takes into account all of the line constraints of all processes, so there's never a need to re-sequence.
It appears that we've moved some way off the topic of the ALBP, but my point is that, sometimes, optimizing one small, relatively trivial part of a process adversely affects the whole. In some cases, it is better - and cheaper overall - to have a very sub-optimal ALBP solution (a long assembly line with low station utilization) if that means that you can optimize the overall process.
The key - at least in the automotive industry - is that you do not disregard the impact of job sequencing when considering the ALBP. The tail should not wag the dog...