Fuzzy Time Series

7/30/13

Fuzzy Time Series is one of method that usually used for predicting. Fuzzy Time Series is combining of data time series and using fuzzy logic to create prediction for what's next. In Fuzzy Time Series the data that used is data time series, which is have many time sequences of data, and the variable can be only one. For example : Sales Total of Dept. Store X in 2000 - 2010. It's contain only 1 variable data which is Total Sales, but it has many sequence data, for example : per month, year.

To use this method, simply find the data that have sequence time,or we called data time series, then preprocessing the data, then using this Fuzzy Time Series to predict. We can preprocess data with many ways, for example : using Min-Max Normalization and Z-Score Normalization. This preprocessing is done for making the data better. In Fuzzy Time Series, it will be good, if the differences (lag) between data is not too high, because it will take effect on the prediction.

Well after the data being processed, simply use this method. There are many steps of Fuzzy Time Series. First step, Making the Interval.
The interval is determined by look at the data. We should find the data maximal, minimal, lag between data, and average of lag.After we find these attributes, we can calculate data by Range/(Avg.lag/2). Range is Dmax - Dmin.



Second Step is, Specify The Interval Value and Linguistic Value
We can calculate the interval value by : Range/Interval. Then we can calculate the Linguistic Value by : Range/(Interval-1). These steps are used to create the fuzzy sets and to determining Steps Fuzzification.

Third Step is, Determining Fuzzy Sets and Fuzzification
We can determining fuzzy sets by looking the Linguistic Value. We can take an example of Triangular Membership Function just like in Mamdani Theory. We should determining 3 value in every triangular, which are value of : left pedestal, top triangle, and right pedestal. We can look the example at this picture :
Fuzzy Sets
Fuzzy Sets
After that we create fuzzification by looking up the data. We look the data one by one, for example : Data-1 is 17, so it's located between 10 and 20. The Linguistic Value of 17 is between A2 and A3. So how we choose one of these two linguistic? Because the data can only have one linguistic value. We look that 17 is close to 20, and 20 is the top of A3 Triangle/Linguistic, so 17 is A3. The truth is we can calculate it by formula : (x-a)/(b-a) for up linier | -(x-c)/(c-b) for down linier. In example above A2 is down linier and A3 is up linier.

After this we can make Fuzzy Logical Relation (FLR) and Fuzzy Logical Relation Group (FLRG)
We look at this step, that FLR is to make relation between the data. The relation here is the linguistic value of data, for example : Data 1 and Data 2. Data 1 have A3 and data 2 have A2. So the relation is A3 --> A2.
For FLRG, we can look that A3 have many next state, for example A3-->A2,A1,A4. This is called FLRG.

Next is Prediction Output.
To look the prediction simply look at FLRG, for example A3 have A2,A1,A4 output. We look at every linguistic value median, we look it in interval value. After we look the median of every Linguistic Value, we calculate them and divide them,depends on how much linguistic value that provided. To make it clearer, we look again A3, for example A1 have median 5, A2 = 15, A5, 35, so (5+15+35)/3 = 18,33. So the prediction for every Data that have A3 is 18,33.

Well this is how Fuzzy Time Series works. There are many prediction method that can be used in the real life, but always remember, the prediction is just prediction. The fact is maybe close from it, but maybe so far from it. We should keep eye for what method we will use, regarding to the data that we have. That's all from me, Hope it helps!!

No comments:

 

Tags