Per-farm economic ranking for Angus, Advancer composites, and any temperate beef breed with BREEDPLAN-style EBVs. First-principles bioeconomic engine. No black boxes.
Standard BREEDPLAN trait set for self-replacing maternal, terminal sire, and backgrounder pathways. Direction column shows whether higher EBVs are economically favourable (↑), unfavourable (↓), or moderate-optimum (↔).
Trait
Name
Unit
Direction
Group
Economic relevance
Farm profile Editable
Your operation’s structural parameters. These drive how each EBV translates to dollars on YOUR farm.
Market wiring Live $
Today’s market settings. Defaults set to recent NE Vic / VIC saleyards. Edit to your actual contracts.
Closed-form derivation of per-trait dollar value, per cow per year. Same methodology as Phase 2.0 for sheep, ported to cattle. Self-replacing maternal: traits valued through both retained heifer line and slaughter steer line.
Per-trait lifetime economic weights
Each value = dollar change in cow gross margin per year per +1 unit EBV change. Computed from current farm profile + market settings.
Phase 5.0a weights are per-cow-per-year direct expression. Phase 5.0b adds three corrections: (1) time-value-of-money discounting at 5% p.a., (2) multiple expressions per gene (a daughter expresses MILK 5× over her breeding life), (3) the granddaughter pathway via retained heifers (gen-2 contribution at 0.25 gene flow). The biggest reweighting happens to maternal traits — they get substantially more weight when the full daughter pathway is properly counted.
DGF multipliers per trait — pathway breakdown
DGF total = own progeny + daughter lifetime + granddaughter line, all NPV-discounted. Phase 5.0a weight is what you saw above. Phase 5.0b weight = Phase 5.0a per-expression value × DGF total.
Trait
Lag (yr)
Own progeny
Daughter life
Granddaughter
DGF total
P5.0a $/EBV
P5.0b NPV $/EBV
Δ (b/a)
DGF math (Dekkers 2007)
For each trait T, the DGF multiplier sums NPV-discounted expressions across pathways:
DGF_T = OWN_PROGENY + DAUGHTER_LIFETIME + GRANDDAUGHTER_LINE
OWN PROGENY (single expression per progeny at lag t_T):
= 0.5 × (1+r)^(-t_T)
Used for: GL, BW, D200, D400, D600, CE_DIR, CWT, EMA, RIB, RUMP, IMF,
RBY, DOC, NFI_F
DAUGHTER LIFETIME (multiple expressions across breeding life):
= 0.5 × p_heifer_kept × Σ_(t = t_T to t_T + breeding_life)
(1+r)^(-t)
Used for: MCW, MILK, DTC, CE_DTRS, SS
GRANDDAUGHTER LINE (gen-2 expression via retained daughters):
= 0.25 × p_heifer_kept × (1+r)^(-(t_T + gen_interval))
Adds for: D200, D400, D600, CWT, EMA, RIB, RUMP, IMF, RBY, NFI_F
(growth/carcase traits expressed again in granddaughter line)
p_heifer_kept = 0.5 × replacement_rate (~10% by default)
Phase 5.0b NPV weight = (Phase 5.0a $/EBV / per_cow_per_yr_anchor_T) × DGF_T
where per_cow_per_yr_anchor_T is the Phase 5.0a expression count
(weaners_per_cow for D200/MILK; slaughter_progeny_per_cow for CWT/IMF/etc;
cull_rate for MCW; retained_heifers_per_cow for daughter traits).
Citations
Dekkers JCM (2007). Marker-assisted selection for commercial crossbred performance. J. Anim. Sci. 85:2104–2114. Discounted gene-flow framework for trait economic weights.
Hill WG (1974). Prediction and evaluation of response to selection with overlapping generations. Anim. Prod. 18:117–139. Original gene-flow methodology.
Wolfova et al (2005). Estimation of economic values for traits of dairy cattle II. J. Dairy Sci. 88:1107–1121. Pathway parameter benchmarks for cattle.
Smith C (1978). The effect of inflation and form of investment on the estimated value of genetic improvement. Anim. Prod. 26:101–110. NPV framework for genetic gain.
Closed-loop calibration PHASE 5.0c · RIDGE + VIF
First principles (Phase 5.0a/5.0b) predicts what each trait should be worth. Closed-loop calibration learns what each trait actually pays on YOUR farm by fitting realised slaughter $/head against EBVs. Multivariate ridge regression with VIF diagnostics. Calibration multipliers stack with DGF — multiplier × (DGF or simple) base weight.
CSV columns: animal_id, EBVs (any subset), realised_profit (your actual $/head net or $/cow/yr from past slaughter or sale records).
No realised data loaded yet.
Per-trait calibration multipliers
Multiplier = empirical β (multivariate ridge) / first-principles weight. ×1.0 means first principles fit your data perfectly. >1.0 means trait pays more than predicted on your farm. <1.0 means less. VIF flags collinearity (>10 = unstable).
Trait
Univariate β
Multivariate β
VIF
First-principles
Multiplier
Persistence
Calibration in memory only.
Calibration math + VIF
For each trait T:
Univariate fit: realised = α_T + β_T × EBV_T + ε
β_T = cov(realised, EBV_T) / var(EBV_T)
Multivariate ridge: realised = Xβ + ε
β = (X'X + λI)^-1 X'y (λ = 5.0)
VIF (variance inflation factor) per trait j:
VIF_j = 1 / (1 - R²_j)
where R²_j = R² of regressing EBV_j on all other EBVs
VIF > 10 = high collinearity → β unstable
Calibration multiplier per trait T:
multiplier_T = empirical_β_T / first_principles_weight_T
When applied to ranking:
adjusted_weight_T = base_weight_T × multiplier_T
where base_weight = DGF_weight if DGF active, else Phase_5.0a_weight
index_score_i = Σ_T (EBV_iT × adjusted_weight_T)
Rumen 16S sequencing reveals which animals run a more efficient microbiome — lower methanogen abundance, higher fibrolytic and acetate-producing taxa, higher diversity. The FCE index translates this into a per-animal feed-cost adjustment. Genuinely novel: BREEDPLAN does not include this. Neither do PIC or Aviagen. Holobiont selection is the leading edge of livestock genetics research (Roehe 2016, Difford 2018, Wallace 2019).
CSV columns: animal_id, alpha_div, meth_rel, prev_alpha_div, fibro_abund, acet_abund. From your rumen 16S sequencing or qPCR results.
No microbiome data loaded.
Per-animal FCE index + feed-cost adjustment
FCE index 0.0 = poor microbiome (high methanogen, low diversity). FCE index 1.0 = optimal microbiome. Adjustment = (FCE_index − 0.5) × feed_cost_per_year × 0.10 — capped at ±5% of annual cow feed cost.
Animal ID
α-div
Meth (rel)
Prev α
Fibro
Acet
FCE index
Feed adj $/yr
Microbiome math + citations
Five-component FCE index, each component normalised to 0..1:
fce_index = 0.20 × alpha_div_norm (Shannon diversity, Roehe 2016)
+ 0.30 × (1 - meth_norm) (lower methanogen = better)
+ 0.15 × prev_alpha_div_norm (Prevotella diversity, Difford 2018)
+ 0.20 × fibro_abund_norm (Fibrobacter cellulolytic)
+ 0.15 × acet_abund_norm (acetate producers, Wallace 2019)
Per-animal feed adjustment ($/cow/yr):
feed_adj = (fce_index - 0.5) × cow_feed_cost × 0.10
= capped at ±5% of cow_feed_cost
cow_feed_cost from Phase 5.0a bioeconomic = (cow_DSE + progeny_DSE) × $/DSE
When ranking toggle is ON:
index_score_i += feed_adj_i
(positive for above-average microbiome, negative for below-average)
Citations
Roehe et al (2016). Bovine host genetic variation influences rumen microbial methane production with best selection criterion for low methane emitting and efficiently feed converting hosts based on metagenomic gene abundance. PLoS Genet. 12:e1005846.
Difford et al (2018). Host genetics and the rumen microbiome jointly associate with methane emissions in dairy cows. PLoS Genet. 14:e1007580.
Wallace et al (2019). A heritable subset of the core rumen microbiome dictates dairy cow productivity and emissions. Sci. Adv. 5:eaav8391.
Aboagye et al (2020). Microbial composition, attachment and enzyme activities, level of feed digestion and methane production in sheep and beef heifers fed identical diets. FEMS Microbiol. Ecol. 96:fiaa118.
CV phenotyping PHASE 5.0d.1 · STRUCTURAL
Camera-based or visual structural assessment captures functional traits BREEDPLAN doesn't score: leg correctness, frame, muscle definition, body capacity, feet quality, hip width, top line. Each scores against your farm's cattle. Genuinely useful for hill-country selection where structural soundness matters more than $Index alone.
Each CV trait has a small fixed dollar weight (different sign per trait — leg_score is favourable LOW, muscle_score favourable HIGH). Sum = total CV $ contribution per animal.
Animal ID
Leg
Frame
Muscle
Capacity
Feet
Hip
Topline
CV $/yr
CV trait dictionary + scoring scales
Trait
Scale
Direction
$/unit
Source
leg_score
1–9
↓ lower
−$8
MLA P.PSH.0931
frame_cm
cm wither
↔ moderate
±$0.5
linear measurement
muscle_score
1–9
↑ higher
+$12
visual muscling
body_capacity
1–9
↑ higher
+$10
rumen volume / depth
feet_quality
1–9
↑ higher
+$15
hoof soundness
hip_width_cm
cm
↑ higher
+$2
calving ease proxy
topline_score
1–9
↑ higher
+$6
muscling distribution
Dollar weights are illustrative defaults. They scale with your operation — a stud bull breeder values structural soundness more heavily than a backgrounder. Future calibration card (Phase 5.0c stack) can fit empirical CV weights when you accumulate realised performance data with CV scores.
Per-farm GWAS molecular calibration EXPERIMENTAL · NOT VALIDATED
Experimental, not validated. Per-farm genomic prediction (GWAS / DGV) is not yet built as a product. This card runs a small ridge regression on a file you upload; treat the output as a demonstration, not a genomic evaluation, and leave it off your rankings for breeding decisions.
Upload your animals’ SNP genotypes + realised profit. Single-DGV ridge regression estimates per-SNP effects against that profit. Each animal then gets a Direct Genomic Value (DGV) added to its ranking score at λ = 0.10. BREEDPLAN provides genomic breeding values from a national reference population. This card is an unvalidated prototype of re-fitting at the farm level.
CSV columns: animal_id, snp_001 … snp_050 (genotypes 0/1/2 = minor allele count), realised_profit. From your 50K BeadChip / 770K HD panel data after QC.
No GWAS data loaded.
Top SNP effects from your herd
Largest |β| coefficients from ridge fit. Sign indicates direction (positive = + alleles boost realised profit). Effect size in $/allele.
SNP
β ($/allele)
|β| rank
Per-animal DGV
DGV = Σ (genotype × β). Centred at population mean. Top 10 animals shown.
Rank
Animal ID
DGV ($)
DGV × λ (λ=0.10)
GWAS math + λ rationale
Single-DGV ridge regression:
realised_profit_i = α + Σ_j (genotype_ij × β_j) + ε_i
β = (X'X + λI)^-1 X'y (ridge λ_fit = 5.0)
Per-animal DGV (centred at population mean):
DGV_i = Σ_j (genotype_ij × β_j) - meanDGV
When toggle is ON, ranking adjustment:
ranking_score_i += DGV_i × λ_genomic (λ_genomic = 0.10)
Why λ_genomic = 0.10: caps maximum genomic contribution at 10% of
realised profit variance, preventing the genomic layer from dominating
the EBV-based ranking when SNP effects are noisy or panel is small.
Same convention as PIC and Aviagen commercial implementations.
Citations
Meuwissen, Hayes & Goddard (2001). Prediction of total genetic value using genome-wide dense marker maps. Genetics 157:1819-1829. Foundational paper for genomic prediction.
VanRaden (2008). Efficient methods to compute genomic predictions. J. Dairy Sci. 91:4414-4423. Genomic relationship matrix and DGV computation.
Hayes et al (2009). Invited review: Genomic selection in dairy cattle. J. Dairy Sci. 92:433-443. Implementation in commercial dairy.
Goddard & Hayes (2009). Mapping genes for complex traits in domestic animals. Nat. Rev. Genet. 10:381-391. Per-trait GWAS framework.
Per-trait GWAS EXPERIMENTAL · NOT VALIDATED
Experimental, not validated. Per-farm genomic prediction (GWAS / DGV) is not yet built as a product. This card runs a small ridge regression on a file you upload; treat the output as a demonstration, not a genomic evaluation, and leave it off your rankings for breeding decisions.
Phase 5.0d.2 fits ONE regression on realised profit → one DGV per animal. Phase 5.0d.3 fits a SEPARATE ridge regression per performance trait → per-animal-per-trait DGVs. The same SNP can have different effect signs across traits (pleiotropy). When applied, per-trait DGVs project through your current lifetime weights to enhance the single-DGV ranking adjustment from Phase 5.0d.2.
Each row is one trait's top SNPs. The same SNP may appear across multiple rows with different effect sizes and signs (pleiotropy).
Trait
Top SNP
Effect
2nd
Effect
3rd
Effect
DGV SD
Per-trait GWAS math + projection
For each trait T ∈ {D200, D600, CWT, IMF, DTC, ...}:
realised_T_i = α_T + Σ_j (genotype_ij × β_jT) + ε_Ti
β_T = (X'X + λI)^-1 X'y_T (ridge λ = 5.0)
Per-animal trait DGV (centred at population mean):
DGV_iT = Σ_j (genotype_ij × β_jT) - meanDGV_T
Projection to single equivalent DGV:
equivalent_DGV_i = Σ_T (DGV_iT × lifetime_weight_T)
Replaces window._cattle_gwas_result.dgvs when Phase 5.0d.3 active.
Phase 5.0d.2 ranking adjustment then uses these enhanced DGVs:
ranking_score_i += equivalent_DGV_i × λ_genomic (λ = 0.10)
Mathematically equivalent to per-trait blending:
trait_T_blended_i = (EBV_iT + DGV_iT × 0.10) × lifetime_weight_T
Why per-trait beats single-DGV: a SNP near the GDF8 (myostatin) locus
may strongly affect muscling (EMA, D600) but be neutral for fat traits.
A single DGV averaged over realised profit conflates the two. Per-trait
calibration says "this SNP is +$0.40/allele on D200, but -0.05/allele
on IMF" — lets selection target the trait where the SNP actually pulls.
Citations
Goddard & Hayes (2009). Mapping genes for complex traits in domestic animals. Nat. Rev. Genet. 10:381-391.
Daetwyler et al (2012). Genomic prediction in animals and plants. Genetics 193:347-365. Multi-trait genomic prediction methodology.
Hayes et al (2009). Genomic selection in dairy cattle. J. Dairy Sci. 92:433-443.
Farm persistence PHASE 5.0d.4 · SAVE / RESTORE
Save all your data layers to your farm row in cattle_animal_data — EBVs, microbiome, CV, SNP genotypes, and per-trait realised values. Restore on any device. Auto-loads on page init when you're signed in. Includes localStorage mirror so demos and offline work survive refresh.
EBVs / animals
No animals loaded.
Microbiome FCE
No microbiome data.
CV phenotyping
No CV data.
Single-DGV GWAS
No GWAS data.
Per-trait GWAS
No per-trait data.
Persistence schema
Each save operation upserts into cattle_animal_data with composite key
(user_id, animal_id). Only the relevant column is written; other columns
preserve their existing values via partial upsert.
Column Source Example
----------------------------------------------------------------
ebv (JSONB) window._cattle_animals {GL: -1.2, BW: 2.8, D200: 38.5, ...}
microbiome (JSONB) window._cattle_micro_data {alpha_div: 3.42, meth_rel: 0.058, ...}
cv (JSONB) window._cattle_cv_data {leg_score: 5.2, frame_cm: 131.5, ...}
snp (JSONB) window._cattle_gwas_input {snp_001: 0, snp_002: 1, ..., snp_050: 2}
realised_profit window._cattle_gwas_input 2185.50
realised_per_trait window._cattle_pt_gwas_input {D200: 30.1, D600: 91.5, CWT: 35.8, ...}
localStorage mirror keys:
mgt_cattle_animals (full _cattle_animals array)
mgt_cattle_micro (full _cattle_micro_data array)
mgt_cattle_cv (full _cattle_cv_data array)
mgt_cattle_gwas (full _cattle_gwas_input_animals array)
mgt_cattle_pt_gwas (full _cattle_pt_gwas_input_animals array)
Restore order matters because Phase 5.0c calibration depends on EBVs +
realised_profit being present. Save All writes in any order; Restore All
reads in this sequence: animals → micro → CV → GWAS → per-trait GWAS.
Rank cattle by Dynamic Index
Upload your BREEDPLAN-style EBV CSV/XLSX. Each animal is scored on your enterprise in the economic engine: every trait on its profit curve, for progeny out of your own herd's females, $ per breeding female per year. EBVs the engine does not price are listed as not priced. Sorted high to low. Top picks shown.
Ranking preview only — it isn’t saved. To store your herd there is one place: Upload Herd →
CSV columns: animal_id, then any of: GL, BW, D200, D400, D600, MCW, MILK, DTC, CE_DIR, CE_DTRS, CWT, EMA, RIB, RUMP, IMF, RBY, SS, DOC, NFI_F. Missing traits treated as 0.