improved workers random start point selection AND fixed a few bugs