I found out that when generating search points in parallelgridsearch (modules/parallelstuff.py line 343), if ndim = 1, the create_hammersley_samples function could return values outside [0,1) range when initializing x0s, which then leads to inf or nan when the values are feed to erfinv(-1+2*x0s). Here is a screenshot of the part that generates x0s:

These inf or nan points would result in inf or nan points in res, then the sorting of res would fail and an empty array would be returned.

Maybe we need to modify the dim=1 case in create_hammersley_samples function, or maybe we can simply cut the inf and nan entrees in x0s.
Another minor issue is in modules/bayes_optimization.py, Line 134-142, module 'copy' is called but it was not imported. We only have 'from copy import deepcopy', but not copy itself.
