August 2014
This month’s publication explores the one-sided cumulative sum (CUSUM) control chart. The primary purpose of a CUSUM control chart is to detect small shifts from the process target. Over the years, our publications have covered a number of different control charts. These charts are primarily Shewhart control charts, e.g., X-R, X-s, and X-mR control charts. These types of control charts are very useful in monitoring a process for statistical control or to see the impact of your process improvement efforts. You can also increase the sensitivity of these charts by using the zone tests and run tests in addition to the points beyond the control limits test for out of control conditions.

In This Issue:
- Introduction to CUSUM control charts
- The Data Set
- Analysis Using Shewhart Control Chart
- Analysis Using CUSUM Control Charts
- Comparing the Two Approaches
- Summary
- Quick Links
Click here to download a pdf file of this publication.
Introduction to CUSUM Control Charts
Like all control charts, a CUSUM control is a method of looking at your process variation. A CUSUM control chart monitors the deviations of individual samples results (X values) or subgroup averages (X values) from a target value. The target value is the same as your process aim – where you want the process to operate. The cumulative sum is the sum of these deviations over time.
To use a CUSUM control chart, you have to answer two basic questions.
1. What shift from the target do you want to be able to detect?
This shift is usually ½ or 1 standard deviation of the parameter being plotted. Thus, the data helps you set the shift to detect. This shift is often referred to as the “allowable slack” in the process.
2. Where do you want the action limits set?
The action limits are similar to control limits. The standard practice is to set these actions at 4 times the standard deviation. Again, the data helps set the action limits.
It is clear you will need a method of estimating the standard deviation of the process. This is covered below.

There are two “one-side” cumulative sums. One for deviations that are positive (above the target) and one for deviations that are negative (below the target). Let’s take a look at an example to see how this works. We will compare the results when using an individuals control chart to using the CUSUM control chart.
The Data Set

Table 1: The Data Set
|
Sample |
Y wt.% |
Sample |
Y wt. % |
|
|
1 |
0.175 |
14 |
0.164 |
|
|
2 |
0.152 |
15 |
0.141 |
|
|
3 |
0.150 |
16 |
0.186 |
|
|
4 |
0.207 |
17 |
0.127 |
|
|
5 |
0.136 |
18 |
0.149 |
|
|
6 |
0.212 |
19 |
0.155 |
|
|
7 |
0.166 |
20 |
0.210 |
|
|
8 |
0.141 |
21 |
0.197 |
|
|
9 |
0.157 |
22 |
0.191 |
|
|
10 |
0.197 |
23 |
0.211 |
|
|
11 |
0.172 |
24 |
0.158 |
|
|
12 |
0.183 |
25 |
0.201 |
|
|
13 |
0.166 |
Analysis Using Shewhart Control Chart
Since our batch data represents one data point at a time, an individuals control chart (X-mR) can be used to monitor the results. This is the most common way the data would be analyzed. But remember, the purpose of a Shewhart control chart is primarily to keep the process in control and to see the impact of process improvement efforts. With a CUSUM control chart, you are trying to detect small shifts away from the process target.
The data in Table 1 were analyzed using the X-mR chart. Please see our October 2006 publication for more information on X-mR charts. Figure 1 shows the X chart. This chart monitors the variation in the individual results over time. Figure 2 shows the moving range (mR) chart. This chart monitors the variation in the range between consecutive samples.
Figure 1: X Chart for Y Wt. %
Figure 2: mR Chart for Y Wt. %
The X chart is in statistical control. There are no points beyond the limits and there are no issues with the zone tests or run tests. The process average is 0.172. This is different from the process target of 0.166. But not by much. Is it significantly different? The individual results can vary between the lower control (LCL) of 0.088 and the upper control limit (0.256). The process is consistent and predictable.
Note that 5 out of the last 6 points are above average. Is this a problem? Under the classical control chart approach, it is not a problem. There is not enough evidence of you to assume that a special cause of variation exists and spend time looking for that special cause. For more information on interpreting control charts, please see our April 2004 publication.

