Ммм ... может быть
[[[managedObjectsContext registeredObjects] allObjects] objectsAtIndex:r]
где r - случайное число между 0 и числом объектов минус один? Совсем не эффективно, но быстро и просто.
РЕДАКТИРОВАТЬ : если вы хотите выбрать случайный объект между выбором ваших объектов, то создайте запрос выборки, который описывает ваш выбор объекта и сделайте то же самое, что и выше, с результатами запроса:
[[[managedObjectsContext executeFetchRequest:request error:&error] objectAtIndex:r]