Composable behaviors

All user-authored behaviors, regardless of language, are composable. This means they can be combined in any fashion with any number of others behaviors.

Python and JavaScript behaviors can co-mingle and a single agent can use behaviors programmed in multiple languages by a wide range of people.

All user-authored behaviors can be shared on hIndex. Behaviors published in this way can be mapped to schemas for easy-discovery during the agent creation process, and downloaded by anybody with a HASH account.

Sharing a Behavior

You can share by right-clicking on a behavior you've created in the Simulation Files sidebar and selecting Release Behavior to Index. This will create a fork (copy) of the current project, and convert that fork into a Behavior project.

Publishing a behavior to Index

When you want to edit this behavior and create new releases, you'll need do so in the forked project. You can find it by searching on your Profile page, or by clicking in the banner when you're looking at the shared behavior's file in any simulation.

Navigating to a shared behavior project

Importing a Behavior

You can import a behavior by searching in the Add to Simulation sidebar, clicking on it and choosing Add to Simulation. Note that if you are using someone's published behavior in your simulation, updates will not automatically be applied to it. This ensures that breaking changes are not introduced to your simulation. You can update at any time by removing and re-adding the behavior.

Adding a published behavior to your model

Whether you're exploring auction dynamics, supply chain risk, or simply hoping to make your agent self-destruct, there are a broad range of pre-built behaviors readily accessible on Index, and we'd love you to contribute your own!

We attempt to match all behaviors published in the hIndex to the types of 'Things' that can exhibit them. These 'Things' are types in a schema that in the context of behaviors may represent actions whcih agents might take, or types of agents themselves (e.g. individuals, households, or companies). Schema-mapping behaviors enables other modelers to quickly identify them as relevant to the type of action or agent they're seeking to replicate, and dramatically speeds up the process of simulation creation.