I’ve been reading up on Zdzisław Pawlak’s Rough Set Theory recently and wanted to play with them. They are used to address vagueness in data so fractals seem like a good subject.

Super Quick Intro to Rough Sets:

A rough set is a tuple (ordered pair) of sets which is used to model some target set S. The set has every element * definitely* in set and set has every element that is

*in set . It’s roughness can be measured by the accuracy function . So when then the set is known as*

**possibly***crisp*(not vague) with an accuracy of 1.

A more formal example can be found on the wiki page but we’ll move on to the Mandelbrot example because it is visually intuitive:

Here the target set contains all the pixels inside the Mandelbrot set, but we are going to construct this set ** in terms of tiles**. Let be the tile sets that contain the pixels. is the set of all tiles where the set contains at least one pixel that is inside the Mandelbrot set, is the set of all tiles that contain only Mandelbrot pixels. So in the above example there are 28 tiles possibly in the set including the 7 tiles definitely in the set. Giving an accuracy of 0.25.

Obviously the smaller the tiles the better the approximation of the set. Here the largest tiles (90×90 pixels) are so big that there are no tiles definitely inside the target set and 10 tiles possibly in the set, making the accuracy 0. On the other hand, the 4×4 tiles give us and making a much nicer:

=

For much more useful applications of Rough Sets see this extensive paper by Pawlak covering the short history of Rough Sets, comparing them to Fuzzy Sets and showing uses in data analysis and Artificial Intelligence.