View source: R/optim.relatedness.R

optim.relatedness | R Documentation |

Estimates the fraction of comparisons between pairs of close relatives while fitting the theta parameter minimising the object function. The function makes use of the R-package 'Rsolnp' which is an implementation of an solver for non-linear minimisation problems with parameter constraints.

optim.relatedness( obs, theta0 = 0, theta1 = 0.03, theta.tol = 10^(-7), theta.step = NULL, max.bisect = 15, probs, var.list = NULL, init.alpha = 10^c(-4, -6, -8, -10), init.keep = FALSE, objFunction = c("T2", "T1", "C3", "C2", "C1"), collapse = FALSE, trace = FALSE, solnp.ctrl = list(tol = 10^(-9), rho = 10, delta = min(init.alpha) * 0.01, trace = FALSE) )

`obs` |
The matrix or vector of observed matches/partial-matches as returned by the dbCompare()-function |

`theta0` |
The left value of the interval in which a bisection-like search is performed for theta |

`theta1` |
Right value of interval (see theta0) |

`theta.tol` |
A stopping criterion for the search. If the search narrows within theta.tol the function terminates |

`theta.step` |
Default is NULL. If not a grid search will be performed on seq(from = theta0, to = theta1, by = theta.step) |

`max.bisect` |
The maximum number of bisectional iterations perform prior to termination |

`probs` |
List of vectors with allele probabilities for each locus |

`var.list` |
A named list of components for computing variances, see dbVariance. The names of the elements are the associated theta-values, and each component is a list of (V1,V2,V3) - see dbVariance with n=1 |

`init.alpha` |
Initial values for alpha, where the order is (First-cousins, Avuncular, Parent-child, Full-siblings). The value for Unrelated is computed as 1-sum(init.alpha) |

`init.keep` |
Whether the initial values should be used in successive steps for the current optimum should be used. |

`objFunction` |
Which of the five different object functions should be used to compare observed and expected |

`collapse` |
Not yet implemented |

`trace` |
Should iteration steps and other process indicators be printed |

`solnp.ctrl` |
See solnp for details |

Computes the proportion of comparisons between close relatives in a database matching exercise for each theta value under investigation.

Returns a list of three components: value, solution and var.list. The first element, value, is a dataframe with the value of the objection function for each of the theta values investigated. Solution is the estimated alpha-vector where the objection function was minimised. Finally, var.list is a names list of components for computing variances. May be reused in later computations for increased speed in some iterations.

James Curran and Torben Tvedebrink

T Tvedebrink, PS Eriksen, J Curran, HS Mogensen, N Morling. 'Analysis of matches and partial-matches in Danish DNA reference profile database'. Forensic Science International: Genetics, 2011.

## Not run: ## Simulate some allele frequencies: freqs <- replicate(10, { g = rgamma(n=10,scale=4,shape=3); g/sum(g)}, simplify=FALSE) ## Load the sample database: data(dbExample) obs <- dbCompare(dbExample,trace=FALSE)$m C3 <- optim.relatedness(obs,theta0=0.0,theta1=0.03,probs=freqs, objFunction='C3',max.bisect=30,trace=TRUE) ## End(Not run)

DNAtools documentation built on March 18, 2022, 7:01 p.m.

Embedding an R snippet on your website

Add the following code to your website.

For more information on customizing the embed code, read Embedding Snippets.