This function fits a weighted multidimensional scaling model that is known as the asymscal model. This model is an extension of the symmetric Euclidean distance model proposed by Young (1975). The model is fitted in a stress majorization framework called SMACOF, whereas Young fitted this model using a least squares algorithm. Asymmetry is modelled by differential weighting of the dimensions of a multidimensional scaling configuration. When a subject compares object i to j he or she may use different weights when comparing object j to i In addition to these weights, the locations of the objects are jointly estimated from the data. $$d_{ij}(X)=\sqrt{\sum_{s=1}^pv_{is}(x_{is}-x_{js})^2}.$$
asymscal(data, ndim = 2, start = NULL, verbose = FALSE, itmax = 10000, eps = 1e-10)
Asymmetric dissimilarity matrix
Number of dimensions
Optional configuration with starting values, the default is a random start configuration
If TRUE, stress values during the iterations are printed
Maximum number of iterations
Convergence criterion for Stress
Observed dissimilarities
List of observed dissimilarities, normalized
Joint configurations aka group stimulus space
Configuration weights
Stress-1 value
Matrix with residuals
Residual sum-of-squares
Stress per point
Number of dimensions
Type of the asymmetric scaling model
Number of iterations
Number of objects
This function exploits a connection between the INDSCAL model and the asymscal model. This method inherits the methods for plotting an printing from the smacofIndDiff
in the smacof package. Basically, the asymscal takes two steps. First, this function sets up the appropriate dissimilarity and missing data structure for a three-way multidimensional scaling model, then a call to the method smacofIndDiff
in the imported package smacof is made. After correcting for the normalization applied to the data by smacofIndDiff
, the results can be displayed and plotted by the methods in the package smacof
.
The original algorithm for fitting the asymscal model fits squared distances. This function is based on majorization, and fits distances and not squared distances. The configuration matrix is normalized, the sum of squares of the columns of this matrix are equal to one.
Young, F. W. (1975). An asymmetric Euclidean model for multi-process asymmetric data. Paper presented at the U.S.-Japan Seminar on Multidimensional scaling, San Diego, U.S.A.
# NOT RUN {
data("asymscalexample")
t<-asymscal(asymscalexample, ndim = 2, itmax = 10000, eps = 1e-10)
t$cweights
round(t$cweights, 3)
plot(t, plot.type = "confplot")
plot(t, plot.type = "bubbleplot")
plot(t, plot.type = "stressplot")
# }
Run the code above in your browser using DataLab