Chapter Contents
Chapter Contents
Previous
Previous
Next
Next
The CALIS Procedure

PROC CALIS Statement

PROC CALIS < options > ;
This statement invokes the procedure. The options available with the PROC CALIS statement are summarized in Table 19.1 and discussed in the following six sections.

Table 19.1: PROC CALIS Statement Options
Data Set Options Short Description
DATA=input data set
INEST=input initial values, constraints
INRAM=input model
INWGT=input weight matrix
OUTEST=covariance matrix of estimates
OUTJACJacobian into OUTEST= data set
OUTRAM=output model
OUTSTAT=output statistic
OUTWGT=output weight matrix


Data Processing Short Description
AUGMENTanalyzes augmented moment matrix
COVARIANCEanalyzes covariance matrix
EDF=defines nobs by number error df
NOBS=defines number of observations nobs
NOINTanalyzes uncorrected moments
RDF=defines nobs by number regression df
RIDGEspecifies ridge factor for moment matrix
UCORRanalyzes uncorrected CORR matrix
UCOVanalyzes uncorrected COV matrix
VARDEF=specifies variance divisor


Estimation Methods Short Description
METHOD=estimation method
ASYCOV=formula of asymptotic covariances
DFREDUCE=reduces degrees of freedom
G4=algorithm for STDERR
NODIAGexcludes diagonal elements from fit
WPENALTY=penalty weight to fit correlations
WRIDGE=ridge factor for weight matrix


Optimization Techniques Short Description
TECHNIQUE=minimization method
UPDATE=update technique
LINESEARCH=line-search method
FCONV=function convergence criterion
GCONV=gradient convergence criterion
INSTEP=initial step length (RADIUS=, SALPHA=)
LSPRECISION=line-search precision (SPRECISION=)
MAXFUNC=max number function calls
MAXITER=max number iterations


Displayed Output Options Short Description
KURTOSIScompute and display kurtosis
MODIFICATIONmodification indices
NOMODno modification indices
NOPRINTsuppresses the displayed output
PALLall displayed output (ALL)
PCORRanalyzed and estimated moment matrix
PCOVEScovariance matrix of estimates
PDETERMdetermination coefficients
PESTIMparameter estimates
PINITIALpattern and initial values
PJACPATdisplays structure of variable and constant
 elements of the Jacobian matrix
PLATCOVlatent variable covariances, scores
PREDETdisplays predetermined moment matrix
PRIMATdisplays output in matrix form
PRINTadds default displayed output
PRIVECdisplays output in vector form
PSHORTreduces default output (SHORT)
PSUMMARYdisplays only fit summary (SUMMARY)
PWEIGHTweight matrix
RESIDUAL=residual matrix and distribution
SIMPLEunivariate statistics
STDERRstandard errors
NOSTDERRcomputes no standard errors
TOTEFFdisplays total and indirect effects


Miscellaneous Options Short Description
ALPHAECV=probability Browne & Cudeck ECV
ALPHARMS=probability Steiger & Lind RMSEA
BIASKURbiased skewness and kurtosis
DEMPHAS=emphasizes diagonal entries
FDCODEuses numeric derivatives for code
HESSALG=algorithm for Hessian
NOADJDFno adjustment of df for active constraints
RANDOM=randomly generated initial values
SINGULAR=singularity criterion
ASINGULAR=absolute singularity information matrix
COVSING=singularity tolerance of information matrix
MSINGULAR=relative M singularity of information matrix
VSINGULAR=relative V singularity of information matrix
SLMW=probability limit for Wald test
START=constant initial values


Data Set Options

DATA=SAS-data-set
specifies an input data set that can be an ordinary SAS data set or a specially structured TYPE=CORR, TYPE=COV, TYPE=UCORR, TYPE=UCOV, TYPE=SSCP, or TYPE=FACTOR SAS data set, as described in the section "Input Data Sets". If the DATA= option is omitted, the most recently created SAS data set is used.

INEST | INVAR | ESTDATA=SAS-data-set
specifies an input data set that contains initial estimates for the parameters used in the optimization process and can also contain boundary and general linear constraints on the parameters. If the model did not change too much, you can specify an OUTEST= data set from a previous PROC CALIS analysis. The initial estimates are taken from the values of the PARMS observation.

INRAM=SAS-data-set
specifies an input data set that contains in RAM list form all information needed to specify an analysis model. The INRAM= data set is described in the section "Input Data Sets". Typically, this input data set is an OUTRAM= data set (possibly modified) from a previous PROC CALIS analysis. If you use an INRAM= data set to specify the analysis model, you cannot use the model specification statements COSAN, MATRIX, RAM, LINEQS, STD, COV, FACTOR, or VARNAMES, but you can use the BOUNDS and PARAMETERS statements and program statements. If the INRAM= option is omitted, you must define the analysis model with a COSAN, RAM, LINEQS, or FACTOR statement.

INWGT=SAS-data-set
specifies an input data set that contains the weight matrix W used in generalized least-squares (GLS), weighted least-squares (WLS, ADF), or diagonally weighted least-squares (DWLS) estimation. If the weight matrix W defined by an INWGT= data set is not positive definite, it can be ridged using the WRIDGE= option. See the section "Estimation Criteria" for more information. If no INWGT= data set is specified, default settings for the weight matrices are used in the estimation process. The INWGT= data set is described in the section "Input Data Sets". Typically, this input data set is an OUTWGT= data set from a previous PROC CALIS analysis.

OUTEST | OUTVAR=SAS-data-set
creates an output data set containing the parameter estimates, their gradient, Hessian matrix, and boundary and linear constraints. For METHOD=ML, METHOD=GLS, and METHOD=WLS, the OUTEST= data set also contains the information matrix, the approximate covariance matrix of the parameter estimates ((generalized) inverse of information matrix), and approximate standard errors. If linear or nonlinear equality or active inequality constraints are present, the Lagrange multiplier estimates of the active constraints, the projected Hessian, and the Hessian of the Lagrange function are written to the data set. The OUTEST= data set also contains the Jacobian if the OUTJAC option is used.

