Discord
@hash/hello-process-models
Simulation
2
1
Public

Hello Process Models

This simulation contains simple examples that demonstrate how to use most of the Process model behaviors.

This simulation contains simple examples of how process models can be structured in HASH. Four different examples are contained on the four diffferent agents defined in init_process_model.js, using the Process Modeling Library.

You can find more information about building process models in the HASH docs.


There are four different process models generated in this simulation. Each is contained on an agent that is created in the init_process_model.js behavior. Each process model is described below:

Single Delay Process

Single delay process flowchart

This process model creates agents in the Source Block, causes them to wait in the Delay block, and then disposes of them in the Sink block. The process_parameters allow you to specify the definition of the agent, and set the delay time.

The corresponding plot for this process model counts the number of agents which have gone through the system.

Resource Process A

Resource process A flowchart

This process model demonstrates resource usage, when agents can't continue through the model unless a certain resource in the system is available. The Seize block reserves the resource that is specified in process_parameters, and the Release block returns in to the system.

The corresponding plots for this model counts the number of agents which have gone through the system, and the number of available resources at any given time.

Resource Process B

Resource process B flowchart

This process model behaves exactly like Resource Process A, but we've replaced the Seize-Delay-Release sequence with a single Service block instead. These are equivalent, and comparing the plots of this process will allow you to confirm this.

Two Path Process

Two path process flowchart

This process model demonstrates how to create two branching paths. Using the Select Output block, you can specify a conditional check, based on a random number or a field on the agent. This is specified in the process_parameters as is the false_block where agents are redirected to if they fail the check.

The plot for this process shows the number of agents going along each of the two paths.