Crown Shyness — Jointly Generating a Whole Canopy
Authors: Thomas Yang @ Phi Lab Foundation · Fengchen Liu @ UC Berkeley
A stand grown from bare stems to equilibrium — 45 seconds.
Open the interactive showcase →
Overview
Neighbouring trees of certain species stop growing just short of touching, leaving narrow channels of sky between their crowns. This pattern, known as crown shyness, belongs to no single tree: remove either neighbour and the channel between them disappears.
This project asks whether a canopy showing crown shyness can be generated jointly, as a whole stand, rather than by growing each tree independently and pruning it afterwards. That constraint is the point of the study. A model that reduces to independent per-tree generation followed by procedural trimming is treated as disqualified, however convincing its output looks.
Approach
The simulation grows a stand from bare stems to equilibrium under two interacting local rules:
- Occupancy — a branch tip that reaches into space a neighbour already fills stops where it is. Taller trees claim contested ground first, so every boundary carries the history of both crowns that shaped it.
- Abrasion — where crowns do meet, wind grinds the contacting tips away. Each contacting branch retreats by a fixed fraction of its own length.
No gap width is specified anywhere in the code. The channel between crowns is not drawn, it settles: an equilibrium between growth pressure and contact loss. Because of this the spacing scales with the crowns themselves rather than with a hard-coded distance.
Measurement Discipline
Every quantity reported by the project is produced by a single canonical estimator, applied per frame, under an enforced three-standard rule that keeps the generating pipeline, the measurement, and the success criteria from drifting apart. Gates are written before implementation and are never relaxed to fit a result; where a test cannot discriminate against its own noise floor, the outcome is reported as inconclusive rather than as a pass.
Interactive Showcase
The showcase runs the simulation in the browser rather than replaying a recording. The die-back dial changes the abrasion fraction and the stand re-renders as it moves; the timeline replays the full growth arc; and stem density can be switched to watch the same rule act at four different scales. Median crown-edge clearance and canopy cover are plotted per frame from the same fixed estimator.