Hi,
Am having problems specifying lower and upper constraints in constrOptim...
I have a function(x)->f which takes a 5 vector array
the constraints on the elements of x are:
x[1],x[2],x[3],x[5]>0
x[4]>-1
x[1],x[2],x[3],x[4],x[5]<1
this works:
############
> x
[1] 0.400 0.200 0.200 -0.050 0.002
> optim(x,f)
$par
[1] 0.28630079 0.13583616 0.18752379 0.02231329 0.08640233
$value
[1] 0.0004999157
$counts
function gradient
230 NA
$convergence
[1] 0
$message
NULL
###########
but when I try to specify the constraints, I get this:
###########
>
constrOptim(x,f,grad=NULL,ui=rbind(diag(5),-diag(5)),ci=c(0,0,0,-1,0,1,1,1,1,1))
Error in constrOptim(x, f, grad = NULL, ui = rbind(diag(5), -diag(5)), :
initial value not feasible
>
###########
What am I doing wrong ? As above, x=c(0.400 ,0.200, 0.200,-0.050 ,0.002)
Many thanks,
Tolga
having problems with constrOptim
5 messages · Ingmar Visser, Tolga Uzuner
ui %*% theta - ci has to be larger than zero, and it is not:
ui=rbind(diag(5),-diag(5)) ui
[,1] [,2] [,3] [,4] [,5] [1,] 1 0 0 0 0 [2,] 0 1 0 0 0 [3,] 0 0 1 0 0 [4,] 0 0 0 1 0 [5,] 0 0 0 0 1 [6,] -1 0 0 0 0 [7,] 0 -1 0 0 0 [8,] 0 0 -1 0 0 [9,] 0 0 0 -1 0 [10,] 0 0 0 0 -1
ci=c(0,0,0,-1,0,1,1,1,1,1) ci
[1] 0 0 0 -1 0 1 1 1 1 1
x=c(0.400 ,0.200, 0.200,-0.050 ,0.002) theta=x ui %*% theta - ci
[,1] [1,] 0.400 [2,] 0.200 [3,] 0.200 [4,] 0.950 [5,] 0.002 [6,] -1.400 [7,] -1.200 [8,] -1.200 [9,] -0.950 [10,] -1.002 try
ci
[1] 0 0 0 -1 0 -1 -1 -1 -1 -1 hth, ingmar
On 4/9/05 12:29 PM, "Tolga Uzuner" <tolga at coubros.com> wrote:
Hi, Am having problems specifying lower and upper constraints in constrOptim... I have a function(x)->f which takes a 5 vector array the constraints on the elements of x are: x[1],x[2],x[3],x[5]>0 x[4]>-1 x[1],x[2],x[3],x[4],x[5]<1 this works: ############
x
[1] 0.400 0.200 0.200 -0.050 0.002
optim(x,f)
$par
[1] 0.28630079 0.13583616 0.18752379 0.02231329 0.08640233
$value
[1] 0.0004999157
$counts
function gradient
230 NA
$convergence
[1] 0
$message
NULL
###########
but when I try to specify the constraints, I get this:
###########
constrOptim(x,f,grad=NULL,ui=rbind(diag(5),-diag(5)),ci=c(0,0,0,-1,0,1,1,1,1,1
))
Error in constrOptim(x, f, grad = NULL, ui = rbind(diag(5), -diag(5)), :
initial value not feasible
########### What am I doing wrong ? As above, x=c(0.400 ,0.200, 0.200,-0.050 ,0.002) Many thanks, Tolga
______________________________________________ R-help at stat.math.ethz.ch mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html
Ingmar Visser Department of Psychology, University of Amsterdam Roetersstraat 15, 1018 WB Amsterdam The Netherlands http://users.fmg.uva.nl/ivisser/ tel: +31-20-5256735
subtle... thanks, that works, appreciate it
Ingmar Visser wrote:
ui %*% theta - ci has to be larger than zero, and it is not:
ui=rbind(diag(5),-diag(5)) ui
[,1] [,2] [,3] [,4] [,5] [1,] 1 0 0 0 0 [2,] 0 1 0 0 0 [3,] 0 0 1 0 0 [4,] 0 0 0 1 0 [5,] 0 0 0 0 1 [6,] -1 0 0 0 0 [7,] 0 -1 0 0 0 [8,] 0 0 -1 0 0 [9,] 0 0 0 -1 0 [10,] 0 0 0 0 -1
ci=c(0,0,0,-1,0,1,1,1,1,1) ci
[1] 0 0 0 -1 0 1 1 1 1 1
x=c(0.400 ,0.200, 0.200,-0.050 ,0.002) theta=x ui %*% theta - ci
[,1] [1,] 0.400 [2,] 0.200 [3,] 0.200 [4,] 0.950 [5,] 0.002 [6,] -1.400 [7,] -1.200 [8,] -1.200 [9,] -0.950 [10,] -1.002 try
ci
[1] 0 0 0 -1 0 -1 -1 -1 -1 -1 hth, ingmar On 4/9/05 12:29 PM, "Tolga Uzuner" <tolga at coubros.com> wrote:
Hi, Am having problems specifying lower and upper constraints in constrOptim... I have a function(x)->f which takes a 5 vector array the constraints on the elements of x are: x[1],x[2],x[3],x[5]>0 x[4]>-1 x[1],x[2],x[3],x[4],x[5]<1 this works: ############
x
[1] 0.400 0.200 0.200 -0.050 0.002
optim(x,f)
$par
[1] 0.28630079 0.13583616 0.18752379 0.02231329 0.08640233
$value
[1] 0.0004999157
$counts
function gradient
230 NA
$convergence
[1] 0
$message
NULL
###########
but when I try to specify the constraints, I get this:
###########
constrOptim(x,f,grad=NULL,ui=rbind(diag(5),-diag(5)),ci=c(0,0,0,-1,0,1,1,1,1,1
))
Error in constrOptim(x, f, grad = NULL, ui = rbind(diag(5), -diag(5)), :
initial value not feasible
###########
What am I doing wrong ? As above, x=c(0.400 ,0.200, 0.200,-0.050 ,0.002)
Many thanks,
Tolga
______________________________________________ R-help at stat.math.ethz.ch mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html
Hi, Is the beta distribution implemented in terms of it's mean and standard deviation, as opposed to alpha and beta, in any R package ? Thanks Tolga
Tolga Uzuner wrote:
Hi, Is the beta distribution implemented in terms of it's mean and standard deviation, as opposed to alpha and beta, in any R package ? Thanks Tolga
Hmm... answering my own question... guess there is no bijection between
{alpha,beta} and {mean,variance} which is why... ocurred to me after I
sent the question, unless someone disagrees.