3
我想在數值上優化R中導函數不可用時的函數。我很好奇我如何獲得優化過程的打印中間步驟。我知道如何在使用optim()時做到這一點。我正在談論control = list(trace ...等)。我在使用優化時如何做類似的工作?打印R優化函數的中間步驟
我想在數值上優化R中導函數不可用時的函數。我很好奇我如何獲得優化過程的打印中間步驟。我知道如何在使用optim()時做到這一點。我正在談論control = list(trace ...等)。我在使用優化時如何做類似的工作?打印R優化函數的中間步驟
追蹤你的目標。請注意,如果您有一個非常舊的R版本,您需要升級到returnValue()
的最新版本才能使用。
這裏是help(optimize)
第一個例子中帶着一絲加 - 看到標有##聲明:
f <- function (x, a) (x - a)^2
trace(f, exit = quote(cat("x:", x, "objective:", returnValue(), "\n")), print = FALSE) ##
optimize(f, c(0, 1), tol = 0.0001, a = 1/3)
,並提供:
x: 0.381966 objective: 0.002365137
x: 0.618034 objective: 0.08105446
x: 0.236068 objective: 0.009460549
x: 0.3333333 objective: 0
x: 0.3333 objective: 1.111442e-09
x: 0.3333667 objective: 1.111442e-09
x: 0.3333333 objective: 0
$minimum
[1] 0.3333333
$objective
[1] 0