如何在R中找到多元函数的最大值

问题描述 投票:0回答:1

我有一个共同的可能性,我需要最大化,这由大约25个不同的变量确定。我希望有一种方法可以找到可变值的组合,从而使该功能最大化,而无需借助25个“ for”循环来循环遍历每个可能的值。

[这是这种可能性的一个很小的例子,使用'for'循环方法将其最大化,其中'temp'计算该可能性的值,而test是记录所使用变量值的向量:

h1=23
h2=31

test=c(NA,NA,NA,NA,0)
for (N in seq(60,150,10)) {
  for (p1 in seq(0.01,1,.01)) {
    for (p2 in seq(0.01,1,.01)) {
      for (S1 in seq(0.5,1,.005)) {
        temp=factorial(N)/(factorial(h1)*factorial(h2)*factorial(N-h1-h2))*(p1)^h1*((1-p1)*S1*p2)^h2*(1-(p1+(1-p1)*S1*p2))^(N-h1-h2)
        if (temp>test[5]) test=c(p1,p2,S1,N,temp)
      }
    }
  }
}
test

谢谢,谢尔盖

r maximize mle
1个回答
0
投票

尝试optimize()函数,

这里是我找到的快速教程:https://www.dummies.com/programming/r/how-to-find-minimum-or-maximum-values-for-functions-in-r/

希望你最好!!>

© www.soinside.com 2019 - 2024. All rights reserved.