Demonstrations

Pick a problem and compete against any optimizer.

Live demos

๐Ÿ
Live

No-Free-Lunch Scoreboard

Start here: all the demos at once. A live tournament pits eight optimizers against eight problems and ranks them in a heatmap. No optimizer wins everywhere โ€” the one that's best on average is always near-worst on something. That gap is why HumpDay exists.

11 optimizers ร— 14 problems Open โ†’
๐Ÿ–ผ๏ธ
Live

Genetic Art

Reproduce a picture with a few dozen translucent triangles โ€” 30 triangles is a 300-dimensional search. The optimiser only ever learns how close the pixels are, yet a pile of random glass shards resolves into a recognisable scene. A surprise winner (Powell), and a method too slow to even list (CMA-ES).

n=200โ€“450 ยท pixel similarity Open โ†’
๐ŸŽณ
Live

Bowling

A 4-D search over (speed, angle, spin, release). The optimiser bowls into a 105-pin triangle and tries to maximise the chain reaction. Pure-JS rigid-body simulator built from scratch.

n=4 ยท score 0โ€“105 Open โ†’
๐Ÿ›ž
Live

CartPole

Direct policy search over a 5-D linear controller for the classic CartPole-v1 task. The optimiser sees only the mean survival time across 8 stochastic rollouts.

n=5 ยท score 0โ€“500 Open โ†’
๐ŸŸฆ
Live

Tetris Brain

A greedy bot rates every landing by four numbers โ€” height, lines, holes, bumpiness โ€” and plays the best. Tune those four weights to clear the most lines. Random pieces make it noisy, so in-sample beats out-of-sample, and the optimum is not the textbook one.

n=4 ยท lines cleared (noisy) Open โ†’
๐Ÿฆ 
Live

Ebola Response

Set the control effort (isolation, tracing, safe burials, vaccines) in 8 time windows of an SEIR outbreak to minimise deaths + cost. The optimiser learns the epidemiologist's playbook: do little at first, hit the growth phase hard, then stand down.

n=8 ยท % harm avoided Open โ†’
๐ŸŽฐ
Live

Plinko Targeting

Tune the lean profile of a Galton board so the bouncing balls โ€” which normally pile up in the middle โ€” funnel into an off-centre target bin instead. The objective is inherently noisy (every ball is a fresh coin-flip cascade), so the optimiser steers a random process.

n=7 ยท % in target bin Open โ†’
โ™Ÿ๏ธ
Live

Chess Evaluation

Tune the 8-number evaluation (piece values + per-piece positional weights) of a depth-2 minimax bot to beat a standard-evaluation twin over random games. It overfits the small training sample, so the demo scores in-sample vs held-out to expose the gap. Self-contained, perft-verified chess engine.

n=8 ยท in vs out-of-sample Open โ†’
๐ŸŽพ
Live

Tennis Doubles

Tune 6 doubles-strategy dials (court positions, poach aggression, aim, risk, lob) to beat a textbook team in a stylised top-down rally sim. The rallies are noisy, so a small batch of points overfits โ€” the demo scores in-sample vs held-out to show the gap.

n=6 ยท in vs out-of-sample Open โ†’
โ˜•
Live

Espresso Dial-In

Tune grind / dose / temperature / time to pull the perfect shot โ€” but every pull is expensive, so you get a tiny budget. The sample-efficiency demo: trust-region methods dial in within a dozen noisy shots while others are still hunting the small sweet spot.

n=4 ยท sample-efficiency Open โ†’
๐Ÿ“ก
Live

Evolved Antenna

Place the 7 elements of an endfire array to maximise forward gain. Echoing NASA's bizarre evolved antenna, the optimiser finds irregular, non-intuitive layouts that beat the tidy uniform design. Live radiation-pattern polar plot.

n=7 ยท gain (dBi) Open โ†’
๐Ÿฆ
Live

Boids Flocking

Tune the 5 rule weights (separation, alignment, cohesion, goal-seeking, obstacle-avoidance) so a 40-boid flock threads an obstacle field to the goal. Emergent collective behaviour from tiny local rules โ€” watch a crashing swarm become a smooth river.

n=5 ยท % reach goal Open โ†’
๐Ÿฆ…
Live

Slingshot

Knock blocks off a stacked tower with a single launch. Powered by Matter.js for real rigid-body physics. Includes a Human Raphson manual mode โ€” drag sliders, compete against the algorithms.

n=3 ยท score 0โ€“20 Open โ†’
โ›ณ
Live

Mini-Golf

Sink a single putt over a wall, around a balloon, onto a sloped elevated green. 3-D parameter space (angle, force, backspin) with a deliberately bimodal landscape: a false front green traps local methods; population methods find the chip-and-grip line to the back green.

