Does the herd gain more fat by staying low, leaving on a fixed date, or surfing the spring green-up front uphill? A busy road crosses the route.
Runs the whole season for lags from 0 to 900 m behind the front and reports the fat on day 230. Prediction: the best lag is about (days to peak quality) x (speed of the front).
The science
Temperature and the green-up front. Sea-level reference temperature T0(d) = Tm + A sin(2pi (d - d0)/365), lapse rate 6.5 K/km: T(d,e) = T0(d) - 6.5 e/1000. Plants green up when T reaches a threshold Tg = 5 C, so the front sits at e_f(d) = 1000 (T0(d) - Tg)/6.5 and the day an elevation greens is d_g = d0 + 365/(2pi) asin((Tg + 6.5 e/1000 - Tm)/A) (the page also finds it by bisection and compares).
Forage quality. Days since green-up a: Q(a) = (a/a_p) exp(1 - a/a_p), peak 1 at a_p = 15 days, then a floor of 0.5 for mature forage (illustrative). Quality is multiplied by an access factor that falls with snow depth. The best place to graze is therefore behind the front: lag about a_p x front speed.
Snow. A degree-day model: precipitation falls as snow below 0 C, melt = 4 mm per degree-day above 0 C, density 300 kg/m3, depth = SWE/density. Precipitation (1.5 mm/day, rising with elevation) is an illustrative constant, not a measurement.
Energetics. Basal rate Kleiber 293 M^0.75 kJ/day; maintenance 1.3 x basal; peak intake 2.6 x basal x Q x (grazing hours/14). Walking cost 10.7 M^-0.316 J/(kg m) (Taylor et al. 1982, minimum cost of transport) times a snow multiplier 1 + 6 d_sink/h_leg (illustrative fit, d_sink = 0.4 x snow depth, capped at chest height) plus climbing work M g dh / 0.25. Fat is 39.3 MJ/kg; deposition efficiency 0.75, mobilisation 0.8. Typical values only: spot-check species data before quoting.
Road crossing. Vehicles arrive as a Poisson process (rate lambda). The herd needs a gap of at least T_c = (road width + 2.5 m x herd size)/crossing speed. Probability that the next gap is long enough is exp(-lambda T_c); the mean wait is (exp(lambda T_c) - 1 - lambda T_c)/lambda (Adams' delay). The page checks both with a separate Monte Carlo. The 3D cars are decorative; no collisions are modelled or shown.
Not modelled: predators, hunting, disease, rut, calves, snow crust, human disturbance, real topography. The valley is stylised; elevations come from the terrain height mapped onto 400 m to the chosen summer elevation. Models built with Blender (deer, valley, road, land bridge, trees) and rendered with Three.js.