Welcome to Fractal Forums

Fractal Math, Chaos Theory & Research => (new) Theories & Research => Topic started by: TruthSerum on September 30, 2015, 02:26:31 PM




Title: Automatic Fractal Discovery
Post by: TruthSerum on September 30, 2015, 02:26:31 PM
I am imagining a system that tries to automatically discover fractal functions.

The system would be loaded with a set of many small vector functions that transform it in some way, for example the squaring function:

Code:
vec3 alpha(vec3 p) {
  return p * p;
}

Then at random it would choose a composition chain. For example, the function above 'alpha', might form part of the chain:

Code:
p = delta(gamma(beta(alpha(p))))

Then once a permutation has been generated, a series of tests will be run to decide whether this is a good function.

I expect the tests will consist of checking for singularities and making sure the surface is closed, and seeing how the distance-estimation function changes (for example, by calculating surface-normals) as the number of iterations is increased.

What other objective, numerical, tests could be performed to check if a fractal is a good one?


Title: Re: Automatic Fractal Discovery
Post by: cKleinhuis on September 30, 2015, 04:21:18 PM
you can check out my program "mutatorkammer" in the downloads, it is a function evolver that has all complex functions included, with some special functions like loop/iterate, its idea back in the times was exactly what you propose, create mathematical formulas that represent new fractals, you can play with it, it is a full formula evolver with a full tree view of formula, with the ability to drag around formula parts :D


Title: Re: Automatic Fractal Discovery
Post by: TruthSerum on October 01, 2015, 02:44:30 PM
Thanks, I should take a look. Especially if you have lots of small space transformation functions.

But I am mostly interested in automatically detecting good fractals by scoring them based on some grade system, like the smoothness of the space under iteration. This is because, as you will know, most space transformations lead to bad distance fields.

I plan to generate a database of functions (composed of smaller, primitive, functions) as well as space metrics to help me identify the good ones.


Title: Re: Automatic Fractal Discovery
Post by: TruthSerum on October 03, 2015, 11:18:19 PM
I started writing this tool. I put the code on github (https://github.com/sigint9/fractdb).

Here's a screenshot of some of the output in the database, viewed in SQLiteStudio:

(http://i.imgur.com/z0pSduN.png)