Я никогда раньше не использовал Solver Foundation, но вот простой перевод из примера C # в MSDN (адаптированный к вашей функции оптимизации):
open System
open Microsoft.SolverFoundation.Common
open Microsoft.SolverFoundation.Solvers
let xInitial = [| 0.; 0. |]
let xLower = [| 0.; 0. |]
let xUpper = [| 2.; 2. |]
let sqr x = x * x
let solution =
NelderMeadSolver.Solve(
Func<float [], _>(fun xs -> sqr(xs.[0] - 1.) + sqr(xs.[1] - 1.)),
xInitial, xLower, xUpper)
printfn "%A" solution.Result
printfn "solution = %A" (solution.GetSolutionValue 0)
printfn "x = %A" (solution.GetValue 1)
printfn "y = %A" (solution.GetValue 2)
Вы должны быть в состояниидобавить ссылки Фонда Солвера и построить программу.Если вы используете код в F # Interactive, не забудьте добавить dll-файлы Solver Foundation, ссылаясь на их точные пути.