Гибкое изменение длительности симуляции в Anylogic - PullRequest
0 голосов
/ 14 июля 2020

У меня есть модель системной динамики только с одним агентом. Я могу установить продолжительность симуляции, в моем случае одно примерное значение будет 120 месяцев. Что мне делать, если я хочу поэкспериментировать с разной продолжительностью, например, 24 или 240 месяцев? Изменение его в свойствах «модельного времени» эксперимента кажется обременительным, потому что вы должны останавливать эксперимент каждый раз.

Для других входных данных модели я создал ползунки на стартовом экране и привязал их к параметрам модели по переменным . Таким образом, я могу перемещать ползунки, запускать симуляцию с помощью кнопки воспроизведения, затем go вернуться к начальному экрану с помощью кнопки остановки и настраивать значения. Можно ли это сделать и с конечным временем?

Модель преобразована из Vensim, где была переменная с именем FINAL_TIME, которую вы могли изменять интерактивно с помощью ползунка в режиме SyntheSim. Это то, что я ищу, за исключением того, что возможности SyntheSim недоступны в Anylogi c.

1 Ответ

0 голосов
/ 14 июля 2020

Двумя способами ..

вы можете использовать функцию getEngine().setStopTime(tstop); при инициализации вашей модели, где tstop - ваш параметр времени, в котором симуляция остановится

, или вы можете использовать событие и настроить событие для запуска в гибкое время и использовать в действии finishSimulation(). Это позволяет вам даже изменить время моделирования во время выполнения, когда захотите.

...