jml.optimization
Class GeneralQPViaPrimalDualInteriorPoint

java.lang.Object
  extended by jml.optimization.GeneralQPViaPrimalDualInteriorPoint

public class GeneralQPViaPrimalDualInteriorPoint
extends java.lang.Object

General quadratic programming:

min 2 \ x' * Q * x + c' * x
s.t. A * x = b
B * x <= d

Version:
Feb. 28th, 2013
Author:
Mingjie Qian

Constructor Summary
GeneralQPViaPrimalDualInteriorPoint()
           
 
Method Summary
static void main(java.lang.String[] args)
           
private static QPSolution phaseII(org.apache.commons.math.linear.RealMatrix Q, org.apache.commons.math.linear.RealMatrix c, org.apache.commons.math.linear.RealMatrix A, org.apache.commons.math.linear.RealMatrix b, org.apache.commons.math.linear.RealMatrix B, org.apache.commons.math.linear.RealMatrix d, org.apache.commons.math.linear.RealMatrix x0)
           
static QPSolution solve(org.apache.commons.math.linear.RealMatrix Q, org.apache.commons.math.linear.RealMatrix c, org.apache.commons.math.linear.RealMatrix A, org.apache.commons.math.linear.RealMatrix b, org.apache.commons.math.linear.RealMatrix B, org.apache.commons.math.linear.RealMatrix d)
          Solve a general quadratic programming problem formulated as
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

GeneralQPViaPrimalDualInteriorPoint

public GeneralQPViaPrimalDualInteriorPoint()
Method Detail

main

public static void main(java.lang.String[] args)
Parameters:
args -

solve

public static QPSolution solve(org.apache.commons.math.linear.RealMatrix Q,
                               org.apache.commons.math.linear.RealMatrix c,
                               org.apache.commons.math.linear.RealMatrix A,
                               org.apache.commons.math.linear.RealMatrix b,
                               org.apache.commons.math.linear.RealMatrix B,
                               org.apache.commons.math.linear.RealMatrix d)
Solve a general quadratic programming problem formulated as

min 2 \ x' * Q * x + c' * x
s.t. A * x = b
B * x <= d

Parameters:
Q - an n x n positive definite or semi-definite matrix
c - an n x 1 real matrix
A - a p x n real matrix
b - a p x 1 real matrix
B - an m x n real matrix
d - an m x 1 real matrix
Returns:
a QPSolution instance if the general QP problems is feasible or null otherwise

phaseII

private static QPSolution phaseII(org.apache.commons.math.linear.RealMatrix Q,
                                  org.apache.commons.math.linear.RealMatrix c,
                                  org.apache.commons.math.linear.RealMatrix A,
                                  org.apache.commons.math.linear.RealMatrix b,
                                  org.apache.commons.math.linear.RealMatrix B,
                                  org.apache.commons.math.linear.RealMatrix d,
                                  org.apache.commons.math.linear.RealMatrix x0)