В версиях AnyLogic 8.9.6 и 8.9.7 появилось несколько полезных улучшений, заметно упрощающих создание и настройку моделей. Эти изменения рассчитаны на широкий круг пользователей и помогают быстрее и удобнее решать повседневные задачи моделирования. Давайте разберёмся, что именно нового появилось.
Содержание:
- Мастер создания графиков
- Новый режим предварительного просмотра 3D
- Шаблоны для быстрого старта
- Обновления Omniverse и анимации
- Создание разметки с помощью внешних Python-скриптов
- Улучшения библиотеки дорожного движения
- Обновитесь до AnyLogic 8.9.7
Мастер создания графиков
Графики — один из ключевых инструментов анализа результатов моделирования. Хотя панель Статистика позволяет вручную собрать практически любой график, на его настройку и подключение нужных источников данных часто уходит немало времени. Чтобы упростить работу с самыми популярными показателями, в версии 8.9.6 был добавлен мастер создания графиков (Chart creatin wizard).
Теперь этот инструмент можно запускать напрямую из элементов разметки или блоков диаграмм процессов в библиотеках AnyLogic для производственных систем, железнодорожного транспорта, моделирования процессов, а также пешеходного и дорожного движения.
При запуске мастер создания графиков автоматически определяет, какую статистику можно собрать для выбранного объекта, используя Java API AnyLogic. Например, при запуске мастера из элемента робота он автоматически предложит время в состояниях и степень загрузки. Именно эти данные модель может получить с помощью функций getTimeInState() и utilization().
Мастер создания графиков
По умолчанию мастер сам выбирает подходящий тип графика и позволяет убрать лишние данные. После нажатия кнопки Create chart график сразу добавляется в модель в готовом виде: все параметры заданы, а нужные функции API для получения статистики во время выполнения модели подключены автоматически.
Новый режим предварительного просмотра 3D
Создание моделей крупных объектов и территорий часто требует серьёзных усилий, особенно если нужно получить наглядную и аккуратную 3D-сцену.
Пользователи нередко собирают сложные объекты, например оборудование или станции, из графических примитивов. При этом точно разместить такие элементы в трёхмерном пространстве бывает сложно, особенно если работа ведётся только в 2D-графическом редакторе.
Чтобы упростить эту задачу, начиная с версии 8.9.7 мы добавили режим предварительного просмотра 3D (3D preview). Он доступен из меню Вид и позволяет увидеть, как будет выглядеть 3D-сцена во время выполнения модели ещё на этапе редактирования, без её запуска.
Режим предварительного просмотра 3D
С помощью предварительного просмотра 3D вы можете:
- проверить, правильно ли размещены объекты с учётом координаты Z;
- убедиться, что повороты и общее положение объектов заданы корректно;
- настраивать камеру так же, как в 3D-сцене запущенной модели;
- выбирать объекты в 2D или 3D и видеть их подсветку в обоих режимах, это помогает быстро найти соответствующий элемент;
- переходить напрямую к нужному компоненту двойным щелчком, что особенно удобно в больших сценах с множеством деталей, которые легко упустить.
В итоге работа с 3D-сценами становится заметно удобнее и не требует постоянного редактирования и пробных запусков модели.
Шаблоны для быстрого создания моделей
Ещё одно нововведение версии 8.9.7, заметно ускоряющее работу, — шаблоны. С ними вы можете сохранить набор значений параметров для любого объекта, будь то элемент разметки, блок диаграммы или элемент управления. После сохранения шаблон появляется в палитре библиотек и его можно использовать каждый раз, когда нужен объект с такой же настройкой.
Шаблоны для быстрого старта
Типичный пример применения шаблонов это построение сети конвейеров, где несколько участков имеют одинаковые характеристики, например:
- скорость,
- ускорение,
- расстояние между агентами,
- другие рабочие параметры.
После настройки первого конвейера его параметры можно сохранить в виде шаблона с помощью команды Save as template в контекстном меню конвейера, указав, какие именно параметры нужно запомнить. После этого шаблон автоматически добавляется в библиотеку производственных систем.
Созданный шаблон можно использовать несколькими способами:
- перетащить на рабочее поле как готовый к использованию элемент;
- использовать в режиме построения для создания новых конвейеров с уже заданными параметрами.
Шаблоны можно применять и к элементам, которые уже размещены на рабочем поле. В этом случае:
- параметры объекта обновляются в соответствии с шаблоном;
- изменяются только те параметры, которые входят в шаблон;
- все остальные настройки остаются без изменений.
Так становится гораздо проще поддерживать единообразие в больших моделях и не тратить время на повторную настройку одних и тех же параметров. При необходимости можно создать несколько шаблонов для одного и того же элемента с разными вариантами конфигурации.
Обновления Omniverse и анимации
Рабочая станция NVIDIA Omniverse Nucleus, использовавшаяся в коннекторе Omniverse, была выведена из поддержки в октябре 2025 года. Теперь AnyLogic позволяет использовать этот коннектор в виде расширения для приложений Omniverse Kit. Файл расширения доступен по ссылке в элементе Omniverse connector.
Чтобы начать работу с обновлённым коннектором, нужно:
- установите расширение в Omniverse Composer;
- включить его в настройках расширений;
- добавить панель Omniverse connector в интерфейс Composer.
После этого коннектор будет работать так же, как и раньше, связывая выполняемую модель AnyLogic с USD-сценой в Omniverse Composer.
Расширение NVIDIA Omniverse
Ещё одно улучшение касается хранения отрендеренных USD-сцен. Теперь их можно сохранять локально, а не только на сервере Nucleus. Предыдущая версия коннектора по-прежнему остаётся доступной и может использоваться вместе с сервером, входящим в состав решения для пользователей Linux Enterprise с активной подпиской на NVIDIA Omniverse Composer.
Параллельно с упрощением работы с внешними графическими инструментами была стала лучше и внутренняя поддержка анимации в AnyLogic. Начиная с версии 8.9.7, в модель можно импортировать дополнительные форматы 3D-графики. Помимо Collada (.dae) теперь поддерживаются форматы glTF, obj и fbx.
Создание разметки с помощью внешних Python-скриптов
Построение больших и разветвлённых сетей часто отнимает много времени. В AnyLogic уже давно можно создавать и настраивать элементы разметки через Java API, но такие элементы появлялись только во время выполнения модели. Из-за этого автоматически сгенерированную разметку было сложнее проверять и дорабатывать.
В версии 8.9.7 эта проблема решена за счёт нового подхода к программному созданию сетей. Теперь разметку можно генерировать прямо на этапе проектирования модели, используя внешние Python-скрипты.
Разметка, созданная таким способом, сразу появляется на рабочем поле. Её, как и другие элементы модели, можно редактировать, перемещать и корректировать в любой момент.
Создание разметки с помощью внешних Python-скриптов
Для работы с этим механизмом в AnyLogic вы можете использовать Python-модули, в которых есть функции для:
- подключения к открытому проекту;
- создания элементов разметки;
- задания их параметров.
Эти модули находятся в папке установки AnyLogic. При необходимости их также можно добавить через стандартный менеджер пакетов pip из официального репозитория Python.
Вы можете вызывать эти функции из собственных внешних скриптов и комбинировать их с загрузкой данных из файлов, баз данных и других источников.
Начиная с версии 8.9.7, чтобы AnyLogic принимал команды от внешнего Python-скрипта, нажмите кнопку на панели инструментов и переведите среду в соответствующий режим.
Библиотека дорожного движения: выбор полосы
В новом обновлении появились улучшения в библиотеке дорожного движения, которые дают вам больше контроля над тем, как транспорт выбирает полосу движения. Это особенно полезно в моделях, где разные типы транспорта должны придерживаться определённых полос. Например:
- Машина скорой помощи едет по полосе ближе к разделительной линии.
- Грузовики держатся полосы у края проезжей части.
- Транспорт должен двигаться по строго заданной полосе при проезде через КПП или терминалы.
Поведение транспорта по полосам можно настраивать несколькими способами:
- задать политику выбора полосы в блоке CarSource, определив, по какой полосе автомобиль должен заехать в дорожную сеть;
- изменить эту политику в любой момент при входе автомобиля в блок CarMoveTo, выбрав опцию Change lane selection policy;
- использовать новую функцию setPreferredLane(), которая позволяет немедленно перестроить автомобиль, уже движущийся в блоке CarMoveTo.
Последний вариант особенно полезен при моделировании обгонов, дорожных работ или временных ограничений движения.
Работать с моделями стало проще
В совокупности изменения в версиях 8.9.6 и 8.9.7 заметно упрощают многие рутинные этапы работы с моделями. Графики настраиваются быстрее, 3D-сцены легче редактировать, шаблоны экономят время, а инструменты анимации и скриптов дают больше гибкости. Моделирование дорожного движения тоже стало функциональнее.
Полный список изменений доступен в справке AnyLogic. А чтобы оценить все улучшения на практике, достаточно скачать последнюю версию AnyLogic и попробовать её в работе.