Перенос аналитического решения оптимизации в numpy
С помощью метода множителей Лагранжа (ограничения в виде равенств) с применением условия Куна-Таккера требуется перенести уравнения (см. фото) в код.
Матрица с фото уже выдает желаемый результат в программе (результат устраивает), но требуется научить программу подтягивать значения из excel неравенства на фото. Соответственно требуется человек знакомый с https://intuit.ru/studies/educational_groups/945/c...
A = np.array([[2,0,0,0,-15,-1,0],[0,2,0,0,-8,-1,0],[0,0,2,0,-2,-1,1],[0,0,0,2,-1,-1,0],[15,8,2,1,0,0,0],[1,1,1,1,0,0,0],[0,0,1,0,0,0,0]])
A
array([[ 2, 0, 0, 0, -15, -1, 0], [ 0, 2, 0, 0, -8, -1, 0], [ 0, 0, 2, 0, -2, -1, 1], [ 0, 0, 0, 2, -1, -1, 0], [ 15, 8, 2, 1, 0, 0, 0], [ 1, 1, 1, 1, 0, 0, 0], [ 0, 0, 1, 0, 0, 0, 0]])b = np.transpose(np.array([.6,.4,.2,.8,11.728,1,0.01]))
b
array([6.0000e-01, 4.0000e-01, 2.0000e-01, 8.0000e-01, 1.1728e+01, 1.0000e+00, 1.0000e-02])v = np.linalg.solve(A,b)
v
array([ 0.65057143, 0.23 , 0.01 , 0.10942857, 0.09159184, -0.67273469, -0.30955102])