Оптимизация интегрированной функции в R

#r #optimization #integration

#r #оптимизация #интеграция

Вопрос:

Я хотел бы найти оптимальное значение a для следующего интегрирования, которое является функцией x

   integrand <- function(x,a) {
          D=a/((x 1)*sqrt(x a))
          D
        }
  

Я могу выполнить интеграцию для фиксированного значения a . Например, если a=5

 > integrate(integrand,0,5,a=5)$value
[1] 3.490687
  

Но я хочу найти оптимальное значение, используя optim() функцию в R или любую доступную встроенную функцию оптимизации. Я попробовал следующий код, к сожалению, он не работает,

 optim(5,integrate(integrand, lower = 0, upper = 5))
  

Приветствуется любая помощь.

Комментарии:

1. Если интеграл — это область под некоторой функцией, почему вы хотите оптимизировать число?

Ответ №1:

Вы можете использовать функцию ‘optimize’, которая идеально подходит для однопараметрической оптимизации:

 optimize(f = integrand, interval = c(0, 5), a = 5)
  

Комментарии:

1. Как я узнаю, что значение a равно 5 ? Я использовал ее в качестве примера. Моя цель — найти оптимальное значение a