I'm trying to run a series of simultaneous linear regressions, and I want to constrain the regression coefficients. For the standard ordinary least squares regression, the specification of the estimated coefficients in matrix form is

B = (X'.X)-1X'.Y

Where X are the independent variables, Y are the dependent variables, and B are the estimated coefficients for X on Y.

I also have seen in Amemiya's Advanced Econometrics (1985) that Constrained Linear Least Squares can be used to impose a constraint on regression coefficients for an independent regression, such that the constrained estimated coefficients are:

Bc = B - (X'.X)-1.Q.(Q'.(X'.X)-1.Q)-1.(Q'.B - C)

Where Bc is the constrained estimated coefficients, B are the standard OLS coefficients, Q is a matrix of known constants governing the linear constraints on the coefficients, and C are the right-hand-side terms for the constraints (such that Q'.Bc = C).

However, I would like to constrain coefficients over several regressions.

For example, I have the equations: Y1 = A0 + A1.X1 + A2.X2 Y2 = B0 + B1.X1 + B2.X2

The Amemiya approach would allow me to impose a constraint such as A0 + A1 + A2 = 1

However, I would like to impose a constraint like: A1 + B1 = 1

I would really appreciate it if someone could give me some insight in to how to do this?

Thanks in advance.


1 Answer 1


If the equation you've given is correct $$Bc = B - (X'X)^{-1}Q(Q'(X'X)^{-1}Q)^{-1}(Q'B - C)$$ then you could try derive what you're looking for like this.

Suppose you have the constraints given by $$ \begin{align} Q_a' b_a^c &= C - Q_b' b_b^c \\ Q_b' b_b^c &= C - Q_a' b_a^c. \\ \end{align} $$

Thus, using the formula, you have

$$ b_a^c = B - (X'X)^{-1}Q_a(Q_a'(X'X)^{-1}Q_a)^{-1}(Q_a'B - C + Q_b' b_b^c)\\ b_b^c = B - (X'X)^{-1}Q_b(Q_b'(X'X)^{-1}Q_b)^{-1}(Q_b'B - C + Q_a' b_a^c). $$

You could then solve for $b_a^c$ and $b_b^c$,

$$ b_a^c + M_a Q_b' b_b^c = B - M_a(Q_a'B - C)\\ b_b^c + M_b Q_a' b_a^c = B - M_b(Q_b'B - C), $$

where $M_m = (X'X)^{-1}Q_m(Q_m'(X'X)^{-1}Q_m)^{-1}$.

You can then just use a formula for block matrices to solve for $b_a^c$ and $b_b^c$:

$$ \begin{bmatrix}I & M_{a}Q_{b}'\\ M_{b}Q_{a}' & I \end{bmatrix}\begin{bmatrix}b_{a}^{c}\\ b_{b}^{c} \end{bmatrix}=\begin{bmatrix}B-M_{a}(Q_{a}'B-C)\\ B-M_{b}(Q_{b}'B-C) \end{bmatrix}. $$

Anyway, this would be my first attempt at solving this, but it might not work out. If it doesn't you could just go back to the underlying optimization problem, add in the constraints, and then go from there.


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .