Re: Numerical Optimization involving equation solving
- To: mathgroup at smc.vnet.net
- Subject: [mg55980] Re: [mg55969] Numerical Optimization involving equation solving
- From: Bob Hanlon <hanlonr at cox.net>
- Date: Wed, 13 Apr 2005 01:10:04 -0400 (EDT)
- Reply-to: hanlonr at cox.net
- Sender: owner-wri-mathgroup at wolfram.com
Try f[x_?NumericQ] := (stuff; ans); Bob Hanlon > > From: "Brian Rogers" <brifry at gmail.com> To: mathgroup at smc.vnet.net > Date: 2005/04/12 Tue AM 05:26:28 EDT > To: mathgroup at smc.vnet.net > Subject: [mg55980] [mg55969] Numerical Optimization involving equation solving > > I need to optimize a function of one variable, say > f[x_]:=(stuff;Return[ans];). Computing the value of f requires solving > a (non-linear) system of equations that depend on x, and using this > solution to compute some other things. > > Now, evaluating f at a numerical value of x works just fine, and I can > even plot f (using Plot[f[x],{x,0,1}]) and eyeball the optimum. By the > way, f is a very well behaved function--it is typically smooth and > globally convex. However, what I really want to do is use FindMinimum > (or NMinimize) to numerically return the optimum. When I use either of > these built-in functions, they crash. I believe that they are first > trying to evaluate f[x] symbolically--which would understandably cause > it to crash because the system of equations doesn't have a closed form > solution in x. > > I've tried using the "Compiled" option with no luck. How can I force > FindMinimum to use a purely numerical procedure to optimize my > function? > > Any help is greatly appreciated, and please copy any reply to > brifry at gmail.com. > Thanks! > >