November 21, 2017 - Stella Architect 1.5
Optimization allows you to find a set of parameter values (model constants) that maximize a payoff you defined in terms of other model variables.
This is similar to running sensitivity that is guided to achieve specific outcomes.
Confidence Bounds, Histograms and Correlation Plots
The output of graphs and tables has been enhanced to support a number of formats that can be very helpful when working with a large number of
Confidence bounds allow you to see what percentage of runs leave values in different ranges at each point in time. This allows for a clear
visualization of the divergence or convergence of values over time given different assumptions on parameters and also how concentrated the
values are at any point in time. The same information can be presented in tables identifying numeric values for the different percentiles.
Histograms are created by collecting results from different runs and grouping them into buckets for different ranges. This allows you to
see how many runs fall into each of the ranges. Histograms are available as an option on the Bar Graph.
Correlation plots allow you to see how one variable correlates with another over a series of runs. This is done with scatter graphs by
turning on comparative and checking the option to show only a single value.
When a model is paused, the values of all variables, stocks, flows and converters, are available at the time of the pause. On the model window
these values will be updated if you make changes to any model parameters. For tables and graphs, the interface will report only stocks at the
current time, but other output devices, such as numerical displays, can be set to report the precomputed values. The option to pause before
computing flows has been removed as this is no longer necessary.
Sensitivity, Payoff and Optimization Setup
These are now accessed through the model analysis tab of the properties panel for the model. Use the sensitivity tab to access sensitivity setup.
Context Sensitive Help (not in rc1)
Clicking on the ? icon in any of the panels or dialogs will now take you to the help entry specific to that panel or dialog.
You can now specify a save interval. This is useful for decreasing the storage requirements for large models and also
for keeping data collection working well.
Graph and Table Labeling and Ordering
If you are using the tabbed or dropdown styles for selecting between multiple graphs you can now set a label for the
tab or dropdown entry that is separate from the graph/table title. It is also possible to reorder the entries.
July 22, 2017 - Stella Architect 1.4
In addition to publishing model interfaces, you can now create multiplayer games in which players connect from their own browsers, make decisions, and indicate their readiness to proceed.
The model then uses decisions from all of the players as inputs for the next step in the game. Multiplayer games can be published to the isee Exchange under the Creative Commons license,
with some limitations on model size.
It is now possible to create sophisticated animations based on SVG graphics files. These animations can include color, size, and rotation.
Conditional Actions on Buttons
When you add a button to your interface, you can now set conditions under which each of the actions will be executed. This is especially useful in multiplayer games.
Published interfaces can now be made resizable, allowing them to work well on a variety of devices.
You can now collect data on the use of your published simulation, including the results from different users and the time spent on different pages.
Data collection is available through an isee Exchange subscription. There are several reporting options available for analyzing the data.
Learn more .
The modeling language has been extended to allow the use of expressions inside of the array functions (such as SUM(a*b)) to take an inner product. An inner product
operator has also been added for 1 and 2 dimensional arrays.
Multiple Page Graphs, Tables, and Inputs (Interface Only)
here are new options for navigating through multiple pages of graphs, tables, and input devices. Rather than the standard right and left buttons, you can use tabs for each page, or a dropdown
list including all pages. This is applicable to graphs, tables, group inputs, and arrayed inputs, and is selectable from the properties panel for each.
When you connect a variable to a module, or a module to a variable, you will see a menu item allowing you to select which variable within the module to connect.
This will appear only if there is something marked as an input or output within the module that has not yet been connected.
Using Initial Equations with Graphical Functions
We have made a behavior change when you are using a separate initialization equation for a graphical function variable. Previously, the I equation would determine the value of the variable.
Now the I equation determines the input into the graphical function.
Initialization and Graphs
Graphs will now use the initial values computed in the background. For bar graphs and pie charts, this means they will be populated with initial values before and after running an output restore.
Regular graphs will not draw, but they will have a scale. This is true for models and interfaces, including published interfaces. Note that changing a controlled value will no
longer generate a new initialization.
Stella Live Behavior
We have adjusted Stella Live to be less sluggish on larger models, and also to give visual cues when the model is in the process of computing. In particular, as you dial a knob, while the software
is computing the graphs, over model elements will be displayed in gray instead of red. This indicates that the graphs are potentially out of date relative to the value showing for the knob.
May 10, 2017 - Stella Architect 1.3
You can now edit and work with your models online by logging in through the isee Exchange.
New Graph Options
Available for both the model and interface we have added to new options for displaying results.
The Pie Chart
is a new output format for the display of variable values at a point in time.
The Area Graph
allows you to display a series of graph values stacked on one another with distance between them based on the values of the variables. Both of these are configurations of graph objects
and can be selected in the Graph Properties Panel.
Allocation Input on Interface
The new Allocation Input (Interface)
object allows users to set values for inputs that need to add up to a set amount. It is implemented as a draggable pie chart, with adjacency determining the sequence in which other inputs change as the user makes adjustments.
Reset Buttons on Interface
A reset button () has been added to interface input objects allowing them to be reset to the model value by the user (the button also marks the control as changed). This option to use this is
set in the Interface Settings Properties Panel.
Import/Export Now action on Interface
Buttons on the interface can now execute either an import or an export of an on demand data link. These actions do not do anything for published models.
Button (Interface) for more details.
Graphical Input Points
Graphical input objects on the interface can now be changed either by tracing the shape, or by switching the Table view and entering xy pairs.
Improved Import and Export Capabilities
You can now import both the x and y axis for graphicals by putting :x and :y after then name of the graphical in successive rows or columns. See
Creating Import and Export Files for details.
The import options now handle arrayed inputs more consistently and better manage compatibility between US and European number formatting.
Parameter Control Panel Improvements
The Parameter Control Panel
now highlights variables that have been overridden on the panel making it clearer what has been changed (this is especially important for values already imported).
Any graphical functions that use a constant as an input will now be marked as invalid. This makes it easier to uncover issues where TIME might have been the intended input. If you do want a constant as an input you can use an expression (as in 0+0)
to prevent the error. The INIT and ENDVAL builtins can now take an expression in addition to using a variable directly.
February 1, 2017 - Stella Architect 1.2
Improved Data Manager
A number of other improvements have been made to the Data Manager giving you more control over the way in which runs roll off the list and what runs are displayed in graphs and tables.
Importing External Runs
We have added the functionality to import runs from external data sources to the Data Manager. This makes it easy to compare results with measured data or with results from other models.
Parameter Control Windows Updates
The parameter control window has been enhanced so you can see the original model value and to make it easier to reset and control different variables.
Any variables appearing in the parameter control window are also marked on the model diagram.
Model View Improvements and Animation
You can now optionally animate diagrams shown in the Model View including those shown for storytelling. The Model View controls have been improved to make it easier to include model elements on
interface pages and stories.
Circularity checking and reporting have been improved and now detects subtle initialization dependencies related to leakages and discrete stock equilibrium initializations. Circularities are now
reported one loop at a time, and all the variables in the loop are marked invalid making it easier to visual the loop.
Divide 0 Operator
We have added a // operator which works the same as SAFEDIV giving 0 instead of an error when dividing by 0. Divide by zeros are more accurately reported, even when they occur within expressions
such as MIN. Legacy models will automatically have some of this reporting masked to maintain compatibility.
Preserving Graphs and Tables
You can now preserve graphs and tables with a single click so that they will not change with new runs or be cleared when you restore outputs. This is done from the Graph Properties Panel.
June 20, 2016 - Stella Architect 1.1
The interface development tools are all new. The new interface development and deployment capabilities take you from design to presentation and, optionally, the web quickly and cleanly.
Interfaces developed in previous versions of the software will be translated and most of their functionality retained, though some adjustment will be necessary to get optimal results.
The Causal Lens displays graphs for a variable and the inputs to that variable helping you to better understand the sources of model behavior.
Table in Results Panel
The Results Panel now includes both a graph and a table allowing you to look at specific values at specific times easily. There is also a checkbox to not round the scales which is helpful when
looking at variables with limited movement through a simulation.
The Simulation Log records any variables that go above or below their specified ranges, as well as graphicals with inputs above or below their specified minimum and maximum x values.
The same log is also used to report messages about anything that happens when opening a model.
The Parameter Control Panel allows you to see what variables are changed relative to their model equations, and also make changes to those variables.
Selection History Panel
The Selection History panel keeps track of which variables you have selected making it easier to go back and see where you have been. Click on an entry till take you back to that variable.
Clearer Selection Highlighting
We have improved selection hightlighting to make it easier to see which variables have been highlighted. This is especially useful as we have added a number of new ways to navigate between variables.
Causes and Uses in Equation Panel
You can right click on a variable in an equation and jump to that variable. There is also a Causes/Uses menu to navigate to variables that cause, or are used by the variable you are looking at.
Improved Error Messages
We have improved the error message reporting in equations and made this reporting somewhat stricter, especially around the MIN and MAX functions, to prevent ambiguity.
More Informative Units Messages
The units messages now tell you have many variables you have left to define units for. If you have not defined units for any variable, the dropdown simply reads Define Units.
Unrestricted Naming for Variables
There are no longer any restrictions on what names you use for variables, except that they must be unique and not conflict with any Builtins. When used in equations variables that have operators
or other characters will be quoted and escaped. (If you type them in you will need to do this, but it happens automatically if you choose them or use autocomplete.) Variables with a period (.)
in them will also be quoted when displayed on the diagram (this is to prevent confusion with module qualified names).
Models open significantly more quickly than before letting you get on with development. Exporting of data is significantly faster and will happen in parallel during simulations.
Added PROD Functions
An analog to the SUM function takes the product across elements of an array.
Large Model Use
An option has been added to the Preferences Dialog that turns off Stella Live when in Explore mode. This allows you to work with larger models and make changes on the model window but only
simulate them when you explicit request a run.
Run Specs always Available
You no longer need to go to the home module to change run specs or other model wide settings. These are avilable in the panel from any module.
You can now order equations by sector and also view values in the Equation Viewer. Complete information about model size has also been added to the end of the equation listing
We have redone what used to be called Posters or Simulation Messages into an easier to use system of Simulation Events that can be applied separately to the model and interface.
Existing models will have these converted to the new format working on the model. Navigation events will need to be redone.
We have added new export formats to export a single set of values or values at a time and improved the way tables are specified for exporting
August 6, 2015 - Stella Professional 1.0.1
Substantial improvements have been made to Stella Professional's computation engine. Not only will models open more quickly, but large models should simulate three to eight time faster than
in the previous version. This allows you to get more done more quickly.
A new function SAFEDIV (<numerator>, <denominator>, [<onzero>]) has been added that allows division in cases where the denominator might become 0. When this happens the function will
return 0 or the optionally specified third argument. Use this to prevent simulations stopping because of a divide-by-zero condition.
Importing Temporary Changes
The Import functionality has been enhanced to allow you to import values without making any changes to model structure. This is useful for running experiments in which you do not want to change the
model, but just see the results of changing constants and graphical functions. This also allows you to override computed variables with a constant value, much like you would when, for example,
attaching a slider to a converter on an interface.
An option has also been added to the Import dialog that will read interface control values from a model created in version 10.1 and create a temporary change files. This allows you to simulate
models in Stella Professional and get the same results that they generated in the Version 10 products.
Repeating Build Steps with the Alt Key
The Alt key now works by holding it down, rather than tapping it, when you want to repeat a build step such as drawing connectors between variables.
Clear Highlighting of Connectors and Names
When you position the mouse over a connector handle (or arrowhead) the color of the connector will change to indicate that it is active and can be dragged. Similarly when you position the mouse over
a variable name, the name will be highlighted with a box to indicate it can be repositioned. This makes it much easier to adjust model layout, especially for densely connected models.
New Menu Items
A Windows menu has been added to allow you to more easily navigate between models when you have multiple models open. Under the Windows menu is an item to open the Results Panel. A Run Specs menu item
has been added to the Model menu as an alternative way of opening the Run Specs panel.
Registration information can now be accessed and changed through the Registration dialog box opened from the Help menu. This allows you to change your registration information and unregister the
software from one computer, so you may use it on another. Learn More
Delay Marks and Lettered (s/o) Polarity
When you place a connector the Style Panel will contain an option for a Delay Mark. The polarity markers can be shown using either +/- or s/o as specified in the
Model Settings Properties Panel.
Hide Module Prefix Option
Set this on the Model Settings Properties Panel to shorten the names displayed in graphs and tables (eg. have profit be displayed instead of accounting.profit).
Sketchable Graph Enhancement
You can now create a Sketchable graph for any graphical function in the model without needing to add another variable for comparison. This allows you to use the Sketchable graph as an input control.
March 26, 2015 - Stella Professional 1.0
The Stella Window
While using the same set of building blocks and supporting you step-by-step in maintaining the integrity of the models you build, you now have more flexibility and control over appearance.
You'll also find powerful new ways to work with and understand your models.
For previous users, Stella Professionalis both very familiar and very new. The first thing you notice is a new set of toolbars.
The Build Toolbar contains the same components as previous versions, with slightly different icons. By default it is in the same location.
All toolbars are movable and can be docked on any side of the window. By default, the Build and Mode toolbars are at the top, and the Run toolbar is at the bottom.
If you grab the handle at the left end of a toolbar, you can put the toolbar in a new location along one of the other edges, or leave it floating.
Side-docked panels allow you to define and edit properties for model entities while still viewing the diagram. Drag and drop entities from the diagram into equations to use them as variables.
Undock the panels to create a floating window that you can resize and place anywhere on your screen.
In addition to fonts and colors you can now set the size on stocks and converters and set specific Converters to be name-only. This, combined with bendable Bezier connecters, allows much more
flexibility in presentation. Easier layout is facilitated by Object guides. These appear as you move objects around the window, any time one object aligns with another.
You now have much more control over appearance. Set fonts, colors, and other attributes. For example, you can change the font on flows, mark a converter as Name Only, resize stocks,
and use Bezier connectors
Run Specs and Page Settings follow this heirarchy, and are set from the Properties panel. When in the root page of the model, with nothing selected, set the Run Specs and Page Settings for
the entire model. If you create new modules, they inherit those settings, but you can override them for any module. Any modules used within that module inherit its properties, but they
in turn can be overridden.
Use Partial Simulation tab to select specific modules or sectors to include in the simulation.
Use the Model Styles tab to set default fonts, colors and label positions for all objects for which those attributes have not been set.
Models use a hierarchical structure. Set styles for objects at the model level and override them at the module or object level. Change the model style to changes everything that
has not been explicitly overridden. You can also change styles and other attributes for all selected objects.
Expanded array capabilities provide more flexibility when you are defining array equations, creating arrayed graphical functions, and entering constants across an array. Create up to ten dimensions
for arrayed entities. Index dimension elements by number or label. Use the new Array Editor to easily import or paste element labels from a spreadsheet or comma/tab-separated list.
The new Data Managers allows you to archive and recall simulation results. Name and save run data from different scenarios or sensitivity tests to easily identify and reload results.
Simulation data is stored in a separate SQLite database file and accessible using standard database tools.
Hierarchical modules are now embedded in a single model file by default. For collaborative model building and creation of reusable templates, use the option to automatically save modules as separate files.
Statistical built-in functions
COMBINATIONS, FACTORIAL, INVNORM and PERMUTATIONS have been added to the list of statistical built-in functions. New stochastic distributions include BETA, BINOMIAL, GEOMETRIC, GAMMA, LOGISTIC,
PARETO, TRIANGULAR, and WEIBULL. To learn more, see Statistical builtins.
Rich text documentation
Source information and other details about model entities can be documented in rich text/HTML format, using options available in the new Documentation panel.
Improved conveyor leakage
Conveyors now support multiple leakage flows. Use additional leak zone options to simplify main chain structures that contain cohorts with varying leakage fractions.
Expanded Find functionality
Use the new Find palette to locate model entities using string search, hierarchical views, and filtering capabilities. Drag and drop entities from the Find palette directly
into entity equations and input/output devices.
New graphical function options
Edit the input values (X-axis) of graphical functions to align with your data. Use the new continuous extrapolation option to linearly extrapolate values that are beyond the graphed curve.
Industry standard XMILE format
Model files support the new industry standard (XMILE) for common interchange of system dynamics models. Use any text or XML editor to search, edit, or document your model.
More powerful modeling engine (STEAM)
The new STEAM engine does not place limits on the number of entities, data points, and/or time steps in your models. This new more powerful and flexible engine will provide a solid foundation for
future development and expanded functionality of Stella.
Cycle Time lets you time stamp and track material as it flows though the model in order to precisely compute how long different tasks and activities are taking.
Delay Converters lets you mark a Converter as changing over time in response to changes in its input as happens with SMTH1, SMTH3, DELAY, DELAY3 and related Builtins. A Delay Converter shows
a box inside the regular Converter circle indicating it has some of the properties of a Stock. Because it has properties of a stock it is possible for Delay Converters to be involved in
feedback loops in which no explicit Stock exists.
Units are more flexible and comprehensive and provide better feedback on issues in dimensional consistency. It is now possible to define multiple aliases for a unit of measure so that you have
more flexibility in expressing compound units.
Sensitivity now allows for a broad range of distributions in specifying input changes.
Module files are now stored in a folder prefixed with the model name so that you can save a separate copy of a model using modules in file without changing the original model.
Find dialog has been updated to provide much better control for searches including finding remaining Building Block errors.
Random Number Generator
New Random Number Generator provides more robust streams of values for the different random number Builtins. The new generator is appropriate for use with high replication Monte-Carlo.
New Builtins have been added, primarily to support Cycle Time (CTFLOW, CTMEAN, CTMIN, CTSTDDEV, CYCLETIME, THROUGHPUT) but also UNIFORM for random number generation and GAMMALN for statistical computations.
Arrayed Equation Editor
Arrayed Equation Editor for non Apply-to-All arrays makes it easier to work with arrayed variables that have multiple equations. You can pop it up from the Equation tab of the Properties panel
and select multiple element entries to edit together. This makes it much easier to work with arrays where many of the equations are the same.
Enter Explore mode by running the model from the Run toolbar or menu, or select Explore from the View toolbar. In this mode, graphs appear on all objects for which results are available.
To view larger graphs, including full axis labeling, open the Results panel and select an object containing a graph. This allows you to easily walk through a model with the mouse looking
at results. Open the Results panel from the Model menu or right-clicking an object and choose View Results.
Enter Edit mode by double-clicking a model element while in Explore mode. All appropriate tabs appear for the selected object.
The validity mechanism evaluates equations and units for validity and dimensional consistency. In Map view, any unfinished or invalid building blocks contain a small caution sign.
The Results panel shows comparative graphs on-the-fly. You can still define and place Graphs and Tables in the model with these added capabilities to graph any selected variables from selected runs,
include comparative and non-comparative results in a single graph or table, use the Properties panel to control scaling, layout and appearance and Ctrl-Drag (Cmd on Mac) building blocks onto output
devices to populate Graphs and Tables. You can even use this method to populate equations, summing converters, and any input variable.
Comparitive Graphs and Tables
Comparative tables and graphs now work in concert with the Data Manager. Any runs held by the data manager are displayed in Comparative graphs and tables as soon as you specify the variable.
Thus you do not need to run the model again to see the results when you change a variable. If you have specified that 5 runs be saved in the Data Manager, the oldest run falls off of
Comparatives when you make a sixth run. When doing a Sensitivity run, Comparative graphs and tables show the results for all of the Sensitivity runs, but once you make another run, they revert
to showing the runs stored by the data manager (which may be a smaller number of runs). You can now lock individual runs in graphs and tables. This can be done on the Property panel for
the graph or en-masse for Comparatives by right clicking and accepting the list of Displayed Runs other then Next Run.