Это на самом деле сложный вопрос. Прежде всего:
Решение
Дарена не является равномерным, поскольку оно не поддерживает наличие двух чисел> 1/3.
Решение
Симена не является единообразным, если предположить, что «выбрать случайное число» происходит из равномерного распределения, но это немного более тонко. Он, по крайней мере, симметричен между переменными (т. Е. Вероятность [a, b, c] такая же, как и вероятность любой перестановки этого), но он сильно предпочитает решения, близкие к (1/3, 1/3, 1 / 3). Подумайте об этом так, рассматривая крайние случаи:
(1/3, 1/3, 1/3) мог прийти из любого (a, a, a), где диапазон от 0 до 1.
(1, 0, 0), одинаково допустимая тройка, должна происходить из (1, 0, 0).
Одно решение: Множество положительных чисел, которые складываются с 1, образуют равносторонний треугольник в трехмерном пространстве с координатами (1,0,0), (0,1,0), (0 , 0,1). Расширьте это до параллелограмма - например, добавив точку (1,1, -1) в качестве четвертой точки. Эта двойная область - отобразите вторую область на первую, чтобы было достаточно выбрать случайную точку в этом параллелограмме.
Параллелограмм может быть отобран равномерно с помощью (0,0,1) + A (1,0, -1) + B (0,1, -1), где A и B находятся в диапазоне от 0 до 1.
-A