The OUTEST= data set is described in the section "OUTEST= SAS-data-set". If you want to create a permanent SAS data set, you must specify a two-level name. Refer to the chapter titled "SAS Data Files" in SAS Language Reference: Concepts for more information on permanent data sets.

OUTJAC
writes the Jacobian matrix, if it has been computed, to the OUTEST= data set. This is useful when the information and Jacobian matrices need to be computed for other analyses.

OUTSTAT=SAS-data-set
creates an output data set containing the BY group variables, the analyzed covariance or correlation matrices, and the predicted and residual covariance or correlation matrices of the analysis. You can specify the correlation or covariance matrix in an OUTSTAT= data set as an input DATA= data set in a subsequent analysis by PROC CALIS. The OUTSTAT= data set is described in the section "OUTSTAT= SAS-data-set". If the model contains latent variables, this data set also contains the predicted covariances between latent and manifest variables and the latent variables scores regression coefficients (see the PLATCOV option). If the FACTOR statement is used, the OUTSTAT= data set also contains the rotated and unrotated factor loadings, the unique variances, the matrix of factor correlations, the transformation matrix of the rotation, and the matrix of standardized factor loadings.

You can specify the latent variable score regression coefficients with PROC SCORE to compute factor scores. If you want to create a permanent SAS data set, you must specify a two-level name. Refer to the chapter titled "SAS Data Files" in SAS Language Reference: Concepts for more information on permanent data sets.

OUTRAM=SAS-data-set
creates an output data set containing the model information for the analysis, the parameter estimates, and their standard errors. An OUTRAM= data set can be used as an input INRAM= data set in a subsequent analysis by PROC CALIS. The OUTRAM= data set also contains a set of fit indices; it is described in more detail in the section "OUTRAM= SAS-data-set". If you want to create a permanent SAS data set, you must specify a two-level name. Refer to the chapter titled "SAS Data Files" in SAS Language Reference: Concepts for more information on permanent data sets.

OUTWGT=SAS-data-set
creates an output data set containing the weight matrix W used in the estimation process. You cannot create an OUTWGT= data set with an unweighted least-squares or maximum likelihood estimation. The fit function in GLS, WLS (ADF), and DWLS estimation contain the inverse of the (Cholesky factor of the) weight matrix W written in the OUTWGT= data set. The OUTWGT= data set contains the weight matrix on which the WRIDGE= and the WPENALTY= options are applied. An OUTWGT= data set can be used as an input INWGT= data set in a subsequent analysis by PROC CALIS. The OUTWGT= data set is described in the section "OUTWGT= SAS-data-set". If you want to create a permanent SAS data set, you must specify a two-level name. Refer to the chapter titled "SAS Data Files" in SAS Language Reference: Concepts for more information on permanent data sets.

Data Processing Options

AUGMENT | AUG
analyzes the augmented correlation or covariance matrix. Using the AUG option is equivalent to specifying UCORR (NOINT but not COV) or UCOV (NOINT and COV) for a data set that is augmented by an intercept variable INTERCEPT that has constant values equal to 1. The variable INTERCEP can be used instead of the default INTERCEPT only if you specify the SAS option OPTIONS VALIDVARNAME=V6. The dimension of an augmented matrix is one higher than that of the corresponding correlation or covariance matrix. The AUGMENT option is effective only if the data set does not contain a variable called INTERCEPT and if you specify the UCOV, UCORR, or NOINT option.

Caution: The INTERCEPT variable is included in the moment matrix as the variable with number n+1. Using the RAM model statement assumes that the first n variable numbers correspond to the n manifest variables in the input data set. Therefore, specifying the AUGMENT option assumes that the numbers of the latent variables used in the RAM or path model have to start with number n+2.

COVARIANCE | COV
analyzes the covariance matrix instead of the correlation matrix. By default, PROC CALIS (like the FACTOR procedure) analyzes a correlation matrix. If the DATA= input data set is a valid TYPE=CORR data set (containing a correlation matrix and standard deviations), using the COV option means that the covariance matrix is computed and analyzed.

DFE | EDF=n
makes the effective number of observations n+i, where i is 0 if the NOINT, UCORR, or UCOV option is specified without the AUGMENT option or where i is 1 otherwise. You can also use the NOBS= option to specify the number of observations.

DFR | RDF=n
makes the effective number of observations the actual number of observations minus the RDF= value. The degree of freedom for the intercept should not be included in the RDF= option. If you use PROC CALIS to compute a regression model, you can specify RDF= number-of-regressor-variables to get approximate standard errors equal to those computed by PROC REG.

NOBS= nobs
specifies the number of observations. If the DATA= input data set is a raw data set, nobs is defined by default to be the number of observations in the raw data set. The NOBS= and EDF= options override this default definition. You can use the RDF= option to modify the nobs specification. If the DATA= input data set contains a covariance, correlation, or scalar product matrix, you can specify the number of observations either by using the NOBS=, EDF=, and RDF= options in the PROC CALIS statement or by including a _TYPE_='N' observation in the DATA= input data set.

NOINT
specifies that no intercept be used in computing covariances and correlations; that is, covariances or correlations are not corrected for the mean. You can specify this option (or UCOV or UCORR) to analyze mean structures in an uncorrected moment matrix, that is, to compute intercepts in systems of structured linear equations (see Example 19.2). The term NOINT is misleading in this case because an uncorrected covariance or correlation matrix is analyzed containing a constant (intercept) variable that is used in the analysis model. The degrees of freedom used in the variance divisor (specified by the VARDEF= option) and some of the assessment of the fit function (see the section "Assessment of Fit") depend on whether an intercept variable is included in the model (the intercept is used in computing the corrected covariance or correlation matrix or is used as a variable in the uncorrected covariance or correlation matrix to estimate mean structures) or not included (an uncorrected covariance or correlation matrix is used that does not contain a constant variable).

RIDGE<=r >
defines a ridge factor r for the diagonal of the moment matrix S that is analyzed. The matrix S is transformed to
S\longrightarrow \tilde{S} = S+ r (diag (S))
If you do not specify r in the RIDGE option, PROC CALIS tries to ridge the moment matrix S so that the smallest eigenvalue is about 10-3.

