Asking about help in fuzzy inference system

32 views
Skip to first unread message

Abdelrahman Samy

unread,
Jun 14, 2022, 5:21:24 PM6/14/22
to Network Simulator 2 (NS2)
Hello All
I'm working on UWSN and I'm using MATLAB to implement my project because I found that Aqua-Sim is very difficult. 
The main idea of my work is to use fuzzy inference system with  5 input parameters and each input has 3 values (low, medium, high) as membership functions and there is two output variables also each output has three values (low, medium, high) as the membership functions. So, the number of fuzzy rules is 243 rule. 
The question is that when I tried to run the code it gives me an error when evaluating the fuzzy system by using the evalfis function. so how can I store the values of the input variables in an array? 

The first image is the fuzzy model and the second image is the error 

thanks in advance




fis.jpgcode.jpg

Charles Pandian

unread,
Jun 15, 2022, 1:13:51 AM6/15/22
to ns-u...@googlegroups.com
The choice of using Matlab for a UWSN research is not good, but some of the previous 'fuzzy logic" based publications were based on Matlab only because of their inability to code it under good open-source simulators such as ns-2, ns-3 and Omnet++.
Simulating "complex, networking aspects" under Matlab is not possible and will not be accurate while comparing it with ns-2 or ns-3.

Of course, one can use Matlab for doing research related to "signal processing" components of a typical network - but not to do a research on the entire network at all. For example, if one wishes to test the properties of a new propagation model, they may do some prototype on Matlab - but if they wish to test it in a realistic network environment, they should at least code it under a good simulator such as ns-3 and test it in with a realistic network scenario.

Of course, Matlab has a rich Fuzzy Logic toolbox that can be used for any FLS-based research - but not definitely for a work which will address "complex, Networking aspects" of a typical research (such as routing, transport, scheduling etc.,).

So, if one wishes to implement a fuzzy logic based routing algorithm or transport algorithm, then they should code it at least under a good network simulator such as ns-3. Implementing a "FL based routing logic" as a "stand-alone" piece of software using Matlab will never become equal to that of (genuinely) implementing the same under a realistic network simulator such as ns-3.

There is an excellent, state-of-the-art C++ library called Fuzzylite that can be integrated/used with ns-2 or ns-3 or even on any network simulator. You may check it under the following link.
https://www.fuzzylite.com/

Of course, it will require some hard work to use fuzzylite under ns-2 or ns-3 - but it will be worth the outcome of genuine, quality results that one will get in the end.

So, if your UWSN research is about implementing a "network-related protocol", then learn ns-2/ns-3, learn aquasim extension of ns-2/ns-3 and learn to use fuzzylite under ns-2/ns-3.

There is no other "simple", "genuine" way of doing an UWSN research.


Charles Pandian,


--
You received this message because you are subscribed to the Google Groups "Network Simulator 2 (NS2)" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ns-users+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ns-users/06b38c6f-e853-4a8a-844e-ff6d987806c0n%40googlegroups.com.
Reply all
Reply to author
Forward
0 new messages