# Newton's method with box-constraints

I have to use an iterative method (Newton-Raphson, modified Newton and Broyden) to solve a system of nonlinear equations $f(x)=0$. Every unknown $x_i$ is bounded between $l_i$ and $u_i$, i.e., $l_i<x_i<u_i$, and evaluating $f$ if any of the unknowns goes out of its bounds would give an error.

Which is the best technique to avoid this during the iteration? Currently, I am using a damping parameter $t\leq 1$ so that, in Newton-Raphson, for example,

$$x^{(n+1)} = x^{(n)} - t \, J^{(n)}\backslash f^{(n)}$$

is always inside the corresponding hypercube. However, this is an ad hoc, nonrigorous solution, and I have found papers about reflective techniques (although they were only applied for optimization problems).

Is the above solution a good one or should I try something different?

• Please don't sign your posts. Commented Apr 10, 2017 at 22:37

You should put "mirrors" to bracket your domain.

For example, in a one-dimensional case:

If I know that my unknown $x$ is bounded between $0$ and $a$. At each iteration of my method, i will check if $0 < x < a$. If not, while $x < 0$ or $x > a$, if $x < 0$ I will change $x$ to $-x$, else if $x > a$ I will change $x$ to $a-(x-a)$.

Another method that might be more complex to program depending what language you use but that is often more successful is to modify your Jacobian by dividing the step by 2 while you are not in your domain of interest.

• @Aurreac I have tried the reflective technique and it seems to work fine. However, I have not seen it explained in any paper or book, nor I have found any papers about convergence criteria and convergence speed. Do you know any paper where I could find this technique explained?
– Manu
Commented Jul 28, 2017 at 9:10
• this mirroring method does not look sensible at all. So some explanation would be fine. Commented Jul 29, 2017 at 21:10