Caution: The moment matrix in the OUTSTAT= output data set does not contain the ridged diagonal.

UCORR
analyzes the uncorrected correlation matrix instead of the correlation matrix corrected for the mean. Using the UCORR option is equivalent to specifying the NOINT option but not the COV option.

UCOV
analyzes the uncorrected covariance matrix instead of the covariance matrix corrected for the mean. Using the UCOV option is equivalent to specifying both the COV and NOINT options. You can specify this option to analyze mean structures in an uncorrected covariance matrix, that is, to compute intercepts in systems of linear structural equations (see Example 19.2).

VARDEF= DF | N | WDF | WEIGHT | WGT
specifies the divisor used in the calculation of covariances and standard deviations. The default value is VARDEF=DF. The values and associated divisors are displayed in the following table, where i=0 if the NOINT option is used and i=1 otherwise and where k is the number of partial variables specified in the PARTIAL statement. Using an intercept variable in a mean structure analysis, by specifying the AUGMENT option, includes the intercept variable in the analysis. In this case, i=1. When a WEIGHT statement is used, wj is the value of the WEIGHT variable in the jth observation, and the summation is performed only over observations with positive weight.

Value Description Divisor
DFdegrees of freedomN - k - i
Nnumber of observationsN
WDFsum of weights DF\sum_j^N w_j - k - i
WEIGHT | WGTsum of weights\sum_j^N w_j

Estimation Methods

The default estimation method is maximum likelihood (METHOD=ML), assuming a multivariate normal distribution of the observed variables. The two-stage estimation methods METHOD=LSML, METHOD=LSGLS, METHOD=LSWLS, and METHOD=LSDWLS first compute unweighted least-squares estimates of the model parameters and their residuals. Afterward, these estimates are used as initial values for the optimization process to compute maximum likelihood, generalized least-squares, weighted least-squares, or diagonally weighted least-squares parameter estimates. You can do the same thing by using an OUTRAM= data set with least-squares estimates as an INRAM= data set for a further analysis to obtain the second set of parameter estimates. This strategy is also discussed in the section "Use of Optimization Techniques". For more details, see the "Estimation Criteria" section.

METHOD | MET=name
specifies the method of parameter estimation. The default is METHOD=ML. Valid values for name are as follows:
ML | M | MAX
performs normal-theory maximum likelihood parameter estimation. The ML method requires a nonsingular covariance or correlation matrix.
GLS | G
performs generalized least-squares parameter estimation. If no INWGT= data set is specified, the GLS method uses the inverse sample covariance or correlation matrix as weight matrix W. Therefore, METHOD=GLS requires a nonsingular covariance or correlation matrix.
WLS | W | ADF
performs weighted least-squares parameter estimation. If no INWGT= data set is specified, the WLS method uses the inverse matrix of estimated asymptotic covariances of the sample covariance or correlation matrix as the weight matrix W. In this case, the WLS estimation method is equivalent to Browne's (1982, 1984) asymptotically distribution-free estimation. The WLS method requires a nonsingular weight matrix.
DWLS | D
performs diagonally weighted least-squares parameter estimation. If no INWGT= data set is specified, the DWLS method uses the inverse diagonal matrix of asymptotic variances of the input sample covariance or correlation matrix as the weight matrix W. The DWLS method requires a nonsingular diagonal weight matrix.
ULS | LS | U
performs unweighted least-squares parameter estimation.
LSML | LSM | LSMAX
performs unweighted least-squares followed by normal-theory maximum likelihood parameter estimation.
LSGLS | LSG
performs unweighted least-squares followed by generalized least-squares parameter estimation.
LSWLS | LSW | LSADF
performs unweighted least-squares followed by weighted least-squares parameter estimation.
LSDWLS | LSD
performs unweighted least-squares followed by diagonally weighted least-squares parameter estimation.
NONE | NO
uses no estimation method. This option is suitable for checking the validity of the input information and for displaying the model matrices and initial values.

ASYCOV | ASC=name
specifies the formula for asymptotic covariances used in the weight matrix W for WLS and DWLS estimation. The ASYCOV option is effective only if METHOD= WLS or METHOD=DWLS and no INWGT= input data set is specified. The following formulas are implemented:
BIASED:
Browne's (1984) formula (3.4)
biased asymptotic covariance estimates; the resulting weight matrix is at least positive semidefinite. This is the default for analyzing a covariance matrix.
UNBIASED:
Browne's (1984) formula (3.8)
asymptotic covariance estimates corrected for bias; the resulting weight matrix can be indefinite (that is, can have negative eigenvalues), especially for small N.
CORR:
Browne and Shapiro's (1986) formula (3.2)
(identical to DeLeeuw's (1983) formulas (2,3,4)) the asymptotic variances of the diagonal elements are set to the reciprocal of the value r specified by the WPENALTY= option (default: r=100). This formula is the default for analyzing a correlation matrix.

Caution: Using the WLS and DWLS methods with the ASYCOV=CORR option means that you are fitting a correlation (rather than a covariance) structure. Since the fixed diagonal of a correlation matrix for some models does not contribute to the model's degrees of freedom, you can specify the DFREDUCE=i option to reduce the degrees of freedom by the number of manifest variables used in the model. See the section "Counting the Degrees of Freedom" for more information.

DFREDUCE | DFRED=i
reduces the degrees of freedom of the \chi^2 test by i. In general, the number of degrees of freedom is the number of elements of the lower triangle of the predicted model matrix C, n(n+1)/2, minus the number of parameters, t. If the NODIAG option is used, the number of degrees of freedom is additionally reduced by n. Because negative values of i are allowed, you can also increase the number of degrees of freedom by using this option. If the DFREDUCE= or NODIAG option is used in a correlation structure analysis, PROC CALIS does not additionally reduce the degrees of freedom by the number of constant elements in the diagonal of the predicted model matrix, which is otherwise done automatically. See the section "Counting the Degrees of Freedom" for more information.

G4=i
specifies the algorithm to compute the approximate covariance matrix of parameter estimates used for computing the approximate standard errors and modification indices when the information matrix is singular. If the number of parameters t used in the model you analyze is smaller than the value of i, the time-expensive Moore-Penrose (G4) inverse of the singular information matrix is computed by eigenvalue decomposition. Otherwise, an inexpensive pseudo (G1) inverse is computed by sweeping. By default, i=60. For more details, see the section "Estimation Criteria".

NODIAG | NODI
omits the diagonal elements of the analyzed correlation or covariance matrix from the fit function. This option is useful only for special models with constant error variables. The NODIAG option does not allow fitting those parameters that contribute to the diagonal of the estimated moment matrix. The degrees of freedom are automatically reduced by n. A simple example for the usefulness of the NODIAG option is the fit of the first-order factor model, S = FF' + U2. In this case, you do not have to estimate the diagonal matrix of unique variances U2 that are fully determined by diag(S- FF').

