Since $x$ is one dimensional, you can do a simple grid search with fine enough grids, which guarantees to find global optimum. It is not necessary the case that each local maximum is very close to $\mu_i$. In fact, new local maxima can be created between two distant $\mu_i$s if their $\sigma_i$s are large enough.
EDIT
To see how the grid search will give guarantees on global optimal solution. We first compute the bound of $f'(x)$:
$$|f'(x)| \le \sum_i a_i \left|\frac{x-\mu_i}{\sigma_i^2}\right|\exp\left(-\frac{(x-\mu_i)^2}{2\sigma_i^2}\right)$$
since (by taking derivative)
$$\frac{|x|}{\sigma^2}\exp\left(-\frac{x^2}{2\sigma^2}\right) \le \frac{1}{\sigma}e^{-1/2}$$
we have $$|f'(x)| \le e^{-1/2}\sum_i \frac{a_i}{\sigma_i} \equiv M$$
On the other hand, there exists a sufficiently large $K$ so that $|f(x)| \le \max_i a_i$ for $x \notin [-K,K]$ and cannot be the global optimum solution. We thus divide $[-K, K]$ into $\lceil 2KM/\epsilon \rceil$ bins $[l_j, u_j]$ so that $u_j - l_j \le \epsilon/M$. Thus since $|f'(x)|\le M$, within each bin $j$ there exists $c_j$ so that
$$c_j - \frac{\epsilon}{2}\le f(x) \le c_j + \frac{\epsilon}{2}$$
Let $j^* = \arg\max_j c_j$. Then any $\hat x^* \in [l_{j^*}, u_{j^*}]$ gives $f(\hat x^*)$ that is at most $\epsilon$ worse than the true global optimum.
I admit that from this analysis, it is not possible to provide a finite time algorithm that find the exact global optimum.