parEstimationLBodeGA {CNORode} | R Documentation |
This function uses a genetic algorithm (package genalg) to perform parameter estimation. The objective function
is the same as the one provided by getLBodeContObjFunction
.
parEstimationLBodeGA(cnolist, model, ode_parameters = NULL, indices = NULL, mutationChance = NA, popSize = 200, iters = 100, elitism = NA, time = 1, monitor = TRUE, verbose = 0, transfer_function = 3, reltol = 1e-04, atol = 0.001, maxStepSize = Inf, maxNumSteps = 1e+05, maxErrTestsFails = 50, nan_fac = 1)
cnolist |
A list containing the experimental design and data. |
model |
The logic model to be simulated. |
ode_parameters |
A list with the ODEs parameter information. Obtained with |
indices |
Indices to map data in the model. Obtained with indexFinder function from CellNOptR. |
mutationChance |
the chance that a gene in the chromosome mutates. By default 1/(size+1). It affects the convergence rate and the probing of search space: a low chance results in quicker convergence, while a high chance increases the span of the search space. |
popSize |
the population size. |
iters |
the number of iterations. |
elitism |
the number of chromosomes that are kept into the next generation. By default is about 20% of the population size |
time |
An integer with the index of the time point to start the simulation. Default is 1. |
monitor |
If TRUE a plot will be generated to monitor the objective function |
verbose |
A logical value that triggers a set of comments. |
transfer_function |
The type of used transfer. Use 1 for no transfer function, 2 for Hill function and 3 for normalized Hill function. |
reltol |
Relative Tolerance for numerical integration. |
atol |
Absolute tolerance for numerical integration. |
maxStepSize |
The maximum step size allowed to ODE solver. |
maxNumSteps |
The maximum number of internal steps between two points being sampled before the solver fails. |
maxErrTestsFails |
Specifies the maximum number of error test failures permitted in attempting one step. |
nan_fac |
A penalty for each data point the model is not able to simulate. We recommend higher than 0 and smaller that 1. |
LB_n |
A numeric value to be used as lower bound for all parameters of type n. |
LB_k |
A numeric value to be used as lower bound for all parameters of type k. |
LB_tau |
A numeric value to be used as lower bound for all parameters of type tau. |
UB_n |
A numeric value to be used as upper bound for all parameters of type n. |
UB_k |
A numeric value to be used as upper bound for all parameters of type k. |
UB_tau |
A numeric value to be used as upper bound for all parameters of type tau. |
default_n |
The default parameter to be used for every parameter of type n. |
default_k |
The default parameter to be used for every parameter of type k. |
default_tau |
The default parameter to be used for every parameter of type tau. |
LB_in |
An array with the the same length as ode_parameters$parValues with lower bounds for each specific parameter. |
UB_in |
An array with the the same length as ode_parameters$parValues with upper bounds for each specific parameter. |
opt_n |
Add all parameter n to the index of parameters to be fitted. |
opt_k |
Add all parameter k to the index of parameters to be fitted. |
opt_tau |
Add all parameter tau to the index of parameters to be fitted. |
random |
A logical value that determines that a random solution is for the parameters to be optimized. |
res |
A list containing the information provided by the nonlinear optimization solver (genalg). |
David Henriques, Thomas Cokelaer
CellNOptR
createLBodeContPars
rbga
data("ToyCNOlist",package="CNORode"); data("ToyModel",package="CNORode"); data("ToyIndices",package="CNORode"); ode_parameters=createLBodeContPars(model,random=TRUE); #Visualize intial simulation #simulatedData=plotLBodeFitness(cnolistCNORodeExample, model,ode_parameters,indices=indices) ode_parameters=parEstimationLBodeGA(cnolistCNORodeExample,model,ode_parameters=ode_parameters, indices=indices,maxStepSize=1,atol=1e-3,reltol=1e-5,transfer_function=2,popSize=10,iter=40); #Visual solution after optimization simulatedData=plotLBodeFitness(cnolistCNORodeExample, model,indices=indices,ode_parameters=ode_parameters);