Скорость движения агента

Хотя AnyLogic напрямую поддерживает движение на постоянной скорости и нулевое ускорение, вы можете смоделировать ускорение/торможение, изменяя скорость в подходящие моменты времени. Вы можете использовать диаграмму состояний с таким состояниями как Статический, Медленный, Средний, Быстрый и т.д. и переходы по таймауту, чтобы управлять движением.

Чтобы задать начальную скорость агента

  1. Откройте панель Свойства типа агента, щелкнув по нему мышью в панели Проекты.
  2. Откройте секцию свойств Движение.
  3. Укажите начальную скорость агентов этого типа в поле Начальная скорость. По умолчанию скорость равна 10 метров в секунду. Здесь же вы можете выбрать единицы измерения этой скорости.

Функции, задающие скорость агента

void setSpeed( double v ) - Задает скорость (в пикселах в секунду), с которой агент будет передвигаться. Если на момент вызова метода агент движется, то он продолжит движение с новой скоростью. Если агент не движется, то он не начнет движение, пока вы не вызовете метод moveTo().
Параметр:
v - новая скорость

double getSpeed() - возвращает скорость агента (скорость является параметром агента, это та скорость, с которой он обычно передвигается, и ненулевая скорость еще не означает, что этот агент движется в данный момент времени).

Если вы задаете движение агента с помощью объекта MoveTo, вы также можете задать требуемую скорость в свойствах объекта.

Помните, что скорость агента изменяется, если вы используете функции moveToInTime(), чтобы задать движение.