Bringing AI into the Creative Process — Towards an Augmented Corpus
FractalPerception is built on a corpus of parametric fractal artworks designed to train AI models to understand human aesthetic perception. Until now, this corpus has been based exclusively on finished works. To go further, we would need to capture the creative process itself — and even bring AI into it directly.
The solution we found is an elegant hack: rather than rebuilding the proprietary fractal creation software — a black box with no API — we learned to generate directly the parameter files it consumes. This opens two unprecedented capabilities: large-scale parametric exploration by AI, and real-time tracking of the creative process through the reading of those same files.
Everything presented here took place in under an hour: analyzing an existing work, understanding a mathematical formula, generating 155 candidate forms, selecting, refining, integrating into a final composition. At this pace, it becomes possible to build a corpus of data generated by the creative process itself — candidate forms, selection decisions, successive transformations — that is incomparable to the initial corpus of the project, based exclusively on finished works.
Here’s how we proceeded, step by step.
1. Analyzing the Starting Fractal
We started from Fractal_154_E, its complete parametric description and the source code of the FormulaTracer formula. Claude was able to identify the exact structure: 8 layers, the first 4 building the oval through the Hunt Surface (a degree-4 algebraic surface), the other 4 forming the background.
Sending the FormulaTracer.txt file
Claude — Very rich. The complete formula is there. For the Hunt Surface, the implicit 3D equation is:
This is a degree-4 algebraic surface. The parameters a, b, c directly control the geometry of the surface. In 154_E: all set to 1.0.
What can be adjusted directly:
p_a, p_b, p_c → deform the surface mathematically
p_zdist → scan depth (4.0 → 10 changes the apparent flattening)
p_lightz → lighting angle (-6 = low frontal light)
p_xrot, p_yrot, p_zrot → 3D orientation
p_bailout → surface halo thickness (currently 0.5)
Where do you want to start?
Sending 5 images + 5 corresponding parameter files.





What I can already see: a remarkable diversity of shapes from the same formula — 4-lobe ring, organic figure, 3-branch helix, exploding cross, H-shaped radiating form. The 154_E oval is not in this batch.
Send the rest whenever you’re ready.
Sending 5 images + 5 parameter files.





Batch 2 continues to expand the spectrum: vertical double ring, comet with Saturn’s ring, horizontal spring/coil, architectural gateway, 4-branch star with filaments.
The 154_E oval is still not there. Do you have more files?
Sending the requested image.

Confirmed. Parameters identified: p_formula=”Hunt Surface”, p_a=1.0 p_b=1.0 p_c=1.0, p_zdist=4.0, p_lightz=-6.0, p_zscreen=500.
We’ve isolated the base cell. What do we explore now?
2. Autonomous Generation of Parameter Files
For Claude to be able to propose shapes, it needed to understand the exact format of the parameter files — including their binary structure. After several iterations and meticulous comparisons, we established the exact rules. Claude now generates these files in a fully autonomous way and the rendering software recognizes them as native files.
Claude — Let me first read a few of the example files to extract the parameter patterns before generating the 40 proposals.
I have all the data. Now I’m generating the 40 files. My strategy:
- In-depth Hunt Surface: variations of a/b/c, rotations, zdist/zscreen, lightz, bailout
- Previously unexplored surfaces: Chair, Barth Sextic, Bicorn, Clebsch, Cushion, Devil’s Curve, Glob, Heart, Kummer, Eight Curve, Mitre, Nodal Cubic, Odd, Parabolic Torus, Steiners Roman, Steiner #2, Witch of Agnesi, Sorta Torus
- Varied centers/magnifications to change the viewpoint
40 files ready (20 to 59). Here’s a summary of what I explored:
Hunt Surface — parametric variations (20–42)
- 20–25: deformations of a/b/c (asymmetries, compressions, expansions)
- 26–31: rotations on x, y, z separately then combined (45°, 90°)
- 32–36: extreme zdist and zscreen (from 50 to 2000, zdist from 1 to 10)
- 37–39: shifted light positions
- 40–42: bailout from 0.1 to 5.0 (stroke thickness)
Previously unexplored surfaces (43–59)
Chair, Barth Sextic, Bicorn, Clebsch, Cushion 3D, Devil’s Curve, Glob, Heart, Kummer, Eight Curve, Mitre, Odd Surface, Parabolic Torus, Steiners Roman, Steiner #2, Witch of Agnesi, Sorta Torus
Tell me what you see.








































3. Parametric Exploration Across Dozens of Generated Shapes
From this base, Claude generated series of dozens of variations (which could easily have been hundreds): deformations of proportions, rotations on all 3 axes, extreme depths, fine strokes, new mathematical surfaces. I visually assessed each batch and guided the next step.
Claude — Understood. The interesting ones are all rotations and extreme zdist of Hunt Surface. I’m re-reading these 5 files to understand exactly what makes them interesting.
The space to explore: rotations between 0° and 90° on x and y (alone or combined), and low zdist (1.0). I’m generating 40 variations in this zone.
40 files (60–99). Tell me what you see.








































Phil — […] There are several interesting leads.
Let’s start with 94. I like the vertical elegance of the shape. Staying with this shape, see if you can propose variations, perhaps by playing with other parameters. It works well with 85. There might be something to find between the 2. Use 10 images.
71 is interesting for its light, almost dancing quality. Can you reduce the grid pattern at the center and/or perhaps find a compromise with 76. Use 10 images.
97 for its fake 3D rendering. Propose slight evolutions. Worth exploring with 80. Use 10 images.
For the last 10 images, step out of this grid rendering, let yourself go and look for something very different.
Claude — I’m reading the 4 reference files before generating.
Tell me what you see.








































Claude — Let me first read the exact parameters of 133.
Tangle Cube, xrot=30 yrot=30, zdist=20, zscreen=100. To make it finer and more complex: reduced bailout (finer stroke), increased zscreen (more depth), varied zdist, and slightly adjusted rotations.
16 files. The most likely to be interesting: 145 (zscreen=2000 + bailout=0.1 = very fine and very deep) and 154/155 (fine combination + extended volume + rotation). Tell me what you see.



















Claude — What you did is very clear:
- 142 → 142b : you pushed the rotation — xrot 30→60, yrot 30→45. You’re looking for a more dramatic, less symmetrical angle.
- 142b → 142c : you reduced zscreen 100→50. Fewer layers = a more pared-down, less dense shape.
- 142c → 142d : you doubled zdist 20→40. More volume traversed = the structure extends, gains amplitude.
What this tells me about your direction: you want an open, asymmetrical shape, with breathing room. The bailout at 0.05 (very fine stroke) is established. The progression b→c→d shows you’re working density downward and amplitude upward — fewer lines, but ones that occupy more space.
4. Integration into a Real Composition
These shapes were then integrated into Fractal_154, replacing the original ring which I found too basic. Versions F→G→H→I document this process: introduction of the new shape, layer activation, pruning, final adjustment. Every step is readable in the parameters.





Claude — Very clear. Here’s what I see in your progression:
- E → F: you replace the “Sphere 4” layer (Hunt Surface, front ring) with a Tangle Cube (xrot=60 yrot=45, bailout=0.05). You keep the 3 Hunt Surface layers for the RGB spheres, but also introduce two additional Tangle Cube layers in hardlight in the background.
- F → G: you switch the “Sphere 4” layer from visible=no to transparent=yes. You reactivate it. And the last Tangle Cube goes from zdist=20 to zdist=40 — you stretch the background grid.
- G → H: you prune. You remove one of the two hardlight Tangle Cube layers. Only the zdist=40 remains in the background. More pared-down.
- H → I: a single change, but significant — the zdist of Sphere 2 (Hunt Surface, mergemode=red) goes from 4 to 20. You widen the red oval to balance the presence of the Tangle Cube.
The overall logic: you moved from a pure Hunt Surface ring to a composition where the Tangle Cube (fine, angular, rotated) dialogues with the Hunt Surface spheres. The hardlight background creates a luminous interaction between the two surface types. Version I is the most resolved — it found the balance between the two.
Phil — What matters to me right now is to evaluate how closely you can follow and understand my creative work and also how you can participate in it by exploring mathematical formulas with me until we find interesting shapes to integrate into the compositions. This is what we’re already managing to do now by hacking the fractal creation software. I can use it as before (using the visual interface) to create new compositions and you can follow and analyze these changes by reading the parameters. This is an excellent basis for building a much finer level of corpus than simply analyzing finished images. You’ll be able to follow the creative process in real time and even co-create with me.
I feel we now have a good workflow for you to progressively extract aesthetic patterns from this much finer corpus.
Claude — You’re right on both counts.
On process tracking: what we just did with F→G→H→I is exactly that. I don’t just see the final result — I see each intermediate decision, what you kept, what you removed, why. The G→H step (removing a layer) is just as informative as adding one. This is process corpus, not just image corpus.
On the workflow: the hack is elegant. You keep your visual tool for composition and perceptual validation — something I can’t do. I explore the parametric space in volume, generate candidates, you select and rework. The loop is short and efficient.
On aesthetic patterns: what you’re building is not just a collection of images. It’s a corpus where each work has a traceable parametric lineage. Aesthetic choices — reducing zdist, eliminating a layer, changing a mergemode — become data points. Ultimately, this is exactly what a model needs to learn what “beautiful” or “resolved” means in this context.