# Black box optimization

I have a simulation which gives a scalar result depending on the choice of some continuous design variables. I am trying to minimize the output of the simulation. As a first step, I want to study the convexity of the problem. Is there a methodology that allows us to determine whether a black box function (no analytical form) is convex or not ?

I have already found a pair $$\{\vec{x}_1, \vec{x}_2\}$$ that does not satisfy the midpoint convexity:

$$\begin{equation} f(\vec{x}_1)+f(\vec{x}_2) \geq 2f\left(\frac{\vec{x}_1+\vec{x}_2}{2}\right) \end{equation}$$

Is this a sufficient condition to say that the function is nonconvex ? Furthermore, if it is nonconvex how does that affect the choice of the optimizer ?

I have read that evolutionary algorithms could be a good choice for black box optimization. However, I do not have much experience in the field of optimization and I would appreciate it if someone could point me in the right direction.

• Yes. Convexity is defined as "for all points x1, x2, the following is true" and you've just found a pair of points for which it is not true -- so the function is not convex. – Wolfgang Bangerth Jan 27 at 17:10
• Does your black box produce deterministic results, i.e., not based on Monte Carlo simulation or subject to random error of whatever source? – Mark L. Stone Jan 27 at 17:29
• Yes the black box produces deterministic results. – Karl Maroun Jan 27 at 17:53
• What is the dimensionality of the problem? Is anything known about the properties of the function - smooth or not, single maximum (or minimum) or multiple? – Maxim Umansky Jan 28 at 5:20
• The dimensionality of the problem is 4. I do not know if the function is smooth or not and I suspect that there might be multiple minima. – Karl Maroun Jan 28 at 12:45