March 2021 Release

Chris Spencer
March 2, 2021

The March 2021 Release sees the addition of two major new feature areas in Beta, as well as a new improved Model Versioning Experience. The two new areas of the product released today in Beta are:

  1. The Data Workspace
  2. Rules

The Data Workspace

Building on Feedback from a number of customers, we have been working hard behind the scenes to make it easier to bring data into simulation models. The Data Workspace is now the place to go to bring data into Silico for use in your Simulation Models. While they will continue to work for the time being, datatables are now deprecated and the Data Workspace should be used instead.

On our free and existing single user plans, the Data Workspace provides the ability to bring in data via .csv files. On our Enterprise plans, the Data Workspace provides more advanced tools for connecting to a wide range of data sources. For more information, or to get access to these features, please get in touch with us by submitting a contact form on the website.

The Data Workspace also allows exports of simulation models as .csv files for users on the free plan. Exporting will return simulated data across all simulation elements in a single .csv file.

You can read more about the Data Workspace here.


The addition of configurable rules opens up new functionality in Silico which we expect to serve a number of applications. Rules are part of a broader focus this year towards helping the end user to extract tangible insight from the data that simulation models generate. This is a key pillar of our vision of a world where decisions are powered by foresight obtained from these models.

Rules allows the user to set-up mathematical conditions (predicates) that are set across the model as a whole. In a future release this functionality will also apply to individual simulation elements. In practice these conditions might be things like "Tell me all the times when my simulation diverges from a defined target by X%" or it might be "Tell me when the simulated series drops below some threshold, X".

We've built a new mathematical language around these predicates. Predicates for rules are built on the same formula language used elsewhere in Silico and give you the flexibility and power to design rules arbitrarily, based on conditions of interest to you in the system you have modelled. Here is an example of setting up a condition for a simulated series diverging from a target by+20% or -20%:

You can read more about defining rules in our documentation here.

Rules are specified across the whole model. In the example shown below, there is only 'Actuals' data for a single element - 'Inventory'. As such the rule is, in effect, only evaluated for that element.

Navigating back to the Model Builder, we can in the bottom bar next to the timebar that the simulation is generating a single notifications inside the app. Expanding the notifications panels, we can inspect these and identify where in the time-series the condition is triggered. In this example, the deviation exceeds 20% between Feb 2021 and Nov 2021.

This provides insight to decision makers, for example suggesting that some action needs to be taken today in order to ensure these rules are not triggered in the future.

As with the Data Workspace, this feature is currently in Beta, and as such we welcome any and all feedback on it.


This release also sees the debut of a new project versioning experience. All projects are now versioned. In practice, this means that every time a change to a project is saved, a new version of that project is created, which reflects the state of that project at that point in time. Versions are hierachical information: every version is a child of a parent version.

A version may encompass changes to the model structure and content, or to the project metadata (e.g. name or description), or to any of the Data sets associated to that project, or any of the configured dashboards.

Project versions can be seen in the project version selector in the top-bar of the workspace.

Versions are labelled by the time and date they were created. Hierarchical information is also exposed: a solid line between two versions indicates that the later version is a direct child of the preceding version. On the other hand, a dashed line indicates the later version was instead created as a child of an earlier version in the list.

You can read more about versioning in our documentation here.

What's Next

There's lots more development going on behind the scenes at Silico. We're building the foundations to support some exciting new Data Science language integrations in the near future, deepening our data integrations story, and designing an improved new user experience. We hope to update you on that work soon. In the meantime, we hope you enjoy the new features and welcome any feedback that helps us improve Silico.