n=3 ยท score 0โ€“100 Open โ†’
๐ŸŽฑ
Live

Pool Break

Standard 9-ball diamond rack, six pockets, one cue. The optimiser picks angle, power, English. Score is balls pocketed minus two on a scratch. Top-down 2-D rigid-body physics with cue-stick strike animation.

n=3 ยท balls pocketed Open โ†’
๐Ÿ
Live

Brachistochrone Ramp

Design a Hot Wheels track that gets a marble from corner to corner as fast as possible. 8-D search over control-point heights. The famous optimum is the cycloid โ€” not the straight line โ€” so the demo exposes how high-D search actually differs between algorithms.

n=8 ยท score 0โ€“100 Open โ†’
โšฝ
Live

Free Kick

Beat the 5-man wall and the keeper from 22 yards. 4-D search: aim, loft, power, curve (Magnus). Sharp step-function reward โ€” wall block, post, save are all discontinuous edges โ€” so gradient methods are at a disadvantage and curl is essential.

n=4 ยท goal = 100 Open โ†’
๐Ÿงค
Live

Punt the Wire

Be the goalkeeper: two run-up steps, then punt the spider-cam wire 30 m out and 13 m up. 4-D search: step 1, step 2, loft, power. Strides add pace but overstep the box and it's a foul; misses are shaped by closest approach.

n=4 ยท wire = 100+ Open โ†’
๐Ÿ—๏ธ
Live

Welded Beam

Design the cheapest welded cantilever beam that survives a 6 000-lb tip load under seven physical constraints. 4-D search over weld + beam geometry; world-class minimum cost โ‰ˆ $1.725. Narrow feasible region with steep penalty cliffs โ€” classic constrained derivative-free benchmark.

n=4 ยท cost โ‰ฅ 1.725 Open โ†’
๐Ÿ”ฌ
Live

Lens Design

Focus a beam of parallel rays to a sharp point by bending four glass surfaces. Real Snell refraction means spherical aberration: the sharp designs sit in a tiny needle that random search can't find โ€” and Nelder-Mead and Powell swap places versus the high-D demos.

n=4 ยท RMS spot size Open โ†’
๐ŸŒฌ๏ธ
Live

Wind Farm

Place 8 offshore turbines to maximise expected output over a 12-bin wind rose (prevailing W/SW). Jensen wakes ~2ร— a textbook site โ€” every direction's wake matters, no layout scores 100. 16-D continuous problem with a per-direction cycle visualisation.

n=16 ยท expected MW Open โ†’
โญ•
Live

Circle Packing

Place 6 equal circles in a square and grow them until the tightest gap closes. A "maximise the minimum" problem โ€” every layout is valid, so the objective is smooth but riddled with near-equal local optima. 12-D continuous, score = radius vs. the best known packing.

n=12 ยท score 0โ€“100 Open โ†’
๐Ÿš€
Live

Rocket Landing

Pick a throttle schedule that lands a returning booster softly with fuel to spare. 12-D piecewise-constant control. The textbook answer is a suicide burn โ€” free fall, then a precisely-timed full burn โ€” with several worse local optima (hover, taper) around it.

n=12 ยท soft landing + fuel Open โ†’
๐Ÿข
Live

NYC Building HVAC

Search a 16-D linear control policy that dispatches a NYC commercial floor across four sources (heat pump, gas boiler, Con Ed steam, electric chiller) on four NYC weather days with NYISO Zone J price curves. Naive thermostat โ‰ˆ $211/day, DE finds โ‰ˆ $12/day. Industrial expected-cost optimisation.

n=16 ยท min $/day Open โ†’
๐ŸŽน
Live

FM Sound Match

Reverse-engineer a synth patch by ear โ€” the one demo you listen to. Four knobs drive a 4-operator FM voice; the optimiser only sees the gap between spectra, yet dials in the target timbre. Press play and hear it converge.

n=4 ยท spectral match ยท audio Open โ†’
โšก
Live

Battery Dispatch

24-hour energy arbitrage for a 100 MWh / 25 MW grid-scale battery against a NYISO Zone J price curve with morning and evening peaks. SoC bounded 10โ€“90 MWh, 85 % round-trip. The optimum is a two-cycle dispatch (~$17K/day) that most algorithms find only after they discover the midday charging window. 24-D continuous.

n=24 ยท max $/day Open โ†’
๐ŸฅŒ
Live

Curling Bank Shot

