Implements the marker ordering algorithm Seriation (Buetow & Chakravarti, 1987).
seriation(input.seq, LOD = 0, max.rf = 0.5, tol=10E-5)an object of class sequence.
minimum LOD-Score threshold used when constructing the pairwise recombination fraction matrix.
maximum recombination fraction threshold used as the LOD value above.
tolerance for the C routine, i.e., the value used to evaluate convergence.
An object of class sequence, which is a list containing the
following components:
a vector containing the (ordered) indices of
markers in the sequence, according to the input file.
a vector with the linkage phases between markers
in the sequence, in corresponding positions. -1 means that there are
no defined linkage phases.
a vector with the recombination frequencies between
markers in the sequence. -1 means that there are no estimated
recombination frequencies.
log-likelihood of the corresponding linkage map.
name of the object of class outcross with the
raw data.
name of the object of class rf.2pts with the 2-point
analyses.
Seriation is an algorithm for marker ordering in linkage groups. It is not an exhaustive search method and, therefore, is not computationally intensive. However, it does not guarantee that the best order is always found. The only requirement is a matrix with recombination fractions between markers. Next is an adapted excerpt from Mollinari et al (2009) describing the Seriation algorithm:
The map is initiated with each of the \(m\) markers and the matrix \(R\)(recombination fraction matrix). Considering \(M_{i}\) as the initial marker, \(M_{j}\) is positioned to the right if \(M_{i}\) if the recombination fraction between them is the smallest fraction between \(M_{i}\) and the other \(m-1\) markers. From the remaining \(m-1\) markers, \(M_{k}\) is chosen if it has the smallest recombination fraction with \(M_{i}\). The recombination fractions of \(M_{k}\) and both external loci of the positioned markers, \(M_{left}\) (the most external marker to the left) and \(M_{right}\) (the most external marker to the right) are compared. If \(\hat{r}_{M_{k}M_{right}} > \hat{r}_{M_{k}M_{left}}\), \(M_{k}\) is positioned to the left of the group of markers, and if the relationship is inverse, to the right. In the case of ties, the internal loci of the group already positioned are considered. The procedure is repeated until all markers are positioned, therefore providing \(m\) orders (one for each marker at the initial position). For each order, the continuity index is calculated as \(CI = \sum_{i<j} \frac{\hat{r}_{M_{i}M_{j}}}{(i-j)^2}\). The best order is considered the one that gives the smallest \(CI\) value.
NOTE: When there are to many pairs of markers with the same value in the
recombination fraction matrix, it can result in ties during
the ordination process and the Seriation algorithm may not work
properly. This is particularly relevant for outcrossing populations with mixture of
markers of type D1 and D2. When this occurs, the
function shows the following error message: There are too many
ties in the ordination process - please, consider using another ordering algorithm.
After determining the order with Seriation, the final map is
constructed using the multipoint approach (function
map).
Buetow, K. H. and Chakravarti, A. (1987) Multipoint gene mapping using seriation. I. General methods. American Journal of Human Genetics 41: 180-188.
Mollinari, M., Margarido, G. R. A., Vencovsky, R. and Garcia, A. A. F. (2009) Evaluation of algorithms used to order markers on genetics maps. Heredity 103: 494-502.
# NOT RUN {
##outcross example
data(example.out)
twopt <- rf.2pts(example.out)
all.mark <- make.seq(twopt,"all")
groups <- group(all.mark)
LG3 <- make.seq(groups,3)
LG3.ser <- seriation(LG3)
##F2 example
data(fake.f2.onemap)
twopt <- rf.2pts(fake.f2.onemap)
all.mark <- make.seq(twopt,"all")
groups <- group(all.mark)
LG1 <- make.seq(groups,1)
LG1.ser <- seriation(LG1)
LG1.ser
# }
Run the code above in your browser using DataLab