solve.QP requerir D a ser simétrica definida positiva en R
Pregunta
Cuando corro solve.QP en mi problema, me sale el siguiente error de R:
Error in solve.QP(sigma, rep(0, 5), t(Amat), bvec, meq = 2) :
matrix D in quadratic function is not positive definite!
Mi matriz sigma es simétrica, pero no es definida positiva. Por qué es necesario esto? Si resuelvo yo mismo usando las funciones de Lagrange, soy capaz de obtener la solución. Entonces ¿por qué se impone este requisito R?
Solución
El algoritmo Goldfarb-Idnani comienza por el cálculo de la solución sin restricciones. Por lo tanto, se requiere que la matriz D en el función objetivo es definida positiva.
Extracto de Fortran archivo de origen solve.QP.f:
c this routine uses the Goldfarb/Idnani algorithm to solve the
c following minimization problem:
c
c minimize -d^T x + 1/2 * x^T D x
c where A1^T x = b1
c A2^T x >= b2
c
c the matrix D is assumed to be positive definite. Especially,
c w.l.o.g. D is assumed to be symmetric.
Otros consejos
El auglag
función en alabama
paquete proporciona los multiplicadores de Lagrange en la solución para cualquier problema de optimización.
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow