eadrm {eadrm}R Documentation

Fits a dose-response curve using an evolutionary algorithm

Description

Uses an evolutionary algorithm to fit a set of four possible dose-response models. The evolutionary parameters and stopping rules can be customized by the user.

Usage

eadrm(
  obs,
  xvals,
  model = "h4",
  pop.size = 1000,
  stable.pop.size = 200,
  num.tournaments = 20,
  tournament.size = 10,
  max.generations = 500,
  stop.generations = 50,
  epsilon = 0.1
)

Arguments

obs

A vector of response values (y-values).

xvals

A vector of doses (x-values).

model

Type of dose-response model to fit. Possible values include "h3", "h4", and "h5" (corresponding to 3-parameter, 4-parameter, and 5-parameter log-logistic models, respectively), "e" (corresponding to an exponential model) and "all" (which allows the procedure to evaluate all four types of models). Defaults to "h4".

pop.size

The number of initial potential solutions. Defaults to 1000.

stable.pop.size

This quantity is divided by the number of tournaments to calculate the number of children in each generation. Defaults to 200.

num.tournaments

The number of tournaments in each generation. Defaults to 20.

tournament.size

The number of players (i.e., models to consider) in each tournament. Defaults to 10.

max.generations

The maximum number of generations. If this number is reached, the algorithm immediately terminates. Defaults to 500.

stop.generations

The algorithm will also terminate if there is no improvement in fitness in stop.generation generations. Defaults to 50.

epsilon

If three successive new models produce an improvement of less than epsilon in fitness, the procedure will terminate. Defaults to 0.1.

Value

An object of class eadrm, which is a list containing the following elements:

Model:

Specifies the type of model (i.e., "h3", "h4", "h5", or "e")

R2:

Fitness for the final model

params:

A vector of coefficients for the final model

xvals:

The original x values (concentrations) for the model

yvals:

The original y values (responses) for the model

Details

The procedure will initially generate pop.size possible solutions. The fitness for each solution will be calculated. In each generation, a series of tournaments are performed. The children of the surviving models from the previous generation are mutated. The model with the best fitness "wins" each tournament and survives to the next generation. The procedure continues until the maximum number of generations is reached or the fitness fails to improve substantially over a sufficient number of generations.

References

Ma, J., Bair, E., Motsinger-Reif, A. "Nonlinear Dose-response Modeling of High-Throughput Screening Data Using an Evolutionary Algorithm", Dose Response 18(2):1559325820926734 (2020).

Examples

ea.fit <- eadrm(CarboA$y, CarboA$x)

[Package eadrm version 0.1.4 Index]