Part Classification

General

The part classification field divides the parts into 10 different classed these classes are as follows

The parts can be aggregated into these 11 groups. These groups can be used as an aid for setting different forecast models to the different groups. Below is a description of how you decide to which group the different parts are going to belong to. The classification is preformed as a job by the forecast server.

Level and Trend Detection

First we see if the part is seasonal or not see Season Profiles (Season Component Detection Algorithm). If the part is seasonal then history is removed for seasonal changes before continuing with the Level and Trend detection, if no seasonal pattern is detected you continue with the original demand pattern.

Then we have two tests for trend:

First we calculate the slope for the latest 12 months using linear regression, we also calculated the standard error of the slope, using the following formula:

 

 

Where

n Number of periods
  Regression line in period i
The historical demand of period i
The X in period i
The average of all X

SE is the standard derivation of the regression slope, if the regression slope is positive we then demand that the likelihood of a positive slope (>0) is larger than 98%. See below for illustration.

             

The algorithm is similar when the trend is negative.

If this test states that the accuracy is 98% or higher then the part is said to have trend. However if this test is between 98% and 75% accuracy we then run another test with 24 months of history and do the same test as described above, if this second test is above 98% in the same direction positive or negative trend the part is said to have a trend.

Example

1. The first test has more than 98% accuracy for a positive trend then the part is said to have positive trend

2. The first test has 76% accuracy for a negative trend, the second (24 month run) has a 97% accuracy for negative trend the part is said to have no trend.

3. The first test has 76% accuracy for a positive trend, the second (24 month run) has a 98% negative trend then the part is said to have no trend.

You can change the length of the first period (12 months default) and you can change the second range (24 months default), and you can change what the limit should be (default 98). All these settings can be changed in Advance Server Settings.

First Range setting is Classification\MonthsUsedToIdentifyTrendShort. Default setting is 12 months, note this is months not periods.

Second range setting is Classification\MonthsUsedToIdentifyTrendLong. Default setting is 24 months, note this is months not periods.

Trend Certainty requirement is Classification\TrendCertaintyRequirement. Default setting is 98.

No Classification

All parts that never have been classified are set to this ID.

Brand New Parts

The Brand New Parts class includes all parts that have equal or under a certain number of periods this number can be adjusted in the Advance Server Settings entry Classification\BrandNewLimmit. Default value is 4. The number must be smaller than the New parts number of periods (see New Parts).

New Parts

The New Parts class includes all parts that have under 1 year and 2 periods of historical demand. This is a fixed number. If months is used as a period length then all parts that have less than 14 periods are treated as a new parts.

Intermittent

The way to determine Intermittent Parts is to count the number of zero’s in the series, if the number of zeros is bigger than the IntermittientZeroPercent limit then the series is intermittent. The IntermittentZeroPercent can be changed from the Advance Server Settings entry as follows:

Classification\ IntermittientZeroPercent.

The default value is 20. This means that all parts with 12*0,2=2,4=3 zero periods or more per year are set to intermittent, when monthly period version is assumed.

Season

This is a part that is intermittent, and also has a season. For season detection procedure see Season Profiles (Season Component Detection Algorithm).

Level

If a part only have level then it belongs to this class, no trend found in the level / trend detection algorithm described above.

Level/Season

If a part has level and a season, then it belongs to this class. For season detection procedure see Season Profiles (Season Component Detection Algorithm). See above for level/trend detection algorithm.

Level/Trend(+)

If a part has a positive trend, then it belongs to this class. See above for trend detection procedure.

Level/Trend(-)

If a part has a negative trend, then it belongs to this class. See above for trend detection procedure.

Level/Trend(+)/Season

If a part has a positive trend and season, then it belongs to this class. See above for trend detection procedure. For season detection procedure see Season Profiles (Season Component Detection Algorithm)

Level/Trend(-)/Season

If a part has a negative trend and season, then it belongs to this class. See above for trend detection procedure. For season detection procedure see Season Profiles (Season Component Detection Algorithm)

Terminated

A part is classified as Terminated If no transactions of the part has occurred for a specified number of periods. The test for terminating parts is as follows.

Assuming that the demand for a part occurs with the intensity l (parts per time interval) according to a Poisson process, then the probability of zero demand in x succeeding periods is:

The arrival intensity can be determined from the more easily interpreted time between succeeding demands, q, as:

, where

If a number of succeeding zero demands occurs and the probability of this is small, then there is reason to believe that the item demanded is terminating. Choose the boundary value for the probability (0,005 is the default value), then if more than x succeeding zero demands at the end of the time series occur:

The resulting check formula is shown below the probability, p=0,005 (default value). This classifies the part as Terminated when the number of subsequent zero demand periods at the end, SubZeroPeriods, is fulfilling:

   

The value of p can be changed from the Advance Server Settings entry: Classification\TerminatedZeroOccProb. The probability is set to 0.5 in the Advance Server Settings entry, the resulting p = 0.5/100 = 0.005.