Tag Archives: python

Thoughts on… The X-mu Library (An Introduction)

OK, so one of the many outputs of my PhD Research and Development is a software library in the python programming language for what we call the “X-mu Approach” to Fuzzy Set Theory. I’ve released this library as free and open source software via github ( danieljohnlewis/xmu-python ), and I’ve started to build an online calculator… but I’m not quite ready to make that public quite yet (although if you’re up for testing it, then please do get in touch!)

Something is fuzzy when it has a graded membership… what I mean by this is that subjectively something can be categorised to a certain degree. So it might be “lightly raining” or “very heavily raining”, they are fuzzy terms, whereas “its either raining or its not” is what we call a binary term.

So, in traditional fuzzy. A membership function takes in a value (e.g. millimetres of rain per hour) and returns a value between 0 and 1, representing how much it is that term/category (e.g. “very heavy rain”). This value between 0 and 1 is called the membership value, or mu (well, the greek letter μ).

The X-mu (or X-μ) approach, does the opposite (or rather the “inverse”). Which gives us some neat things. It highlights what we call the interval nature of a fuzzy membership function, and when we take those intervals as symbolic/algebraic equations and push that through an algorithm we retain the full meaning of a fuzzy membership function all the way through that algorithm. We also see speed gains in comparison to traditional methods, purely because of the symbolic nature.

Anyway, I hope that I have discussed this reasonably - I started off quite simple, and got a little more technical at the end… but my purpose was to highlight that my X-mu library is available for perusal, and the online calculator for the X-mu approach can be tested (for people that contact me anyway).

This will be the first post of, probably, many about this library. I hope to show off the calculator a bit more in future posts. I also hope to give you a tutorial about downloading and using the library for yourselves. Then I hope to discuss the uses of the library - in things like data mining and robotics, etc.

In the meantime, if you have any questions then please do comment, or get in touch directly… its daniel [at] vanirsystems, and has a dot com at the end of it.