1. Field
This application relates to outlier correction. Outliers (or outlier values) are values in a signal which exceed a given tolerance lane with respect to a “normal” situation by far, i.e., which are outside the tolerance of the expected value of the signal. Such a signal may be represented as discrete series of values over time. For example, in a time series describing production figures of a production process in a supply chain management (SCM) application, a cause for outliers may be production interruption due to a natural disaster, or a production peak due to extraordinary advertising activities.
2. Background
In the art, there exists an algorithm for outlier correction in a historical time series based on an ex-post forecast algorithm. In this method, the outliers in an actual series of values are removed in order to get a series of values which represent the “normal” expected development of the process over time. This corrected series of (historical) values may then be used as a basis for a forecast of the process in the future.
It is an object of the present invention to provide a method and apparatus for correcting outliers in a time series.
In general, in one aspect, this invention provides methods and apparatus, including computer program products, for determining characteristic parameters on the basis of a series of m values, H—1, H—2, . . . , H_m, over time, the values being descriptive for a predetermined process, the series having linear characteristics,
In a further aspect, the invention provides a method for determining characteristic parameters on the basis of a series of values over time, H—1, H—2, . . . , H_m, the values being descriptive for a predetermined process, the series having a plurality of cycles, each of the cycles having the same number of periods, the number of periods being denoted by p, each period representing a predetermined characteristic of the process;
Advantageous implementations can include one or more of the following features.
The trend parameter T may be determined on the basis of the median value Δ—1_M, which is the median value of the first period.
The median value may be taken over the corresponding pairs of the corresponding periods of all the cycles in the time series.
The invention further comprises methods of forecasting a process.
In a further embodiment, the invention provides a method of forecasting a process on the basis of a series of values over time, H—1, H—2, H_m, the values representing a historical series which is descriptive for the process, the series having linear characteristics,
In a further embodiment, the invention provides a method of forecasting a process on the basis of a series of values over time, H—1, H—2, . . . , H_m, the values representing a historical series which is descriptive for the process, the series having a plurality of cycles, each of the cycles having the same number of periods, the number of periods being denoted by p, each period representing a predetermined characteristic of the process;
Furthermore, the invention comprises also computer systems for performing the inventive methods.
Furthermore, the invention comprises computer-readable storage media comprising program code for performing the inventive methods, when loaded into a computer system.
The invention is illustrated by way of example and not by way of limitation in the figures of the accompanying drawings in which like references indicate similar elements. It should be noted that references to “an” or “one” embodiment in this disclosure are not necessarily to the same embodiment, and such references mean at least one.
A first embodiment of the invention is explained with taking reference to
Based on the assumption that the process has ideally linear characteristics over time, i.e., the values of the time series increase with time by a constant amount, all the points of the time series lie on a straight line. Then, the differences Δ_i of the values H_i, H_i+1 of any two consecutive points t_i,t_i+1 are constant. However, the actual values may differ from the ideal values due to “abnormal” influences onto the process. In order to model the process by a straight line with constant slope, the outlier values, i.e., such values which do not lie on a straight line, must be corrected. The position and slope of the line may be computed as the median of all the computed differences Δ_i. The median value may be determined as follows. The differences Δ_i according to
Since a historical value H at the time point t_i is given by
H=G−t—i T,
the basic value G, which is the intercept at the transition between past and future values, see
Over the sequence of basic values G, the median value is taken. This median value G_M is used for forecasting values, according to the following equation:
F=G—M+t—i T.
A second embodiment of the present invention is described with reference to FIGS. 3 to 5, wherein the time series has cyclic characteristics.
The following procedure is used to determine the trend parameter T, the seasonal indices S_i, and the basic value G for the time series.
With
Δ_ij=p T S_i,
wherein i denotes the period, j, denotes the season, and p denotes the number of points (i.e., the length) of a season, the differences of pairs of points of the same periods of pairs of consecutive seasons are computed. The differences of the same periods over all the seasons form one group, respectively. Since the differences in one group vary from each other, a mean value over these differences in one group is taken. As operation to determine the mean value, the median of these values is computed. The median value over the i-th group of differences (i.e., Δ_i1, Δ_i2, Δ_i3, Δ_i4) is denoted as Δ_i_M.
Setting one of the seasonal indices S_i to a predetermined value, for example the first seasonal index, S—1, to unity,
S—1=1,
the trend parameter T is given directly from the group of differences Δ—1 from the first period (i=1) by taking the median value of Δ—11, Δ—12, Δ—13, Δ—14,
T=Δ—1—M/p.
The seasonal indices S_i of the other periods (i>1) can be determined based on the respective groups of differences:
S—i=Δ—i—M/(p T),
where Δ_i_M is the median value over the i-th group of differences AΔi1, Δ_i2, Δ_i3, Δ_i4.
Since a historical value H at the time point t_i is given by
H=(G−t—i T) S—i,
with S_i being the seasonal index of the season in which the time point t_i lies, the basic value G, which is the intercept at the transition between past and future values, see
Over the sequence of basic values G, the median value is taken. This median value G_M is used for forecasting values, according to the following equation:
F=(G—M+t—i T) S—i.
Over the computed differences, the median values are taken, see step 90 in
Based on the parameters S_i, T so obtained, forecast values F can be computed, see steps 120,125, and 130 in
The present techniques can be implemented in digital electronic circuitry, or in computer hardware, firmware, software, or in combinations of them. Apparatus of the invention can be implemented in a computer program product tangibly embodied in a machine-readable storage device for execution by a programmable processor. Method steps according to the invention can be performed by a programmable processor executing a program of instructions to perform functions of the invention by operating on the basis of input data, and by generating output data. The invention may be implemented in one or several computer programs that are executable in a programmable system, which includes at least one programmable processor coupled to receive data from, and transmit data to, a storage system, at least one input device, and at least one output device, respectively. Computer programs may be implemented in a high-level or object-oriented programming language, and/or in assembly or machine code. The language or code can be a compiled or interpreted language or code. Processors may include general and special purpose microprocessors. A processor receives instructions and data from memories, in particular from read-only memories and/or random access memories. A computer may include one or more mass storage devices for storing data; such devices may include magnetic disks, such as internal hard disks and removable disks; magneto-optical disks; and optical disks. Storage devices suitable for tangibly embodying computer program instructions and data include all forms of non-volatile memory, including by way of example semiconductor memory devices, such as EPROM, EEPROM, and flash memory devices; magnetic disks such as internal hard disks and removable disks; magneto-optical disks; and CD-ROM disks. Any of the foregoing can be supplemented by or incorporated in ASICs (application-specific integrated circuits).
The computer systems or distributed computer networks as mentioned above may be used, for example, for producing goods, delivering parts for assembling products, controlling technical or economical processes, or implementing telecommunication activities.
To provide for interaction with a user, the invention can be implemented on a computer system having a display device such as a monitor or LCD screen for displaying information to the user and a keyboard and a pointing device such as a mouse or a trackball by which the user can provide input to the computer system. The computer system can be programmed to provide a graphical or text user interface through which computer programs interact with users.
A computer may include a processor, memory coupled to the processor, a hard drive controller, a video controller and an input/output controller coupled to the processor by a processor bus. The hard drive controller is coupled to a hard disk drive suitable for storing executable computer programs, including programs embodying the present technique. The I/O controller is coupled by means of an I/O bus to an I/O interface. The I/O interface receives and transmits in analogue or digital form over at least one communication link. Such a communication link may be a serial link, a parallel link, local area network, or wireless link (e.g. an RF communication link). A display is coupled to an interface, which is coupled to an I/O bus. A keyboard and pointing device are also coupled to the I/O bus. Alternatively, separate buses may be used for the keyboard pointing device and I/O interface.
Other embodiments are in the scope of the following claims.
Number | Date | Country | Kind |
---|---|---|---|
EP03029697.4 | Dec 2003 | EP | regional |