Optimization software for real-valued functions of complex arguments

I am interested in an optimization problem of the form $$\min_{\boldsymbol z} \max_j \vert f_j(\boldsymbol z) \vert = \min_{\boldsymbol z} \Vert f_j(\boldsymbol z) \Vert_\infty.$$ Here, the optimization/decision variables are $$\boldsymbol z \in \mathbb C^{N}$$ and $$f_i: \mathbb C^N \to \mathbb C$$.

The $$f_j$$ are essentially polynomials in $$\lambda_j \in \mathbb C$$ $$f_j(\boldsymbol z ) = \prod_{k=1}^N \big(1 - z_k \lambda_j\big).$$

To provide some more context, I am essentially trying to optimize the common roots of complex polynomials. Write the polynomial $$p(\lambda)$$ with $$p(0) = 1$$ as $$p(\lambda) = \prod_{k=1}^N \bigg(1 - \frac{ \lambda}{\tilde z_k} \bigg)$$ where $$\tilde z_k$$ are the roots of the polynomial. For $$z_k := 1/\tilde z_k$$ you obtain the representation above.

In principle, one has also to enforce that the roots come in complex-conjugated pairs which would give a linear constraint like $$A \boldsymbol z = \boldsymbol 0.$$

• Isn't this just asking what the largest circle is for which $|f(\cdot)|\le 1$ inside the circle? Jun 17 at 14:45
• Are you maximizing over $\alpha$ and $z$? Or is there a missing "for all" somewhere in the problem? Are you aware of any point where $|f(w)| \leq 1$? Jun 17 at 21:41
• @hardmath I re-phrased the problem and included some information on $f$. Jun 18 at 10:13

I sat down and worked a bit on this. Since I am only interested in the magnitude of the polynomial it might be helpful to employ the polar representation, i.e., $$1 - z_j \lambda = r_j e^{i\phi_j}$$. Then,
\begin{align} &\left \vert \prod_{j=1}^N 1 - z_j \lambda \right\vert = \left \vert \prod_{j=1}^N r_j e^{i\phi_j}\right\vert = \left \vert \left(\prod_{j=1}^N r_j \right) \cdot \exp \left( \sum_{j=1}^N i\phi_j\right)\right\vert \\ =&\left \vert \left(\prod_{j=1}^N r_j \right) \right \vert \cdot \left \vert \exp \left( \sum_{j=1}^N i\phi_j\right)\right\vert = \left \vert \left(\prod_{j=1}^N r_j \right) \right \vert \cdot 1= \prod_{j=1}^N r_j \end{align}
Now let's take a closer look on the $$r_j$$. Write $$z_j = a_j + b_j i$$, $$\lambda = c+d i$$. Then, $$r_j = \sqrt{\big[1 - \text{Re} (z_j \lambda)\big]^2 + \text{Im}^2 (z_j \lambda)}$$ Note that $$\text{Re} (z_j \lambda) = a_jc -b_jd, \text{Im} (z_j \lambda) = a_jd + b_j c$$ one obtains a formulation with no complex variables involved at all! The optimization is now over $$\boldsymbol a, \boldsymbol b$$. While the problem is of course highly nonlinear and most likely very complicated, my main concern could be lifted.