From: Katharine Mullen <kate_at_few.vu.nl>

Date: Sun, 08 Jun 2008 23:16:44 +0200 (CEST)

R-help_at_r-project.org mailing list

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. Received on Sun 08 Jun 2008 - 21:21:55 GMT

Date: Sun, 08 Jun 2008 23:16:44 +0200 (CEST)

Here is an example w/optim where you have an objective function F(x) where you have (possibly a few) constraints of form x_i=x_j, and you can specify the constraints flexibly, which is what I _think_ you want. An example from you would have been nice.

## objective function that depends on all parameters, here a, b, c obfun <- function(a,b,c,dd)

sum((dd - (exp(a * 1:100) + exp(b * 1:50) + exp(c * 1:25) ))^2)

dd <- exp(-.05 * 1:100) + exp(-.05 * 1:50) + exp(.005 * 1:25)

## let eqspec give all dependent parameters on left side of ## the constraints of form a=b

## e.g.

## for constraint a=b

xx <- optim(par=list(b=-4, c=-.1), fn=fr, eqspec=list(a="b"),

## for constraint b=a

x1 <- optim(par=list(a=-4, c=-.1), fn=fr, eqspec=list(b="a"),

On Sun, 8 Jun 2008, Alex F. Bokov wrote:

> Hello, and apologies for the upcoming naive questions. I am a biologist

*> who is trying to teach himself the appropriate areas of math and stats.
**> I welcome pointers to suggested background reading just as much as I do
**> direct answers to my question.
**>
**> Let's say I have a function F() that takes variables (a,b,c,a1,b1,c1)
**> and returns x, and I want to find the values of these variables that
**> result in a minimum value of x. That's a straightforward application of
**> optim(). However, for the same function I also need to obtain values
**> that return the minimum value of x subject to the following constraints:
**> a=a1, b=b1, c=c1, a=a1 && b=b1, a=a1 && c=c1, ... and so on, for any
**> combination of these constraints including a=a1, b=b1, c=c1. The brute
**> force way to do this with optim() would be to write into F() an immense
**> switch statement anticipating every possible combination of constrained
**> variables. Obviously this is inefficient and unmaintainable. Therefore,
**> my question is:
**>
**> Is the purpose of constrOptim() this exact type of problem? If so, how
**> does one express the constraint I described above in terms of the ui,
**> ci, and theta parameters? Are there any introductory texts I should have
**> read for this to be obvious to me from constrOptim's documentation?
**>
**> If constrOptim() is not the answer to this problem, can anybody suggest
**> any more elegant alterntives to the switch-statement-from-hell approach?
**>
**> Thank you very, very much in advance. I thought I understood R
**> reasonably well until I started banging my head against this problem!
**>
**> ______________________________________________
**> R-help_at_r-project.org mailing list
**> 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_at_r-project.org mailing list

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. Received on Sun 08 Jun 2008 - 21:21:55 GMT

Archive maintained by Robert King, hosted by
the discipline of
statistics at the
University of Newcastle,
Australia.

Archive generated by hypermail 2.2.0, at Sun 08 Jun 2008 - 22:30:45 GMT.

*
Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-help.
Please read the posting
guide before posting to the list.
*