[ad_1]

I need to find exact and numerical solutions to a function but my code in R shows Error in optim(start_val[i, ], g) :

function cannot be evaluated at initial parameters

that is my code:

g <- function(x) (3*x[1]+2*x[2]+4*x[3]-4)^2 + (4*x[1]+2*x[2]+4*x[3]-2)^2 + (1*x[1]+1*x[2]+4*x[3]-4)^2

start_val <- expand.grid(c(-10,0,10),c(-10,0,10),c(-10,0,10))

optim_on_a_multiple_grid <-

function(start_val, fun, …) {

```
opt_result <- sapply(1:nrow(start_val),
function(i) {
res <- optim(start_val[i,], g)
c(res[[1]], res[[2]], res[[4]])
})
rownames(opt_result) <-
c(paste("x_", 1:ncol(start_val),
"_start_val", sep = ""),
paste("x_", 1:ncol(start_val),
"_sol", sep = ""),
paste(c(deparse(substitute(
fun
)), "_min"), collapse = ""),
"convergence")
opt_result
```

}

round(optim_on_a_multiple_grid(expand.grid(c(-10, 0, 10), c(-10, 0, 10)), g), 3)

Please, point me at my mistakes and explain how to fix them, I am stuck on it for quite a while now

[ad_2]