# Is there a good algorithm among metaheuristics for a noncontinuous objective function?

When I want to solve $$\text{minimize}\quad f(x)$$ over $x\in\mathbb{R}^n$, where $n$ is quite a large value, e.g. $n$ is around thirty, which metaheuristic algorithm is good?

If $f(x)$ is continuous and convex, we can easily utilize many methods to find a minimizer like gradient-based algorithm, etc.

However, $f(x)$ that I am examining is not a convex function. So, I cannot adjust gradient method, and then, I tried to adjust simulaetd annealing and accelerated particle swarm optimization algorithms. The result is quite not bad, but not so good I think.

I consider that the reason why these algorithms may not produce enough good result is the fact that $f(x)$ is a noncontinuous function.

I saw from some material that PSO is one of the best optimizing algorihtms for finding minimizer for continuous objective function.

Is there any well-known algorithm for high-dimensional, non-continuous, and non-convex function?

ps) The function $f$ could be whatever. I am dealing with a general form.

For example, $x_1,x_2,x_3$ could be coordinates of $x$-, $y$-, and $z$-axies, $x_4,…,x_10$ could be result values from the other layer, and $x_11,…,x_20$ could be any random variables for guaranteeing uncertainty of the system, and so forth.

That is, even if $f(x)$ is just $∥x∥$, the design variable vector $x$ would be discrete and very fluctuating according to the system. I would like to consider this system.