Please help me to solve a problem in modeling ANFIS

3 vues (au cours des 30 derniers jours)
Heleno
Heleno le 27 Mar 2012
I am a new user of ANFIS and I have been facing some problems in prediction electric load from ANFIS. Some of outputs (electric loads predicted) are negatives or too much different from the trained values. In form to give you an idea in what I am trying do to, bellow follow the MatLab code for ANFIS
1. fismat = genfis1(gangan,3,'trimf','constant')
% the gagan is a matrix 4*24. The four columns represent the following: The first is day hours. The second is the temperature on each hour. The third is the humidity on each hour. And the last is the electric power on each hour. 2. trn_fismat=anfis(gangan,fismat)
3. ruleedit(trn_fismat)
4. input=gangan(:,1:4)
5. anfis_output = evalfis(input, trn_fismat);
Could give me tips help me to train my ANFIS in form they predict the electric load close to trained values.
PS. Attached you find the matlab data and code if you need
Thank you in advance and I am looking forward your kind reply.
Best regards;
Heleno Sanches

Réponse acceptée

Win co
Win co le 28 Mar 2012
Could you leave here your data file (train_data and check_data) ? Winn

Plus de réponses (2)

Heleno
Heleno le 28 Mar 2012
Hi Win Co; Thank very much for your kind answer. Sorry, I do not if is possible to attach files in this forum. So, bellow you find the train and check data.
1. Training_Data
Day_hour: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
Temperture: 21 20 19 18 16 16 15 15 19 22 25 28 31 32 32 32 32 32 30 27 24 23 22 21
Humidity:52 53 57 62 68 70 73 74 62 53 44 35 28 27 25 25 25 26 29 36 42 46 48 49
Elect_Load:591 578 576 585 583 657 812 884 857 814 773 747 745 708 683 687 669 662 651 729 749 685 652 666
2. Checking_Data
Day_hour:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
Temperture:22 21 20 18 17 17 22 24 28 30 33 33 33 34 35 33 31 35 30 28 23 25 26 23
Humidity:32 36 38 59 60 62 47 42 41 46 32 29 30 25 23 23 26 18 18 27 32 33 43 37
Elect_Load:621 610 599 603 599 666 736 757 730 722 696 691 684 667 658 668 657 628 587 643 687 632 638 626
If is possible give me some tips why my predicted values were not close the trained values.
Loking forward your kind answer
Bets regards, Heleno Sanches
  1 commentaire
Walter Roberson
Walter Roberson le 20 Avr 2012
http://www.mathworks.com/matlabcentral/answers/7924-where-can-i-upload-images-and-files-for-use-on-matlab-answers

Connectez-vous pour commenter.


Win co
Win co le 20 Avr 2012
Hi,
I advice you to normalize your data before training your ANFIS. the purpose is to limit all type of your data smaller than 1. Ex: day=day/max(day), etc
I'm not familiar with using the command lines, I use the ANFIS GUI instead.
I created a script to create traing and checking data from your data given above. I attach the figure of checking result. It may be better than your case.
Configuration of my ANFIS :
number of membership function : 2 2 2
output : constant
Membership function : trapmf
epoch : 20
Hope it can help
Regards

Catégories

En savoir plus sur Fuzzy Logic Toolbox dans Help Center et File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by