Matlab的凸优化

时间:2013-08-27 19:02:26

标签: matlab mathematical-optimization convex-optimization

我想知道如何使用matlab解决以下最小化问题:

  
    

A是半正定矩阵。 (所有特征值都大于或等于0)     F = F(x_1,...,x_n,y_1,y_2)=(F_1,...,F_2n)是线性函数。

         

我想找(x_1,...,x_n,y_1,y_2)     这样:

         

F * A * F'是最小的。     变量没有限制,但请注意,实际上小于矢量长度。

  

我正在尝试将统计距离缩小。我无法在网上找到使用的功能。

提前致谢。

1 个答案:

答案 0 :(得分:1)

对于MATLAB中的无约束优化,您可以使用fminunc。为此,您可以定义成本函数:

function z = costfun(x)
f = F*A*F';    % where F is a function of x=[x_1,...y_n]

然后调用fminunc找到最小值。提供了矢量x0作为搜索的起点。

[x,zval] = fminunc(@costfun,x0);