全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
12879 6
2015-12-02
今天看到optimize函数是用来求极值的,就找了个函数试了试,用R语言写了下,总共也就那么几行,
f=function(x) x*sin(10*pi*x)+1
curve(f,xlim=c(-2,1))
optimize(f,c(-2,1),tol=0.0001,maximum=T)
是求(-2,1)的极大值,随便画了张图,结果问题来了
这是函数给的极大值:
$maximum[1] -1.050968$objective[1] 2.050482 QQ截图20151202163619.jpg
这是画出的图,很明显不在-1.05处啊, 请问,这是为什么呢,做极小值也是一样,也是不对的。

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2015-12-2 22:33:41
在R中输入?optimize,好好看看其用法和结果
maximum是指xlim的值
objective是函数的值,也就是你所求的值
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-12-3 09:32:10
hubifeng? 发表于 2015-12-2 22:33
在R中输入?optimize,好好看看其用法和结果
maximum是指xlim的值
objective是函数的值,也就是你所求的值
这个我知道啊, 问题是他给出的值,你从图像上看的话,明显不是极大值啊
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-12-4 02:57:15
The first evaluation of f is always at x_1 = a + (1-φ)(b-a) where (a,b) = (lower, upper) and phi = (sqrt(5) - 1)/2 = 0.61803.. is the golden section ratio. Almost always, the second evaluation is at x_2 = a + phi(b-a). Note that a local minimum inside [x_1,x_2] will be found as solution, even when f is constant in there, see the last example.
上面这段出自optimize函数的帮助。所以是optimize函数的算法问题。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2016-3-24 03:00:44
楼主找到解决方法了吗
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2016-3-24 03:01:21
suimong 发表于 2015-12-4 02:57
上面这段出自optimize函数的帮助。所以是optimize函数的算法问题。
有什么方法可以避免这个问题吗
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群