s =R /1.128 = 0.0279
Analysis Using CUSUM Control Charts
Let’s take a look at the data using a CUSUM control chart. The first step is to determine the standard deviation of the data. This is used to set the allowable slack and the action limits. The best way to estimate the standard deviation is from a range control chart. For the individuals control chart, this is the moving range chart where sigma is estimated from the average range. As shown above, the estimate of the standard deviation is 0.0279.
The next step is to determine the allowable slack (k). It is common to set this value at ½ to 1 standard deviation. We will use ½. So,
k = 0.5(0.0279) = 0.01395
The next step is to determine the action limits (H). These are usually set as +/- 4 sigma. So,
H =+/- 4(0.0279) = +/- 0.1116
The next step is to calculate the cumulative sums on the high side (SH, above the target) and on the low side (SL, below the target). We know that our target is 0.16. The following are the definitions for SH and SL.
SH(i)= Max[0, SH(i-1) + Xi – Target – k]
SL(i) = Min(0, SL(i-1) + Xi – Target + k]
where
-
i = ith sample
-
SH(i) is the high side cumulative sum for the ith point
-
SH(i-1) is the high side cumulative sum for the ith – 1 point
-
Xi is the result for the ith point
-
Target = target value
-
k = allowable slack
-
SL(i) is the low side cumulative sum for the ith point
-
SL(i-1) is the low side cumulative sum for the ith – 1 point
Take a look at the equation for SH(i). It contains:
Xi – Target – k = Xi – (Target + k)
So, if Xi > (Target + k), then the ith sample result is outside the allowable slack range on the high side.
Similarly, for SL(i):
Xi – Target + k = Xi – (Target – k)
So, if Xi < (Target – k), then the ith sample result is outside the allowable slack range on the low side. Figure 3 shows this.
Figure 3: On or Off Target

The first sample result is 0.175. Note that this result is above our aim of 0.16. If it is far enough away, then it should add to the high side value of SH.
SH(1)= Max[0, SH(0) + 0.175 – 0.16 – 0.01395] = Max[0, 0.001] = 0.001
SL(1) = Min(0, SL(0) + 0.175 – 0.16 + 0.01395] = Min[0, 0.029] = 0
The second sample result is 0.152. Note that this result is below our aim. It if is far enough away, then it should add to the low side value of SL.
SH(2)= Max[0, 0.001 + 0.152 – 0.16 – 0.01395] = Max[0, -0.021] = 0
SL(2) = Min(0, 0 + .152 – 0.16 + 0.01395] = Min[0, .00595] = 0
Table 2 shows the results of the calculations for all 25 samples. Note that both SH and SL return to zero several times.
Table 2: CUSUM Calculation Results
|
Sample |
X |
SH |
SL |
|
1 |
0.175 |
0.001 |
0.000 |
|
2 |
0.152 |
0.000 |
0.000 |
|
3 |
0.150 |
0.000 |
0.000 |
|
4 |
0.207 |
0.033 |
0.000 |
|
5 |
0.136 |
0.000 |
-0.010 |
|
6 |
0.212 |
0.038 |
0.000 |
|
7 |
0.166 |
0.030 |
0.000 |
|
8 |
0.141 |
0.000 |
-0.005 |
|
9 |
0.157 |
0.000 |
0.000 |
|
10 |
0.197 |
0.023 |
0.000 |
|
11 |
0.172 |
0.021 |
0.000 |
|
12 |
0.183 |
0.030 |
0.000 |
|
13 |
0.166 |
0.022 |
0.000 |
|
14 |
0.164 |
0.012 |
0.000 |
|
15 |
0.141 |
0.000 |
-0.005 |
|
16 |
0.186 |
0.012 |
0.000 |
|
17 |
0.127 |
0.000 |
-0.019 |
|
18 |
0.149 |
0.000 |
-0.016 |
|
19 |
0.155 |
0.000 |
-0.007 |
|
20 |
0.210 |
0.036 |
0.000 |
|
21 |
0.197 |
0.059 |
0.000 |
|
22 |
0.191 |
0.076 |
0.000 |
|
23 |
0.211 |
0.113 |
0.000 |
|
24 |
0.158 |
0.097 |
0.000 |
|
25 |
0.201 |
0.124 |
0.000 |
Remember that our action limits are +/- 0.1116. This value is exceeded by SH(23), our 23rd sample. This tells us that the process has moved significantly off target and needs to be adjusted to return the process to the target value.
You could simply use this tabular form for the cumulative sum. However, it is better to chart the results. Figure 4 is a plot of the CUSUM chart.
Figure 4: CUSUM Chart

