What's new in AnyLogic 8.4
Material Handling Library: new features
navigation for transporters (AGVs). This allows transporters to
move without path network, while respecting obstacles (e.g. walls,
conveyors) and other transporters.
- Jib Crane space markup element
and MoveByCrane flowchart block.
- Lift and Network Port space markup
- Conveyor Spur element.
allows to divert and merge branch conveyors with the main line conveyor.
- Multi-tier conveyor and transporter networks: several networks
inside different agents) may be connected together and used as one big
- Custom routing logic support for path-guided
- All the files used by the model are now displayed in the Resources group under the
model in Projects view.
- External files (e.g. MS Excel files) can now be uploaded and used
model input in the AnyLogic
- Significantly improved performance (frame rate and
2D and 3D animation at model runtime.
- Added Events panel
shows the event queue and the list of conditions being monitored at
- New 3D objects: aircraft
- Added export to stand-alone application from AnyLogic command-line
- Legacy: the 32-bit version of AnyLogic for Windows operating
no longer supported.
New example models
- Runtime UI: Added indicators for network access and progress of
individual runs in multi-run experiments.
- Runtime UI: Scale object (ruler) is now displayed at runtime.
- Runtime UI: Rapid changing of the index of a replicated agent
being displayed by pressing Up
and Down keys while the focus
is in the index field (in Developer
panel). Allows for quicker iteration through the population.
- Runtime UI: Added time of day input to the Run to... and Pause at... controls.
- Runtime UI: Ctrl+Wheel in 3D window now
changes 2D presentation zoom.
- Runtime UI: Improved visual appearance of the chart area: now
solid borders are drawn only along axes.
- Engine: Improved error diagnostics in some cases.
- Engine API & Runtime UI: Disabling and enabling of the Run/Pause
and speed control button groups at runtime by calling the setRunControlEnabled() and setSpeedControlEnabled() functions of ExperimentHost.
- Engine API: Added the onError(error, root)
callback to the experiment API - may be overridden like the single
argument function onError(error), but
provides access to the originating top-level agent of the model (useful
in multiple run experiments).
- Engine API: Added the remove()
function to all markup elements - an easy way to remove the element
from the presentation. Such removal however does not necessarily mean
removing from the model logic as logical networks and routes may have
been created before the removal and survive it.
- Engine API: Added ShapeArrowLine
- a line with optional
arrowheads. Use this object should you need a line with arrows.
Arrow-related API of ShapeLine is
deprecated and will be deleted in
- Engine API: Added indexOf(array,
textExpression) function to find the first matching element,
e.g. indexOf( people, p ->
- Engine API: traceln() and TextFile.println() functions now support
printing 2D arrays.
- Engine API: Added higher performance mode for models with both
System Dynamics equations and dense discrete events. See the new
- Engine API: Added Pair class
to the public API.
- Engine API: Added temporary API to change the line and fill
colors of individual shapes in the shape file at runtime - see ShapeGISMap.Layer functions setFillColor() and setLineColor().
WARNING: this API is unstable and may be replaced in the future.
- Engine API: Changed SQL Java API (QueryDSL-based): function exists() was replaced with hasResults(). E.g. selectFrom(
- Changed code generation. Any custom user libraries should be
rebuilt to work with this version of AnyLogic.
- Graphical Editor: Resize
handles are optimized to edit small shapes.
- Graphical Editor: Expanded range for zoom by Ctlr+Wheel: 5% - 4000%.
- Graphical Editor: Scale of 3D
object can be changed by dragging the handle.
- Graphical Editor: Custom search bounds are now displayed on a GIS Map.
- Graphical Editor: Conveyors: Now AnyLogic automatically sets
Z-level for new markup elements on connection to the existing conveyor
with the defined Z-level.
- Graphical Editor: Legacy: added context-menu action in the
graphical editor to convert Action Chart element to
- Application: Download and single-click installation of the pack
of built-in browsers for all operating systems - useful when exporting
model as a stand-alone application targeted to different OS. See
AnyLogic Help menu.
- Application: Added browser choice to Preferences
- used when running the
model from AnyLogic.
- Application: Enabled switching to AnyLogic while the Get Support window is open (it can
be minimized and is no longer modal).
- Application: Path markup
elements are now always inside networks.
AnyLogic creates networks automatically for all single (not connected)
Path elements. Old models are converted upon open.
- Application: Progress of model export to
stand-alone application is now more precise when copying large
- Application: Added COMPACT parameter as AnyLogic database shutdown option.
- Application: Added option to Preferences to setup maximum
available memory for AnyLogic Database.
- Application: Updated some of the third-party libraries to the
latest versions, e.g. database libraries. Models that use QueryDSL API
directly may have compilation errors and will require code review and
- Application: Projects View: All types of networks and grounds that contain a single element
are now expanded in the Projects view for convenience.
- Application: New Experiment wizard: custom experiments
now may have model time settings taken from other experiments.
- Application: Welcome page: Added links to AnyLogic Cloud API
- Properties View: Added Color
class option when choosing types for parameters and variables.
- Properties View: Database: Enabled viewing of the resources
(Excel/Access/external server) used for the auto import / export.
- Properties View: Enabled editing properties of multiple selected
library blocks of the same type.
- Process Modeling Library: Pickup
block now has the Exact quantity
option: a container agent will wait until there are enough items coming
into the 'inPickup' port (e.g. packaging items from Convey block in a material
- Process Modeling Library: RackSystem by default now uses
this drawing mode for stored agents: Don't
draw, use color indication (fast). This significantly improves
animation performance of large warehouse models. Check your models
appearance and go back to the At the
default position mode if needed.
- Process Modeling Library: Function Delay.getDelayTime()
now returns the initially chosen value for the agent, it isn't
increased when block/agent is suspended.
- Process Modeling Library: Seize
/ Service /...:
Added warning when agent passes the block immediately due to empty
resource set(s) defined.
- Process Modeling, Pedestrian and Road Traffic Libraries: source
blocks now have a no argument inject()
function, an equivalent to calling inject(1).
- Material Handling Library: Added Is
obstacle property for markup elements to be used by transporters
with free space type of navigation.
- Material Handling Library: Added On
at exit action for MoveByTransporter and other
- Material Handling Library: Station: Renamed parameter Delay to Process time.
- Material Handling Library: PositionOnConveyor: Added
callback for cell conveyors: On cell
enter and On cell exit.
- Fluid Library: Animation of the ProcessTank
now has beautiful gradient color transition in processing phase, and
components are shown in MixTank
- Fluid Library: API: functions of MixTank related to batches and
functions of ProcessTank related to batch
colors have changed their return values. Consult the documentation.
- Fluid Library: FluidToAgent: flush() function forces the block to create a
new agent from the current amount accumulated in the block regardless
of the block settings.
- Fluid Library: MixTank: updateAmounts() function updates the component
amounts if the mix is specified by amounts of the components. If the
mix is specified by the total amount and fractions of each component,
the function updates the total amount of mix. The tank must be empty at
the time of the function call.
- Fluid Library: ProcessTank: updateCapacity() forces ProcessTank to
re-evaluate the dynamic capacity parameter.
- Fluid Library: FluidSelectInput: toggle() function now returns 1 if input 1
becomes selected or 2 if input 2 becomes selected.
- Fluid Library: Handling of numeric errors by snapping the
calculated values to acceptable via comparison to internal
- Fluid Library: Added API to get the transporter that is
transporting an agent: getTransporter().
- Runtime UI: Fixed: Drawing of the icon for initially empty
population in some cases.
- Runtime UI: Fixed: Drawing of Plot with dynamically added datasets:
there could be filled area under the line.
- Runtime UI: Fixed bug: The Navigation type property of 3D Window.
- Runtime UI: Fixed: Sloped area was drawn in 3D like a
- Runtime UI: Fixed: Agents of ignored agent type with custom icon
caused error during animation frame drawing.
- Runtime UI: Fixed: In some cases agent presentation rotation was
- Runtime UI: Fixed: Runtime drawing of the Arc
element with angle >= 2*PI.
- Runtime UI: Fixed: GIS shape files rendering at runtime: shapes
excluded inner regions and multiple region shapes are now displayed
- Runtime UI: Fixed: Drop-down list of a combo box at runtime now
within the visible area (opens either upwards or downwards).
- Runtime UI: Fixed: Animation of agents in GIS space now fully
scaling rules (hide, show constant size, or use real scale).
- Runtime UI: Fixed: 2D projections of shapes rotated around X or Y
axis are now adjusted according to the rotation angle.
- Runtime UI: Fixed: Arrowheads of agent links are now drawn
according to the settings.
- Runtime UI: Fixed: Drawing of 3D
objects inside a replicated group.
- Runtime UI: Fixed: Possible issues with color contrast of 3D
- Engine: Fixed bug: Added randomizing the locations for
created agents in continuous space were - if Random layout option is
- Engine: Fixed: Error during the construction of the network
containing pallet racks with
special cases of paths and nodes inside a rack
- Engine: Fixed: Logging to the database feature for agents
- Engine: Fixed: Calling presentation.remove(markupElement)
the markup element from the presentation. See also: added remove()
function to markup elements.
- Engine: Fixed: Initial visibility issue for GIS markup elements
dynamically added to the map by using GIS search API.
- Engine: Fixed: Calling Agent.jumpTo(node)
with the node from different space now automatically moves agent to
- Engine: Fixed: Loading from snapshot of models with agents
generated in the Source block
by arrival table from the database.
- Engine API: Fixed TextFile.print()
functions, when called with an array argument, they now write the array
- Engine API: Fixed: 3D Object: setColor(materialName,
color) function wasn't working if custom colors were not defined.
- Graphical Editor: Fixed problems with drawing Parking
lot, Bus stop and Conveyor
elements on HiDPI displays.
- Graphical Editor: Fixed problems with placing a transfer table on
a narrow conveyor.
- Graphical Editor: Fixed problems with repainting some elements
when changing colors in the Properties
- Application: Fixed error that occurred on adding one more Generic parameter to Agent type section.
- Application: Fixed: Temporary directory with model sources wasn't
deleted after uploading
the model to AnyLogic Cloud.
- Application: Fixed: If Excel file contains formulas, the imported
table has empty cells instead of the result.
- Application: Fixed: Create Documentation feature returns the
report with nulls in column headers and page numbers.
- Application: Fixed: Subdimensions are not copied with the master
- Application: Fixed error when adding 3D object with spaces in its
- Application: Fixed: AnyLogic proxy settings were not transferred
to the running model.
- Application: Fixed bug with switching the product language to
- Properties View: Fixed: Copy-paste actions for tables with
coordinates (e.g. points of path).
- Properties View: Fixed: Error while linking slider to a parameter
of flowchart block.
- Properties View: Fixed: Schedule:
wrong conversion from days to
week in the Repeat every week
- Properties View: Fixed: Error in the Position and size section when
selecting several geometric elements (Rectangle,
- Properties View: Fixed: Maximum available memory for Experiment / Run Configuration wasn't saved
- Properties View: Fixed: Some properties of Material Handling
space markups elements didn't support multiselection editing.
- Process Modeling Library: Fixed: Custom agent speed defined in
properties of Agent type
section could be not applied for agents created in
- Material Handling Library: Fixed: Enabled using self
variable in the code fields of Material
Handling Library space markup elements.
- Material Handling Library: Fixed: Creation of a new agent type
properties of TransporterFleet
block: added Transporter to
of available options in the Use in
the flowcharts as: property of the
- Material Handling Library: Fixed: Possible bug where the Process
Modeling Library required to build the model with Material Handling
Library blocks only.
- Material Handling Library: Fixed: Conveyor
that stopped due to blocked
position on another conveyor wasn't restarted after position
- Material Handling Library: Fixed: Possible error when material
leave the current conveyor at the speed of the next conveyor.
- Fluid Library: ProcessTank: fixed error which
could occur when
appending batches while changing the output rate.
- Fluid Library: fixed error: FluidMerge
could generate "null" batch at output.