popImprovByParentSel.RdFunction to improve a simulated breeding population by one cycle.
This version is adjusted relative to the original popImprov1Cyc function,
which drew candidates from the full records$F1 (excluding potentially
indivs only scored during the current year, if useCurrentPhenoTrain=FALSE).
My changes:
nTrainPopCycles: draw additional training pop clones only from this number of recent cycles.
nYrsAsCandidates: candidates for selection only from this number of recent years
maxTrainingPopSize: From the lines in the most recent cycles (indicated by nTrainPopCycles),
subsample this number of lines for training data. This is in addition to the "check" (bsp$checks@id)
and the lines indicates as selection `candidates` according to the setting of `nYrsAsCandidates`.
All "historical" data will always be used, but the number of maximum training lines will be held constant.
Replaces the stage-specific `bsp$trainingPopCycles`, which will be unused in this pipeline, but not deleted from the package.
The selection criteria parentSelCritBLUP and parentSelCritGEBV will allow both `candidates` and the additional training pop lines to be selected for crossing. Previous version only allowed selection of the `candidates`.
popImprovByParentSel(records, bsp, SP)
| records | The breeding program |
|---|---|
| bsp | A list of breeding scheme parameters |
| SP | The AlphaSimR SimParam object |
A records object with a new F1 Pop-class object of progeny coming out of a population improvement scheme
This function uses penotypic records coming out of the product pipeline to choose individuals as parents to initiate the next breeding cycle