【发布时间】:2018-01-24 19:21:19
【问题描述】:
为了最小化关于 2 个参数的函数,我在 R 中使用 optim 或 optimx 函数,两者都使用 Nelder-Mead 方法。我将 optim 和 optimx 函数的 itnmax 和 maxit 分别固定为 1,但这需要我很多时间来解决它。 itnmax=1 或 maxit=1 真的意味着 1 个迭代步骤吗?因为如果是的话,就不会花那么多时间了。
这是带有 f 函数的 optim 函数来最小化。评估函数大约需要 10 秒。我在 10 分钟后停止了优化,因为它还没有完成。
parmin=optimx(c(3,0.04),fn=f,method="Nelder-Mead",itnmax=1)
【问题讨论】:
-
我的功能介绍太长了,比较复杂。我只是问 itnmax 真正代表什么,在我的情况下它是否应该更快,因为我知道我的函数需要大约 10 秒来评估。
-
那么,多长时间是多少?在 d 维中的一步需要 d+2 = 4 次函数评估。是否需要超过 40 秒?
-
看我的问题,我补充了一些信息。需要10多分钟。
-
我赞成,因为这是一个有用的问题,但为了将来参考,我认为您可以提供一个可重复的示例(例如,请参阅我的答案......)
标签: r optimization