Почему функция System Dynamic delay () в Anylogic 8.7 не всегда работает правильно?
У меня проблемы с функцией delay() в динамической модели системы (годовая модель с фиксированным временным шагом =1). Я хочу рассчитывать изменение переменной на каждом шаге.
Значения, считанные из файла:
-Atsargų_apyvartumas_dienomis
-Atsargos_Eur_0_periode
Значения, вычисленные в других агентах:
-Pardavimo_pajamos_Eur = another_agent.Pardavimo_pajamos_Eur
Расчетные значения:
-Atsargos_Eur = 0 time() Atsargos_Eur_0_periode: (Pardavimo_pajamos_Eur * Atsargų_apyvartumas_dienomis) / 365
-Atsargos_Eur_pernai = задержка (Atsargos_Eur,1,0)
-Atsargų_pokytis_Eur_Eur_Eur_Eurgosurgosurgosurgosurgosurgosurgosurg
Модель выглядит так: [введите описание изображения здесь] [1]
Я ожидаю, что Atsargos_Eur в периоде 0 будет равен Atsargos_Eur_pernai в периоде 1 (отставание в 1) и т. Д. Но результат такой (значения не подстать отсроченной переменной в 2,3,4,10,11 периоды):
Atsargos_Eur
0 1708000
1 2,434,787.025
2 3,518,215.417
3 3,537,939.829
4 3,557,410.392
5 3,557,410.392
6 3,557,410.392
7 3,557,410.392
8 3,557,410.392
9 3,557,410.392
10 3,557,410.392
11 3,557,410.392
Atsargos_Eur_pernai
0 0
1 1,708,000
2 3,464,170,795
3 3,501,283,789
4 3,537,939,829
5 3,557,410,392
6 3,557,410,392
7 3,557,410,392
8 3,557,410,392
9 3,557,410,392
10 3,552,127,157
11 3,552,396,342
Это всего лишь один случай, но у меня есть и другие случаи, когда задержанная переменная записывается не на 1 шаг, а на 1 или 3 периода. В чем может быть причина такого поведения, в чем закономерность?