WPENALTY | WPEN=r
specifies the penalty weight r \geq 0 for the WLS and DWLS fit of the diagonal elements of a correlation matrix (constant 1s). The criterion for weighted least-squares estimation of a correlation structure is
F_{WLS} = {\sum_{i=2}^n \sum_{j=1}^{i-1} \sum_{k=2}^n
 \sum_{l=1}^{k-1} w^{ij,kl} (s_{ij} - c_{ij})(s_{kl} - c_{kl}) }
 + r \sum_i^n (s_{ii} - c_{ii})^2
where r is the penalty weight specified by the WPENALTY=r option and the wij,kl are the elements of the inverse of the reduced (n(n-1)/2) ×(n(n-1)/2) weight matrix that contains only the nonzero rows and columns of the full weight matrix W. The second term is a penalty term to fit the diagonal elements of the correlation matrix. The default value is 100. The reciprocal of this value replaces the asymptotic variance corresponding to the diagonal elements of a correlation matrix in the weight matrix W, and it is effective only with the ASYCOV=CORR option. The often used value r=1 seems to be too small in many cases to fit the diagonal elements of a correlation matrix properly. The default WPENALTY= value emphasizes the importance of the fit of the diagonal elements in the correlation matrix. You can decrease or increase the value of r if you want to decrease or increase the importance of the diagonal elements fit. This option is effective only with the WLS or DWLS estimation method and the analysis of a correlation matrix. See the section "Estimation Criteria" for more details.

WRIDGE=r
defines a ridge factor r for the diagonal of the weight matrix W used in GLS, WLS, or DWLS estimation. The weight matrix W is transformed to
W\longrightarrow \tilde{W} = W+ r (diag (W))
The WRIDGE= option is applied on the weight matrix

Optimization Techniques

Since there is no single nonlinear optimization algorithm available that is clearly superior (in terms of stability, speed, and memory) for all applications, different types of optimization techniques are provided in the CALIS procedure. Each technique can be modified in various ways. The default optimization technique for less than 40 parameters (t < 40) is TECHNIQUE=LEVMAR. For 40 \le t \lt 400, TECHNIQUE=QUANEW is the default method, and for t \geq 400, TECHNIQUE=CONGRA is the default method. For more details, see the section "Use of Optimization Techniques". You can specify the following set of options in the PROC CALIS statement or in the NLOPTIONS statement.

TECHNIQUE | TECH=name
OMETHOD | OM=name
specifies the optimization technique. Valid values for name are as follows:

CONGRA  |  CG
chooses one of four different conjugate-gradient optimization algorithms, which can be more precisely defined with the UPDATE= option and modified with the LINESEARCH= option. The conjugate-gradient techniques need only O(t) memory compared to the O(t2) memory for the other three techniques, where t is the number of parameters. On the other hand, the conjugate-gradient techniques are significantly slower than other optimization techniques and should be used only when memory is insufficient for more efficient techniques. When you choose this option, UPDATE=PB by default. This is the default optimization technique if there are more than 400 parameters to estimate.

DBLDOG | DD
performs a version of double dogleg optimization, which uses the gradient to update an approximation of the Cholesky factor of the Hessian. This technique is, in many aspects, very similar to the dual quasi-Newton method, but it does not use line search. The implementation is based on Dennis and Mei (1979) and Gay (1983).

LEVMAR | LM | MARQUARDT
performs a highly stable but, for large problems, memory- and time-consuming Levenberg-Marquardt optimization technique, a slightly improved variant of the Mor\acute{e} (1978) implementation. This is the default optimization technique if there are fewer than 40 parameters to estimate.
NEWRAP | NR | NEWTON
performs a usually stable but, for large problems, memory- and time-consuming Newton-Raphson optimization technique. The algorithm combines a line-search algorithm with ridging, and it can be modified with the LINESEARCH= option. In releases prior to Release 6.11, this option invokes the NRRIDG option.
NRRIDG | NRR | NR
performs a usually stable but, for large problems, memory- and time-consuming Newton-Raphson optimization technique. This algorithm does not perform a line search. Since TECH=NRRIDG uses an orthogonal decomposition of the approximate Hessian, each iteration of TECH=NRRIDG can be slower than that of TECH=NEWRAP, which works with Cholesky decomposition. However, usually TECH=NRRIDG needs less iterations than TECH=NEWRAP.
QUANEW | QN
chooses one of four different quasi-Newton optimization algorithms that can be more precisely defined with the UPDATE= option and modified with the LINESEARCH= option. If boundary constraints are used, these techniques sometimes converge slowly. When you choose this option, UPDATE=DBFGS by default. If nonlinear constraints are specified in the NLINCON statement, a modification of Powell's (1982a, 1982b) VMCWD algorithm is used, which is a sequential quadratic programming (SQP) method. This algorithm can be modified by specifying VERSION=1, which replaces the update of the Lagrange multiplier estimate vector \mu to the original update of Powell (1978a, 1978b) that is used in the VF02AD algorithm. This can be helpful for applications with linearly dependent active constraints. The QUANEW technique is the default optimization technique if there are nonlinear constraints specified or if there are more than 40 and fewer than 400 parameters to estimate. The QUANEW algorithm uses only first-order derivatives of the objective function and, if available, of the nonlinear constraint functions.

TRUREG | TR
performs a usually very stable but, for large problems, memory- and time-consuming trust region optimization technique. The algorithm is implemented similar to Gay (1983) and Mor\acute{e} and Sorensen (1983).
NONE | NO
does not perform any optimization. This option is similar to METHOD=NONE, but TECH=NONE also computes and displays residuals and goodness-of-fit statistics. If you specify METHOD=ML, METHOD=LSML, METHOD=GLS, METHOD=LSGLS, METHOD=WLS, or METHOD=LSWLS, this option allows computing and displaying (if the display options are specified) of the standard error estimates and modification indices corresponding to the input parameter estimates.

UPDATE | UPD=name
specifies the update method for the quasi-Newton or conjugate-gradient optimization technique.

For TECHNIQUE=CONGRA, the following updates can be used:
PB
performs the automatic restart update methodof Powell (1977) and Beale (1972). This is the default.

FR
performs the Fletcher-Reeves update (Fletcher 1980, p. 63).

PR
performs the Polak-Ribiere update (Fletcher 1980, p. 66).

CD
performs a conjugate-descent update of Fletcher (1987).

For TECHNIQUE=DBLDOG, the following updates (Fletcher 1987) can be used:
DBFGS
performs the dual Broyden, Fletcher, Goldfarb, and Shanno (BFGS) update of the Cholesky factor of the Hessian matrix. This is the default.

DDFP
performs the dual Davidon, Fletcher, and Powell (DFP) update of the Cholesky factor of the Hessian matrix.

For TECHNIQUE=QUANEW, the following updates (Fletcher 1987) can be used:
BFGS
performs original BFGS update of the inverse Hessian matrix. This is the default for earlier releases.
DFP
performs the original DFP update of the inverse Hessian matrix.
DBFGS
performs the dual BFGS update of the Cholesky factor of the Hessian matrix. This is the default.
DDFP
performs the dual DFP update of the Cholesky factor of the Hessian matrix.

LINESEARCH | LIS | SMETHOD | SM=i
specifies the line-search method for the CONGRA, QUANEW, and NEWRAP optimization techniques. Refer to Fletcher (1980) for an introduction to line-search techniques. The value of i can be 1, ... , 8; the default is i=2.
LIS=1
specifies a line-search method that needs the same number of function and gradient calls for cubic interpolation and cubic extrapolation; this method is similar to one used by the Harwell subroutine library.
LIS=2
specifies a line-search method that needs more function calls than gradient calls for quadratic and cubic interpolation and cubic extrapolation; this method is implemented as shown in Fletcher (1987) and can be modified to an exact line search by using the LSPRECISION= option.
LIS=3
specifies a line-search method that needs the same number of function and gradient calls for cubic interpolation and cubic extrapolation; this method is implemented as shown in Fletcher (1987) and can be modified to an exact line search by using the LSPRECISION= option.
LIS=4
specifies a line-search method that needs the same number of function and gradient calls for stepwise extrapolation and cubic interpolation.
LIS=5
specifies a line-search method that is a modified version of LIS=4.
LIS=6
specifies golden section line search (Polak 1971), which uses only function values for linear approximation.
LIS=7
specifies bisection line search (Polak 1971), which uses only function values for linear approximation.
LIS=8
specifies Armijo line-search technique (Polak 1971), which uses only function values for linear approximation.

FCONV | FTOL=r
specifies the relative function convergence criterion. The optimization process is terminated when the relative difference of the function values of two consecutive iterations is smaller than the specified value of r, that is
\frac{ | f(x^{(k)}) - f(x^{(k-1)})| }
 { \max(| f(x^{(k-1)})|,FSIZE) } \leq r
where FSIZE can be defined by the FSIZE= option in the NLOPTIONS statement. The default value is r=10-FDIGITS, where FDIGITS either can be specified in the NLOPTIONS statement or is set by default to -\log_{10}(\epsilon), where \epsilon is the machine precision.

GCONV | GTOL=r
specifies the relative gradient convergence criterion (see the ABSGCONV= option for the absolute gradient convergence criterion).

Termination of all techniques (except the CONGRA technique) requires the normalized predicted function reduction to be small,
{ [g(x^{(k)})]^' [G^{(k)}]^{-1} g(x^{(k)}) \over
 \max(| f(x^{(k)})|,FSIZE) } \leq r
where FSIZE can be defined by the FSIZE= option in the NLOPTIONS statement. For the CONGRA technique (where a reliable Hessian estimate G is not available),
{ \parallel g(x^{(k)}) \parallel_2^2 
 \parallel s(x^{(k)}) \parallel_2
 \over \parallel g(x^{(k)}) - g(x^{(k-1)})
 \parallel_2 \max(| f(x^{(k)})|,FSIZE) } \leq r
is used. The default value is r=10-8.

Note that for releases prior to Release 6.11, the GCONV= option specified the absolute gradient convergence criterion.

INSTEP=r
For highly nonlinear objective functions, such as the EXP function, the default initial radius of the trust-region algorithms TRUREG, DBLDOG, and LEVMAR or the default step length of the line-search algorithms can produce arithmetic overflows. If this occurs, specify decreasing values of 0 < r < 1 such as INSTEP=1E-1, INSTEP=1E-2, INSTEP=1E-4, ..., until the iteration starts successfully. For releases prior to Release 6.11, specify the SALPHA= and RADIUS= options. For more details, see the section "Computational Problems".

LSPRECISION | LSP=r
SPRECISION | SP=r
specifies the degree of accuracy that should be obtained by the line-search algorithms LIS=2 and LIS=3. Usually an imprecise line search is inexpensive and successful. For more difficult optimization problems, a more precise and more expensive line search may be necessary (Fletcher 1980, p.22). The second (default for NEWRAP, QUANEW, and CONGRA) and third line-search methods approach exact line search for small LSPRECISION= values. If you have numerical problems, you should decrease the LSPRECISION= value to obtain a more precise line search. The default LSPRECISION= values are displayed in the following table.

TECH= UPDATE= LSP default
QUANEWDBFGS, BFGSr = 0.4
QUANEWDDFP, DFPr = 0.06
CONGRAallr = 0.1
NEWRAPno updater = 0.9


