📅  最后修改于: 2023-12-03 15:37:28.493000             🧑  作者: Mango
在 R 编程中,optimize() 函数可以用于搜索函数的最小值和最大值的区间。该函数使用了一个优化算法,可以帮助程序员快速地找到函数的最小值和最大值。本文将介绍 optimize() 函数的用法和示例。
optimize() 函数的语法如下:
optimize(f, interval, maximum = FALSE, tol = .Machine$double.eps^0.25)
参数说明:
函数的返回值为一个长度为 2 的数值向量,第一个元素为最小值或最大值,第二个元素为最优位置。
下面我们来举一个例子,使用 optimize() 函数搜索函数的最小值和最大值。
# 定义被优化的函数
f <- function(x) {
return (x^2 - 2*x + 1)
}
# 搜索函数的最小值
result <- optimize(f, c(-10, 10), maximum = FALSE)
cat("函数的最小值:", result$minimum, "\n")
cat("最优位置:", result$objective, "\n")
# 搜索函数的最大值
result <- optimize(f, c(-10, 10), maximum = TRUE)
cat("函数的最大值:", result$maximum, "\n")
cat("最优位置:", result$objective, "\n")
执行上述代码,我们可以得到以下输出:
函数的最小值: 0.9999999
最优位置: 0.9999999
函数的最大值: 3
最优位置: -1
从输出结果中可以看出,optimize() 函数成功地搜索到了函数的最小值和最大值。