9  Constraints on Omega and Sigma

1 Introduction

The omega and sigma matrices are always constrained to be positive semidefinite, but they also may be constrained in certain special ways. This is the topic discussed in this section. Particular examples are given here without the aid of computer output. Some examples with computer output are given in sections C and D. Some general background is given first in Section 9.2, and then a discussion of the general use of the STRUCTURE and BLOCK SET records to implement constraints is given in Section 9.3.

2 Background

Consider either the omega or sigma matrix, and denote it by M. Recall that this matrix is the covariance matrix of either the η effects or the ε effects. One constraint on M that can be implemented is that M have the form

\[M = \begin{pmatrix} M_1 & & & 0 \\ & M_2 & & \\ & & \ddots & \\ 0 & & & M_n \end{pmatrix}\]

\[\text{dimension of } M_i = d_i \text{ for all } 1 \le i \le n\]

where the \(d_i\) are fixed integers. That is, M is constrained to be in block diagonal form, where the submatrices along the diagonal have given dimensions. These submatrices are called the diagonal blocks of M. For example, suppose that there are three η effects and that \(\eta_3\) is to be regarded as uncorrelated with \(\eta_1\) and \(\eta_2\). Then M should be constrained to be in block diagonal form with n = 2, and the dimensions of \(M_1\) and \(M_2\) should be 2 and 1 respectively. If \(\eta_2\) is to be regarded as uncorrelated with \(\eta_1\) and \(\eta_3\), then simply renumber these random effects (in particular, permute \(\eta_2\) and \(\eta_3\)), and the desired end can be achieved by constraining M to be in the same block diagonal form as the one just given. If the three random effects are to be regarded as completely pairwise uncorrelated, i.e. all off diagonal elements of M are to be zero, then M should be constrained to be in block diagonal form with n = 3, and the dimensions of the three diagonal blocks should all be 1. Of course, the constraint that M be diagonal can be implemented more easily by using the DIAGONAL record as explained in the NONMEM Users Guide Part I. The block diagonal constraint is the basic constraint in terms of which the other constraints are expressed.

Another constraint on M that can be implemented involves the notion of a block set. A block set is a set of consecutively ordered diagonal blocks, once M is expressed in block diagonal form. For example, \(\{M_3, M_4, M_5\}\), \(\{M_5, M_6\}\), and \(\{M_1\}\) are all block sets. However \(\{M_1, M_3\}\) is not a block set since \(M_1\) and \(M_3\) are not consecutively ordered. Now the n diagonal blocks may be partitioned into block sets. The partition is called a block set partition. In each block set of the partition, the blocks of the set are constrained to be equal. Therefore, all blocks of a particular block set must have the same dimension. For example, in the above situation where there are three η effects and n = 3, the variances of the first two effects can be constrained to be the same by partitioning the blocks into block sets \(\{M_1, M_2\}\) and \(\{M_3\}\). The variances of all three effects can be constrained to be the same by forming the single block set \(\{M_1, M_2, M_3\}\).

The last type of constraint on M that can be implemented also involves the notion of a block set partition. All the blocks of any particular block set can be constrained to equal some given matrix. For example, in the above situation where there are three η effects and n = 2, the block \(M_1\) can be constrained to equal the two dimensional matrix A. To do this one must first partition the diagonal blocks into the block sets \(\{M_1\}\) and \(\{M_2\}\). To take another example, in the above situation where there are three η effects and n = 3, blocks \(M_1\) and \(M_2\) may be constrained to both equal the number a, while \(M_3\) may be constrained to equal the number b. To do this the diagonal blocks should first be partitioned into the block sets \(\{M_1, M_2\}\) and \(\{M_3\}\). To take yet another example, if M is to be constrained to equal a matrix A, then only one block set need be formed, viz. \(\{M\}\). If, though, A is diagonal, then one could alternatively take the partition \(\{M_1\}\), \(\{M_2\}\), etc. of block sets, each of which consists of a single one dimensional block, and specify that each block is to equal a diagonal element of A.

3 Implementation

The three types of constraints described in Section 9.2 are implemented by using the STRUCTURE and BLOCK SET records. Suppose one desires to impose one of these types of constraints on the omega matrix. A block set partition must be constructed. This is true even if there is only one block per block set (as is the case with the first type of constraint described in Section 9.2). The partition is specified in part with the STRUCTURE record for omega. This integer format record has two fields for each of the block sets of the block set partition. For each block set, the number of blocks in the set and the common dimension of all the blocks in the set are placed in the first and second of the fields, respectively, corresponding to this block set. The pairs of fields are ordered on the record as the block sets are ordered in the block set partition. For example, if there are two block sets such that the size of the first set and the dimension of its blocks are 2 and 1, respectively, and the size of the second set and the dimension of its blocks are 1 and 2, respectively, then the STRUCTURE record is as in Example B.3.i.