For more details, refer to Fletcher (1980, pp. 25 -29).

MAXFUNC | MAXFU=i
specifies the maximum number i of function calls in the optimization process. The default values are displayed in the following table.

TECH= MAXFUNC default
LEVMAR, NEWRAP, NRRIDG, TRUREGi=125
DBLDOG, QUANEWi=500
CONGRAi=1000


The default is used if you specify MAXFUNC=0. The optimization can be terminated only after completing a full iteration. Therefore, the number of function calls that is actually performed can exceed the number that is specified by the MAXFUNC= option.

MAXITER | MAXIT=i <n>
specifies the maximum number i of iterations in the optimization process. The default values are displayed in the following table.

TECH= MAXITER default
LEVMAR, NEWRAP, NRRIDG, TRUREGi=50
DBLDOG, QUANEWi=200
CONGRAi=400


The default is used if you specify MAXITER=0 or missing.

The optional second value n is valid only for TECH=QUANEW with nonlinear constraints. It specifies an upper bound n for the number of iterations of an algorithm and reduces the violation of nonlinear constraints at a starting point. The default is n=20. For example, specifying
   maxiter= . 0
means that you do not want to exceed the default number of iterations during the main optimization process and that you want to suppress the feasible point algorithm for nonlinear constraints.

RADIUS=r
is an alias for the INSTEP= option for Levenberg-Marquardt minimization.

SALPHA=r
is an alias for the INSTEP= option for line-search algorithms.

SPRECISION | SP=r
is an alias for the LSPRECISION= option.

Displayed Output Options

There are three kinds of options to control the displayed output:



Output Options PALL PRINT default PSHORT PSUMMARY
fit indices*****
linear dependencies*****
PREDET*(*)(*)(*) 
model matrices**** 
PESTIM**** 
iteration history**** 
PINITIAL***  
SIMPLE***  
STDERR***  
RESIDUAL**   
KURTOSIS**   
PLATCOV**   
TOTEFF**   
PCORR*    
MODIFICATION*    
PWEIGHT*    
PCOVES     
PDETERM     
PJACPAT     
PRIMAT     
PRIVEC     


KURTOSIS | KU
computes and displays univariate kurtosis and skewness, various coefficients of multivariate kurtosis, and the numbers of observations that contribute most to the normalized multivariate kurtosis. See the section "Measures of Multivariate Kurtosis" for more information. Using the KURTOSIS option implies the SIMPLE display option. This information is computed only if the DATA= data set is a raw data set, and it is displayed by default if the PRINT option is specified. The multivariate LS kappa and the multivariate mean kappa are displayed only if you specify METHOD=WLS and the weight matrix is computed from an input raw data set. All measures of skewness and kurtosis are corrected for the mean. If an intercept variable is included in the analysis, the measures of multivariate kurtosis do not include the intercept variable in the corrected covariance matrix, as indicated by a displayed message. Using the BIASKUR option displays the biased values of univariate skewness and kurtosis.

MODIFICATION | MOD
computes and displays Lagrange multiplier test indices for constant parameter constraints, equality parameter constraints, and active boundary constraints, as well as univariate and multivariate Wald test indices. The modification indices are not computed in the case of unweighted or diagonally weighted least-squares estimation.

The Lagrange multiplier test (Bentler 1986; Lee 1985; Buse 1982) provides an estimate of the \chi^2 reduction that results from dropping the constraint. For constant parameter constraints and active boundary constraints, the approximate change of the parameter value is displayed also. You can use this value to obtain an initial value if the parameter is allowed to vary in a modified model. For more information, see the section "Modification Indices".

NOMOD
does not compute modification indices. The NOMOD option is useful in connection with the PALL option because it saves computing time.

NOPRINT | NOP
suppresses the displayed output. Note that this option temporarily disables the Output Delivery System (ODS). For more information, see Chapter 15, "Using the Output Delivery System."

PALL | ALL
displays all optional output except the output generated by the PCOVES, PDETERM, PJACPAT, and PRIVEC options.

Caution: The PALL option includes the very expensive computation of the modification indices. If you do not really need modification indices, you can save computing time by specifying the NOMOD option in addition to the PALL option.

PCORR | CORR
displays the (corrected or uncorrected) covariance or correlation matrix that is analyzed and the predicted model covariance or correlation matrix.

PCOVES | PCE
displays the following:

The covariance matrix of the parameter estimates is not computed for estimation methods ULS and DWLS. This displayed output is not included in the output generated by the PALL option.

PDETERM | PDE
displays three coefficients of determination: the determination of all equations (DETAE), the determination of the structural equations (DETSE), and the determination of the manifest variable equations (DETMV). These determination coefficients are intended to be global means of the squared multiple correlations for different subsets of model equations and variables. The coefficients are displayed only when you specify a RAM or LINEQS model, but they are displayed for all five estimation methods: ULS, GLS, ML, WLS, and DWLS.

You can use the STRUCTEQ statement to define which equations are structural equations. If you don't use the STRUCTEQ statement, PROC CALIS uses its own default definition to identify structural equations.

The term "structural equation" is not defined in a unique way. The LISREL program defines the structural equations by the user-defined BETA matrix. In PROC CALIS, the default definition of a structural equation is an equation that has a dependent left side variable that appears at least once on the right side of another equation, or an equation that has at least one right side variable that is the left side variable of another equation. Therefore, PROC CALIS sometimes identifies more equations as structural equations than the LISREL program does.

If the model contains structural equations, PROC CALIS also displays the "Stability Coefficient of Reciprocal Causation," that is, the largest eigenvalue of the BB' matrix, where B is the causal coefficient matrix of the structural equations. These coefficients are computed as in the LISREL VI program of J\ddot{o}reskog and S\ddot{o}rbom (1985). This displayed output is not included in the output generated by the PALL option.

PESTIM | PES
displays the parameter estimates. In some cases, this includes displaying the standard errors and t values.

PINITIAL | PIN
displays the input model matrices and the vector of initial values.

