The quadratic programming problem is to minimize
subject to
using System;
using Imsl.Math;
public class QuadraticProgrammingEx1
{
public static void Main(String[] args)
{
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 = new double[]{5, - 3};
double[] g = new double[]{- 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.GetDualSolution());
}
}
x
0
0 1
1 1
2 1
3 1
4 1
dual
0
0 0
1 -1.18329135783152E-32
Link to C# source.