Экспорт моделей в Java приложения

AnyLogic Professional поддерживает экспорт моделей в виде отдельных Java приложений.

Вы можете запускать такие приложения на других компьютерах (на которых не требуется наличие установленного AnyLogic).

Модели AnyLogic, экспортированные как отдельные Java приложения, могут взаимодействовать с базами данных, внешними файлами и другими приложениями. Эта возможность позволяет вам встраивать имитационные модели в более масштабные системы принятия решений.

Чтобы экспортировать модель как отдельное Java приложение

  1. Выделите элемент модели, которую вы хотите экспортировать, в панели Проекты и затем выберите Файл > Экспорт > В отдельное Java приложение из главного меню, или
    Щелкните правой кнопкой мыши по модели в панели Проекты (элемент верхнего уровня дерева моделей) и выберите Экспорт > В отдельное Java приложение из контекстного меню.
  2. Откроется диалоговое окно Экспорт модели.

  1. Выберите эксперимент модели, который вы хотите экспортировать, из выпадающего списка Экспортировать эксперимент.
  2. Укажите каталог, в который вы хотите поместить файлы экспортируемой модели, в поле Каталог для создаваемых файлов. Вы можете выбрать каталог с помощью диалогового окна навигации, доступного по нажатию на кнопку Выбрать.
  3. Если по окончании экспорта вы хотите открыть папку экспортированной модели, чтобы затем самостоятельно запустить эту модель, оставьте установленным флажок Открыть папку экспортированной модели.
  4. По умолчанию кнопки панели инструментов и другие элементы пользовательского интерфейса приложения будут на том языке, который выбран в региональных настройках вашего компьютера. При необходимости (если вы планируете, что вашим приложением будут пользоваться иноязычные пользователи), вы можете выбрать другой язык интерфейса из выпадающего списка Язык.
  5. Если вы собираетесь запускать модель как отдельное приложение на других операционных системах (например, передавать модель другим пользователям, на чьих компьютерах, возможно, установлены другие ОС), ваша модель должна быть снабжена версиями браузера для macOS и Linux, в которых будет запускаться анимация модели. Чтобы скачать пакет браузера Chromium, содержащий версии браузера Windows, macOS и Linux, щелкните по ссылке Для поддержки нескольких ОС.... Начнется процесс скачивания. Браузеры будут сохранены в папку модели экспортированной как отдельное Java приложение. Таким образом экспортированную модель можно будет запускать на различных платформах.
  6. Щелкните мышью по кнопке Готово. Вы увидите диалоговое окно, в котором должно быть показано сообщение, уведомляющее об успешном завершении экспортирования.
Модель, экспортированная как отдельное приложение, представляет собой набор следующих файлов:
Для запуска модели AnyLogic, экспортированной как отдельное Java приложение, не требуется AnyLogic, и она может быть запущена на любом компьютере, поддерживающем Java (на котором установлена Java Standard Edition 9.0 или выше). Вы можете открыть сайт Open JDK в новом окне браузера (щелкните по ссылке правой кнопкой мыши и выберите соответствующую команду в меню), чтобы скачать последнюю версию.

Чтобы запустить модель AnyLogic, экспортированную как отдельное Java приложение

  1. Запустите файл <имя модели>_<имя ОС>.bat/.cmd/.sh, созданный при экспорте модели. Файл должен находиться в каталоге, указанном вами в качестве каталога для создаваемых файлов при экспорте модели.

Запустив модель, экспортированную как отдельное Java приложение, вы увидите окно модели, аналогичное тому, что показывается при запуске модели из среды AnyLogic.

Экспортированная как отдельное приложение модель использует для выполнения поставляемый вместе с ней исполняющий модуль AnyLogic - AnyLogic Engine Runtime.

С помощью окна О программе... вы можете получить информацию о том, какая версия AnyLogic Engine Runtime используется программой. Также здесь вы можете узнать, какая используется версия Java (и какой разрядности - 32 или 64 бита) и ознакомиться с лицензионным соглашением на использование приложения.