PJACPAT | PJP
displays the structure of variable and constant elements of the Jacobian matrix. This displayed output is not included in the output generated by the PALL option.

PLATCOV | PLC
displays the following: The estimated covariances between latent and manifest variables and the latent variable score regression coefficients are written to the OUTSTAT= data set. You can use the score coefficients with PROC SCORE to compute factor scores.
PREDET | PRE
displays the pattern of variable and constant elements of the predicted moment matrix that is predetermined by the analysis model. It is especially helpful in finding manifest variables that are not used or that are used as exogenous variables in a complex model specified in the COSAN statement. Those entries of the predicted moment matrix for which the model generates variable (rather than constant) elements are displayed as missing values. This output is displayed even without specifying the PREDET option if the model generates constant elements in the predicted model matrix different from those in the analysis moment matrix and if you specify at least the PSHORT amount of displayed output.

If the analyzed matrix is a correlation matrix (containing constant elements of 1s in the diagonal) and the model generates a predicted model matrix with q constant (rather than variable) elements in the diagonal, the degrees of freedom are automatically reduced by q. The output generated by the PREDET option displays those constant diagonal positions. If you specify the DFREDUCE= or NODIAG option, this automatic reduction of the degrees of freedom is suppressed. See the section "Counting the Degrees of Freedom" for more information.

PRIMAT | PMAT
displays parameter estimates, approximate standard errors, and t values in matrix form if you specify the analysis model in the RAM or LINEQS statement. When a COSAN statement is used, this occurs by default.

PRINT | PRI
adds the options KURTOSIS, RESIDUAL, PLATCOV, and TOTEFF to the default output.

PRIVEC | PVEC
displays parameter estimates, approximate standard errors, the gradient, and t values in vector form. The values are displayed with more decimal places. This displayed output is not included in the output generated by the PALL option.

PSHORT | SHORT | PSH
excludes the output produced by the PINITIAL, SIMPLE, and STDERR options from the default output.

PSUMMARY | SUMMARY | PSUM
displays the fit assessment table and the ERROR, WARNING, and NOTE messages.

PWEIGHT | PW
displays the weight matrix used in the estimation. The weight matrix is displayed after the WRIDGE= and the WPENALTY= options are applied to it.

RESIDUAL | RES < = NORM  |  VARSTAND  |  ASYSTAND >
displays the absolute and normalized residual covariance matrix, the rank order of the largest residuals, and a bar chart of the residuals. This information is displayed by default when you specify the PRINT option. Three types of normalized or standardized residual matrices can be chosen with the RESIDUAL= specification.

RESIDUAL= NORM
Normalized Residuals
RESIDUAL= VARSTAND
Variance Standardized Residuals
RESIDUAL= ASYSTAND
Asymptotically Standardized Residuals
For more details, see the section "Assessment of Fit".

SIMPLE | S
displays means, standard deviations, skewness, and univariate kurtosis if available. This information is displayed when you specify the PRINT option. If you specify the UCOV, UCORR, or NOINT option, the standard deviations are not corrected for the mean. If the KURTOSIS option is specified, the SIMPLE option is set by default.

STDERR | SE
displays approximate standard errors if estimation methods other than unweighted least squares (ULS) or diagonally weighted least squares (DWLS) are used (and the NOSTDERR option is not specified). If you specify neither the STDERR nor the NOSTDERR option, the standard errors are computed for the OUTRAM= data set. This information is displayed by default when you specify the PRINT option.

NOSTDERR | NOSE
specifies that standard errors should not be computed. Standard errors are not computed for unweighted least-squares (ULS) or diagonally weighted least-squares (DWLS) estimation. In general, standard errors are computed even if the STDERR display option is not used (for file output).

TOTEFF | TE
computes and displays total effects and indirect effects.

Miscellaneous Options

ALPHAECV=\alpha
specifies the significance level for a 1-\alpha confidence interval, 0 \leq \alpha \leq 1, for the Browne & Cudeck (1993) expected cross validation index (ECVI) . The default value is \alpha=0.1, which corresponds to a 90% confidence interval for the ECVI.
ALPHARMS=\alpha
specifies the significance level for a 1-\alpha confidence interval, 0 \leq \alpha \leq 1, for the Steiger & Lind (1980) root mean squared error of approximation (RMSEA) coefficient (refer to Browne and Du Toit 1992). The default value is \alpha=0.1, which corresponds to a 90% confidence interval for the RMSEA.

ASINGULAR | ASING=r
specifies an absolute singularity criterion r, r > 0, for the inversion of the information matrix, which is needed to compute the covariance matrix. The following singularity criterion is used:
| d_{j,j}| \le
 \max (ASING,
 VSING
 * | H_{j,j}|,
 MSING
 * \max(| H_{1,1}|, ... ,| H_{n,n}|))
where dj,j is the diagonal pivot of the matrix, and VSING and MSING are the specified values of the VSINGULAR= and MSINGULAR= options. The default value for ASING is the square root of the smallest positive double precision value. Note that, in many cases, a normalized matrix D-1HD-1 is decomposed, and the singularity criteria are modified correspondingly.

BIASKUR
computes univariate skewness and kurtosis by formulas uncorrected for bias. See the section "Measures of Multivariate Kurtosis" for more information.
COVSING=r
specifies a nonnegative threshold r, which determines whether the eigenvalues of the information matrix are considered to be zero. If the inverse of the information matrix is found to be singular (depending on the VSINGULAR=, MSINGULAR=, ASINGULAR=, or SINGULAR= option), a generalized inverse is computed using the eigenvalue decomposition of the singular matrix. Those eigenvalues smaller than r are considered to be zero. If a generalized inverse is computed and you do not specify the NOPRINT option, the distribution of eigenvalues is displayed.

DEMPHAS | DE=r
changes the initial values of all parameters that are located on the diagonals of the central model matrices by the relationship
diagnew = r (|diagold| + 1)
The initial values of the diagonal elements of the central matrices should always be nonnegative to generate positive definite predicted model matrices in the first iteration. By using values of r > 1, for example, r=2, r=10, ..., you can increase these initial values to produce predicted model matrices with high positive eigenvalues in the first iteration. The DEMPHAS= option is effective independent of the way the initial values are set; that is, it changes the initial values set in the model specification as well as those set by an INRAM= data set and those automatically generated for RAM, LINEQS, or FACTOR model statements. It also affects the initial values set by the START= option, which uses, by default, DEMPHAS=100 if a covariance matrix is analyzed and DEMPHAS=10 for a correlation matrix.

