Simplex方法求解器递归错误

时间:2016-04-15 04:00:29

标签: java arrays recursion variable-assignment simplex

我已经创建了一个单纯形法求解器,但最后我需要检查最终表中的负值,如果它返回负数则重新运行求解器。我做了一个for循环,但由于某种原因它输出了原始数组,甚至没有解决。

以下是我的for循环,用于检查最后一行中的任何负值:

for (i = 0; i < nColumns; i++) {
        if (table[objectfunct][i] < 0) {
            System.out.println("Need to continue pivoting");
            new Lab_09();
        } else {
            System.out.println("You've solved it");
            System.exit(0);
        }
    }

数组的输出是递归的,但不对[-1.33 ...]数组做任何事情。 :

Need to continue pivoting
[1.0, 1.0, 1.0, 0.0, 4.0]
[1.0, 3.0, 0.0, 1.0, 6.0]
[-3.0, -5.0, 0.0, 0.0, 0.0]
pivot column: 1
[0.6666666666666667, 0.0, 1.0, -0.3333333333333333, 2.0]
[0.3333333333333333, 1.0, 0.0, 0.3333333333333333, 2.0]
[-1.3333333333333335, 0.0, 0.0, 1.6666666666666665, 10.0]
Need to continue pivoting
[1.0, 1.0, 1.0, 0.0, 4.0]
[1.0, 3.0, 0.0, 1.0, 6.0]
[-3.0, -5.0, 0.0, 0.0, 0.0]
pivot column: 1
[0.6666666666666667, 0.0, 1.0, -0.3333333333333333, 2.0]
[0.3333333333333333, 1.0, 0.0, 0.3333333333333333, 2.0]
[-1.3333333333333335, 0.0, 0.0, 1.6666666666666665, 10.0]

我不知道是否需要我的其他功能。但如果需要,我可以附上它。

0 个答案:

没有答案