Release Notes¶
This is a summary of the key changes in subsequent patches for version 26 of the Aimsun Next environment.
26.0.2¶
Improvements¶
- Objects that turn out to have no layer when a model is opened are now placed in a dedicated Orphaned layer instead of whichever layer happens to be active, and a warning listing them is written to the log. The Orphaned layer stays editable, so these objects can be reviewed and moved somewhere sensible rather than silently mixed into the layer being worked on.
- Center World now takes the active subnetwork filter into account. With a subnetwork applied as a filter, the 2D view centers on that subnetwork rather than on the whole network: on the polygon that defines it, or on the listed sections when the subnetwork is defined by a section list instead. Whole World Filtered follows the same rule and now zooms to the listed sections for those subnetworks rather than to the polygon. Views with no filter applied are unaffected.
- The centroid connections that a traversal creates for the centroids it duplicates now keep the Volume Delay Function of the connection they were copied from, instead of falling back to the default. This applies to both static and dynamic traversals, and removes the need to reassign the functions by hand after every traversal in models that use several different connector VDFs. Connections created for the boundary gates have no counterpart in the full project network and keep using the default functions, as before. Because internal connectors are now priced by the model's own functions rather than by the default, regenerating an existing traversal can change static assignment results on the subnetwork.
- The modal split experiment can export the utilities it evaluates for each mode — the generalised cost of travelling between each origin and destination — as external matrix files. Starting Aimsun Next with
--generate_utilities_matriceswrites one file per mode and trip matrix alongside the model, and Retrieve Utility Matrices in the experiment's context menu loads them back into the centroid configuration, so the scores behind a set of mode shares can be inspected when calibrating. - The OpenStreetMap importer now takes the
placementway tag into account. Sections imported from ways whose line does not run along the centre of the road are displaced sideways as the tag indicates, which solves some issues where adjacent ways were mistakenly overlapping. Affected versions: all. - The OpenStreetMap importer now takes the
widthway tag into account for non-motorised ways, such as cycleways. The tag is read for one-way, single-lane, non-motorised ways. Its value is only considered when it is a plain number, which is interpreted as meters, based on the OpenStreetMap wiki. Affected versions: all. - The Coordinate System list in the Add WMS Server dialog now defaults to the coordinate system of the project, whenever the selected WMS layer offers it.
- The TWOPAS uphill acceleration model and the separate downhill crawl-speed model for heavy vehicles can now be activated independently in the Dynamic Experiment > Behavior tab, via separate "Apply TWOPAS Uphill Model" and "Apply Crawl Speed on Downhill" checkboxes (previously a single checkbox controlled both). This applies to micro, meso, and hybrid simulation. Without the fast-track for Next 26.0.2, the downhill checkbox has no effect and simulations keep behaving as they did before this change.
-
The Originator combo in View Setup is now shown whenever it resolves to a valid option that differs from the current Data Source, such as an RDS assigned to the active scenario, instead of only when there are two or more options to choose from.
-
Generating the opposite direction of a section now follows the shape of the original along its whole length, keeping a constant separation from it. Previously the new section was a displaced copy of the original, which overlapped or crossed it wherever the original changed direction, and had to be corrected by hand. The command is also accessible from the Python scripting API, as
GKSectionGenerateOppositeDirectionMultiCmd, which takes the list of sections to generate an opposite direction for. Affected versions: all. - Legend entries for a view style that groups objects by another object, such as a Road Type, are now listed in alphabetical order by their label, so that entries with related names appear together. Previously they were listed by the object's internal identifier, which follows the order the objects were created in. Numbers within a label are ordered by their value, so a label such as Speed 2 is listed before Speed 10, which means labels that begin with the identifier are still listed by it. The Value column of the view style editor also shows long identifiers in full, where before it shortened them to a rounded form such as
1e+09. Affected versions: all. - Real Data Sets now read each record into every object its identifier matches. This lets the objects that correspond to one another across geometry configurations share a single name or external identifier and take their data from one file, since only one configuration is active in any given scenario. Previously a name or external identifier matching more than one object was reported as an error and no data was retrieved for it. The Check Real Data Set dialog reports an identifier only when the objects it matches exist in the same scenario, once for that identifier rather than once per file line, naming the objects and listing them in its Object column. Affected versions: all.
- Clicking a centroid connector in the 2D view now selects its row on the Connections tab of a static assignment result's outputs, and focuses the table, the way clicking a section or a turn already selects its row on the Sections and Turnings tabs. Clicking empty space clears that selection along with the other tabs'. Affected versions: all.
- The Data Comparison summary labels its relative difference row, so the < 5%, < 10% and < 15% counts are no longer read as part of the number of objects or mistaken for GEH, and the GEH row is shown for every comparison whose results table offers a GEH column. Input Count and Input Flow offer GEH for the first time. The figures are also calculated differently, so the same model can report different counts and percentages than before: objects whose value cannot be worked out, such as an object with no traffic on either side or one missing reference data, are counted in no band, where previously they were counted in all of them and credited as the closest matches in the network; and GEH is no longer scaled as though a flow were a count, which changes the GEH reported for entry-based flow, assigned flow and input flow, figures that on a 15-minute aggregation were twice their correct value. The user manual now documents the summary rows, the result table columns, the direction of the two difference columns and the colouring of their cells. Affected versions: all.
- Fixed closing a 2D view leaving the views that were opened after it cut off from the rest of the application. Those views stopped following the rotation angle set in Preferences, lost the Master View and Master Clock options from their context menu, no longer panned or zoomed together, and opening a further view could close Aimsun Next unexpectedly. How much was affected depended on the order the views were closed in, so closing the view opened first was the worst case. Affected versions: 26 and later.
- The item selected in a grouping is drawn in a different colour from the rest of the group, the way the selected section already is for subpaths and transit lines, so object ordering can be followed while reviewing a group.
- The Visum importer now creates transit stops for stop points placed on nodes. Every line keeps its first stop, stops of a stop area are grouped into a transit station, and walk connectors link zones to them. The import dialog also asks for a default dwell time for stop points without one. Affected versions: all.
- Modal Split and Distribution experiments create the user classes they need and the model lacks, only for the combinations of trip purpose and mode they use, and write each one created to the log. A Modal Split experiment now does so when it runs, as Distribution already did, instead of refusing to run. Check & Fix also creates them and reports them in a single message per experiment, with how many were created and an example, instead of one message per user class; for Modal Split these were errors that had to be fixed one by one.
Bug Fixes¶
- Microscopic simulation results no longer depend on whether the traffic demand contains pedestrian matrices. In networks that also have a transit plan, adding pedestrian demand shifted the internal numbering of the transit vehicle types, which changed how transit vehicles behaved and, through them, the results for all vehicles, even when the pedestrians never interacted with traffic. An empty pedestrian matrix was enough to trigger it. Results for such models will therefore change with this fix; models without pedestrian demand, or without a transit plan, are unaffected. Affected versions: all.
- Fixed the Centroid Editor's connection panel staying on the previous connection when a different connector was clicked in the 2D view. The clicked connector was highlighted and its row selected, but the panel kept showing the connection opened before it, so the name, external identifier, length, attributes and time series all belonged to the wrong connection. It only happened while the panel had its Time Series tab in front, which is where it opens whenever the connection carries results. The panel now follows the connector that was clicked, it also follows the row selected in the connections list, which never updated it before, and it stays on the tab that was already in front instead of returning to Time Series on every change. Affected versions: all.
- Fixed an intermittent crash while opening a model, caused by a data race during file loading: restoring a Distribution Data Set registered new columns on the model at the same time other objects were reading the model's columns, occasionally corrupting internal data and crashing the load. Affected versions: all.
- Fixed a deadlock that could freeze Aimsun Next when panning, zooming, or dragging while a Geometry Configuration editor was open. The background thread that tracked which objects had scrolled into view has been replaced with a synchronous mechanism driven directly by view-area changes, removing the race condition entirely.
- The "Return to Curbside Lane After Overtaking" parameter in the road type editor can now be edited as expected.
- Fixed the GTFS importer discarding transit services that have only one stop inside the network area — common when a model covers a small area crossed by an express or through service. These services are now imported as transit lines with a single stop, following their route shape through the network. Because of this, re-importing a GTFS feed into an existing model can produce more transit lines than before. Routes that still cannot be imported, such as those whose shape does not match the network, are now reported in the log instead of being dropped without any message. Affected versions: all.
- Fixed the GTFS importer leaving unused route polylines behind for the transit lines it could not import. Having no layer of their own, these objects surfaced in the Orphaned layer — previously in whichever layer happened to be active — the next time the network was opened, mixed in among the user's own objects. They only duplicated geometry the importer already stores in the GTFS_Shapes layer, so nothing is lost by discarding them, and the saved model gets considerably smaller: one test network went from 196 MB to 117 MB. The number discarded is reported in the log. Affected versions: all.
- In the Static OD Adjustment, a very low Trip Length Distribution Elasticity on one user class no longer stalls the adjustment of every other user class. The step size of the optimisation was previously shared by all user classes, so a near-zero elasticity on a single class (0.000001 gives a weight of 999999) collapsed it for all of them and left the whole demand almost unadjusted; the step size is now calculated per user class. A warning is also logged for each user class whose Trip Length Distribution Elasticity is close to zero, since its trip length distribution is effectively frozen, and negative elasticities are now rejected before the experiment runs. Because the step size is no longer shared, an existing adjustment with more than one user class can produce slightly different results than in previous versions even if no parameter is changed; adjustments with a single user class are unaffected. Affected versions: 24 and later.
- Improved the OpenStreetMap importer's criteria to avoid creating wrong turns in nodes where roads are joined together at a wide angle and have opposite ways. This fixes most wrong turns created at sections leading into roundabouts. Affected versions: all.
- Fixed a crash when a "Disable Reserved Lane" traffic management action targeted a section whose reserved lane sits in a part with fewer lanes than the rest of the section (for example a taper or a lateral/auxiliary lane), which could compute a lane number that did not exist in that narrower part and crash the simulation. Affected versions: all.
- Fixed WMS backgrounds ignoring the 2D view rotation angle. Now the background turns with the network. Affected versions: all.
- Fixed WMS backgrounds being incorrectly scaled when exporting a print layout. Affected versions: all.
- Fixed a crash that could occur while WMS background tiles were still loading when deleting a WMS layer or opening a model that contains multiple WMS layers. Affected versions: all.
- Fixed a crash when pressing OK in the View Bookmarks editor with the Project window open. Affected versions: all.
- Fixed the GTFS importer skipping stops on a section at the edge of the network, such as the terminus of a line. Affected versions: all.
- Fixed the Retrieve action on a Dynamic OD Adjustment replication (micro, meso or hybrid) only loading back the OD matrices and not the section/detector statistics, even though the replication was marked as fully loaded. Affected versions: all.
- Fixed the Path Assignment editor's Usage tab listing scenarios. A scenario takes a Path Assignment Plan as its input rather than a Path Assignment, so those uses no longer appear there. The tab lists the experiment, replication or result that generated the Path Assignment and the plans that contain it. Affected versions: 21 and later.
- Fixed the OD Matrix Editor hanging for minutes on large matrices when applying Add (especially with "Apply to Empty Cells"), Transpose, group-mode Add, Furness, Correction, Cell, or Split — each cell was previously written to the underlying matrix one at a time, an increasingly slow operation as the matrix grows. These operations, and the Furness balancing algorithm's own write-back, now update the matrix in bulk instead. Affected versions: all.
- Fixed a Custom database output path reverting to the model's own folder after closing and reopening its editor (Scenario, Macro Scenario, MacroPT, Macro Departure Adjustment, or Project properties). Affected versions: 26 and later.
- Fixed the route of a public transport line not being highlighted on sections whose road type is drawn as railway, which made the route look as though it stopped at the first railway section when reviewing the line in its editor. Sections drawn as railway also take the colour of a view style that applies to them. Affected versions: all.
- Fixed the Table View responding slowly, or becoming unresponsive, when panning or zooming the 2D view on a large network while showing an object type in "Visible" mode. Affected versions: 24 and later.
- Fixed the detector state sent to an external LISA+ or SEPAC controller diverging from the detector occupancy Aimsun Next records itself. Two changes went unreported: a vehicle arriving in the second after the previous one cleared the detector late, in the final tenth of a second, and a vehicle leaving a detector sideways by changing lane. In both cases the controller kept a stale view of the detector until the next change it did see, so an approach detector could be reported as free while a vehicle stood on it — in one case throughout an entire red phase — which in turn affected actuated green times and transit priority. Where several physical detectors are mapped to one controller detector, their occupancy is now also reported in the ascending time order the protocol requires. Affected versions: 24 and later.
- Fixed nodes and turns being drawn with distorted shapes after joining two sections into one, when the section that is kept has a side lane on its left. The turns arriving at the far end of the merged section were left referring to a lane that does not exist there, which distorted the shape the node and its turns are drawn with in the 2D view. Affected versions: all.
- Fixed objects disappearing from the 2D view while panning or zooming on a layer that has a rotation, translation or scale set in the layer editor. Affected versions: all.
-
Resizing or moving an object on a side lane past its boundaries no longer makes it switch to the adjacent lane. Dragging one end handle past the other one also no longer drags the whole object. Affected versions: all.
-
Fixed a microscopic simulation crash on networks that combine turn-closure actions with vehicles that cannot take the turn the closure assigns them. When a closure rerouted a vehicle too late for it to reach the new turn, the route recorded for that vehicle kept the turn it never drove, which aborted the simulation or, once it had run to the end, left the wrong route behind in the path statistics and path assignment output. The recorded route now follows the turns the vehicle actually drove. Affected versions: all.
-
Fixed Aimsun Next closing unexpectedly when a mesoscopic simulation with a Python API extension attached was launched from the interface. Running the same network from a Python script was not affected. Affected versions: 26 and later.
- Fixed a bus being allowed to use a reserved or bicycle lane it isn't permitted to use, once it entered the upstream approach zone that steers it toward its own stop's lane. That lane-forcing zone no longer overrides a hard lane restriction. Affected versions: all.
- Fixed a saved model that could not be reopened: the file loaded partway and Aimsun Next stopped, with no way to recover the file. It was caused by a transit stop whose walking-time data was written with a mismatched count, which shifted the rest of the stop's data in the file. Such a stop now loads with its walking times intact and its remaining settings reset to defaults, with a warning in the log naming it, so the model opens and can be repaired by reviewing the stop and saving again. Affected versions: 26.0.0 and 26.0.1.
- Fixed ECW and MrSID images not importing. The decoders for these formats are supplied by their vendors and were absent from the installers. They are now included where the vendor supports the platform, and the image file importer offers each format only on installations that can read it. An image that cannot be read reports the reason in the log, naming the decoder the installation lacks when that is the cause. Affected versions: 24 and later for the missing decoders, all for the unreported failure.
- Fixed deleting a layer leaving behind the objects placed on its sections. Selecting the layer's contents with Select All and then deleting the layer removed the sections but kept their transit stops and detectors, left pointing at objects that no longer existed; saving wrote those links empty and the objects were discarded the next time the file was opened, taking the stops out of their transit lines with nothing but a log message to say so. Everything the layer contains is now deleted with it, and undo restores it all. Affected versions: all.
- Fixed OD matrices stored in OMX format staying locked for the rest of the session. Every OMX file Aimsun Next wrote or read was left open, so no other application could read it while Aimsun Next was running, and Aimsun Next could not delete the OMX files it manages itself — skim matrix files from an earlier run stayed on disk instead of being replaced. Affected versions: all.
- Fixed a Real Data Set with several retrievers being reported as not retrieved when one of its files brings no data in, which can occur when the RDS is filtered. An RDS that does not have any data after filtering is still reported as not retrieved. Affected versions: all.
- Fixed the C++ Platform SDK not compiling against
GKBusStop.h, which included an internal header that is not shipped with the SDK package. The bus stop now uses a wrapper type that is part of the SDK, so the header compiles with the SDK includes alone. Affected versions: 23 and later. - Fixed the graph in a Time Series tab keeping its previous scale when limits are set from Action / Adjust Limits / Set Limits... while two variables measured in the same units are shown. Both share one Y axis, and the limits typed for that axis were replaced by the range of the last of those variables drawn. Affected versions: all.
- Fixed Check and Fix not reporting sections whose entrance or exit line angle is too pronounced for their geometry when it runs without the user interface, from a script or the console. Those two checks read their verdict from the 2D view, so a network checked with no window open came back with no such errors at all, while the same network checked in the editor reported them. Affected versions: all.
- Fixed trigger conditions refusing values above 99.99. A condition on a statistic such as a section's density could not be given a larger threshold: extra digits were ignored as they were typed, the scroll wheel stopped at the limit, and a threshold saved by an earlier version was reset to that limit as soon as the condition was opened for editing. Numeric fields in many other dialogs were capped the same way, at 99 or 99.99, and now accept the range their quantity needs. Affected versions: 26 and later for trigger conditions, all for the other fields.
- Fixed the C++ Platform SDK shipping headers that do not compile. Packaged headers included files that were never part of the package, because the copy rule for the data structure headers still pointed at a folder that had moved to another repository; others used Qt's Sql module without the sample project requesting it, or named types that are only declared when a macro the SDK's users do not define is set. The package now ships the data structure headers it depends on, and every shipped header resolves its includes, with a CI job that compiles them one by one. Affected versions: all.
- Fixed Check and Fix failing with a "no controller registered" error when run from a script or the console on Static Assignment, Transit Assignment, Transit OD Adjustment, Four-Step Model and Generation/Attraction experiments. The same experiments could be checked from the editor. Affected version: 26.
- Fixed Aimsun Next closing unexpectedly while saving a subnetwork as a standalone file, from the interface or from Aimsun Console. Deleting the experiment in use left the model still referring to it, and activating an experiment whose scenario had lost its traffic demand crashed when HCM statistics were enabled. When a file is opened, an experiment that is not inside its scenario's folder is now deleted and reported in the log, because deleting that scenario would leave it behind and make the next save fail. Affected versions: 24 and later for the HCM crash, all for the rest.
- Fixed Aimsun Next closing unexpectedly when switching the Time Series tab of an object editor to the graph after a simulation run had removed the data of one of the selected time series. When a run removes all the time series shown in an open editor, the tab now shows a message asking to close and reopen the window. Affected versions: all.
- Fixed path assignments generated with recent builds of Aimsun Next 24 not being used by later versions. Aimsun Next 26 could not read them, and a simulation that asked for their paths silently took all its paths from route choice instead. They are now read. A path assignment that cannot be read is now reported in the log, naming the file, instead of being ignored without a message. Affected versions: 26.0.1 and later for path assignments from Aimsun Next 24, all for the missing message.
- Fixed Aimsun Next freezing when retrieving a large OD matrix from an Aimsun ASCII file, from the OD Matrix editor or from a script: a matrix with 6675 centroids that never finished loading now loads in seconds, and large VISUM and SATURN files are also read faster. Affected versions: all.
- Fixed checkboxes being invisible on macOS 27 in lists, dropdowns and table headers, such as those in the Layers window, in the Show in Legend column of the View Mode editor and in the Journey Times tab of the subpath editor. They could still be clicked, but nothing was drawn. On macOS, dropdowns that allow several choices, such as the transit lines of a subpath, show an empty box next to each unselected item. Affected versions: all.
- Fixed the OpenDRIVE importer taking the lane offset at the end of a lane section from a point slightly before its end in many files, which could shift the lane edges at the end of short junction roads and change the length of the turns built from them by a few tens of centimetres. A lane section of zero length no longer makes the import hang. Affected versions: all.
- Fixed the Run Information of replications, experiment results and experiments not showing the run whose results were retrieved. After retrieving results produced elsewhere, for example by Aimsun Console, the editor kept the engine version, and for replications the simulator name, from the last run in the interface until the model was reopened, and distribution, modal split, generation/attraction, transit assignment and dynamic OD departure time rescheduling results showed no date or version from the database at all. They are now read from the database when results are retrieved, and reopening the model shows the same. Mesoscopic, simplified mesoscopic and hybrid macro-meso runs now name their own simulator instead of always reporting the mesoscopic one, and retrieving a transit assignment no longer leaves the database's traffic demand, transit plan or master control plan assigned to a scenario that had none. Affected versions: all.
- Fixed the "No data available for external Skim Matrix" message being reported during Check and Fix of a mode choice or distribution experiment for skim matrices that do have data. Each skim matrix is now checked once, after the other checks, and a missing skim matrix file is reported with that message without asking for the file. Affected versions: all.
- Fixed Aimsun Next closing unexpectedly when a time series without a time definition was selected as the reference or compared data in the Data Comparison dialog. Such a time series is now treated as not comparable, and pressing Compare reports that the selected time series cannot be compared. Affected versions: 24 and later.
- Fixed node area sometimes not being drawn in 2D View when importing a Visum file, leaving gaps between sections. Affected versions: all.
- Fixed reading a path assignment file using extra memory of up to twice its uncompressed size. Affected versions: 26.
- Fixed an interrupted save, for example after a crash or with a full disk, leaving the document missing. Affected versions: all.
- Fixed revisions listing as changed Static OD Adjustment experiments, Static Assignment experiments and dynamic scenarios that had not been modified. Their congested sections, toll attributes and scenario parameters were saved in a different order in each session, and are now saved in a fixed order. Affected versions: all.
- Fixed transit fares in mesoscopic and hybrid simulations being charged on the wrong stop-to-stop segments of a transit line when one of its stops does not exist in the scenario, for example because a geometry configuration removes it. Each segment took the fare of the segment in the original line at the same position, so the fares after the missing stop were shifted. The segment that now runs across a missing stop is charged the fares of both segments it replaces. Affected versions: 20 and later.
- Fixed Aimsun Next closing unexpectedly during a mesoscopic or hybrid simulation that gathers detector statistics but not section statistics, when a vehicle changed lane on a section without a detector. Affected versions: 26 and later.
- Fixed a Forced Turn not being applied when one of its next sections, or the turn to it, does not exist in the scenario, for example because a geometry configuration removes it, even when that next section had a 0% share. The microscopic simulator reported the action as not executed and the mesoscopic simulator ignored it without any message. Such next sections are now skipped and the percentages of the others are rescaled to add up to 100%. A forced turn that cannot be applied at all is now also reported by the mesoscopic simulator. Affected versions: all.
- Fixed Aimsun Next closing unexpectedly when an OD matrix stored in an Aimsun ASCII file was retrieved with the Aimsun Binary format selected. Retrieving an Aimsun Binary file with the Aimsun ASCII format selected filled the log with warnings about centroids that cannot be found, with unreadable characters in their names. Both are now detected: the log names the file and says it is in the wrong format, and the matrix is not loaded. Affected versions: all.
- Fixed the SCATS and UTOPIA interfaces not noticing when the connection to the adaptive control system broke, and misreading messages that arrived split across several network packets. A broken connection is now reported in the log and the controller is disconnected while the simulation continues, messages are processed only once complete, and waiting for SCATS to end a simulation step now stops at the time-out, or when the connection breaks if the SCATS time-out is disabled. Affected versions: all (broken connections not noticed: 23 and later).
- Fixed Check and Fix reporting a different warning for the same signal group from one run to the next. A signal group that is not used in a control plan could be reported as having no turns nor pedestrian crossings on one run and as never green in the control plan on another, even though it has turns. It now reports the same warning every time. Affected versions: 26.
- Fixed the OD Pairs table of the scenario's Vehicle Trajectories tab not growing when the editor is made wider, which left the origin and destination centroid names cut off. It now grows with the editor, and in the trajectory filter tables only the columns that select objects take the extra width: vehicle type, origin, destination, entrance section and transit line. Percentage and Transit Vehicle Travel Time Between Stops keep a constant width. Affected versions: all.
- Fixed the Simulator ID of the vehicles in a replay showing 0 when a view mode uses it as a label, and missing from the vehicle tooltip. Both now show the ID the vehicle had in the recorded simulation, the same one the vehicle editor shows. Affected versions: all.
- Fixed Aimsun Next closing when the trips of an OD matrix were set in a centroid configuration with 46,341 centroids or more. Large OD matrices now stay in their compact form and keep their trips. Affected versions: all.
- Fixed Aimsun Next keeping its licence seat when it does not close normally. Stopping it with Ctrl+C or a stop request, a crash, or the end of a unit test left the seat taken until the License Manager's own timeout, which is minutes for a local License Manager but can be hours for a network one, so many such runs could use up every seat of a subscription. The seat is now given back on every way the program can end, except a forced kill or a power cut. Affected versions: all.
- Fixed the mean and maximum queue length of turns (
qmeanandqmaxin the MITURN table) always being stored as -1 in microscopic and hybrid simulations, so no turn queue was shown. They now hold the queue of the vehicles stopped inside the turn, per lane, in the same way as the link queue does for the section and turn together, so they are usually much smaller than the link queue. Mesoscopic turns, where vehicles do not queue inside the turn, still store -1. Affected versions: all. - Fixed a transit assignment taking much longer when it is run again in the same session than the first time. Before each run, the results of the previous one are cleared, and on a large network clearing them took several times as long as the assignment itself. They are now cleared in one go, so a second run takes about as long as the first. Affected versions: all.
- Fixed the skim matrices of a replication coming back empty, or not at all, when its Average stores them in a format other than Aimsun ASCII, such as Aimsun Binary or OMX. This affected
retrieveSkimMatricesin Python scripts and Retrieve Skim Matrices on mesoscopic and hybrid replications, which now read the files in the format set in the Average, as microscopic replications already did. Affected versions: 26 and later. - Fixed Aimsun Next stopping responding when the time interval of the 2D view was changed, for example with the step arrows, while many rows were selected in the Table View. The Table View now keeps its selection, scroll position and current row when the interval changes, also while a simulation is running. Affected versions: all.
- Fixed view styles losing their condition when the network was reopened or a microscopic simulation started, if the style showed a simulation attribute, such as the virtual queue of a section, and the condition used another attribute. The condition is now kept. Affected versions: all.
- Fixed WMS layers not reporting loading errors. Failed tile requests are now reported once per layer in the Log window. The task bar also shows a loading message for slow servers, and the Add WMS Server dialog reports connection errors before the layer can be added. The dialog also rejects WMTS servers, which this version does not support: their capabilities document used to be accepted and gave layers that drew nothing. Affected versions: all.
- WMS layers are now always treated as retrieved. The Retrieve tab and menu items have been removed since they do not apply to these layers. Affected versions: all.
26.0.1¶
New features¶
- A new giveway type in turns for microscopic simulations has been added as a fast-track for Next 26.0.1. The RTOR (right turn on red) can now be applied to the nearside lane only and not to all origin lanes in the turn.
Improvements¶
-
Skim and RGap matrices can now be retrieved from Python scripts.
GKReplication(andGKExperimentResult) exposefindSkimFiles()andretrieveSkimMatrices(files).MacroExperimentadditionally exposesfindRGapFiles()andretrieveRGapMatrices(files). These mirror what was previously only accessible via right-click menus and correctly handle all output file formats. -
Skim matrix output now supports all six OD matrix file formats — Aimsun ASCII, Aimsun Binary, VISUM, OMX, SATURN, and EMME — selectable via a new File Format combo in the Store Skim Matrices section of the Experiment Result editor. The chosen format is also accessible from the Python scripting API via
getSkimFileFormatId()/setSkimFileFormatId()onGKExperimentResult. -
When generating a traversal (static or dynamic/hybrid), a progress bar now appears in the task bar showing the current phase — subnetwork gates, public transport, and demand matrices per vehicle type. Start and end messages are also logged to the GUI log.
-
The downhill crawl-speed model for heavy vehicles im microscopic simulations has been replaced with a braking-power equilibrium model. The new model derives the steady-state downhill speed from the vehicle's mass and road slope alone, removing the previous dependency on slope length and the constraint not to split downhill grades across separate sections.
-
In hybrid macro-meso simulations, the Waiting Time in Virtual Queue output has been added to the mesoscopic sections in the border from the macro part to the meso.
-
In the static assignments, a new option to include centroids without trips in the generation of the skim matrices has been added.
-
In all models, skim matrices are now generated for just the components defined in the execution and not for all the ones defined.
-
Groupings now output also the minimum and maximum values complementing the mean or sum previously available.
-
Path assignment outputs can be now filtered by a grouping of vehicle types. Also the different intervals can be aggregated to display the info of several ones, but not all, at once.
-
The transit line editor has been improved to ease the process of defining the sections in the line.
-
Geo Image Locator now accepts millimeters as size precision.
-
The scripting documentation has been greatly improved and several functions that were not behaving as expected have been corrected.
-
The GTFS importer now supports an optional forbiddenStops.txt file to exclude specific stops and their associated stop times during import. It also automatically splits transit lines when a route exits the subnetwork and re-enters it, using boundary sections to define the split points.
-
Check & Fix can now be run programmatically via the new
PyANGExtrasscripting module. UseGKCheckAndFixto find problems on any experiment and iterate over the results from a Python script. -
In the Yutraffic Office interface, the detection cycle parameter (together with the simulation step) is now honoured when determining the communication interval with Yutraffic. Valid intervals are 0.1, 0.2, 0.5 and 1.0 seconds; any other value falls back to 1.0 second.
-
3D Views are now available for the Ubuntu and Windows versions.
-
The
ADynamicAPIconstructor and its derived classes in the V2X Framework now take thesetupparameter as aconstreference, improving code quality.
Bug Fixes¶
- Fixed a bug where selecting "Decrease (x0.5)" as the Acceleration Factor in a Traffic Management Action or in the Section editor could silently store an invalid value of 0 instead of 0.5, causing affected vehicles to remain stuck at signals even on green. Networks with an already-corrupted value are now automatically corrected when reopened, and invalid values are also guarded against at simulation time.
- Fixed a crash when opening a Modal Split Scenario editor for scenarios with a large number of skim-matrix rows/columns, caused by redundant editor-widget creation during dialog setup.
- Fixed an issue where nudging a selected vertex with the arrow keys moved the entire object instead of only the selected vertex.
- Documented two AAPI data-structure changes introduced in 26.0.0 (a new field in the section information struct, and removal of the harmonic-speed statistics fields) that were missing from the API Changes reference. AAPI plugins compiled against older headers should be recompiled against the current version to read section length and statistics correctly.
- Evaluating Python functions in parallel — for example, Python columns surfaced through view modes, Function Cost expressions used during simulation, or AAPI extension callbacks — no longer crashes or hangs the application.
-
Fixed the GTFS importer rejecting sections that the route shape only partially covers, which is the usual case at route extremes when a trip starts or ends partway into a section. Routes no longer start one section too late, and pre-existing bus stops on those sections are reused instead of being duplicated. Affected versions: all.
-
In the Path Analysis tool, running Link Analysis with two or more intervals selected now correctly computes the result for the chosen interval range instead of returning the previously cached "All (Warm-Up Excluded)" result.
-
When using the junction creator tool to add turns to an existing node in a geometry configuration, the node now appears immediately in the view. Previously it remained invisible until the user switched scenarios, causing a spurious "Node already exists" error on retry.
-
Cutting a section with a side lane (lateral) no longer resets the turning entities configured in the advanced node editor. Additionally, undo/redo of section cuts with lateral lanes no longer corrupts the lane count.
-
Some time widgets, like the one in the validation tab of a replication, were being displaced from local time to UTC time making it impossible to validate the desired time period. This issue has been addressed.
-
Table View did not allow to edit doubles higher than 99.99. The attributes tab of the object' editors did not allow to edit unsigned int parameters with values higher than 99,999. Now both work as expected.
-
The communication with LISA, UTOPIA and SCATS Signal Controller interfaces, when connecting multiple controllers behaves as expected in this release.
-
Importing Visum matrices no longer results in empty matrices. The format lookup in the OD matrix editor is now case-insensitive, and matrix names with dots in the filename are no longer truncated. Also, the vehicle type is correctly assigned based on the matrix filename, matching against transport system names and codes.
-
Importing Visum
.netfiles no longer skips control plans for signalised intersections. Previously only the signal groups were imported; the control plans that sequence their phases were silently discarded. -
Multiple crashes reported using some editors as well as running some models have been addressed.
-
In a static assignment with reserved optional lane types, the capacity for the vehicles that were using the reserved optional lane types was wrongly calculated. It has been addressed so results might change between versions if those type of lanes were present.
-
View style attribute labels are no longer rendered upside down or invisible when the 2D view has a non-zero rotation set in 2D preferences.
-
The Node Editor no longer opens at a size that exceeds the available screen height on low-resolution displays (e.g. 1366x768), hiding the OK and Cancel buttons.
-
3D views and the vehicle-type 3D shape preview no longer crash the application. Clicking a row in the 3D shapes table of a vehicle type, or closing a 3D network view, rendered correctly and closed cleanly.
-
When a view mode with conditional hide rules was active, objects visible on screen were not drawn as selected after an area selection. This has been fixed.
-
Joining two large OD matrices (e.g. ~2700 centroids) in the Traffic Demand editor no longer hangs indefinitely. The operation now completes in seconds.
-
Opening the OD matrix editor, retrieving trip data from an external file, then changing the Store Location to "Aimsun Document" and clicking OK no longer discards the retrieved data. Reopening the editor now shows the data loaded from the external file.
-
Retrieving simulation results with link cost analysis statistics (cost, default cost, VDF, TPF, JDF) no longer causes a crash. The crash was a dangling-pointer bug in
SSManager::resetTimeSeries: cost columns were incorrectly skipped during the row-entry reset while the backing memory pool was still freed unconditionally, leaving stale pointers that faulted on the next access. Affected all simulators (micro, meso, hybrid) on all versions. -
In the PySide scripting documentation, namespaces (for example,
GKColumnIds) now list all their exported constants, and class attributes are shown in a Properties section under Synopsis with their descriptions where available. -
Selecting objects in the project dock for the Time Series Viewer no longer shows an inflated selection count when shift+clicking to add a second object. The label now correctly shows the number of distinct objects selected. Affected versions: 24 and 26.
-
Moving a polyline object and then moving one of its vertices no longer leaves the other vertices in the wrong position after undoing both operations. The undo of the whole-object translation now correctly restores all vertices regardless of which vertex is currently selected in the editor. Affected versions: all.
-
Spot size no longer corrupted in view style's' editor when defined with imperial units
-
The User Class combo box in the DynamicPT replication outputs editor no longer elides long pedestrian type names on first open.
-
Opening a Traffic Demand editor and then deleting the traffic demand no longer crashes the application. A temporary copy created by the editor for histogram preview was incorrectly registered in the external-ID catalog, leaving a dangling pointer that caused a crash on deletion. Affected versions: 24 and 26.
-
The News page of the Welcome window now shows the most recent newsletter instead of a fixed one, and the "Request a quote" button now opens the correct page.
-
Fixed two crashes in the signal plan editor. Clicking OK after editing a junction that had been set up by a Python script in an unusual configuration could crash immediately due to an uninitialised internal reference. Additionally, editing the signal groups table and then switching to another tab and back could crash because a stale selection in the timing diagram was accessed after the phase data had been rebuilt. Affected versions: all.
-
Fixed a micro simulation freeze that could occur when a non-lane-based (mixed-traffic) vehicle crossed a junction with an incomplete lane connection — for example after closing a lane via a turn-closure action without fully reconnecting the node. The vehicle's lane-repositioning check could get stuck in an endless search, hanging the simulation indefinitely instead of continuing or reporting an error. Affected versions: all.
-
Path assignment retrieval has been optimized, removing the slowdowns and occasional hangs that occurred when scrolling through large path lists.
Improvements¶
- Gradient descent adjustment (departure, OD, PT, and dynamic) now runs significantly faster on large networks by parallelizing the inner computation loops.