FDCODE
replaces the analytic derivatives of the program statements by numeric derivatives (finite difference approximations). In general, this option is needed only when you have program statements that are too difficult for the built-in function compiler to differentiate analytically. For example, if the program code for the nonlinear constraints contains many arrays and many DO loops with array processing, the built-in function compiler can require too much time and memory to compute derivatives of the constraints with respect to the parameters. In this case, the Jacobian matrix of constraints is computed numerically by using finite difference approximations. The FDCODE option does not modify the kind of derivatives specified with the HESSALG= option.

HESSALG | HA  =  1 | 2 | 3 | 4 | 5 | 6 | 11
specifies the algorithm used to compute the (approximate) Hessian matrix when TECHNIQUE=LEVMAR and NEWRAP, to compute approximate standard errors of the parameter estimates, and to compute Lagrange multipliers. There are different groups of algorithms available.



If the Jacobian is more than 25% dense, the dense analytic algorithm, HA=1, is used by default. The HA=1 algorithm is faster than the other dense algorithms, but it needs considerably more memory for large problems than HA=2,3,4. If the Jacobian is more than 75% sparse, the sparse analytic algorithm, HA=11, is used by default. The dense analytic algorithm HA=4 corresponds to the original COSAN algorithm; you are advised not to specify HA=4 due to its very slow performance. If there is not enough memory available for the dense analytic algorithm HA=1 and you must specify HA=2 or HA=3, it may be more efficient to use one of the quasi-Newton or conjugate-gradient optimization techniques since Levenberg-Marquardt and Newton-Raphson optimization techniques need to compute the Hessian matrix in each iteration. For approximate standard errors and modification indices, the Hessian matrix has to be computed at least once, regardless of the optimization technique.

The algorithms HA=5 and HA=6 compute approximate derivatives by using forward difference formulas. The HA=5 algorithm corresponds to the analytic HA=1: it is faster than HA=6, however it needs much more memory. The HA=6 algorithm corresponds to the analytic HA=2: it is slower than HA=5, however it needs much less memory.

Test computations of large sparse problems show that the sparse algorithm HA=11 can be up to ten times faster than HA=1 (and needs much less memory).

MSINGULAR | MSING=r
specifies a relative singularity criterion r, r > 0, for the inversion of the information matrix, which is needed to compute the covariance matrix. The following singularity criterion is used:
| d_{j,j}| \le
 \max (ASING,
 VSING
 * | H_{j,j}|,
 MSING
 * \max(| H_{1,1}|, ... ,| H_{n,n}|))
where dj,j is the diagonal pivot of the matrix, and ASING and VSING are the specified values of the ASINGULAR= and VSINGULAR= options. If you do not specify the SINGULAR= option, the default value for MSING is 1E-12; otherwise, the default value is 1E-4 * SINGULAR. Note that, in many cases, a normalized matrix D-1HD-1 is decomposed, and the singularity criteria are modified correspondingly.

NOADJDF
turns off the automatic adjustment of degrees of freedom when there are active constraints in the analysis. When the adjustment is in effect, most fit statistics and the associated probability levels will be affected. This option should be used when the researcher believes that the active constraints observed in the current sample will have little chance to occur in repeated sampling.

RANDOM =i
specifies a positive integer as a seed value for the pseudo-random number generator to generate initial values for the parameter estimates for which no other initial value assignments in the model definitions are made. Except for the parameters in the diagonal locations of the central matrices in the model, the initial values are set to random numbers in the range 0 \le r \le 1. The values for parameters in the diagonals of the central matrices are random numbers multiplied by 10 or 100. For more information, see the section "Initial Estimates".

SINGULAR | SING =r
specifies the singularity criterion r, 0 < r < 1, used, for example, for matrix inversion. The default value is the square root of the relative machine precision or, equivalently, the square root of the largest double precision value that, when added to 1, results in 1.

SLMW=r
specifies the probability limit used for computing the stepwise multivariate Wald test. The process stops when the univariate probability is smaller than r. The default value is r= 0.05.

START =r
In general, this option is needed only in connection with the COSAN model statement, and it specifies a constant r as an initial value for all the parameter estimates for which no other initial value assignments in the pattern definitions are made. Start values in the diagonal locations of the central matrices are set to 100 |r| if a COV or UCOV matrix is analyzed and 10 |r| if a CORR or UCORR matrix is analyzed. The default value is r = .5. Unspecified initial values in a FACTOR, RAM, or LINEQS model are usually computed by PROC CALIS. If none of the initialization methods are able to compute all starting values for a model specified by a FACTOR, RAM, or LINEQS statement, then the start values of parameters that could not be computed are set to r, 10 |r|, or 100 |r|. If the DEMPHAS= option is used, the initial values of the diagonal elements of the central model matrices are multiplied by the value specified in the DEMPHAS= option. For more information, see the section "Initial Estimates".

VSINGULAR | VSING=r
specifies a relative singularity criterion r, r > 0, for the inversion of the information matrix, which is needed to compute the covariance matrix. The following singularity criterion is used:
| d_{j,j}| \le
 \max (ASING,
 VSING
 * | H_{j,j}|,
 MSING
 * \max(| H_{1,1}|, ... ,| H_{n,n}|))
where dj,j is the diagonal pivot of the matrix, and ASING and MSING are the specified values of the ASINGULAR= and MSINGULAR= options. If you do not specify the SINGULAR= option, the default value for VSING is 1E-8; otherwise, the default value is SINGULAR. Note that in many cases a normalized matrix D-1HD-1 is decomposed, and the singularity criteria are modified correspondingly.

Chapter Contents
Chapter Contents
Previous
Previous
Next
Next
Top
Top

Copyright © 1999 by SAS Institute Inc., Cary, NC, USA. All rights reserved.