f = function(x) { sum(x^2) }
g = function(x) { 2*x }
h = function(x) { 2*diag(length(x)) }
x0 = c(1,1)
args = cg_args()
cg1(x0, f, g, args)
cg2(x0, f, args)
args = bfgs_args()
bfgs1(x0, f, g, args)
bfgs2(x0, f, args)
args = lbfgsb_args()
lbfgsb1(x0, f, g, args)
lbfgsb2(x0, f, args)
args = neldermead_args()
neldermead(x0, f, args)
args = nlm_args()
nlm1(x0, f, g, h, args)
nlm2(x0, f, g, args)
nlm3(x0, f, args)
Run the code above in your browser using DataLab