Размер окна задается в свойствах исходной модели в AnyLogic.

Если экспортируемая модель использует данные из встроенной БД, убедитесь в том, что для нее задан достаточный размер памяти, поскольку в экспортированном виде у модели и БД будет общая память. Сделать это можно в параметре Максимальный размер памяти свойств эксперимента, который вы собираетесь экспортировать.

Настройки Java приложения модели

AnyLogic поддерживает настройку параметров модели, экспортированной в виде отдельного Java приложения.

Это можно сделать, создав текстовый .ini файл с названием com.anylogic.engine.ini и сохранив его в папку экспортированной модели.

В этом файле вы задаете значения для тех параметров модели, которые вам нужно изменить. Список настраиваемых параметров приведен в таблице ниже.

Пример файла:

flowchartCountersVisible = false

languageId = es

Параметр

Описание

Возможные значения

flowchartCountersVisible

Определяет, видны или скрыты счетчики, которые находятся возле блоков диаграммы процесса и отображают количество агентов, прошедших через порты блока, количество агентов, находящихся в блоке в текущий момент времени и т.п.

true, false

flowchartPortStateAnimated

Определяет, видны или скрыты индикаторы "блок занят" и "агент доступен" возле портов блоков диаграммы процесса.

true, false.

useProxy

Определяет, используется ли прокси-сервер для подключения к сети.

true, false.

proxy

Адрес прокси-сервера.

URL прокси-сервера.

proxyPort

Порт прокси-сервера.

Положительное целое число.

proxyLogin

Логин прокси-сервера.


proxyPassword

Пароль прокси-сервера.


proxyBypassAddresses

С помощью этого параметра вы можете задать список хостов, доступ к которым будет осуществляться без помощи прокси-сервера.

Если вы подключаетесь к сети (например, к серверу ГИС-карт) через прокси-сервер, но в то же время вам необходимо обойти этот прокси-сервер, чтобы подключиться к местному серверу (например, к серверу базы данных), вы можете задать имя местного сервера в этом параметре.

По умолчанию все адреса обратной связи пропускаются.

Список хостов. Для разделения элементов списка используется символ '|'. Также можно использовать подстановочный символ '*'.

parallelWorkersCount

Число процессоров (ядер), которые используются для параллельного запуска прогонов (итераций) сложных экспериментов (эксперимента варьирования параметров, оптимизации и т.д.), а также для параллельного выполнения потоков с вычислениями при работе пешеходной модели.

Положительное целое число.

standaloneBrowserPath

Путь к выполняемому файлу браузера. С помощью этого параметра вы можете задать для запуска экспортированной модели не Chromium, а другой браузер.

Путь не должен содержать единичные символы '\', вместо них предпочтительно использовать '/'.

standaloneBrowserCommandArguments

Аргументы командной строки для выбранного вами браузера.

Используйте $1 для ссылки на URL сервера выполняемой модели.

standaloneServerPort

Порт, на котором будет запускаться сервер с выполняемой моделью. Этот порт будет использоваться для выполнения модели в браузере, т.е. если вы укажете в настройках 12345, ваша модель будет выполняться на http://localhost:12345.

Положительное целое число не больше 65535.

Некоторые значения портов (особенно значения меньше 1024) могут быть зарезервированы операционной системой или другими службами.

languageId

Пользовательский интерфейс приложения по умолчанию будет отражаться на том языке, который был выбран в момент экспорта модели. Здесь вы можете поменять язык интерфейса приложения. AnyLogic поддерживает следующие языки: английский, русский, немецкий, китайский, испанский или бразильский португальский.

Одна из текстовых переменных:

en - английский

es - испанский

pt_BR - бразильский португальский

zh - упрощенный китайский

ru - русский

de - немецкий

Экспорт отдельного приложения с помощью командной строки

Интерфейс командной строки AnyLogic поддерживает экспорт модели (или нескольких моделей одновременно) в виде отдельного Java приложения.

Перед вызовом команды для экспорта, используйте команду cd <абсолютный путь="путь" к="к" папке="папке" anylogic="AnyLogic" на="на" вашем="вашем" компьютере="компьютере">, чтобы сменить рабочую папку.

Синтаксис команды для экспорта выглядит следующим образом:

anylogic -e "абсолютный путь к .alp файлу экспортируемой модели"

Например:

anylogic -e "D:\My Models\Call Center\Call Center.alp"

Здесь -e является стандартным индикатором для запуска экспорта в тихом режиме. После него вы можете перечислить любое количество путей к моделям, которые вы хотите экспортировать. Модели будут загружаться, компилироваться, экспортироваться и закрываться одна за другой в том порядке, в котором вы их перечислили. Для каждой модели будут экспортироваться все ее эксперименты. По умолчанию каждый эксперимент будет экспортироваться в новую папку <имя модели="модели">_<имя эксперимента="эксперимента">, которая будет автоматически создана в корневой папке модели. Вы можете экспортировать модель и в любую другую папку, указав параметр -o "путь к папке" в командной строке.

anylogic -e -o "абсолютный путь к заданной папке" "абсолютный путь к файлу .alp экспортируемой модели"

Например:

anylogic -e -o "C:\Export\Standalone Model Applications" "D:\My Models\Call Center\Call Center.alp"

Если в модели есть только стандартный эксперимент, в корневой папке модели появится папка Call Center_Simulation.

Экспорт конкретных экспериментов

Чтобы экспортировать один из нескольких экспериментов, в команде укажите имя эксперимента после имени модели. При экспорте нескольких экспериментов перечислите имена экспериментов, разделяя их запятыми.

anylogic -e "D:\My Models\Call Center\Call Center.alp:Simulation,OptimizedSimulation"

После вызова этой команды в корневой папке модели появятся две новые папки: Call Center_Simulation и Call Center_OptimizedSimulation.

В зависимости от того, запущен AnyLogic или нет в момент экспорта, процесс экспорта будет отличаться.

Если AnyLogic не запущен:

Если AnyLogic запущен:

Поддержка экспорта моделей из списка зависимостей

Если в списке зависимостей экспортируемой модели есть другие модели, они также буду автоматически экспортироваться.

Поиск зависимостей производится по соответствующим именам Java пакетов. Он начинается с папки экспортируемой модели и вложенных в нее папок и продолжается вверх по файловому дереву.

Если в одной папке найдется более одного .alp файла, соответствующего требованиям поиска, ни одна из этих моделей не будет экспортирована. Процесс экспорта будет завершен, но появится сообщение об ошибке.

Открытие модели из командной строки

Перед вызовом команды для открытия модели, используйте команду cd, чтобы переключиться в тут папку, где на вашем компьютере расположен AnyLogic. Укажите абсолютный путь, пример команды: cd C:\Program Files\AnyLogic 8.5 Professional

Синтаксис команды для открытия модели выглядит следующим образом:

anylogic "абсолютный путь к .alp файлу открываемой модели"

Например:

anylogic "D:\My Models\Call Center\Call Center.alp"

Вы можете перечислить пути к нескольким моделям, разделяя их пробелами. Каждый путь к модели должен быть заключен в кавычки. Модели откроются одновременно.

Модели можно открывать и без предварительного перехода в папку AnyLogic, в этом случае вместо команды anylogic нужно указать абсолютный путь к исполняющему файлу AnyLogic.exe. Пример строки:

"C:\Program Files\AnyLogic 8.5 Professional\AnyLogic.exe" "D:\My Models\Call Center\Call Center.alp"

Запуск конкретного эксперимента из командной строки

Чтобы запустить конкретный эксперимент какой-либо модели, используйте индикатор -r, а также укажите в команде имя эксперимента после пути к модели. Одновременно можно запустить не более одного эксперимента. Путь к модели должен быть заключен в кавычки и после пробела в отдельных кавычках должно быть указано имя эксперимента.

Синтаксис команды выглядит следующим образом:

anylogic -r "абсолютный путь к .alp файлу модели" "имя эксперимента"

Например:

anylogic -r "D:\My Models\Call Center\Call Center.alp" "Simulation"