I have a system of $n$ non-linear equations that I want to solve numerically:
$$\mathbf{f}(\mathbf{x})=\mathbf{a}$$ $$\mathbf{f}=(f_1,\dots,f_n)\quad\mathbf{x}=(x_1,\dots,x_n)$$
This system has a number of characteristics that makes it particularly difficult to handle. I am looking for ideas on how to deal with the system more effectively.
Why is the system difficult?
The functions are similar to this one (but of course in multiple dimensions):
They have flat plateaus separated by a region of smooth change. In 2D, you can imagine something like this for one $f_i$:
Generally, each $f_i$ has two plateaus separated by smooth change around an $n-1$ dimensional hyperplane.
Functions like this are difficult to handle with Newton-like methods because the derivative is effectively zero on the plateaus. In multiple dimensions I cannot easily find a region where none of the $f_i$ have a plateau—if I could that would solve the problem. The bisection method works well for $n=1$, but it does not generalize well to multiple dimensions.
The functions are very slow to compute. I am looking for a method that can get a reasonable approximation of the root in as few iterations as possible.
The functions are calculated with a Monte Carlo method. This means that each time they are calculated, I get a slightly different random value. Derivatives are difficult to estimate. Once we are close enough to the root, the noise will start to dominate, and it is necessary to use averaging to increase precision. Ideally it should be possible to generalize the method to an equivalent stochastic approximation version (e.g., Newton → Robbins-Monro).
The system is high-dimensional. $n$ can be as large as 10-20. When $n=2$, an effective method would probably be the following: try to follow the contours defined by $f_1(x_1,x_2) = 0$ and $f_2(x_1,x_2)=0$ and see where they intersect. It is not clear how this would generalize to high dimensions.
What else do I know about the system?
There is precisely one root (from theoretical results).
I know the value of $f_i$ on the plateaus (let's say it's 0 and 1 for any $i$).
$f_i$ has a special relationship to $x_i$: $f_i(\dots, x_i, \dots)$ changes monotonically from 1 to 0 as $x_i$ goes from $-\infty$ to $\infty$. This is true for any fixed value of the other $x_{j\ne i}$.