24小时热门版块排行榜    

查看: 385  |  回复: 3

沈杨超

新虫 (初入文坛)

[求助] NMinize 已有1人参与

mathemetica 自带的求最小值的函数Nminize函数 是基于 nelder-mead的算法运行的么

为什么我在设置了AccuracyGoal -> 0, PrecisionGoal -> 1,这样的设置精度应该很低了  为什么mathemetica给出的计算结果依然不是收敛的,这样的话我该怎么设置可以让他计算出比较好的结果

还有其他的什么参数可以优化的吗

或者有什么其他的函数可以等效的算一个黑箱子目标的函数最小值

灰常感谢
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

cooooldog

铁杆木虫 (著名写手)

ส็็็

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
沈杨超: 金币+20, 有帮助 2014-07-25 21:30:46
你选中NMinimize
按F1键,会出现电子版的帮助文档

然后看Options下面有一个Method选项,可以选择不同算法

个人感觉,NMinimize最强大的Method是"差分演化"
, Method -> "DifferentialEvolution"

Options[NMinimize] 可以帮助知道函数有多少选项
ส็็็็็็็็็็็็็็็็็็็็
2楼2014-07-24 21:04:56
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

沈杨超

新虫 (初入文坛)

引用回帖:
2楼: Originally posted by cooooldog at 2014-07-24 21:04:56
你选中NMinimize
按F1键,会出现电子版的帮助文档

然后看Options下面有一个Method选项,可以选择不同算法

个人感觉,NMinimize最强大的Method是"差分演化"
, Method -> "DifferentialEvolut ...

非常感谢,但是这个函数的设置还是没有起到什么作用,尤其是那些精度的设置,感觉没有得到很好的控制
其中最重要的就是我想找到一个函数能够自己设置求解结束的条件。
我想自己设置最终的结束条件
3楼2014-07-25 21:33:35
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

cooooldog

铁杆木虫 (著名写手)

ส็็็

【答案】应助回帖

引用回帖:
3楼: Originally posted by 沈杨超 at 2014-07-25 21:33:35
非常感谢,但是这个函数的设置还是没有起到什么作用,尤其是那些精度的设置,感觉没有得到很好的控制
其中最重要的就是我想找到一个函数能够自己设置求解结束的条件。
我想自己设置最终的结束条件...

精度设置是mathematica里面基本的东西;

1.首先,NMinimize不是万能的,不能全局求解任何问题; 能不能求解,取决于你的问题

2.如果是你确认是精度precision,应该设置WorkingPrecision-> n
而且目标函数中不能出现任何实际Precision为MachinePrecision的任何数字,比如1.999328*x^2,系数的精度是机器精度,会导致WorkingPrecision的设置无效,需要改为1999328*x^2/1000000的形式

你问问题的时候确认先把自己的问题描述清楚了,别让人家猜
ส็็็็็็็็็็็็็็็็็็็็
4楼2014-07-25 22:18:01
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 沈杨超 的主题更新
信息提示
请填处理意见