【发布时间】:2014-06-08 17:56:20
【问题描述】:
我有一个函数,我想找到它的最大值
deposit_likelood <- function(a1,a2) { (0.5672 - 0.092 * a1 + 0.0044 * a2^2 }
在a1 should be between -3 and +3 和
a2 should be between 0.5 and 0.9?
我尝试使用 optimize() 函数:
optimize(deposit_likelood, interval=c(-3,3,0.5,0.9), maximum=TRUE)
但我收到了这个错误:
Error in a2^2 : 'a2' is missing
【问题讨论】:
-
您可以通过分析解决的简单问题。差异化?
-
我明白这一点,但我想知道如何用 r 来做,这样我就可以使用这样的解决方案和语法来解决更复杂的问题。谢谢,Ron
-
优化是一维的,所以 a2 被抛在后面。查看帮助(优化)
-
另外,你的函数定义有一个 ( 和 no )。如图所示,它不是一个有效的 R 函数。
-
如果优化是一维的,我还能用什么其他解决方案来解决这个问题?
标签: r optimization