Я хотел бы спросить вас о линейной программе для оптимизации.
У меня есть целевая функция и функции ограничения, как показано ниже,
Переменные (x1
, x2
, x3
, x4
, x5
и x6
) являются количествами продуктов, и теперь количество продуктов должно быть фиксированным.Целью этой проблемы является оптимизация количества продуктов.
Целевая функция (c.T * [x1, x2, x3, x4, x5, x6]
)
[[c11, c12, c13, c14, c15 c16],
[c21, c22, c23, c24, c25, c26],
X [x1, x2, x3, x4, x5, x6]
[c31, c32, c33, c34, c35, c36],
[c41, c42, c43, c44, c45, c45]]
Результат, который я хотел бы оптимизировать,будет как показано ниже:
c11*x1 + c12*x2 + c13*x3 + c14*x4 + c15*x5 + c16*x6 +
c21*x1 + c22*x2 + c23*x3 + c24*x4 + c25*x5 + c26*x6 +
c31*x1 + c32*x2 + c33*x3 + c34*x4 + c35*x5 + c36*x6 +
c41*x1 + c42*x2 + c43*x3 + c44*x4 + c45*x5 + c46*x6 = optimized value
Функция ограничения
Проблема, с которой я страдаю, заключается в "Целевой функции Cs(c1,1 ~ c4,5)
".
Еслифункция объекта похожа на 3 * x1 + 2 * x2 + 3 * x3 + 4 * x4 + 5 * x5 + 6 * x6
, тогда она будет проще и решена с помощью следующего кода:
c = np.array([3, 2, 3, 4, 5, 6])
A = np.array([[5500000, 2500000, 825000, 5500000, 5500000, 5500000], [1,0,0,0,0,0], [0,1,0,0,0,0], [0,0,1,0,0,0], [0,0,0,1,0,0], [0,0,0,0,1,0], [0,0,0,0,0,1]])
b = np.array([800000000, 10, 10, 10, 10, 10, 10])
c = matrix(c, tc='d')
G = matrix(A, tc='d')
h = matrix(b, tc='d')
status, x = glpk.ilp(c, g, h, I=set([0,1,2,3,4,5]))
Пожалуйста, помогите решить проблему линейного программирования.