|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectorg.akutan.optimization.ActiveSetSolver
public class ActiveSetSolver
| Field Summary | |
|---|---|
protected java.text.DecimalFormat |
df
|
| Constructor Summary | |
|---|---|
ActiveSetSolver()
|
|
| Method Summary | |
|---|---|
protected boolean |
algorithm(java.util.List<Constraint> constraints,
java.util.Set<java.lang.Integer> equality,
java.util.Set<java.lang.Integer> active,
java.util.Set<java.lang.Integer> inactive,
cern.colt.matrix.DoubleMatrix1D g,
cern.colt.matrix.DoubleMatrix2D Vx,
cern.colt.matrix.DoubleMatrix1D x,
int n)
|
protected void |
dumpConstraints(java.util.List<Constraint> constraints,
java.util.Set<java.lang.Integer> equality,
java.util.Set<java.lang.Integer> active,
java.util.Set<java.lang.Integer> inactive)
Dump out the constraints to System.out in the format Constraint |
protected java.lang.String |
formatOutput(int ct,
double ra,
cern.colt.matrix.DoubleMatrix1D x,
cern.colt.matrix.DoubleMatrix1D e_r,
cern.colt.matrix.DoubleMatrix2D V)
|
protected cern.colt.matrix.DoubleMatrix2D |
generateConstraints(java.util.List<Constraint> c,
java.util.Set<java.lang.Integer> e,
java.util.Set<java.lang.Integer> a)
Called to generate the A matrix for the constraints from the list of constraints in the problem and the sets of equality and active constraints. |
protected cern.colt.matrix.DoubleMatrix1D |
generateValues(java.util.List<Constraint> c,
java.util.Set<java.lang.Integer> e,
java.util.Set<java.lang.Integer> a)
Called to populate the b vector for the constraints (Ax = b) given the total list of constraints and sets of equality and active constaints. |
protected cern.colt.matrix.DoubleMatrix1D |
initialGuess(cern.colt.matrix.DoubleMatrix1D e_r,
java.util.List<Constraint> constraints)
Executes a Simplex optimization on the equality constraints to find a valid initial point for the ActiveSet method. |
cern.colt.matrix.DoubleMatrix2D |
make2D(cern.colt.matrix.DoubleMatrix1D m)
Helper function called to convert a 1D matrix into a 2D matrix with a single column. |
protected SolvedPoint |
makePoint(double ra,
cern.colt.matrix.DoubleMatrix1D x,
cern.colt.matrix.DoubleMatrix1D e_r,
cern.colt.matrix.DoubleMatrix2D Vt)
|
protected void |
setMatrix(cern.colt.matrix.DoubleMatrix2D Q,
int qx,
int qy,
cern.colt.matrix.DoubleMatrix1D V,
int vx)
|
protected void |
setMatrix(cern.colt.matrix.DoubleMatrix2D Q,
int qx,
int qy,
cern.colt.matrix.DoubleMatrix2D V,
int vx,
int vy)
|
protected org.akutan.optimization.ActiveSetSolver.Holder |
solve(cern.colt.matrix.DoubleMatrix1D x,
cern.colt.matrix.DoubleMatrix2D G,
cern.colt.matrix.DoubleMatrix2D A,
cern.colt.matrix.DoubleMatrix1D g,
cern.colt.matrix.DoubleMatrix1D b)
This implements | G -A | | x | = | -(Gx + g) | | At 0 | | lambda | | b | |
cern.colt.matrix.DoubleMatrix1D |
solveSingle(cern.colt.matrix.DoubleMatrix1D e_rx,
cern.colt.matrix.DoubleMatrix2D Vx,
java.util.List<Constraint> constraints,
java.util.Set<java.lang.Integer> equality,
java.util.Set<java.lang.Integer> active,
java.util.Set<java.lang.Integer> inactive)
|
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
protected java.text.DecimalFormat df
| Constructor Detail |
|---|
public ActiveSetSolver()
| Method Detail |
|---|
protected void dumpConstraints(java.util.List<Constraint> constraints,
java.util.Set<java.lang.Integer> equality,
java.util.Set<java.lang.Integer> active,
java.util.Set<java.lang.Integer> inactive)
constraints - equality - active - inactive - public cern.colt.matrix.DoubleMatrix2D make2D(cern.colt.matrix.DoubleMatrix1D m)
m - Input vector (1D matrix) to be copied into the matrix.
protected void setMatrix(cern.colt.matrix.DoubleMatrix2D Q,
int qx,
int qy,
cern.colt.matrix.DoubleMatrix2D V,
int vx,
int vy)
protected void setMatrix(cern.colt.matrix.DoubleMatrix2D Q,
int qx,
int qy,
cern.colt.matrix.DoubleMatrix1D V,
int vx)
protected org.akutan.optimization.ActiveSetSolver.Holder solve(cern.colt.matrix.DoubleMatrix1D x,
cern.colt.matrix.DoubleMatrix2D G,
cern.colt.matrix.DoubleMatrix2D A,
cern.colt.matrix.DoubleMatrix1D g,
cern.colt.matrix.DoubleMatrix1D b)
x - G - A - g - b -
protected cern.colt.matrix.DoubleMatrix2D generateConstraints(java.util.List<Constraint> c,
java.util.Set<java.lang.Integer> e,
java.util.Set<java.lang.Integer> a)
c - Total list of constraintse - Set of equality constraintsa - Set of active constraints
protected cern.colt.matrix.DoubleMatrix1D generateValues(java.util.List<Constraint> c,
java.util.Set<java.lang.Integer> e,
java.util.Set<java.lang.Integer> a)
c - List of all constraints on the problem.e - Set of equality constraints.a - Set of active constraints.
protected cern.colt.matrix.DoubleMatrix1D initialGuess(cern.colt.matrix.DoubleMatrix1D e_r,
java.util.List<Constraint> constraints)
e_r - Vector of asset returnsconstraints - List of constraints
public cern.colt.matrix.DoubleMatrix1D solveSingle(cern.colt.matrix.DoubleMatrix1D e_rx,
cern.colt.matrix.DoubleMatrix2D Vx,
java.util.List<Constraint> constraints,
java.util.Set<java.lang.Integer> equality,
java.util.Set<java.lang.Integer> active,
java.util.Set<java.lang.Integer> inactive)
protected boolean algorithm(java.util.List<Constraint> constraints,
java.util.Set<java.lang.Integer> equality,
java.util.Set<java.lang.Integer> active,
java.util.Set<java.lang.Integer> inactive,
cern.colt.matrix.DoubleMatrix1D g,
cern.colt.matrix.DoubleMatrix2D Vx,
cern.colt.matrix.DoubleMatrix1D x,
int n)
protected SolvedPoint makePoint(double ra,
cern.colt.matrix.DoubleMatrix1D x,
cern.colt.matrix.DoubleMatrix1D e_r,
cern.colt.matrix.DoubleMatrix2D Vt)
protected java.lang.String formatOutput(int ct,
double ra,
cern.colt.matrix.DoubleMatrix1D x,
cern.colt.matrix.DoubleMatrix1D e_r,
cern.colt.matrix.DoubleMatrix2D V)
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||