最小二乘约束在绝对值

23日视图(30天)
路易莎
路易莎 原因在2023年6月15日21:24
编辑: Torsten 2023年6月16日20:04
你好,我需要解决最小二乘形式的值
,其中x是一个32 x1向量和B为32 x32矩阵。
但是x是复杂的和我需要约束的解决方案使每个元素的向量x 1的绝对值。万博 尤文图斯
这有可能吗?
最好的,

答案(2)

Torsten
Torsten 2023年6月16日14:32
编辑:Torsten 2023年6月16日20:04
rng (“默认”)
n = 32;
y =兰德(n - 1) + 1我*兰德(n, 1);
我=兰德(n) + 1 *兰德(n);
x0 =兰德(n, 1) + 1我*兰德(n, 1);
x0 =[真实(x0);图像放大(x0)];
x0 = x0. / (√x0 1: n)。^ 2 + x0 (n + 1:2 * n) ^ 2);√6 (x0 (1: n)。^ 2 + x0 (n + 1:2 * n) ^ 2)];
有趣= @ (x) (B * (x (1: n) + 1 * x (n + 1:2 * n)) - y)”* (B * (x (1: n) + 1 * x (n + 1:2 * n)) - y);
乐趣(x0)
ans = 1.2661 e + 04
nonlcon = @ (x)协议([],x (1: n)。x ^ 2 + (n + 1:2 * n) ^ 2 (n - 1));
索尔= fmincon(有趣,x0, []、[] [], [], [], [], nonlcon, optimset (“MaxFunEvals”,10000,“TolFun”1 e-12“TolX”1 e-12))
局部最小值。约束满足。fmincon停止因为当前步骤的大小小于一步尺寸公差的值和约束满足约束的值公差内。
索尔= 64×1
0.6418 -0.9517 -0.9328 -0.8359 -0.9372 0.4603 0.7496 0.8249 0.9990 -0.2242
乐趣(sol)
ans = 10.3184
索尔(1:n) ^ 2 +索尔(n + 1:2 * n) ^ 2 (n, 1)
ans = 32×1
1.0 e15汽油-0.2220 * 0 0 0 0 0 0 0 0 0

马特·J
马特·J 在2023年6月15日在23:00
编辑:马特·J 2023年6月15日23:01
你需要写问题的实值组件xi和xr (x)
x = xr + 1 *习
一旦你这样做,绝对值约束成为二次,
习xr ^ 2 + ^ 2 = 1
你可以用fmincon解决。
2的评论

登录置评。

类别

找到更多的在和迭代解算器输出显示帮助中心文件交换

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!