public inbox for gsl-discuss@sourceware.org
 help / color / mirror / Atom feed
* variable range
@ 2003-07-29  8:23 Sang-Joon Lee
  2003-07-29  8:53 ` Jerome BENOIT
  2003-07-29 11:03 ` Fabian Bastin
  0 siblings, 2 replies; 7+ messages in thread
From: Sang-Joon Lee @ 2003-07-29  8:23 UTC (permalink / raw)
  To: gsl-discuss; +Cc: bchase

Hi,

In using the GSL "Multidimensional Minimization" algorithms, I would like
to limit the range of variables.  For instance, in a function,
f(x)=3*(x-4)*(x-4)+2, I would like to make x be a positive real number.
I would appreciate if you let me know how to do this.

  Sincerely yours,

  Sang-Joon Lee


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: variable range
  2003-07-29  8:23 variable range Sang-Joon Lee
@ 2003-07-29  8:53 ` Jerome BENOIT
  2003-07-29 13:51   ` Sang-Joon Lee
  2003-07-29 11:03 ` Fabian Bastin
  1 sibling, 1 reply; 7+ messages in thread
From: Jerome BENOIT @ 2003-07-29  8:53 UTC (permalink / raw)
  To: gsl-discuss; +Cc: Sang-Joon Lee

Hello,

a good idea is to make a change of variable in such a way that
the new variable are unconstrained.


I hope that helps,
Jerome

Sang-Joon Lee wrote:
> Hi,
> 
> In using the GSL "Multidimensional Minimization" algorithms, I would like
> to limit the range of variables.  For instance, in a function,
> f(x)=3*(x-4)*(x-4)+2, I would like to make x be a positive real number.
> I would appreciate if you let me know how to do this.
> 
>   Sincerely yours,
> 
>   Sang-Joon Lee
> 
> 
> 


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: variable range
  2003-07-29  8:23 variable range Sang-Joon Lee
  2003-07-29  8:53 ` Jerome BENOIT
@ 2003-07-29 11:03 ` Fabian Bastin
  1 sibling, 0 replies; 7+ messages in thread
From: Fabian Bastin @ 2003-07-29 11:03 UTC (permalink / raw)
  To: gsl-discuss

I think that GSL only supports unconstrained optimization for 
multidimensional minimization, but in fact I don't use it for this, so I 
don't know exactly.

There exists a lot of available routines for constrained problems, see 
in particular the NEOS server: http://www-neos.mcs.anl.gov/neos/

If you have only simple constraints such as nonnegativity constraints, 
you can use methods relying on projected gradients, or projected 
conjugated gradients.

Another way to deal with such constraints is to minimize a sequence of 
barrier problems (see for instance the excellent book of Nocedal and 
Wright, "Numerical Optimization"). For nonnegativity constraints, you 
replace f(x) by
f(x)-\mu <e, log(x)>,
where <.,.> is the dot product, \mu is a strictly positive scalar and e 
is a vector having all components set to one. This is the logarithmic 
barrier function.
If you start from a positive x, you cannot go to negative values since 
the function grows then to infinity.

By letting \mu converging towards zero, you solve problems that become 
near to your original problem. For each barrier problem, you can take as 
the starting point the solution of the previously solved barrier problem.

Ragards,

Fabian Bastin

Sang-Joon Lee wrote:
> Hi,
> 
> In using the GSL "Multidimensional Minimization" algorithms, I would like
> to limit the range of variables.  For instance, in a function,
> f(x)=3*(x-4)*(x-4)+2, I would like to make x be a positive real number.
> I would appreciate if you let me know how to do this.
> 
>   Sincerely yours,
> 
>   Sang-Joon Lee
> 

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: variable range
  2003-07-29  8:53 ` Jerome BENOIT
@ 2003-07-29 13:51   ` Sang-Joon Lee
  0 siblings, 0 replies; 7+ messages in thread
From: Sang-Joon Lee @ 2003-07-29 13:51 UTC (permalink / raw)
  To: Jerome BENOIT; +Cc: gsl-discuss

I appreciate your instruction.

  Sincerely yours,

  Sang-Joon Lee

On Tue, 29 Jul 2003, Jerome BENOIT wrote:

> Hello,
>
> a good idea is to make a change of variable in such a way that
> the new variable are unconstrained.
>
>
> I hope that helps,
> Jerome
>
> Sang-Joon Lee wrote:
> > Hi,
> >
> > In using the GSL "Multidimensional Minimization" algorithms, I would like
> > to limit the range of variables.  For instance, in a function,
> > f(x)=3*(x-4)*(x-4)+2, I would like to make x be a positive real number.
> > I would appreciate if you let me know how to do this.
> >
> >   Sincerely yours,
> >
> >   Sang-Joon Lee
> >
> >
> >
>
>
>

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: variable range
  2003-07-29 10:13 Przemyslaw.Sliwa
  2003-07-29 10:58 ` Pedro Gonnet
