Я решил следующую линейную программу с scipy.optimize.linprog:
result = linprog(
[0, 0, 0, 0],
A_eq=[
[1, 1, 0, 0],
[1, 0, 1, 1]
],
b_eq=[
-10000, -10000
],
bounds=[(None, -1000), (None, -1000), (None, -1000), (None, -1000)]
)
print(result.x)
И получил:
[-4982.07750764 -5017.92249214 -2508.96124608 -2508.96124608]
Эта программа имеет много решений, которые численно "лучше" (имеют более круглые числа), например:
[-5000 -5000 -2500 -2500]
Есть ли способ сказать linprog, чтобы предпочесть такие решения?