There is a difference between knowing the path and walking the path.-- Morpheus
Nextmethod makes a choice about whether a state transition can occur (e.g. does the driver have capacity?) and calls a method which generates a new state.
Valuemethod when we want to maximize or minimize some objective. The
Boundsmethod is optional.
Boundsmethods from our templates and see how that changes their runtime. Pay special attention to the
statisticssection of the JSON output. This shows the number of states explored and deferred for later exploration.
UnassignedPenaltiesas a slice of cost values (one per location).
UnassignedPenaltiesare optional and should only be added when the default behavior of enforced assignment is not desired.
defaultssection of an input schema) or for specific locations (as detailed above). Unassigned penalties set for specific locations will override the default value (if specified) for those locations in this case.
DASH_SIMULATOR_LIMITS_DURATIONenvironment variable or the
Runreturns a boolean true value, then Dash schedules it to run again in the simulation.
Runand in response to events.
$RANDOMfunction which produces a signed 16-bit integer between
32767. We can use it to introduce some randomness into a Dash simulation as follows:
math/randpackage. The random seed will be recorded in the
optionssection of Dash's output.
Subscribemethods provided by Dash's event ledger work quite well. However, when simulations produce many events or measures, they can become too verbose.
SubscribeLevelfor calls to
dash/sim/logpackage provides the following levels:
Info) means you receive every message that is at least as important as that (
Subscribeledger methods use level
customer.gofile of the queue example, we can change the
Runmethod to use: