Что нового в AnyLogic 7

Пользовательский интерфейс

Параметры

Агентное моделирование

Разметка пространства

Библиотека Моделирования Процессов

Анимация

Пешеходная библиотека

Железнодорожная библиотека

Разное


 Новое рабочее пространство

В центре рабочей области находится графический редактор.

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

В правой рабочей области будет отображаться панель Свойства.  Панель Свойства используется для просмотра и изменения свойств выбранного в данный момент элемента (или элементов) модели. Когда вы выделяете какой-либо элемент, например, в панели Проекты или графическом редакторе, панель Свойства показывает свойства выбранного элемента.

 Панель Палитра

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

Некоторые палитры имеют внутренние секции (например, секции Сбор данных и Диаграммы палитры Статистика). Чтобы свернуть или развернуть секцию:

 Панель Свойства

Вы можете свернуть или развернуть секцию свойств, щелкните по заголовку секции. Многие параметры свойств имеют определенный значок: 

Динамический параметр

Статический параметр

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


    

В таком параметре вы вводите код

 Панель Ошибки

По умолчанию, панель Ошибки и панель Консоль скрыты и открываются автоматически, только когда имеются проблемы с построением модели. Вы можете найти настройки отображения этих панелей в меню Инструменты > Настройки > Основные.

В можете открыть эти панели в любое время, выбрав их отображение в меню Вид. Либо щелкните иконку нужной панели в секции спрятанных элементов статусной строки:


 Спрятать группу элементов в графическом редакторе

При редактировании модели в графическом редакторе может случиться так, что у вас будет слишком много элементов, расположенных на одной диаграмме типа агента:

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

Спрятать элементы разметки пространства

Спрятать фигуры

Спрятать связи системной динамики

Спрятать 2D фигуры

Спрятать 3D фигуры

Пример:

 Рамка окна презентации на диаграмме типа агента

Теперь вы можете сразу видеть, какие элементы попадут в область окна презентации модели, еще во время ее разработки.


 Выпадающие списки объектов вместо ручного ввода

Выпадающие списки позволяют вам просто выбрать необходимый элемент из готового списка подходящих объектов. Больше нет необходимости вручную вводить имена объектов в свойствах блоков.

Если вам понадобится задать динамические выражение, просто переключитесь в режим редактирования.


 Выбор элемента щелчком в графическом редакторе

Чтобы указать какой-либо объект (например, путь, узел или область) в свойствах блока библиотеки (например, queue или delay), вам нужно только щелкнуть по объекту в графическом редакторе.


 Событие: выберите единицы времени

Теперь вам просто нужно выбрать требуемые единицы времени из выпадающего списка, вместо ручного ввода: 10*minute(), 12*hour() ...


 Добавление фигур в группу

Имеется два режима для выбора группы, в которую нужно добавить фигуры:



 Улучшенный Мастер подстановки кода

Мастер подстановки кода предлагает только релевантные варианты.


 Улучшенная палитра диаграммы состояний

Индикаторы срабатывания переходов:

По истечении заданного таймаута

С заданной интенсивностью

При выполнении заданного условия

При получении сообщения

По прибытию агента

Переходы, не присоединенные ни к какому состоянию, выделяются красным цветом:

 Блоки соединяются автоматически

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


Настройки рисования соединителей вы можете найти на странице Инструменты > Настройки > Основные:


 Списки вариантов

Новый элемент Список вариантов позволяет задавать параметры агента, которые имеют ограниченный выбор вариантов, например:


 Мастер распределения вероятностей

Начните вводить вероятностное выражение в поле ввода кода в любом подходящем параметре или выделите это выражение и щелкните кнопку Выберите распределение вероятностей:


В открывшемся окне вы можете задать значения параметров, посмотреть получившийся график. Нажмите кнопку Готово, чтобы вставить заданное выражение в свойство блока.


 Эмпирическое распределение

Если ни одно из стандартных распределений не подходит вам, вы можете создать собственное Эмпирическое распределение. Такое распределение может быть одним из трех типов:

Дискретное

Для дискретного типа имеются два режима задания:



Непрерывное

Загрузив данные, выберите тип интерполяции:


Значение

Задает вероятности для вариантов из заданного списка вариантов:


 Агент = Заявка = Ресурс

Все активные объекты теперь - агенты, и они ведут себя как агенты.

Мастер создания популяции агентов

Просто перетащите элемент   Агент из Основной палитры в графический редактор. Диалогое окно мастера откроется автоматически. 

Больше информации: Создание популяции агентов.

 Агент задает среду

Больше нет отдельного элемента  Среда.

Каждый тип агента является средой для популяций агентов, которые находятся на его диаграмме:


 Агенты. Новые методы коммуникации

Добавлены новые полезные функции:

Функции только для дискретного пространства:

Все прежние функции еще доступны:

Пример:

people.get(0).sendToRandom(“Hi!”);

Функции отправки сообщений случайно выбранному агенту теперь не позволяют выбрать отправителя сообщения в качестве получателя. Больше информации: Взаимодействие агентов.

 Стандартные сети агентов

Каждый агент имеет неудаляемый элемент Connections – стандартный тип сетей агентов с двунаправленными связями.

В свойствах этого элемента вы можете задать реакцию на получение сообщения:


Связи и, соответственно, сети могут быть визуализированы.

 Задание нестандартных сетей контактов/связей агентов

Вы можете задавать собственные связи с любым именем и внешним видом.

Связь может задаваться как:

А также, связь может быть:


 Ссылка на агента верхнего уровня

Агент может иметь видимую неудаляемую ссылку на агента верхнего уровня (того, в котором этот агент "живет"), например, на тип агента main, city, company.

Это именно ссылка, а не связь – она нужна нам не для того, чтобы послылать сообщения, а для того, чтобы иметь доступ с параметрам и функциям агента верхнего уровня. Теперь вы можете ссылаться на агента верхнего уровня просто по имени ссылки (main, distributor, …)


 Наследование отображается визуально

Элементы верхнего уровня отображаются полупрозрачными и не могут быть отредактированы здесь:


 Агенты. Новые методы для движения

Вы можете задать движение агента с помощью одной из функций:

Другие функции:

 Разметка пространства

Элементы Разметки пространства:

 Сети

Сеть создается автоматически, когда соединяются хотя бы два элемента разметки пространства (например, путь и узел или два пути):


 Конвертация фигур сети в новые элементы разметки пространства

Щелкните фигуры правой кнопкой мыши в графическом редакторе и выберите опцию Преобразовать > В элементы сети из контекстного меню. 


 Функции движения. Новые опции 

Функции moveTo() и moveToInTime() позволяют задавать различные цели перемещения:

 Новая библиотека для дискретно-событийного моделирования

Библиотека Моделирования Процессов

Естественный поток заявок вместо выталкивания

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

Блоки библиотеки, поддерживающие опцию потока заявок

Source, Enter, Delay, Pickup, Dropoff, Seize, Batch, Unbatch, Combine.

Но вы можете при необходимости включить выталкивание заявок:


 Гибкое управление ресурсами


Ресурсы. Аварии / Ремонты

Вы можете моделивароть поломку / ремонт просто задержкой по времени или отдельной диаграммой, описывающей процесс. Диаграмма должна начинаться с указанного блока ResourceTaskStart.


Ресурсы. Перерывы

  1. Задавайте перерывы расписанием
  2. Устанавливайте приоритет задачи перерыва

Если включено вытеснение, задача перерыва будет вытеснять задачу,  выполнябемую "сейчас" (если позволяют настройки задачи и ее приоритет ниже):


Ресурсы. Обслуживание

Облсуживание может задаваться как:


Подготовка и завершение

Это процессы не идут параллельно, например, процесс подготовки ресурса начинается, только когда заявка приходит в блок Seize:


Другие задачи

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

Сначала, задайте задачу (задачи) блоком ResourceTask. Затем выберите этот блок (блоки) в параметре Список задач блока ResourcePool:


 Приоритеты и правила вытеснения задач

Вы можете выбрать, что будет происходить, если поступает какая-либо новая задача для ресурсов, уже занятых другой задачей:

Блоки, поддерживающие вытеснение: Seize, Service, Assembler.

 Внутренние процессы заявок могут задаваться графически


 Реальное соединение конвейеров

Задайте параметры конвейера в панели Свойства блока Conveyor:


И наблюдайте за процессом:


 Создание нестандартных типов заявки / ресурса

  1. Перетащите элемент Тип заявки/ Тип ресурса на диаграмму агента.
  2. Выберите фигуру анимации и задайте параметры с помощью мастера.
  3. После создания вы можете добавлять любые другие элементы (например, диаграммы состояний...) на диаграмму этого нового типа агента.

Больше информации: Создание нестандартных типов заявок и ресурсов.

 Моделирование складов и зон хранения

Специальный элемент разметки пространства - Стеллаж.

Пример вертикальных уровней в 3D анимации:


Блоки диаграммы процесса, задающие логику складов и зон хранения:

 RackSystem

RackStore

 RackPick

 Гравитационные системы стеллажей

Данная опция доступна только для стеллажей типа Один стеллаж, два прохода:


Такая система стеллажей использует слегка наклоненные рельсы, которые позволяют стеллажам "ездить" по наклонной плоскости:


 Блок SelectOutput с любым количеством выходов

С помощью блоков SelectOutputIn и SelectOutputOut Вы можете создавать большие блоки SelectOutput с требуемым количеством выходов. Вам не нужно соединять эти блоки графически.


 Объединенная палитра Презентация для 2D и 3D

Теперь есть только одна палитра Презентация. По умолчанию все фигуры отображаются В 2D и 3D (Текст по умолчанию отображается Только в 2D, так как чаще всего нужен только для украшения).


 Больше 3D объектов

Сотни новых, готовых к использованию, 3D объектов:


 Пути в 3D анимации

Встроенные типы тупей:

Нарисовав путь в графическом редакторе, щелкните его и перейдите в секцию свойств Внешний вид. В выпадающем списке Тип выберите тип пути.


 Предустановленные типы освещения

Палитра 3D теперь является секцией палитры Презентация. Добавьте элемент Свет в графический редактор и перейдите в его свойства. Там вы найдете параметр Предустановленный тип: уличное освещение, фары автомобиля, дневной свет, лунный свет, другой. Выбрав тип другой, вы сможете вручную настроить такие параметры света, как Тип источника света, Затухание и другие. На рисунке ниже приведен пример предустановленного типа фары автомобиля:


 Персонализация пешеходов

Так как каждый пешеход моделируется как особый объект, ему могут быть приписаны индивидуальные свойства. Например:

Эти свойства могут проверяться диаграммой процесса и влиять на процесс и поведение пешеходов.

Больше информации: Персонализация пешехода.

 Разметка пространства для пешеходных моделей

СтенаВнешние стены, внутренние стены, ограждения

Прямоугольная стена - Закрытые рабочие пространства

Округлая стена - Колонны, фонтаны, катки

Сервис с очередями - Турникеты, кассы, паспортный контроль

Сервис с областью - Электронная очередь (билетные кассы, отделения банка, стойка информации)

Аттрактор - С помощью аттракторов вы можете задавать точные места ожиданий внутри области

Направление пеш. потока - С помощью этого элемента вы можете задать пешеходам движение по определенному маршруту

Больше информации: Разметка для пешеходного моделирования.

 Графические элементы для рисования ж/д путей

Ж/д пути: автоматически соединяются и создают стрелки в месте соединения.


Теперь вы просто рисуете ж/д пути в графическом редакторе и автоматически получаете 2D и 3D анимацию.

 Полная коллекция вагонов в 3D

Все типы и размеры вагонов:


 Новые единицы времени: месяцы и годы

Это может быть особенно важно для разработчиков моделей системной динамики.

Мы используем следующие значения:

 Сохранение графических элементов в виде изображения

  1. Выделите элементы в графическом редакторе.
  2. Перейдите в меню Правка > выберите Копировать как изображение
  3. Вставьте скопированное изображение в любой редактор изображений, чтобы сохранить или редактировать изображение.

Функция вероятностного рапределения triangularAV()

Генерирует значение согласно треугольному распределению с параметром mode, равным average.

Это вспомогательная функция для задания распределения наподобие "примерно столько +/- 20%".

Эквивалентно triangular( average * (1 - variability), average * (1 + variability) )

Больше информации: triangularAV()

 Улучшенный программный интерфейс расписания

Используйте новый контруктор и новые удобные методы.

Конструктор:

Schedule() – создает новое пустое расписание.

Методы инициазации расписания:

addInterval() 

addMoment() 

addException()

setFirstDayOfWeek()

setSnapTo() 

setDefaultValue() 

setPeriod() 

setTimeUnits() 

setCalendarType() 

setGlueIntervals()

Больше информации: Методы для работы с расписанием.

 Различные исправления и улучшения

Пользовательский интерфейс

Графический редактор

Агенты

Внешние данные

Системная динамика

Основная палитра

Палитра Презентация

3D анимация

Элементы управления

Настройки Численных методов перемещены из свойств эксперимента в свойства модели.

Элемент Часы перемещен в палитру Картинки.