2016-05-03 11 views
-2

Ich versuche, das folgende Minimierungsproblem zu lösen:MATLAB Minimierung

Ua=Pa+(a-c)*(a-c)' 

Ub=Pb+(b-c)*(b-c)' 

U=max(Ua,Ub) 

c=arg min (det(U)) 

wo Pa, Pb n * n-Matrizen bekannt sind, a und b sind n*1 Vektoren bekannt. Der Vektor c ist unbekannt und muss bestimmt werden durch Minimieren der Determinante von U, was das Maximum von Ua und Ub ist.

Bitte lassen Sie mich wissen, wie ich dieses Minimierungsproblem in MATLAB lösen kann?

+0

Verwenden 'cvx': http://cvxr.com/cvx/ – rayryeng

+0

@rayryeng Ich glaube nicht, cvx wird funktionieren, weil dieses Problem nicht konvex aussieht? Nur um zu beginnen, ist die Determinante überhaupt nicht konvex. –

+0

@MatthewGunn Ich habe die Determinante dort verpasst. Du hast recht. Es wird nicht funktionieren. – rayryeng

Antwort

0

so etwas wie dieses Versuchen:

f= @(c)det(max(Pa+(a-c)*(a-c)',Pb+(b-c)*(b-c)')); 
c= fminsearch(f,zeros(n,1)); 

(zeros(n,1) ist der Anfangspunkt)

+0

Vielen Dank, es funktioniert perfekt –

Verwandte Themen