package com.imsl.test.example.math; import com.imsl.math.*; /** *

* Solves a quadratic programming problem in 4 variables.

*

* The quadratic programming problem is to minimize

* *

* $$x_0^2 + x_1^2 + x_2^2 + x_3^2 + x_4^2 - 2x_1x_2 - 2x_3x_4 - 2x_0$$

*

* subject to

* *

* $$x_0 + x_1 + x_2 + x_3 + x_4 = 5$$

* *

* $$x_2 - 2x_3 - 2x_4 = -3$$

* * * @see Code * @see Output */ public class QuadraticProgrammingEx1 { public static void main(String args[]) throws Exception { double h[][] = { {2, 0, 0, 0, 0}, {0, 2, -2, 0, 0}, {0, -2, 2, 0, 0}, {0, 0, 0, 2, -2}, {0, 0, 0, -2, 2} }; double aeq[][] = { {1, 1, 1, 1, 1}, {0, 0, 1, -2, -2} }; double beq[] = {5, -3}; double g[] = {-2, 0, 0, 0, 0}; QuadraticProgramming qp = new QuadraticProgramming(h, g, aeq, beq, null, null); // Print the solution and its dual new PrintMatrix("x").print(qp.getSolution()); new PrintMatrix("dual").print(qp.getDual()); } }