Product Updates
What's new at HASH?
What's new at HASH?
Private simulations can now be embedded on external websites, and secure tokens can be generated allowing private projects to be shared with users outside of an organization’s HASH namespace.
Group and multiparameter experiments have been added to the experiment creation wizard. Group experiments allow multiple experiments to be executed at once. Multiparameter experiments allow for grid-sweeping of multiple parameter combinations. We’ll be introducing optimization experiments for smarter, more performant multiparameter optimization in one of our next updates.
New features and UX improvements:
Bug fixes:
Since the original release of hCore it’s been possible to play back simulation runs at a fixed speed (sped-up or slowed-down, depending on your preference).
We’ve now introduced the ability to specify steps-per-second play speed ahead of time, so that you can compute and playback at a fixed pace without multiple button-clicks.
This makes it possible to more quickly reset and play simulations at a sensible speed whilst prototyping, and share simulations with others in the manner they’re meant to be seen.
In November we introduced behavior keys to help users take advantage of some of the performance benefits hCloud offers. Since then, we’ve made various usability improvements to help make these easier to employ, most recently adding autosuggest. In this update, we’re making further changes to enable:
Read more about behavior keys in the docs.
Instead of writing out experiment definitions in JSON, users can now create experiments in HASH through a visual user interface. This makes it easy to see what experiment types are natively supported within HASH, and allows for objectives, constraints and parameters to be easily defined.
We’ve made the process for uploading datasets much easier. Users can now upload CSV and JSON files directly into projects from hCore, simply by clicking the “New Dataset” button atop the left-hand project files panel, without needing to create a separate, dedicated data project in hIndex first.
Large-scale HASH simulations can generate a lot of data. Whilst hCloud made running these a breeze, subsequently streaming the results of these runs down from the cloud took a lot of time. We’re now doing two things to reduce time-to-results:
We’re also releasing a third improvement, which we’ll share with you in our next update, which cuts the amount of data transfer required to view experiment results by pre-computing analysis graphs in hCloud, cutting the amount of data transfer required overall.
We’ve been creating and collecting high-quality business process behaviors in a new HASH package. The Process Modeling Library to make it easy to build your own process models: representing systems or other entities which perform sequences of tasks. By chaining together processes like resource depletion, delays, and other blocks representing real-life tasks and events, you can represent processes such as assembly lines, company workflows, and supply chains.
The library is easily extensible with custom behaviors that you can write to accurately model your system. Building process models allows you to answer questions about your system. They can help you improve resource allocation, reduce cycle-time, and identify other optimizations that can be made to your organization or system. This is especially effective when used alongside HASH’s Experiments functionality to explore multiple scenarios and configurations.
We’ve added a section to our docs on Process Modeling with HASH that outlines how best to get started.
We’ve released a pair of new wizards to help you more easily define (1) analysis metrics and (2) plots. It’s now possible to create custom charts and graphs in HASH simply by pointing and clicking, without needing to remember specific JSON syntax or keywords.
Power users can still access the raw JSON by viewing the views/analysis.json
file.
Creating behavior keys can be used to tell hCloud the expected type of data it processes. This speeds up cloud runs, but until recently defining behavior keys was a manual process.
HASH now automatically suggests fields to you based on those you’re using inside of JavaScript behaviors. We’ll be bringing comparable support for Python behaviors in an update next week.
Previously, only data publications in hIndex could contain multiple files. Now when you release a behavior, or other project file, you can bundle others with it — ergo “multi-file releases”. We’ll be demoing some of these bundles shortly as part of a forthcoming process modeling library we’re releasing for HASH.
You can now view all past hCloud experiments (and generated outputs) from the right-hand activity history sidebar of any project in hCore. Previously computed experiment data and analysis can now be quickly reloaded into HASH without needing to re-run simulations again.
Click the blue ‘Share’ button in the upper right-hand corner of any simulation project on core.hash.ai and you’ll see a new tab, “Embed”.
From here you’ll be able to grab code which can then be used to insert HASH simulations inline on your own site, without having to direct people away from your domain. This unlocks easy-embedding of simulations within blog posts, news articles, intranets, analytics dashboards, and any other location from which you might wish to feature a model.
We’re also testing a new “Share by email” feature (which eagle-eyed users will notice has started appearing in various product screenshots, including the preview image above!)
Happy New Year 🎉
You can now inspect individual runs within experiments, as well as view top-level “experiment level analysis”. Historical runs can now also be cleared from view (freeing up space in your browser’s memory).
When you’re building software, even if something makes total perfect sense to have, if it isn’t truly game changing or otherwise deal-breaking it doesn’t always get built. At least not straight away.
In the case of HASH, for a while that meant we didn’t have such a thing as folders within hCore projects. But as the amount of logic in the average simulation has grown, the need for better project structure has become increasingly apparent — and it’s about time we introduced folders.
Data now lives in data
, agent behaviors in src
(your source code), and analysis plot definitions in views
. We’ll be adding support for user-created folders and more customizable project structure soon, but for now we hope this helps encourage a standardized, best-practice way of building models in HASH.
You can now append /stable
to the URL path of any hCore simulation to automatically be redirected to the last stable released version of that project. For example:
If you’re direct-linking to hCore simulations from outside of HASH, using this latter link will allow you to ensure that you’re always pointing visitors to your most recent published release, without riskily directing users to potentially broken, work-in-progress /main
builds, or old fixed-in-time releases from which you might since have moved on.
If (like us!) you frequently found yourself sharing /main
links before, we’d strongly recommend cutting releases and switching over to /stable
going forward.
A couple of months ago we introduced “visual globals”, an optional UI-wrapper around globals.json
project files. The goal of this update was to improve the ability of non-technical users to vary simulation parameters during single-runs, to explore their impact more easily. Since then we’ve rolled out a series of improvements that eliminate bugs, and have now rolled out an all-new interface, improving the design and usability of globals. For instance, you can now show inputs as sliders, color pickers, and other UI elements.
Inputs should also now render better at smaller screen sizes, in anticipation of embeddable simulations which we look forward to sharing with you in the coming weeks. (Update: introduced 2021-01-04)