现在有这么一组表达式
目标函数:min x^2+y^2+z^2
约束函数是 3+ 1/3x^2-1/2y^2<0
5-1/5y^2-1/7z^2<0
问题是怎么让x,y,z在matlab 中自动转化成 fmincon 函数的标准形式 x(1), x(2), x(3).
关于fmincon函数表达式的问题
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
1条回答 默认 最新
- joel_1993 2021-11-17 22:35关注
你好同学,这道题目可以写成这样的格式
f = @(x) x(1)^2 + x(2)^2 + x(3)^2; % x(1),x(2),x(3)分别代表x,y和z x0 = [1,2,1]; % 初值(初始值取得好不好决定fmincon是否能找到一个解) x = fmincon(f,x0,[],[],[],[],[],[],@mycon) function [c, ceq]=mycon(x) c = [ 3+1/3*x(1)^2-1/2*x(2)^2; % 非线性约束都写成c(x)<0格式 5-1/5*x(2)^2-1/7*x(3)^2 ]; ceq = []; end
如有帮助,还望题主给个宝贵的采纳支持一下答主答题哟,谢谢啦
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥170 如图所示配置eNSP
- ¥20 docker里部署springboot项目,访问不到扬声器
- ¥15 netty整合springboot之后自动重连失效
- ¥15 悬赏!微信开发者工具报错,求帮改
- ¥20 wireshark抓不到vlan
- ¥20 关于#stm32#的问题:需要指导自动酸碱滴定仪的原理图程序代码及仿真
- ¥20 设计一款异域新娘的视频相亲软件需要哪些技术支持
- ¥15 stata安慰剂检验作图但是真实值不出现在图上
- ¥15 c程序不知道为什么得不到结果
- ¥15 键盘指令混乱情况下的启动盘系统重装