You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Konstantin (JIRA)" <ji...@apache.org> on 2013/01/17 10:18:23 UTC

[jira] [Created] (MATH-930) SimplexSolver finds suboptimal solution or throws NoFeasibleSolutionException

Konstantin created MATH-930:
-------------------------------

             Summary: SimplexSolver finds suboptimal solution or throws NoFeasibleSolutionException
                 Key: MATH-930
                 URL: https://issues.apache.org/jira/browse/MATH-930
             Project: Commons Math
          Issue Type: Bug
    Affects Versions: 3.1.1
            Reporter: Konstantin
            Priority: Minor


When I run this code sometimes I get NoFeasibleSolutionException, and sometimes the result is 0.37522987682323883. 

Octave gives result 0.70679 and a point = {1.59032, 1.00000, 0.70679, 0.40399, 1.04004, 0.67396, 0.37868, 0.22823, 0.98909, 0.68793, 0.17021,
0.09192, 0.67501, 0.44573, 0.07829, 0.00000, 0.81316, 0.63520, 0.55634
0.40399, 0.48504, 0.45944, 0.22823, 0.22823, 0.34873, 0.32313, 0.09192,
0.09192, 0.25681, 0.23122, 0.00000, 0.00000, 1.59032

double[][] coefficients = new double[97][];
        double[] value = new double[97];
        Relationship[] relationship = new Relationship[97];
        int i = 0;
        double[] m0  = {1, -1, -1, 1, -1, 1, 1, -1, -1, 1, 1, -1, 1, -1, -1, 1, -1, 1, 1, -1, 1, -1, -1, 1, 1, -1, -1, 1, -1, 1, 1, -1, 0};
        coefficients[i] = m0;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m1  = {1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1};
        coefficients[i] = m1;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m2  = {1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1};
        coefficients[i] = m2;
        relationship[i] = Relationship.LEQ;
        value[i] = 0.0;
        i++;
        double[] m3  = {0, 1, 0, -1, 0, -1, 0, 1, 0, -1, 0, 1, 0, 1, 0, -1, 0, -1, 0, 1, 0, 1, 0, -1, 0, 1, 0, -1, 0, -1, 0, 1, 0};
        coefficients[i] = m3;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m4  = {0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.628803};
        coefficients[i] = m4;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m5  = {0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.676993};
        coefficients[i] = m5;
        relationship[i] = Relationship.LEQ;
        value[i] = 0.0;
        i++;
        double[] m6  = {0, 0, 1, -1, 0, 0, -1, 1, 0, 0, -1, 1, 0, 0, 1, -1, 0, 0, -1, 1, 0, 0, 1, -1, 0, 0, 1, -1, 0, 0, -1, 1, 0};
        coefficients[i] = m6;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m7  = {0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.136677};
        coefficients[i] = m7;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m8  = {0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.444434};
        coefficients[i] = m8;
        relationship[i] = Relationship.LEQ;
        value[i] = 0.0;
        i++;
        double[] m9  = {0, 0, 0, 1, 0, 0, 0, -1, 0, 0, 0, -1, 0, 0, 0, 1, 0, 0, 0, -1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, -1, 0};
        coefficients[i] = m9;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m10  = {0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.254028};
        coefficients[i] = m10;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m11  = {0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.302218};
        coefficients[i] = m11;
        relationship[i] = Relationship.LEQ;
        value[i] = 0.0;
        i++;
        double[] m12  = {0, 0, 0, 0, 1, -1, -1, 1, 0, 0, 0, 0, -1, 1, 1, -1, 0, 0, 0, 0, -1, 1, 1, -1, 0, 0, 0, 0, 1, -1, -1, 1, 0};
        coefficients[i] = m12;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m13  = {0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.653981};
        coefficients[i] = m13;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m14  = {0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.690437};
        coefficients[i] = m14;
        relationship[i] = Relationship.LEQ;
        value[i] = 0.0;
        i++;
        double[] m15  = {0, 0, 0, 0, 0, 1, 0, -1, 0, 0, 0, 0, 0, -1, 0, 1, 0, 0, 0, 0, 0, -1, 0, 1, 0, 0, 0, 0, 0, 1, 0, -1, 0};
        coefficients[i] = m15;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m16  = {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.423786};
        coefficients[i] = m16;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m17  = {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.486717};
        coefficients[i] = m17;
        relationship[i] = Relationship.LEQ;
        value[i] = 0.0;
        i++;
        double[] m18  = {0, 0, 0, 0, 0, 0, 1, -1, 0, 0, 0, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 1, -1, 0};
        coefficients[i] = m18;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m19  = {0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.049232};
        coefficients[i] = m19;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m20  = {0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.304747};
        coefficients[i] = m20;
        relationship[i] = Relationship.LEQ;
        value[i] = 0.0;
        i++;
        double[] m21  = {0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, -1, 0, 0, 0, 0, 0, 0, 0, -1, 0, 0, 0, 0, 0, 0, 0, 1, 0};
        coefficients[i] = m21;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m22  = {0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.129826};
        coefficients[i] = m22;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m23  = {0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.205625};
        coefficients[i] = m23;
        relationship[i] = Relationship.LEQ;
        value[i] = 0.0;
        i++;
        double[] m24  = {0, 0, 0, 0, 0, 0, 0, 0, 1, -1, -1, 1, -1, 1, 1, -1, 0, 0, 0, 0, 0, 0, 0, 0, -1, 1, 1, -1, 1, -1, -1, 1, 0};
        coefficients[i] = m24;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m25  = {0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.621944};
        coefficients[i] = m25;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m26  = {0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.764385};
        coefficients[i] = m26;
        relationship[i] = Relationship.LEQ;
        value[i] = 0.0;
        i++;
        double[] m27  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, -1, 0, -1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, 0, 1, 0, 1, 0, -1, 0};
        coefficients[i] = m27;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m28  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.432572};
        coefficients[i] = m28;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m29  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.480762};
        coefficients[i] = m29;
        relationship[i] = Relationship.LEQ;
        value[i] = 0.0;
        i++;
        double[] m30  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, -1, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, 1, 0, 0, 1, -1, 0};
        coefficients[i] = m30;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m31  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.055983};
        coefficients[i] = m31;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m32  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.11378};
        coefficients[i] = m32;
        relationship[i] = Relationship.LEQ;
        value[i] = 0.0;
        i++;
        double[] m33  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, 0, 0, 0, 1, 0};
        coefficients[i] = m33;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m34  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.009607};
        coefficients[i] = m34;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m35  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.057797};
        coefficients[i] = m35;
        relationship[i] = Relationship.LEQ;
        value[i] = 0.0;
        i++;
        double[] m36  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, -1, -1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, 1, 1, -1, 0};
        coefficients[i] = m36;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m37  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.407308};
        coefficients[i] = m37;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m38  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.452749};
        coefficients[i] = m38;
        relationship[i] = Relationship.LEQ;
        value[i] = 0.0;
        i++;
        double[] m39  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, 0, 1, 0};
        coefficients[i] = m39;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m40  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.269677};
        coefficients[i] = m40;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m41  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.321806};
        coefficients[i] = m41;
        relationship[i] = Relationship.LEQ;
        value[i] = 0.0;
        i++;
        double[] m42  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, 1, 0};
        coefficients[i] = m42;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m43  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.049232};
        coefficients[i] = m43;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m44  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.06902};
        coefficients[i] = m44;
        relationship[i] = Relationship.LEQ;
        value[i] = 0.0;
        i++;
        double[] m45  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, 0};
        coefficients[i] = m45;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m46  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0};
        coefficients[i] = m46;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m47  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.028754};
        coefficients[i] = m47;
        relationship[i] = Relationship.LEQ;
        value[i] = 0.0;
        i++;
        double[] m48  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, -1, -1, 1, -1, 1, 1, -1, -1, 1, 1, -1, 1, -1, -1, 1, 0};
        coefficients[i] = m48;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m49  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.484254};
        coefficients[i] = m49;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m50  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.524607};
        coefficients[i] = m50;
        relationship[i] = Relationship.LEQ;
        value[i] = 0.0;
        i++;
        double[] m51  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, -1, 0, -1, 0, 1, 0, -1, 0, 1, 0, 1, 0, -1, 0};
        coefficients[i] = m51;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m52  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.385492};
        coefficients[i] = m52;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m53  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.430134};
        coefficients[i] = m53;
        relationship[i] = Relationship.LEQ;
        value[i] = 0.0;
        i++;
        double[] m54  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, -1, 0, 0, -1, 1, 0, 0, -1, 1, 0, 0, 1, -1, 0};
        coefficients[i] = m54;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m55  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.34983};
        coefficients[i] = m55;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m56  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.375781};
        coefficients[i] = m56;
        relationship[i] = Relationship.LEQ;
        value[i] = 0.0;
        i++;
        double[] m57  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, -1, 0, 0, 0, -1, 0, 0, 0, 1, 0};
        coefficients[i] = m57;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m58  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.254028};
        coefficients[i] = m58;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m59  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.281308};
        coefficients[i] = m59;
        relationship[i] = Relationship.LEQ;
        value[i] = 0.0;
        i++;
        double[] m60  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, -1, -1, 1, 0, 0, 0, 0, -1, 1, 1, -1, 0};
        coefficients[i] = m60;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m61  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.304995};
        coefficients[i] = m61;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m62  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.345347};
        coefficients[i] = m62;
        relationship[i] = Relationship.LEQ;
        value[i] = 0.0;
        i++;
        double[] m63  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, -1, 0, 0, 0, 0, 0, -1, 0, 1, 0};
        coefficients[i] = m63;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m64  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.288899};
        coefficients[i] = m64;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m65  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.332212};
        coefficients[i] = m65;
        relationship[i] = Relationship.LEQ;
        value[i] = 0.0;
        i++;
        double[] m66  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, -1, 0, 0, 0, 0, 0, 0, -1, 1, 0};
        coefficients[i] = m66;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m67  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.14351};
        coefficients[i] = m67;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m68  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, -0.17057};
        coefficients[i] = m68;
        relationship[i] = Relationship.LEQ;
        value[i] = 0.0;
        i++;
        double[] m69  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, -1, 0};
        coefficients[i] = m69;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m70  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, -0.129826};
        coefficients[i] = m70;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m71  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, -0.157435};
        coefficients[i] = m71;
        relationship[i] = Relationship.LEQ;
        value[i] = 0.0;
        i++;
        double[] m72  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, -1, -1, 1, -1, 1, 1, -1, 0};
        coefficients[i] = m72;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m73  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, -0};
        coefficients[i] = m73;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m74  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, -1};
        coefficients[i] = m74;
        relationship[i] = Relationship.LEQ;
        value[i] = 0.0;
        i++;
        double[] m75  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, -1, 0, -1, 0, 1, 0};
        coefficients[i] = m75;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m76  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, -0.141071};
        coefficients[i] = m76;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m77  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, -0.232574};
        coefficients[i] = m77;
        relationship[i] = Relationship.LEQ;
        value[i] = 0.0;
        i++;
        double[] m78  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, -1, 0, 0, -1, 1, 0};
        coefficients[i] = m78;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m79  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, -0};
        coefficients[i] = m79;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m80  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, -1};
        coefficients[i] = m80;
        relationship[i] = Relationship.LEQ;
        value[i] = 0.0;
        i++;
        double[] m81  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, -1, 0};
        coefficients[i] = m81;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m82  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, -0.009607};
        coefficients[i] = m82;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m83  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, -0.057797};
        coefficients[i] = m83;
        relationship[i] = Relationship.LEQ;
        value[i] = 0.0;
        i++;
        double[] m84  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, -1, -1, 1, 0};
        coefficients[i] = m84;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m85  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, -0};
        coefficients[i] = m85;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m86  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, -1};
        coefficients[i] = m86;
        relationship[i] = Relationship.LEQ;
        value[i] = 0.0;
        i++;
        double[] m87  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, -1, 0};
        coefficients[i] = m87;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m88  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, -0.091644};
        coefficients[i] = m88;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m89  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, -0.203531};
        coefficients[i] = m89;
        relationship[i] = Relationship.LEQ;
        value[i] = 0.0;
        i++;
        double[] m90  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, -1, 0};
        coefficients[i] = m90;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m91  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, -0};
        coefficients[i] = m91;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m92  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, -1};
        coefficients[i] = m92;
        relationship[i] = Relationship.LEQ;
        value[i] = 0.0;
        i++;
        double[] m93  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0};
        coefficients[i] = m93;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m94  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0};
        coefficients[i] = m94;
        relationship[i] = Relationship.GEQ;
        value[i] = 0.0;
        i++;
        double[] m95  = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, -0.028754};
        coefficients[i] = m95;
        relationship[i] = Relationship.LEQ;
        value[i] = 0.0;
        i++;
        double[] m96  = {0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
        coefficients[i] = m96;
        relationship[i] = Relationship.EQ;
        value[i] = 1.0;

ArrayList<LinearConstraint> constraints = new ArrayList<>(97);
                for (int j = 0; j < 97; j++) {
                    constraints.add(new LinearConstraint(coefficients[j], relationship[j], value[j]));
                }
                double[] fooc = new double[33];
                fooc[3] = 1;
                LinearObjectiveFunction foo = new LinearObjectiveFunction(fooc, 0);
                SimplexSolver solver = new SimplexSolver();
                LinearConstraintSet se = new LinearConstraintSet(constraints);
                PointValuePair res = solver.optimize(MaxIter.unlimited(), foo, se, new NonNegativeConstraint(true));

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira