commons-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Benjamin McCann (JIRA)" <j...@apache.org>
Subject [jira] Updated: (MATH-288) SimplexSolver not working as expected 2
Date Tue, 25 Aug 2009 02:17:59 GMT

     [ https://issues.apache.org/jira/browse/MATH-288?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Benjamin McCann updated MATH-288:
---------------------------------

    Attachment: SimplexTableau.patch
                SimplexSolverTest.patch
                SimplexSolver.patch

Patch attached.  It was a 1 character bug.  I was saying to only do the minimum ratio test
if the entry is >= 0, but it should have been > 0 (dividing by 0 is never good :o)
Thanks again for the bug report.

> SimplexSolver not working as expected 2
> ---------------------------------------
>
>                 Key: MATH-288
>                 URL: https://issues.apache.org/jira/browse/MATH-288
>             Project: Commons Math
>          Issue Type: Bug
>    Affects Versions: 2.1
>         Environment: Java 1.6.0_13 on Windows XP 32-bit 
>            Reporter: Stefan Radacovsky
>         Attachments: SimplexSolver.patch, SimplexSolverTest.patch, SimplexTableau.patch
>
>   Original Estimate: 8h
>  Remaining Estimate: 8h
>
> SimplexSolver didn't find the optimal solution.
> Program for Lpsolve:
> =====================
> /* Objective function */
> max: 7 a 3 b;
> /* Constraints */
> R1: +3 a -5 c <= 0;
> R2: +2 a -5 d <= 0;
> R3: +2 b -5 c <= 0;
> R4: +3 b -5 d <= 0;
> R5: +3 a +2 b <= 5;
> R6: +2 a +3 b <= 5;
> /* Variable bounds */
> a <= 1;
> b <= 1;
> =====================
> Results(correct): a = 1, b = 1, value = 10
> Program for SimplexSolve:
> =====================
> LinearObjectiveFunction kritFcia = new LinearObjectiveFunction(new double[]{7, 3, 0,
0}, 0);
> Collection<LinearConstraint> podmienky = new ArrayList<LinearConstraint>();
> podmienky.add(new LinearConstraint(new double[]{1, 0, 0, 0}, Relationship.LEQ, 1));
> podmienky.add(new LinearConstraint(new double[]{0, 1, 0, 0}, Relationship.LEQ, 1));
> podmienky.add(new LinearConstraint(new double[]{3, 0, -5, 0}, Relationship.LEQ, 0));
> podmienky.add(new LinearConstraint(new double[]{2, 0, 0, -5}, Relationship.LEQ, 0));
> podmienky.add(new LinearConstraint(new double[]{0, 2, -5, 0}, Relationship.LEQ, 0));
> podmienky.add(new LinearConstraint(new double[]{0, 3, 0, -5}, Relationship.LEQ, 0));
> podmienky.add(new LinearConstraint(new double[]{3, 2, 0, 0}, Relationship.LEQ, 5));
> podmienky.add(new LinearConstraint(new double[]{2, 3, 0, 0}, Relationship.LEQ, 5));
> SimplexSolver solver = new SimplexSolver();
> RealPointValuePair result = solver.optimize(kritFcia, podmienky, GoalType.MAXIMIZE, true);
> =====================
> Results(incorrect): a = 1, b = 0.5, value = 8.5
> P.S. I used the latest software from the repository (including MATH-286 fix).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message