Example B.3.i:

STRC         2    1    1    2

column no.:  1    1    2    2
             2    6    0    4

In addition, fields 6 and 7 of the initial STRUCTURE record must have appropriate values. A zero or blank is placed in field 6, and the number of block sets of the partition is placed in field 7. (Note that all examples in NONMEM Users Guide, Part I, involve omega matrices that are either constrained to be diagonal or are unconstrained. In the latter case a trivial constraint is actually being imposed where there is only one block set, and this block set has only one block. Therefore, throughout that document all discussion concerning the STRUCTURE record for omega indicates that there are just two fields of that record, in which are placed the values 1 and the dimension of omega. Also therefore, it is indicated that whenever a STRUCTURE record for omega appears, the values 0 and 1 are placed in fields 6 and 7, respectively, of the initial STRUCTURE record.)

The way in which the block set partition is implemented for the sigma matrix is similar to the way this is done for the omega matrix. A STRUCTURE record for sigma appears. In addition, a zero or blank is placed in field 8 of the initial STRUCTURE record, and the number of block sets of the partition is placed in field 9 of that record. The general formats of the initial STRUCTURE record and the STRUCTURE record for omega (and sigma) are given, respectively, in Table 1 and Table 2, below.

Table 1: (B.3.i) Initial STRUCTURE record format (See Introduction to NONMEM VI March 2008 for complete format.)
Field no. Value Function
1 between 0 & 70 length of theta vector
2 between 0 & 70 length eta vector
3 between 0 & 70 length of epsilon vector
4 blank
5 blank
6 0 or blank omega constrained with a block set partition
1 omega constrained to be of simple diagonal form
7 0 or blank between 1 & 70 only if field 6 has value 1 number of block sets for omega
If the dimension of Σ is 0, the following fields may be ignored.
8 0 or blank sigma constrained with a block set partition
1 sigma constrained to be of simple diagonal form
9 0 or blank between 1 & 70 only if field 8 has value 1 number of block sets for sigma
Table 2: (B.3.ii) STRUCTURE record for omega (or sigma)
Field no. Value Function
1 between 1 & 70 size of 1st block set
2 between 1 & 70 Dimension of blocks in 1st block set
3 between 1 & 70 size of 2nd block set
4 between 1 & 70 Dimension of blocks in 2nd block set
etc.

The initial estimate for omega is specified on a contiguous series of BLOCK SET records for omega, one for each block set of the partition. The common initial estimate for the blocks of the ith block set is placed on the ith BLOCK SET record. There is a matrix, \(\Omega_i\), such that each block of the ith block set equals \(\Omega_i\), and the estimates of the individual elements of the upper triangular part of \(\Omega_i\) are placed in the successive fields of the \(i\)th BLOCK SET record according to the ordering: \(\omega_{i11}, \omega_{i12}, \ldots, \omega_{i1K(i)}, \omega_{i22}, \omega_{i23}, \ldots, \omega_{i2K(i)}, \ldots, \omega_{iK(i)K(i)}\), where \(K(i)\) is the dimension of \(\Omega_i\). (Recall that \(\Omega_i\) is symmetric.) With the third type of constraint, \(\Omega_i\), in particular, may be constrained to equal some given matrix, \(A_i\). In this case, \(A_i\) should be taken to be the initial estimate of \(\Omega_i\). Moreover, a special character should be placed on the \(i\)th BLOCK SET record, namely a 1 in position 8. The initial estimate for sigma is specified on contiguous series of BLOCK SET records for sigma in exactly the manner the way the initial estimate for omega is specified. The BLOCK SET records for sigma follow those for omega within the Model Specification records. Of course, if on the initial STRUCTURE record, a 1 is placed in either field 6 or 8, then the BLOCK SETS for omega or sigma, respectively, are replaced by a single DIAGONAL record. The general format for the BLOCK SET records is given in Table 3.

Table 3: (B.3.iii) BLOCK SET record format
Field no. Value Function
1 initial estimate of (1,1) element of block
2 etc. initial estimate of (1,2) element of block

In addition, a 1 is placed in position 8 if this block is constrained to equal the initial estimate.