It looks like a bug in the CG method. The other methods in optim() all
work fine. CG is documented to be a good choice in high dimensions; why
did you choose it for a 1 dim problem?
Duncan Murdoch
On 12/03/2020 2:30 a.m., Skyler Saleebyan wrote:
I am trying to familiarize myself with optim() with a relatively simple
maximization.
Description:
L and K are two terms which are constrained to add up to a total 100000
(with respective weights to each). To map this constraint I plugged K into
the function (to make this as simple as possible.)
Together these two feed into one nonlinear function which is the product of
two monotonic (on the positive interval) functions. Then that numbers is
returned in a function fed to optim, which should maximize the output by
adjusting L. The whole code is:
production1 <- function(L){
budget=100000
Lcost=12
Kcost=15
K=(budget-L*Lcost)/Kcost
machines=0.05*L^(2/3)*K^(1/3)
return(machines)
}
# production1(6000) #example of number with much higher output vs optim
result
S1=optim(1001,production1,method="CG",control=list(fnscale=-1))
S1
Output:
$par
[1] 1006.536
$value
[1] 90.54671
$counts
function gradient
201 101
$convergence
[1] 1
$message
NULL
For some reason this never explores the problem space and just spits out
some answer close to the initial condition. What am I doing wrong?
Thanks,
Skyler S.
[[alternative HTML version deleted]]
______________________________________________
R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
______________________________________________
R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.