Methods · VPA
Truncated Age Structured Virtual Population Analysis explained with graphs
VPA reconstructs how many fish were alive in the past by walking catch-at-age data backwards through each year-class. “Truncated” means older ages are collapsed into a plus group, which matches sparse old fish, but also changes what trends you can see.
Step 1
Start from catch at age
Count how many fish of each age were removed each year. That table is the raw material VPA works backwards through.
Step 2
Assume natural mortality (M)
Fish also die of non-fishing causes. VPA needs an M assumption, often constant, sometimes age-specific, before it can peel catch off a cohort.
Step 3
Set a terminal condition
The newest year (or oldest age) needs a starting guess for fishing mortality or abundance. That “terminal F” is a sensitive choice.
Step 4
Walk each cohort backwards
If you know how many were caught at age 5, and how many survived to age 6, you can infer how many must have been alive at age 5, then age 4, and so on.
Step 5
Truncation means a short age key
A truncated age-structured VPA folds older fish into a plus group (for Southern Flounder assessments, often ages 1 to 4+). That matches sparse older ages but can hide true old-fish biomass.
Step 6
Compare with what surveys show
Reconstructed recruitment and biomass should be checked against fisheries-independent indices. Persistent mismatch means assumptions, catch, or ageing need scrutiny.
What “age truncation” looks like
A lightly fished stock keeps a long tail of older ages. Heavy fishing can cut that tail off, exactly the pattern truncated VPA is built to work with when few fish older than the plus-group age remain.
Relative numbers at age
Source: Pedagogical illustration · Southern Flounder lifespan historically ~10 years
Follow one cohort as fishing peels it away
VPA treats each year-class separately. Under higher fishing mortality the same cohort shrinks faster, so reconstructed historical abundance depends on how catch was removed along the way.
Relative abundance remaining
Source: Pedagogical cohort track
The catch VPA works backwards from
Catch-at-age is the ledger. Large bars at ages 2 to 4 mean that is where the fishery (and a truncated model) focuses information.
Catch (relative)
Source: Illustrative catch at age for one cohort
Truncated plus group vs longer age key
If ages 4+ are lumped together, reconstructed spawning biomass can sit below a longer age-key reconstruction, older spawners are harder to see even when they still matter biologically.
Relative spawning biomass units
Source: Illustrative plus group comparison
Selectivity shapes fishing mortality by age
Expectations differ if every adult age is equally vulnerable (flat) versus a dome where mid-ages are hit hardest. Those choices change VPA’s implied F and remaining spawners.
Relative F by age
Source: Illustrative selectivity contrast
Trends: surveys, VPA recruitment, and a simple expectation
A naive expectation might assume recovery tracks management hope. Surveys and a VPA-style recruitment reconstruction can diverge from that line, teaching why models must be checked against observations.
Relative index
Source: Illustrative · compare with NC120 in Surveys / Catalog
VPA family
- Works mostly backwards from catch-at-age
- Often assumes catch is known with little error
- Sensitive to terminal F and M
- Historically common for age-structured stocks
ASAP (current SF assessments)
- Forward statistical catch-at-age model
- Fits catch and surveys with observation error
- Estimates selectivity and reference points jointly
- Used for the accepted South Atlantic Southern Flounder benchmarks