Re-enabling location variables and optimisation in Simulation may affect DSMC/oracles
In Simulation/SimulationAnalysisEngine.cs, commit b419eb6adcad4bca29871cb122ca72e876f3372a (which merged Michaela's work on resolving nondeterminism via neural networks (DSMC) or external oracles in Simulation) commented out two model transformations:
//new Guid("14323163-B374-4AEC-976A-49EBDFE9D458"), // detect and expand location variables //commented out to preserve automata edge order from JANI file
and
//nstaOptimizationGuid = new Guid("10D9051D-FA26-468F-B138-60F26C729037"), // optimize automata/network //commented out to preserve automata edge order from JANI file
The former is important for performance, and the latter is important to replace complex constant expressions with their actual numeric values. Especially commenting out the latter is currently leading to errors on QVBS models.
I am now re-enabling these two transformations, but this may have an impact on DSMC/oracles. I ask those who maintain the DSMC/oracle functionality to please review the impact and adapt the DSMC/oracle code accordingly. The first transformation (location variables) could be conditionally disabled when using DSMC/oracles, but the second one (optimisation) is necessary to make several models compile in the first place.