Метод с четырьмя параметрами не является устаревшим и не является «калибровкой, где коэффициенты coef1 и coef2 являются коэффициентами, которые необходимо решить для». Откуда у тебя такое понимание? Или вы говорите, что используете «Эксперимент AnyLogic» (возможно, эксперимент с несколькими запусками или оптимизацией), чтобы «откалибровать» это распределение, и в этом случае вам нужно объяснить, что вы подразумеваете под «откалибровать» здесь --- каков ваш желаемый результат?
Если вы посмотрите в ссылке API (классы и функции AnyLogic -> Reference API -> com.xj.anylogic.engine -> Утилиты), вы увидите, что это метод использования усеченного нормального распределение.
public double normal(double min,
double max,
double shift,
double stretch)
первых 2 параметров являются минимальными и максимальными (где он будет пробовать многократно и игнорировать значения за пределами [мин, макс] диапазон); вторая вторая - это среднее и стандартное отклонение. Таким образом, вы получите указанную вами ошибку, если min или max означает, что она будет отображать слишком много раз, чтобы получить значение в диапазоне.
ссылки API, подробности ниже:
Создает образец усеченного нормального распределения. Распределение нормальное (1, 0) растянуто по коэффициенту растяжения, затем сдвинуто на справа на сдвиг, после чего оно усекается в соответствии с интервалом [мин, макс.] . Усечение выполняется путем отбрасывания каждого образца за пределами этого интервала и последующей его попытки. Для получения дополнительной информации см. нормальный (двойной, двойной)
Параметры: min - минимальное значение, возвращаемое этой функцией. Распределение усечено, чтобы вернуть значения выше этого. Если образец (растянутый и сдвинутый) будет ниже этого значения, он будет отброшен и будет нарисован еще один образец . Используйте -infinity для «Без ограничений». max - максимальное значение, возвращаемое этой функцией. Распределение усечено, чтобы вернуть значения ниже этого. Если образец (растянутый и сдвинутый) больше этого значения, он будет отброшен и будет нарисован другой образец.Используйте + бесконечность для «Без ограничений». сдвиг - параметр сдвига, который указывает, насколько (растягивается) распределение будет сдвинута вправо = среднее значение Stretch - параметр растяжения, которое указывает, сколько распределение будет растягиваться = стандартные Возвращает отклонение: сгенерированный образец
Спасибо за информацию о среднем/std. На самом деле программа компилируется и работает хорошо с обычным с 4 аргументами. Anylogic изменил свою версию, но не обновил документацию, или эта функция устарела, но все еще доступна. Если я установил фиксированные значения для coef1 и coef2, программа будет работать нормально. – Lou
Итак, важным аспектом вашего вопроса будет то, как вы указываете coef1 и coef2. Никто не может помочь вам узнать, почему что-то не так, если вы не даете полный контекст, в котором происходят сбои. – pjs
Я нашел альтернативу. Спасибо за все. – Lou