[R] Relatively Simple Maximization Using Optim Doesnt Optimize

Skyler Saleebyan @ky|erb@@|eeby@n @end|ng |rom gm@||@com
Thu Mar 12 10:30:26 CET 2020


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]]



More information about the R-help mailing list