Student pilot, this script will always place the munition to the left and below (looking at the map) the main munition, _bomb1.
Since random(x) always returns a positive value from 0 to x, try this line instead to get random placement in all directions:
_cluster1 setpos [(getpos _bomb select 0)+20*(random(2)-1), (getpos _bomb select 1)+5*(random(2)-1), (getpos _bomb select 2)]
Since 'random(2)' returns values between 0 and two, (random(2) - 1) returns values between -1 and 1. Therefore placement in the 'x' direction occurs between 20 metres infront and -20 metres behind _cluster1, likewise with the 'y' direction betw. -5 and 5.