繁体   English   中英

成本函数-优化MATLAB

[英]cost function - optimization matlab

我有一个信号X1 = [a1,...aN] ,其中[a1,....,aN]的值始终> 0

我还有X1的相同长度(N)的其他599个信号X2, X3, ...,X600 这些信号可以假定值> 0和<0。

我知道所有600个信号的总和始终为正且等于信号S
S = X1 + X2 + ... + X600
S
S = X1 + X2 + ... + X600

我想分配第一个信号X1以便以最佳方式减少其他信号的负值...您能建议我该怎么做(我使用matlab)?

在最佳情况下, S = X2' + X3' + ... + X600' ,其中X2', X3'等为正信号。

谢谢

编辑

% signal x1
x=rand(1,1000);
x(x<0)=0.01;

% signals x2,....,x599 contained in the rows of A
A=rand(599,1000);

似乎您想使(A)的以下目标(J)最小化:

J = sum( abs( x(:,1) - A*x(:,1)) ) +...
             sum(negativehockeystick( x(:, 2:end) + A.*x(:,1))

其中A是599 * N矩阵(优化变量)。

而“ negativehockeystick”是函数-min(x,0)

我认为cvx可以解决此问题,因为它看起来很凸(在A中),但我不确定

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM