com.numericalmethod.suanshu.analysis.differentiation.multivariate
Class BorderedHessian
java.lang.Object
com.numericalmethod.suanshu.matrix.doubles.matrixtype.dense.triangle.SymmetricMatrix
com.numericalmethod.suanshu.analysis.differentiation.multivariate.BorderedHessian
- All Implemented Interfaces:
- Table, DeepCopyable, AbelianGroup<Matrix>, Monoid<Matrix>, Ring<Matrix>, Matrix, MatrixAccess, MatrixRing, MatrixTable, Densifiable
public class BorderedHessian
- extends SymmetricMatrix
A bordered Hessian matrix consists of the Hessian of a multivariate function f,
and the gradient of a multivariate function g.
We assume that the function f is continuous so that the bordered Hessian matrix is square
and symmetric.
For scalar functions f and g, we have
\[
H(f,g) = \begin{bmatrix}
0 & \frac{\partial g}{\partial x_1} & \frac{\partial g}{\partial x_2} & \cdots & \frac{\partial
g}{\partial x_n} \\ \\
\frac{\partial g}{\partial x_1} & \frac{\partial^2 f}{\partial x_1^2} & \frac{\partial^2
f}{\partial x_1\,\partial x_2} & \cdots & \frac{\partial^2 f}{\partial x_1\,\partial x_n} \\ \\
\frac{\partial g}{\partial x_2} & \frac{\partial^2 f}{\partial x_2\,\partial x_1} &
\frac{\partial^2 f}{\partial x_2^2} & \cdots & \frac{\partial^2 f}{\partial x_2\,\partial x_n} \\
\\
\vdots & \vdots & \vdots & \ddots & \vdots \\ \\
\frac{\partial g}{\partial x_n} & \frac{\partial^2 f}{\partial x_n\,\partial x_1} &
\frac{\partial^2 f}{\partial x_n\,\partial x_2} & \cdots & \frac{\partial^2 f}{\partial x_n^2}
\end{bmatrix}
\]
This implementation computes the bordered Hessian matrix numerically using the finite difference
method.
- See Also:
- Wikipedia: Bordered
Hessian
| Methods inherited from class com.numericalmethod.suanshu.matrix.doubles.matrixtype.dense.triangle.SymmetricMatrix |
add, deepCopy, equals, get, getColumn, getRow, hashCode, minus, multiply, multiply, nCols, nRows, ONE, opposite, scaled, set, t, toDense, toString, ZERO |
| Methods inherited from class java.lang.Object |
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
BorderedHessian
public BorderedHessian(RealScalarFunction f,
RealScalarFunction g,
Vector x)
- Construct the bordered Hessian matrix for multivariate functions f and g at
point x.
The dimension is \((n+1) \times (n+1)\),
where n is the domain dimension of both f and g.
- Parameters:
f - a multivariate function, usually an objective functiong - a multivariate function, usually a constraint functionx - the point to evaluate the bordered Hessian at
Copyright © 2012 Numerical Method Inc. Ltd. All Rights Reserved.