Hello friends i have to design ANFIS speed estimator of induction motor for a project.I have prepared the data to train ANFIS in workspace(60*3 matrix form). During this process i have some doubts.the procedure i followed given briefly
>>first opened ANFIS GUI using command window by entering 'anfisedit'
>>loaded training data which has previously saved in workspace.
>> Now my doubt is i have no testing and checking data. are they necessary to design ANFIS?
>>So i have loaded same training data as testing and checking. and then "generate FIS' selected.then selected "train now' given 3 3 membership functions,triangular mf's.so ANFIS structure created.
>>Is this approach is correct? then how to save this ANFIS and getting into simulink model as a block.
>>Otherwise please tell me correct procedure. thank you very much friends please guide me.
1) Be sure in your 60x3 matrix, the 2 first columns are inputs and the third column is output of ANFIS
2) Without checking (or testing) data, you CAN build your ANFIS successfully. the purpose of using checking data is to test if there is overfitting problem in your ANFIS or not.
3) You didn't mention about the number of epochs you chose, so I recommend 20 epochs and be sure you choose Hybrid in the method option
4) after training finishes, in the TEST FIS, choose Training Data and click Test now, you will see the plot of output calculated by your trained ANFIS and the plot of reel output which is the third column of your training data matrix. You can improve the result by changing the type of membership function, number of membership function and number of epoch.
5) once you satisfy with the result, you can save the model by click on File -> Export -> to File. Your model will be saved in *.fis. This is the file you can use in the simulink
6) I recommend you to take a look at the exemple "Water Level Control" of Matlab (search in Help), it shows how to use blocFuzzy Logic Controller. This is the bloc where you implement your saved model FIS
Hope it help !
0 Comments