Object
Schedule
Obs / night

The dotted posterior shows where probability mass actually sits. Switching schedule moves it from the alias onto the true period.

H --
recovered P -- h
AR --

solid curve: variance explained (left axis)dotted line: posterior p(P) ∝ e−RSS / 2σ², peak-normalisedClick any peak (or use ← → Enter) to fold the lightcurve below at that period.

Night sampling · drag points to build a custom cadence
Folded lightcurve true shape fit to folded data noisy observations
Alias rate by object uniform  optimized  ·  N = 8
Asteroid Photometry · Cadence Optimization

Entropy-Guided Intra-Night Cadence


Corpus objects

Five short-period rotators are selectable; 5745 is the default. The optimized cadence was selected by CMA-ES against the alias rate averaged across the 248-asteroid training set, where 96% of objects have A2/A1 > 1 (median 5.7). The loss is therefore dominated by harmonic-rich rotators, and the three high-A2/A1 objects in the table are recovered in every CV seed. The sinusoidal pair (852, 6870) gains little, or at some N regresses, because their lightcurve geometry isn't what the loss was averaging over. The final column is alias rate at N = 8, uniform → optimized (production CV).

ObjectP (h)AmplitudeA₂ / A₁AR (N = 8)
5745 · 1991 AN default4.090.82 mag13.01.00 → 0.00
2511 · Patterson4.140.80 mag11.90.92 → 0.02
65733 · 1993 PC4.180.76 mag12.50.73 → 0.03
852 · Wladilena4.610.25 mag1.50.83 → 0.68
6870 · Pauldavies4.490.58 mag3.60.29 → 0.65

5745 is the default because uniform 8-observation sampling fails to recover the true period in 100% of CV seeds, while the optimized 8-observation cadence succeeds in 100%. Its V-band lightcurve is a 4-term Fourier model with a strongly bimodal shape (A2/A1 ≈ 13). The demo samples that model at 8, 9, or 10 times within an 8-hour night, adds Gaussian noise at σ = 0.04 mag, and compares uniform spacing against a single short-period-bin cadence selected by CMA-ES on the 248-asteroid training set, cross-validated 5-fold. Selecting a different object applies that same optimized cadence to it, which is why the gain varies object to object.

For 5745, the schedules differ in which peak the periodogram favors. Under uniform sampling the highest peak frequently lands at an alias (P ≈ 3.49 h or 4.91 h, the 1-day aliases of 4.087 h) or another competing peak; under the optimized cadence the true 4.087 h peak dominates in every seed. The periodogram, argmax, and posterior shown above are computed for one fixed noise draw, while the AR readout in the HUD is a 128-trial Monte Carlo (64 on mobile) over independent noise draws; the production CV reports AR = 1.00 for 5745 at N = 8 uniform, but the sandbox's smaller MC will read 0.97–0.99 depending on how many of its 128 draws happen to recover the true period. On the 57-asteroid short-period holdout (P ∈ [2.2, 8] h, never seen in training), the same procedure reduces AR from 0.693 to 0.590 at N = 8, 0.631 to 0.524 at N = 9, 0.574 to 0.508 at N = 10. The N = 8 and N = 9 gains are the largest in the sweep (Δ ≈ 0.10); by N = 10 the marginal improvement narrows to Δ ≈ 0.07.

Why optimize the empirical alias rate directly instead of a cheaper spectral proxy? The obvious first move is to suppress the sampling window's sidelobes. The spectral window |W(f)|² = |Σj e2πi f tj|² / N² depends only on the observing times, and for a pure sinusoid those sidelobes are exactly where the aliases land, so I built a metric that minimizes a period-weighted window RMS on a GPU grid and refines with CMA-ES. It works only for a sinusoidal signal. A least-squares periodogram fits a single sinusoid at each trial frequency (VanderPlas 2018), and when the lightcurve has power spread across harmonics, the tallest peak routinely lands on a harmonic or alias of the true period rather than the period itself; recovery then takes a multi-term Fourier model. 96% of the 248-asteroid training corpus has A2/A1 > 1, 58% has A2/A1 > 5, and the median is 5.7, so window RMS, which is blind to harmonic content, mispredicts where most of these aliases land. I rank cadences by the FALC alias rate measured on the real corpus and drive CMA-ES with a differentiable stand-in for that discrete rate: the Shannon entropy of the RSS pseudo-posterior p(f) ∝ exp(−RSS(f) / T*), with T* = 2σ² fixing the pseudo-posterior to the exact Gaussian posterior. The entropy tracks the alias rate closely (ρ(H, AR) = 0.86 raw, 0.99 binned at N = 10) and is smooth enough to optimize, so the window-RMS metric was discarded.

A2/A1 only weakly predicts the per-object gain. In the short bin at N = 10, the per-object delta Δ = ARuniform − ARoptimized (positive = optimization helps) is correlated with A2/A1 at Spearman ρ = +0.18 (p = 0.06; Pearson r = +0.14 against log A2/A1, p = 0.15); per-object noise from the CMA-ES seed, CV folds, and individual lightcurve geometry swamps the signal. Binning collapses the noise: across five A2/A1 quintiles at N = 10, the quintile-mean Δ runs −0.034, −0.011, +0.040, +0.097, +0.064 (median A2/A1 in each: 1.85, 5.10, 7.46, 13.80, 36.03), with a binned Spearman of ρ = +0.90 (p = 0.04). The same monotonicity is visible at N = 9 (quartile means 0.057, 0.142, 0.243, 0.093) and N = 8 (−0.011, −0.020, +0.127, +0.059), though four bins is not enough for either to reach significance. At N = 10, splitting into four quartiles, the optimized cadence regresses on 67% of the low-A2/A1 quartile (median A2/A1 = 2.5) and on 51% of the short-period corpus overall; the improvements concentrate in the upper two quartiles. That is the trade a single corpus-averaged cadence makes: it wins on the harmonic-rich majority that drives the loss and gives back a small amount on the sinusoidal minority. Stratifying the cadence selection by A2/A1 (or running a per-object optimization) would be the path to closing that gap.


Shared parameters
Lightcurve model4-term Fourier (fit per object)
Photometric noise σ0.04 mag
Night length8.0 h
Observations per night N8 / 9 / 10
OptimizerCMA-ES, 8 generations, K-fold CV
Period binShort (P ∈ [2.2, 8] h)
Holdout AR (N = 8) · uniform → optimized0.693 → 0.590
Holdout AR (N = 9) · uniform → optimized0.631 → 0.524
Holdout AR (N = 10) · uniform → optimized0.574 → 0.508

Data & References