/ / resol.QP exige que D soit symétrique positif défini dans R - r, minimise, résolveur

resol.QP exige que D soit symétrique positif défini dans R - r, minimise, résolveur

Quand j'exécute resol.QP sur mon problème, j'obtiens l'erreur suivante de R:

Error in solve.QP(sigma, rep(0, 5), t(Amat), bvec, meq = 2) :
matrix D in quadratic function is not positive definite!

Ma matrice sigma est symétrique mais n'est pas définie positive. Pourquoi est-ce nécessaire? Si je le résous moi-même en utilisant des fonctions lagrangiennes, je peux obtenir la solution. Alors pourquoi R impose-t-il cette exigence?

Réponses:

4 pour la réponse № 1

L’algorithme Goldfarb-Idnani commence par calculer la solution sans contrainte. Ainsi, il faut que la matrice D du fonction objective est définie positive.

Extrait du fichier source Fortran resol.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.

1 pour la réponse № 2

La fonction auglag en paquet alabama fournit les multiplicateurs lagrange à la solution de tout problème d'optimisation.