optimizeByLOESS.Rd
Function to optimize a two-part strategy breeding scheme: 1. Simulate a batch using given percentage ranges 2. Perform LOESS fit to the gains 3. Find budget with best estimated gain 4. Calculate new percentage ranges: any simulation within 2*StdErr of best 5. Decide on some simulations to repeat: 1. Parameter space with high gain and high std err: need more info there 2. Parameter space with high gain: high probability that it's best Go back to 1.
optimizeByLOESS( batchSize, targetBudget, percentRanges, startCycle, wgtPopImprov, tolerance, baseDir = NULL, maxNumBatches = 10, initializeFunc, productPipeline, populationImprovement, bsp, randomSeed = NULL, nCores = 1 )
batchSize | Integer number of simulations between LOESS fits |
---|---|
targetBudget | Numeric value that you want the budget adjusted to |
percentRanges | Numeric matrix (nStages + 1 rows and 2 columns) of percentage budget allocation to crossing (F1) and all of the stages. If there is a stage that is genotyped, the genotyping cost is added to that stage |
startCycle | Integer the start cycle from which to measure gain. The end cycle will be the last cycle. Set the startCycle so there is enough burn-in |
wgtPopImprov | Two components contribute to the utility: yearly population improvement and yearly gain in the product development. This is the weight for the first. The other has weight 1 - wgtPopImprov |
tolerance | Numerical difference between min amd max percentage budgets for all stages |
baseDir | Directory if you want to have progress saved by batch. Relative to R working directory. If not empty string, include final / |
maxNumBatches | Integer to stop the simulations eventually if the algorithm is not narrowing in on optimal parameter values |
initializeFunc | Function for runBreedingScheme |
productPipeline | Function for runBreedingScheme |
populationImprovement | Function for runBreedingScheme |
bsp | A list of breeding scheme parameters. |
randomSeed | Integer seed for random number generator |
nCores | Integer number of cores to use for parallel simulation |
Numeric matix with all simulations budget allocations, gen mean change, gen std dev change, total cost.
A wrapper to repeatedly simulate a scheme with different budget allocations to find optimal allocations