@ 2003-07-30 17:52 ` Z F
  1 sibling, 0 replies; 7+ messages in thread
From: Z F @ 2003-07-30 17:52 UTC (permalink / raw)
  To: Przemyslaw.Sliwa, gsl-discuss



how about x=atan(y)-type of varaible change?

by using coefficients it is possible to make x in the proper range and
y is unconstraint.

Z

--- Przemyslaw.Sliwa@ecb.int wrote:
> Could you give me any example???
> I do not have any idea how to proceed with it.
> 
> Thanks,
> 
> Przem
> 
> 
> 
> Hello,
> 
> a good idea is to make a change of variable in such a way that
> the new variable are unconstrained.
> 
> I hope that helps,
> Jerome
> 
> Sang-Joon Lee wrote: 
> 	Hi,
> 	
> 	In using the GSL "Multidimensional Minimization" algorithms, I would
> like
> 	to limit the range of variables.  For instance, in a function,
> 	f(x)=3*(x-4)*(x-4)+2, I would like to make x be a positive real
> number.
> 	I would appreciate if you let me know how to do this.
> 
> 	Sincerely yours,
> 	
> 	Sang-Joon Lee
> 	
> 	
> 	
> 
> 
> Any e-mail message from the European Central Bank (ECB) is sent in
> good faith but shall neither be binding nor construed as constituting
> a commitment by the ECB except where provided for in a written
> agreement.
> This e-mail is intended only for the use of the recipient(s) named
> above. Any unauthorised disclosure, use or dissemination, either in
> whole or in part, is prohibited.
> If you have received this e-mail in error, please notify the sender
> immediately via e-mail and delete this e-mail from your system.
> 


__________________________________
Do you Yahoo!?
Yahoo! SiteBuilder - Free, easy-to-use web site design software
http://sitebuilder.yahoo.com

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: variable range
  2003-07-29 10:13 Przemyslaw.Sliwa
@ 2003-07-29 10:58 ` Pedro Gonnet
  2003-07-30 17:52 ` Z F
  1 sibling, 0 replies; 7+ messages in thread
From: Pedro Gonnet @ 2003-07-29 10:58 UTC (permalink / raw)
  To: Przemyslaw.Sliwa; +Cc: GSL Mailing List

[-- Attachment #1: Type: text/plain, Size: 1562 bytes --]


Given your example function:

	f(x) = 3*(x-4)*(x-4)+2
	      = 3*x^2 - 24*x + 50

We can define a funciton

	f*(v) = 3*v^4 - 24*v^2 + 50
	       = f(v^2)

The minimum positive value for f(x) is then arg(min(f*(v)))^2, which,
per definition, is always postive for real values of v.

On Tue, 2003-07-29 at 12:12, Przemyslaw.Sliwa@ecb.int wrote:
> Could you give me any example???
> I do not have any idea how to proceed with it.
> 
> Thanks,
> 
> Przem
> 
> 
> 
> Hello,
> 
> a good idea is to make a change of variable in such a way that
> the new variable are unconstrained.
> 
> I hope that helps,
> Jerome
> 
> Sang-Joon Lee wrote: 
> 	Hi,
> 	
> 	In using the GSL "Multidimensional Minimization" algorithms, I would
> like
> 	to limit the range of variables.  For instance, in a function,
> 	f(x)=3*(x-4)*(x-4)+2, I would like to make x be a positive real
> number.
> 	I would appreciate if you let me know how to do this.
> 
> 	Sincerely yours,
> 	
> 	Sang-Joon Lee
> 	
> 	
> 	
> 
> 
> Any e-mail message from the European Central Bank (ECB) is sent in good faith but shall neither be binding nor construed as constituting a commitment by the ECB except where provided for in a written agreement.
> This e-mail is intended only for the use of the recipient(s) named above. Any unauthorised disclosure, use or dissemination, either in whole or in part, is prohibited.
> If you have received this e-mail in error, please notify the sender immediately via e-mail and delete this e-mail from your system.
> 

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: variable range
@ 2003-07-29 10:13 Przemyslaw.Sliwa
  2003-07-29 10:58 ` Pedro Gonnet
  2003-07-30 17:52 ` Z F
  0 siblings, 2 replies; 7+ messages in thread
From: Przemyslaw.Sliwa @ 2003-07-29 10:13 UTC (permalink / raw)
  To: gsl-discuss

Could you give me any example???
I do not have any idea how to proceed with it.

Thanks,

Przem



Hello,

a good idea is to make a change of variable in such a way that
the new variable are unconstrained.

I hope that helps,
Jerome

Sang-Joon Lee wrote: 
	Hi,
	
	In using the GSL "Multidimensional Minimization" algorithms, I would
like
	to limit the range of variables.  For instance, in a function,
	f(x)=3*(x-4)*(x-4)+2, I would like to make x be a positive real
number.
	I would appreciate if you let me know how to do this.

	Sincerely yours,
	
	Sang-Joon Lee
	
	
	


Any e-mail message from the European Central Bank (ECB) is sent in good faith but shall neither be binding nor construed as constituting a commitment by the ECB except where provided for in a written agreement.
This e-mail is intended only for the use of the recipient(s) named above. Any unauthorised disclosure, use or dissemination, either in whole or in part, is prohibited.
If you have received this e-mail in error, please notify the sender immediately via e-mail and delete this e-mail from your system.

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2003-07-30 17:52 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-07-29  8:23 variable range Sang-Joon Lee
2003-07-29  8:53 ` Jerome BENOIT
2003-07-29 13:51   ` Sang-Joon Lee
2003-07-29 11:03 ` Fabian Bastin
2003-07-29 10:13 Przemyslaw.Sliwa
2003-07-29 10:58 ` Pedro Gonnet
2003-07-30 17:52 ` Z F

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).