关于fmincon输出的问题

19日视图(30天)
特雷弗
特雷弗 2023年5月25日在6:57
评论道: 特雷弗约7小时前
我试图运行我的代码,我得到以下输出
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
一阶范数的
Iter F-count f (x)可行性最优的步骤
0 9.224 5.010 1784 4.701778 e + 02年e-01 e-06
3568 2.507450 e + 02 5.000 e-01 4.561 e + 4.223 e-02 02
聚集到一个不可行点。
fmincon停止因为当前步骤的大小小于
一步尺寸公差但约束的值
满意在约束宽容的价值。
<停止标准细节>
考虑启用内点方法可行性模式。
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
我没有得到它是什么说,我得到了答案+ -0.1之间e15汽油,但仍出去把表明约束([-0.5,0.5])。
这是否意味着我得到了本地最好的解决方案?或者答案是不正确的。
致以最亲切的问候
% xlsxFile =“Test_model.xlsx”;
% data = readmatrix (xlsxFile);
% =数据(:1:end-1);
% b =数据(:,结束);
抽搐
有趣= @ (a)规范(a * - b) ^ 2;
a0 = 0.001 *(大小(A, 2), 1);
Aeq =眼睛(大小(A, 2));
说真的= 0(大小(2),1);
磅= -0.5 *(大小(A, 2), 1);
乌兰巴托的= 0.5 *(大小(A, 2), 1);
nonlcon = @ (a)协议([],[a -磅;乌兰巴托-]);
选择= optimoptions (“fmincon”,“显示”,“通路”,
“MaxFunctionEvaluations”,50000,
“StepTolerance”1 e-18);
一个= fmincon(乐趣、a0 [] [], Aeq,说真的,磅,乌兰巴托,nonlcon,选项);
toc

答案(1)

沃尔特·罗伯森
沃尔特·罗伯森 2023年5月25日19
移动:沃尔特·罗伯森 2023年5月25日19
你也有Aeq beq约束和非线性约束
你的非线性约束等式约束和表达= =磅&乌兰巴托= =。但除非磅= =乌兰巴托,无法满足
3评论
特雷弗
特雷弗 约7小时前
谢谢你帮我清理,所以如果我把它正确,最有效的方式来部署
fmincon(乐趣、a0[]、[][],[],磅,乌兰巴托,[],选项)
和所有其他 限制可能会导致“约束不满意”?

登录置评。

类别

找到更多的在Solver-Based非线性优化帮助中心文件交换

下载188bet金宝搏


释放

R2021b

社区寻宝

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

开始狩猎!