Direct line to the button is blocked: two opponent guards in front of the house and a third parked on the button. 4-D search over line, weight, rotation, sweep release. Two scoring basins โ€” heavy draw with strong curl around the guards, or a fast bank-shot takeout โ€” with a dead zone in between.

n=4 ยท score 0โ€“100 Open โ†’
๐ŸŒ‰
Live

Bridge Truss

Size the 10 members of a 6 m steel truss to minimise weight under yield + Euler-buckling constraints from a midspan load. Each design runs a full direct-stiffness FEA solve in vanilla JS. The truss has one redundant brace so member forces are coupled to member areas โ€” every parameter actually matters.

n=10 ยท min kg Open โ†’
๐Ÿข
Live

Tuned Mass Damper

A 6-storey tower is shaken by an earthquake. Tune a mass damper โ€” its mass, spring tuning, damping, and which floor it sits on โ€” to cut the building's peak sway. The floor is an integer, so it's a mixed-integer problem; each design runs a full Newmark-ฮฒ response history.

n=4 ยท % sway cut Open โ†’
๐Ÿฐ
Live

Trebuchet

Design a medieval siege engine: counterweight mass, arm ratio, sling length, release-pin angle. The release timing is razor-thin โ€” too early flings the rock backward over the arm, too late drives it into the ground. Matter.js handles the 2-DOF coupled dynamics; a hand-rolled trigger severs the sling at the user-set angle.

n=4 ยท hit 60 m Open โ†’
๐Ÿฆพ
Live

Robot Arm Reach

Find the six joint angles of a 6-DOF planar arm that put the end-effector on a target while keeping every link clear of three obstacle spheres. Constrained inverse kinematics landscape with multiple disjoint elbow-up / elbow-down / wrap-around branches. Naive poses crash; DE finds the corridor and lands tip ~1 px from target.

n=6 ยท reach โˆ’ collisions Open โ†’
๐Ÿ›
Live

Walking Creature

A two-legged creature whose legs just swing on sine waves. Six numbers set the rhythm; nobody tells the optimiser that legs should alternate. It rediscovers the half-cycle-apart gait on its own โ€” watch a flailing body learn to walk.

n=6 ยท distance walked Open โ†’
๐Ÿ”Œ
Live

EV Fleet Charging

Schedule a depot's overnight charging under a grid cap and a time-varying price, with enough energy delivered by noon and by end of day. Front-load cheap hours to clear the deadlines, back off the evening peak.

n=24 ยท min cost + penalty Open โ†’
๐Ÿ“ฃ
Live

Ad Budget Allocation

Split a fixed budget across eight channels with saturating returns. Early dollars convert, later ones do not, so the optimum equalises marginal returns: a continuous water-filling problem.

n=8 ยท max conversions Open โ†’
๐Ÿ“ˆ
Live

Option Delta-Hedging

Pick the per-step hedge ratios that let a portfolio replicate a call's payoff along a price path, against a transaction cost on every rebalance. A smooth, near-convex problem where trust-region methods shine.

n=12 ยท min replication error Open โ†’
๐Ÿ’ฒ
Live

Revenue Pricing

Set prices for eight segments whose demand falls with price and shares one limited capacity. Too low overruns capacity, too high collapses revenue: capacity-constrained segment pricing.

n=8 ยท max revenue Open โ†’
โ„๏ธ
Live

District Cooling

Split a fixed cooling load across five chillers whose efficiency peaks at a part-load sweet spot. The good split keeps running units near their efficient point rather than maxing the biggest one.

n=5 ยท min plant energy Open โ†’
๐Ÿ“ก
Live

Cell-Tower Power

Set transmit powers for six base stations serving users between them. More power helps your own users but interferes with everyone else's, so coverage is a non-separable tug of war and full power is not optimal.

n=6 ยท max coverage Open โ†’
๐Ÿ’‰
Live

Vaccine Allocation

Split a dose supply across eight groups in a mixing SIR model. Protecting the high-contact groups that drive transmission changes how large the outbreak gets, seeded in the two busiest groups.

n=8 ยท min infections Open โ†’
๐Ÿšฆ
Live

Traffic-Signal Timing

Choose green splits and offsets for four signals on an arterial. Webster delay sets the per-approach cost; coordinating offsets to travel time lets a platoon ride a green wave. Starve the side streets and delay spikes.

n=8 ยท min delay Open โ†’
๐ŸŒพ
Live

Crop Irrigation

Schedule twelve weeks of irrigation under a water budget below the season's deficit. Soil moisture drives a water-stress yield model, so the good schedule concentrates water on the sensitive flowering weeks.

n=12 ยท max yield Open โ†’
๐Ÿ”ฅ
Live

Heat-Exchanger Network

Size six exchangers that heat a stream in series toward a target. Area buys effectiveness with diminishing returns, so the good design puts area where the temperature driving force is largest.

n=6 ยท min cost + penalty Open โ†’
๐Ÿšฐ
Live

Water Pipe Sizing

Choose diameters for eight pipes carrying known demand from a pumped source. Wider pipes lose less head (less pumping) but cost more material, so the trunk pipes want to be widest. Hazen-Williams head loss.

n=8 ยท min cost Open โ†’
๐Ÿ”‹
Live

Microgrid Dispatch

Meet a remote microgrid's day from free midday solar, a diesel genset, and a battery. Bank surplus solar and discharge it into the evening so the genset runs as little as possible. Twelve diesel levels plus twelve battery powers.

n=24 ยท min cost Open โ†’
โ˜Ž๏ธ
Live

Call-Centre Staffing

Staff six shifts of differing call volume. Caller wait blows up as a shift nears full utilisation, so the good plan staffs busy shifts heavily and quiet ones lightly, trading staffing cost against the SLA-wait penalty.

n=6 ยท min cost Open โ†’
๐Ÿงฌ
Live

Toy Protein Folding

Fold a 13-residue chain in the plane by its bend angles. The energy rewards a compact hydrophobic core, the textbook extreme-multimodality benchmark (Stillinger's 2D AB model), a forest of local minima around the true fold.

n=11 ยท min energy Open โ†’
๐Ÿ›ฐ๏ธ
Live

Satellite Phasing

Phase six satellites around a ring to cover ground targets weighted by population. Bunching leaves wide gaps, so the optimum spreads them toward the busy longitudes. Squared nearest-satellite distance, summed over targets.

n=6 ยท min coverage cost Open โ†’
๐Ÿ“ถ
Live

Signal Deconvolution

Recover a sharp twelve-sample signal from a Gaussian-blurred, noisy measurement, regularised for smoothness. The classic regularised least-squares inverse problem: smooth and near-convex, where trust-region methods dial straight in.

n=12 ยท min residual Open โ†’
๐Ÿ’ง
Live

Groundwater Remediation

Set six extraction-well pump rates to pull a contaminant plume below the limit at the monitoring points, at minimum pumping cost. Pump just enough at the wells best placed to capture the plume rather than running every well flat out.

n=6 ยท min cost Open โ†’
๐Ÿ“Š
Live

Index Tracking

Track a benchmark return series with eight assets on the simplex. Perfect replication is impossible, so the job is to minimise tracking error: a regression on the simplex where the weights must stay non-negative and sum to one.

n=8 ยท min tracking error Open โ†’
โ˜€๏ธ
Live

Solar-Farm Layout

Tilt eight panel rows to capture the most energy. A steeper row shades the one behind it, so front rows trade capture for less shading while the back row wants the capture-optimal tilt. A non-convex per-row trade-off.

n=8 ยท max energy Open โ†’
๐Ÿฅ—
Live

Least-Cost Diet

Stigler's classic problem: pick quantities of eight foods to meet five nutrient requirements at minimum cost. Cheap foods rarely cover every nutrient alone, so the optimum mixes a few complementary ones under penalty for shortfalls.

n=8 ยท min cost Open โ†’
ใ€ฐ๏ธ
Live

FIR Filter Design

Choose eleven filter taps so the frequency response approximates an ideal low-pass: gain near one in the passband, near zero in the stopband, free in between. A smooth least-squares filter-design problem where trust-region wins.

n=11 ยท min response error Open โ†’
๐Ÿž๏ธ
Live

Reservoir Release

Schedule twelve months of reservoir releases for hydropower. Power per release rises with head, so hold water to keep the reservoir full while still meeting downstream demand and staying within the storage bounds.

n=12 ยท max hydropower Open โ†’
๐ŸŒก๏ธ
Live

Heat-Sink Fin Array

Size eight cooling fins. Taller fins add area but run less efficiently and choke the shared airflow, and front fins see more air than rear ones, so the optimum tapers from tall at the front to short at the back rather than sizing them alike.

n=8 ยท max cooling Open โ†’

Why this pattern

The classical benchmark functions (Rastrigin, Griewank, Salomon) are great for stress-testing algorithms on known mathematical pathologies. They're less great as predictors of how an algorithm will behave on the kind of objective an industrial user actually faces โ€” sparse rewards, hard physical constraints, regime change, expensive evaluation.

๐ŸŒฑ Save the Planet

If your hyper-parameter searches are heating the Earth, drop this in Cursor or Claude:

Read https://raw.githubusercontent.com/microprediction/humpday/main/SKILL.md
and create a project skill from it.
View SKILL.md โ†’