multistageoptimum.searchThreeS {selectiongain} | R Documentation |
Function for optimizing four-stage selection in plant breeding with one marker-assisted selection stage and three phenotypic selection stages
Description
This function is used to calculate the maximum of \Delta G
based on correlation matrix, which depends on locations, testers and replicates, with a grid search algorithm. The changing correlation matrix of four-stage selection are the testcross progenies of DH lines in one marker-assisted selection (MAS) stage and three phenotypic selection (PS) stages.
Usage
multistageoptimum.searchThreeS (maseff=0.4, VGCAandE,
VSCA, CostProd, CostTest, Nf, Budget, N2grid,
N3grid, N4grid, L2grid, L3grid, L4grid, T2grid,
T3grid, T4grid, R2, R3, R4, alg,
detail, fig,alpha.nursery,cost.nursery,
t2free,parallel.search,saveresult)
Arguments
maseff |
is the efficiency of MAS, if set to NA no marker assited selection or genomic selection is developed in the first stage |
VGCAandE |
is the vector of variance components of genetic effect, genotype |
VSCA |
is the vector of variance components for specific combining ability. |
CostProd |
contains the initial costs of producing or identifying a candidate in each stage, then the vector should be of lenght four. |
CostTest |
contains a vector with length n reflecting the cost of evaluating a candidate in the tests performed at stage i, i=1,...,n. The cost might vary in different stages. For this function n=4 |
Nf |
is the number of finally selected candidates. |
Budget |
contains the value of total budget. |
N2grid |
is the vector of lower and upper limits as well as the grid width of number of candidates in the first field test stage. |
N3grid |
is the vector of lower and upper limits as well as the grid width of number of candidates in the second field test stage. |
N4grid |
is the vector of lower and upper limits as well as the grid width of number of candidates in the third field test stage. |
L2grid |
is the vector of lower and upper limits of number of location as well as the width in the first field test stage. |
L3grid |
is the vector of lower and upper limits of number of location as well as the width in the second field test stage. |
L4grid |
is the vector of lower and upper limits of number of location as well as the width in the third field test stage. |
T2grid |
is the vector of lower and upper limits of number of tester as well as the width in the first field test stage. |
T3grid |
is the vector of lower and upper limits of number of tester as well as the width in the second field test stage. |
T4grid |
is the vector of lower and upper limits of number of tester as well as the width in the third field test stage. |
R2 |
is the number of replications in the first field test stage. By default it is 1. |
R3 |
is the number of replications in the second field test stage. By default it is 1. |
R4 |
is the number of replications in the third field test stage. By default it is 1. |
alg |
is used to switch between two algorithms. If |
detail |
is the control parameter to decide if the result of all the grids will be given ( |
fig |
is the control parameter to decide if a contour plot will be saved in the default folder of R. The default value is |
alpha.nursery |
a value that should be 0<x<1. The alpha fraction, or amount of genotypes preliminary selected in nurseries, correspond to the fraction entering stage 1 (when MAS is used) or stage 2 (when there is no MAS). It is setted to 1 as default, i.e. no preliminary test "nursery stage". |
cost.nursery |
a vector of length two c([cost of producing a DH line],[cost of testing a DH in nursery]). The default value is 0,0. |
t2free |
is a logical value. If =FALSE, the cost of using T4, T3 and T2 testers will be accounted seperately. If =TRUE, the cost of using T4, T3 and T2 testers will be accounted according to number of testers, i.e., CostProd=c(CostProd[1],CostProd[2]*T2,CostProd[3]*(T3-T2),CostProd[4]*(T4-T3) |
parallel.search |
is a logical variable to desided if the multiple cores can be used for computing, by default is FALSE. The users have to notice that assign cores also cost time. So this procedure can only be efficient if the dim >5. |
saveresult |
is a logical variable to save resultfile in saveresult.csv. |
Details
Some breeding programs require more than two phenotypic selection stages. In this programs, a large number of genotypes are assessd for the target trait only in few locations in the first stage and strong selection preasure is applyed. The second and third stages of phenotypic selection are developed in a large number of locations including only a reduced number of genotypes. Even if this stragegy could lead to a reduced selection gain, it could be of major advantage when breeding programs have biological or operative restrictions to conduct large experiments a in large number of locations. This function allows breeders to estimate the possible increase or reduction of selection gain when moving from two stages of phenotypic selection to three stages and also when a rectricted number of genotypes and locations in each of the three stages of phenotypic selection is used.
for the new added to parameters "alpha.nursery" and "cost.nursery" since v2.0.47:
After producing new DH lines, breeders do NOT go directly for a selection stage in the field, neither for genomic selection. Most of the times, they prefer to make a small field experiment (called "nursery") in which all DH lines are observed and discarded for other traits as disease resistance. That means, all DH lines with poor resistance will be discarded. At the end of the nursery stage only certain amount of DH lines (alpha) advance to the first selection stage (phenotypic or genomic). Specially in maize that makes sense, because in experience around 90 percent of the new DH lines are very weak in terms of per se performance what make them not suitable as new hybrid parents. Then, budget should not be used to make genotyping on or testcrossing with them. Only the alpha fraction should be used for entering the stage 1 of the multistageoptimum.search function.
More details are available in the Crop Science and Computational Statistics papers.
Value
If \texttt{detail}
= FALSE, the output of this function is a vector of the optimum allocation i.e., which achieves the maximum \Delta G
. Otherwise, the result for all the grid points, which have been calculated, will be exported as a table in the Rgui.
Note
no further comment
Author(s)
Jose Marulanda, Xuefei Mi
References
A. Genz and F. Bretz. Computation of Multivariate Normal and t Probabilities. Lecture Notes in Statistics, Vol. 195, Springer-Verlag, Heidelberg, 2009.
A. Genz, F. Bretz, T. Miwa, X. Mi, F. Leisch, F. Scheipl and T. Hothorn. mvtnorm: Multivariate normal and t distributions. R package version 0.9-9995, 2013.
E.L. Heffner, A.J. Lorenz, J.L. Jannink, and M.E. Sorrells. Plant breeding with genomic selection: gain per unit time and cost. Crop Sci. 50: 1681-1690, 2010.
X. Mi, T. Miwa and T. Hothorn. Implement of Miwa's analytical algorithm of multi-normal distribution. R Journal, 1:37-39, 2009.
See Also
selectiongain()
Examples
VCGCAandError=c(0.4,0.2,0.2,0.4,2)
VCSCA=c(0.2,0.1,0.1,0.2)
#Budget is reduced to 1000 to save computation time
multistageoptimum.searchThreeS(maseff=NA, VGCAandE=VCGCAandError, VSCA=VCSCA,
alpha.nursery = 0.25, cost.nursery = c(1,0.3), CostProd=c(0,4,4,4), CostTest=c(0,1,1,1),
Nf=3, Budget=1000, N2grid=c(50,200,50),N3grid=c(10,50,5), N4grid=c(10,20,5),
L2grid=c(1,2,1), L3grid=c(2,3,1), L4grid=c(4,5,1),
T2grid=c(1,2,1), T3grid=c(2,3,1), T4grid=c(4,5,1),
R2=1, R3=1, R4=1, alg=Miwa(), detail=FALSE, fig= FALSE, t2free=TRUE)