To run WOMBAT, starting values for all matrices of covariance components are required. A common question is how best to derive these.
A good strategy is to build up matrices of starting values from a series of preliminary analyses.
Preliminary, univariate analyses for all traits of interest are highly recommended !
Usually we have some expectation of the relative importance of each random effect fitted; e.g. we expect a given trait to have high, medium or low heritability (about 0.5, 0.3 or 0.1). We generally also have an estimate of the `raw' variance for the trait. Assuming the model of analysis explains a certain proportion of variation, we can derive reasonable starting values for the variance components from the remainder and our expectation of the proportion of variance.
The next step to build up a matrices of starting values for multivariate analyses might be a series of bivariate analyses.
To make life easier, WOMBAT has an option (
––subset) which will generate the parameter files for all pairs of bivariate analyses from that for a multivariate analysis involving all traits of interest.
WOMBAT provides the facility to combine results from partial analyses involving subsets of traits into pooled matrices of covariance components that are suitable (positive definite) as starting values for higher-dimensional multivariate analyses. This uses the iterative summation of expanded part matrices, suggested by Mäntyssari (1999), and is invoked with the run option
What is a basis function?
In regression analysis we regress on some functions of our dependent variable. These functions are referred to as basis functions. We have one basis function per regression coefficient. Say we want to fit a linear regression including an intercept: y=b0+b1x. In this case, the basis functions are f0(x)=1 and f1(x)=x. For RR analyses we often fit more complicated, non-linear basis functions, such as orthogonal polynomials (e.g. Legendre) or spline functions.
Random regression (RR) analyses require a guess for the matrices of covariances among random regression coefficients to be specified. These depend on the choice of basis functions. Often there are no `obvious' values to use. As for multivariate analyses, a series of simpler, preliminary analyses is generally worthwhile to help deriving the starting values, carry out additional checks of the data and provide some base values to compare results from RR analyses to.
A possible strategy is to build up covariance matrices for a grid of selected values of the control variable (i.e. the covariable for the RR coefficients, such as age, days in milk, distance), and to use a simple least-squares or ML procedure to estimate covariance functions corresponding to the chosen basis for one matrix at a time.
Take a step backwards: Before RR analyses, we tended to treat all records for values of the control variable in a certain interval as a `trait' and analyzed it as such, possibly with some adjustment for differences in this covariable. This is very useful as a preliminary step for RR analyses. So what you need to do is:
Starting values for the covariances among random regression coefficients can then be obtained by fitting the required covariance function to the grid of covariances for intervals, using the mean value of the control variable for each interval as point value. This is done for one random effect at a time, and can be done using least-squares, weighted or generalised least-squares or maximum likelihood.
Kirkpatrick et al. (1990) give the following, simple worked example: Consider a grid of 3 values with genetic covariance matrix
Assume these represent values of the control variable which are simply 1, 2 and 3. The next step depends on our choice of basis function and order of fit. Kirkpatrick et al. (1990) consider Legendre polynomials and a quadratic covariance function, i.e. 3 random regression coefficients. Legendre polynomials are defined for the interval [-1,1]. Hence, the first step is to transform the values of the control variable to this range. This gives -1, 0 and 1.
Next we need to evaluate the basis function (quadratic Legendre polynomial) for these three points. This gives
The matrix of covariances among RR coefficients can then be obtained by solving for K. For the example, this gives
Fitting 2 RR coefficients only, we would truncate to its first two columns. This would give least-squares equations
A simple Fortran 95 program to perform these example calculations can be downloaded: here.
You can read more about Legendre polynomials (including formulae on how to evaluate them and further links) at Legendre_polynomials. Note that the Legendre polynomials used by Kirkpatrick et al. (1990) differ by a scale factor from those given in some other references.
Another popular choice are spline functions, in particular B-splines.
WOMBAT has Legendre polynomials (scaled as above) and equi-distant B-splines as in-built options, and can accommodate other choices through the USR option.