声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1823|回复: 2

[编程技巧] 请高手帮我看一下以下优化程序错误!

[复制链接]
发表于 2007-5-18 11:58 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
首先建立目标函数M文件,fminconc.m
function f=myfun(x)
f=0.785*(x(1)^2-x(2)^2)
再建立非线性约束M文件,fmincono.m
function[c,ceq]=mycon(x)
c(1)=6292.99/(x(1)^3*(1-(x(2)/x(1))^4))-61320*((x(1)-x(2))/x(1))^(2/3)
c(2)=152.353*((x(1)^2+x(2)^2))^(1/2)-8000
c(3)=5197452/(x(1)^4-x(2)^4)-125
cep=0
设置线性约束,
A=[-1 1
1 0];
b=[-3.2;100];
设置初始值,变量下限值,调用优化程序
x0=[30.0;35.0];
lb=zeros(2,1);
[x,fval,exitflag,output,lambda]=fmincon(@fmincono,x0,A,b,[],[],lb,[],@fminconc)

(结果运行错误,请高手帮我看一下!因为刚刚接触MATLAB,自己摸索着建立的优化程序)
回复
分享到:

使用道具 举报

发表于 2007-5-18 18:22 | 显示全部楼层
原帖由 chendanyan 于 2007-5-18 11:58 发表
首先建立目标函数M文件,fminconc.m
function f=myfun(x)
f=0.785*(x(1)^2-x(2)^2)
再建立非线性约束M文件,fmincono.m
function[c,ceq]=mycon(x)
c(1)=6292.99/(x(1)^3*(1-(x(2)/x(1))^4))-61320*((x(1)- ...



请搜索版面,这类问题讨论得相当多。或者按照 置顶贴:聚宝盆 的要求把你的问题叙述清楚
发表于 2007-5-18 19:19 | 显示全部楼层
代码中有几个错误.我改了一下程序,虽然正确了,但却算不出结果.
所以建议将原问题用word贴上来.
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-9-24 11:28 , Processed in 0.061826 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表