Take the 2-minute tour ×
Mathematics Stack Exchange is a question and answer site for people studying math at any level and professionals in related fields. It's 100% free, no registration required.

Function $f(x) \in \mathbb{R}^n$, $(n\geq 1)$, depend on one parameter $x \in \mathbb{R}$. Performing a nonlinear transformation of $f(x)$, we obtain function $g(y) \in \mathbb{R}^n$. This transformation cannot be represented by analytical formulation. My optimization problem is to find $x$ in order $g(x) = C$, where C is explicit known.

What are possibilities (and best) strategy for solving this kind of optimization problem?

share|improve this question
    
I don't understand why you write $g(y) = C$. Is $g$ not a function of $x$? –  Christopher A. Wong Jul 3 at 19:40
    
$g$ is not a function of $x$. But the transformation: $f -> g$ is unique. I mean find $x$ to $argmin||g(y)-C||$ –  user2863620 Jul 3 at 19:52
    
You have not made it clear yet. If $g$ is not a function of $x$, then $g(y)$ has no dependence on $x$. –  Christopher A. Wong Jul 4 at 0:21
    
I'm sorry. I mean the transformation is not explicit known by analytical formulation. I modified. –  user2863620 Jul 4 at 7:19
1  
Is $g$ continuous or piecewise continuous? Is it bounded above or below? If not, there isn't really any algorithm that's going to be guaranteed to work. –  Christopher A. Wong Jul 5 at 6:00

2 Answers 2

What you have is an unconstrained, (presumably) very nonlinear, and possibly non-smooth optimization problem. By and large, the best you can do is to do an approximate Newton method where you numerically calculate the approximate slope, and then proceed to either the left or right of your current location depending on the sign. You can adjust how far you move (typically by powers of $2$) until you've successfully decreased your current value of $\|g(x) - C\|$ - this is called a damped Newton method.

share|improve this answer

For a general problem like this, I would go with Quasi-Newton methods. For some reason they perform well even on non-smooth objective functions. Another problem you will face is to decide when you should stop the optimization. If your objective function is not twice continuously differentiable, then the stopping criterion based on the norm of the gradient may not work (because of discontinuity in the minimum etc.).

Have you considered genetic algorithms? http://en.wikipedia.org/wiki/Genetic_algorithm I do not have any experience with them but people use it.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.