Как генерировать цвета непохожие друг на друга?
1) Самое примитивное - пресеты цветов. И выбирать уже из массива пресетов.
2) Попробовать использовать HSL вместо RGB. Во первых "похожие" цвета в нем легче детектить, во вторых легче получить более разные цвета - просто параметр H генерить с каким то шагом, а не весь диапазон от 0 до 1.
А зачем вы рандомите альфу? )
Может сделать список, где-то ~30 цветов , и из него на рандом будет браться шарик