Я работаю над моделированием травм на рабочем месте в AnyLogic и испытываю странную проблему, когда механизм неудачи ресурса полностью воспламеняет параметр экспоненциального распределения, что в соответствии с тем, что в соответствии с таковыми отказа, что в соответствии с консультативно ~ 2: 333333333. /> среда < /h2>
[*] anylogic version < /strong>: 8 издание личного обучения 8.9.5 < /li>
build < /strong>: 8.9.5.202506190538 Arm64 < /li>
< /ul>
wript wript wript Иметь ресурс, называемый работниками с включенным сбоем/ремонтом. Отказы должны происходить со скоростью 0,02 несчастных случаев в час на одного работника, но вместо этого я получаю приблизительно 2,313 несчастных случаев в час на одного работника-ровно в 2,313 раза выше, независимо от значений параметров, которые я использую. < /P>
Code < /h2>
Код: Выделить всё
private double _Workers_initialTimeToFailure_xjal( final com.anylogic.libraries.processmodeling.ResourcePool self, Agent unit ) {
double _value;
_value = exponential( hour() / Math.max(accident_rate_per_hour, 1e-12) );
_value = MINUTE.convertTo( _value, SECOND );
return _value;
}
private double _Workers_timeBetweenFailures_xjal( final com.anylogic.libraries.processmodeling.ResourcePool self, Agent unit ) {
double _value;
_value = exponential( hour() / Math.max(accident_rate_per_hour, 1e-12) );
_value = MINUTE.convertTo( _value, SECOND );
return _value;
}
/>
test < /th>
экспоненциальный параметр < /th>
ожидаемое поведение < /th>
фактический результат < /th>
< /tr>
< /thead>
< /br /td>
Код: Выделить всё
hour() / accident_rate_per_hour~0.32 Accidents/8 часов
37 Appless/8 часов
Фиксированное большое значение
Код: Выделить всё
100000.0< /code> < /td>
~ 0 Accidents < /td>
0 Акцент ✓ < /td>
< /tr>
фиксированное значение среднего < /td>
80000.0< /code> < /td>
~0.02 Accidents < /td>
37 Accidents < /td>
< /tr>
ручная экспонента < /td>
.-Math.log(uniform(0,1)) * 80000< /code> < /td>
~0.02 Accidents < /td>
0 Акцент < /td>
< /tr>
Корректировка скорости < /td>
accident_rate_per_hour = 0.001< /code> < /td>
Пропорциональное сокращение < /td>
все еще 37 несчастных случаев < /td>
< /tr>
скорость почти нулевой < /td>
accident_rate_per_hour = 0.0000001~ 0 Appartents
все еще 37 несчастных случаев
output
.
Код: Выделить всё
hour() = 60.00, Expected mean time between failures = 3000.00
accidents=37, hours=8.00, workers=2, target λ=0.020/h, effective λ≈2.313/h/worker
Ключевые наблюдения
Параметр полностью игнорируется [/b]: exponential distribution parameter не влияет на отказ на частоту. Мультипликатор : фактическая скорость всегда составляет ~ 2,313x Предполагаемая скорость
[*] пороговое поведение : значения выше ~ 90 000 внезапно падают до 0 неудач
единицы времени кажутся правильными : hour () = 60 и расчеты времени, по -видимому, кажутся точными ol> ol () = 60 и расчеты времени ol : hour () = 60 и расчеты времени. /> Вопросы < /h2>
Это известная ошибка в механизме сбоя ресурса AnyLogic 8.9.5? /> Существует ли альтернативный подход к реализации случайных сбоев оборудования в любом случае? Любое понимание будет высоко ценится.>
Подробнее здесь: https://stackoverflow.com/questions/797 ... -parameter
Мобильная версия