Once the process has been adjusted back to target, the values of SH and SL are set back to zero. However, there is technique called Fast Initial Response (FIR) in which the values are not set back to zero, but are set to certain value, usually 2 standard deviations. This provides a method of responding faster to off-target operations. You can also start a CUSUM chart with a FIR. Figure 5 shows that results where the FIR method is used to initialize the chart.
Figure 5: CUSUM Chart with FIR Initialization
You can see from this chart that both SH and SL are further away from 0 than in Figure 4. If the process is off target, then the CUSUM control chart will pick it up faster. If it is on target, the CUSUM values will trend back to zero as shown in the middle of the chart.

Current process average = Target + k + (SH/NH)
where SH = value of SH when the action limit was exceeded and NH = the number of consecutive points above 0 when the action limits were exceeded. You can see in Figure 4 and Figure 5 that the 23rd result is the fourth point in a row above 0. So, NH = 4. With SH(23) = 0.113,
Current process average = .16 + 0.01395 + (0.113/4) = 0.202
If the action limit on the low size is exceeded, you find the current process average using:
Current process average = Target – k – (SL/NL)
where SL is the value of SL when the action limit was exceeded and NL is the number of consecutive points below 0 when the action limit was exceeded.
Comparing the Two Approaches

But remember: the two types of control charts have different purposes. With the individuals control chart, the primary purposes are to keep the process in statistical control and to see the impact of process improvement efforts. All processes will have drift in the average. If small shifts in the average aren’t critical to you, the individuals control chart is fine. It serves it purpose. However, if there is little room for error and it is more important that the process operate on target, then consider using the CUSUM control chart. Note that if there is a true shift in the process average, the individuals control chart will pick it up eventually.
One of the biggest disadvantages of the CUSUM control chart is that the underlying data is lost. You are not looking at actual values. The individuals control chart gives you a picture of what is happening in the process through the use of actual values. The CUSUM control chart is the sum of deviations – more difficult to see the underlying process behavior. And for the most part, if you use the additional tests for out of control (zone tests, etc.) with the individuals control chart, the ability of the individuals control chart to detect small shifts approaches that of the CUSUM control chart.

Summary
This publication has introduced the one-sided CUSUM control chart. This type of control chart monitors the cumulative sum of deviations from the process target. It is designed to detect small shifts in the process average from the target value. It is called “one-sided” because there is a cumulative sum on the high side (above the target) and a cumulative sum on the low side (below the target). You can adjust the CUSUM ability to detect shifts by changing the values of k (the allowable slack) and H (the action limits). This type of chart will detect the process shift much quicker than waiting for a point beyond the control limits for the individuals control chart. However, applying the zones tests to the individuals control chart improves its ability to detect those small shifts.





It is somewhat related to weighted average chart ? I feel this is very nice chart to keep eye on when our results are going off-track. Thanks a lot for sharing.
Hi,please from the formula σ =R /1.128 = 0.0279,were did you get the 1.128 ? what is that number ?Thanks
In general, sigma is Rbar/d2 where d2 is a constant that depends on subgroup size. With a moving range of 2, d2 is 1.128.
hi, please from "we know the target is 0,16", how do you know the target? thanks
It is just an example for this newsletter. You would use whatever the target is for your process.
Should be there SH(2)= Max[0, 0.001 + 0.152– 0.16 – 0.01395] = Max[0, -0.021] = 0 ? And the same for the SL. Is it correct? The second sample result is 0.152. Note that this result is below our aim. It if is far enough away, then it should add to the low side value of SL.SH(2)= Max[0, 0.001 + 0.175 – 0.16 – 0.01395] = Max[0, -0.021] = 0SL(2) = Min(0, 0 + 0.175 – 0.16 + 0.01395] = Min[0, 0.035] = 0
Thank you for pointing that out to me. It has been corrected in the article.
Hi, i calculated Std Dev in minitab as 0,02588, so why don't we take 0,02588 (instead of 0,0279) when we're calculating H and k? Is it a wrong way?
This paper uses the moving range to estimate the standard deviation. Using the moving range chart makes sure that the process is consistent. You an use the standard deviation if you want as long as the process is consistent ( in control). There is not much difference between them in that case.
Many thanks for this. I found this extremely useful as I wanted to understand how to do this 'by hand' as opposed to the other searches that I encountered that signposted to packages / programs.
Dear Bill McNeese!Do you have an example of cusum chart for subgroups with sample size of n>1?Thanks alot for your feedback!!
What are you looking for? Please let me know at bill@www.spcforexcel.com and I will see what i can do.
if the standard deviation is not known then how to calculate it to draw CUSUM chart?
You can use the moving range as shown above to estimate the standard deviation.