When modeling arrivals or failures, it is common to reuse the inter-arrival time distribution as the one used to sample the time to first event.
Except for memoryless processes (e.g., negative exponential), this is not statistically correct and introduces a left-bias where early events occur sooner than they should.
The user command in the attached library generates a statistically valid time-to-first-event distribution from a definition of inter-arrival times.
Problem Being Addressed
- Inter-arrival distributions describe time between events, not time to the first event
- Reusing the same distribution biases early arrivals/failures
- Bias is most visible in:
- Short simulation runs
- Models without warm-up periods
- Models initialized with work-in-progress
What the Command Does
The command generates a sample set for time to first event using inter-arrival data provided as:
- A FlexScript distribution expression (string)
- An array of inter-arrival samples
- An existing Empirical Distribution object
The process:
- Generates a timeline of events using inter-arrival samples
- Selects random observation points along the timeline
- Measures time to the next event
- Stores these values in a new Empirical Distribution object
- Runs the Fit function to suggest a best-fit distribution and parameters
Output
- A new Empirical Distribution representing time to first event
- A fitted distribution expression (name + parameters) suitable for direct use
- Option to sample empirically or via the fitted distribution
Typical Use Cases
- Time to first failure fields
- Arrival processes where warm-up is undesirable
- Short-term forecasting models
- Models requiring statistically defensible early-run behavior
Why Use This Approach
- Avoids bias introduced by reusing inter-arrival distributions
- Produces statistically defensible results
- Reduces reliance on warm-up periods
- Especially beneficial when early statistics matter
How to Use the Command
Loading the attached user library will auto-install the required user commands. The command createTTFeventDist creates an Empirical Distribution that represents the time to first event, derived from an inter-arrival time definition.
Parameters
- P1 (string)
Name of the new Empirical Distribution object to create.
- P2 (overloaded)
Definition of the inter-arrival times. One of:
- A FlexScript distribution expression (string)
- An array of inter-arrival samples
- The name of an existing Empirical Distribution object
- P3 (optional integer)
Number of time-to-first-event samples to generate and store in the new Empirical Distribution.
(Default is suitable for most use cases.)
- P4 (optional integer)
Number of inter-arrival samples used to construct the event timeline.
(Larger values improve stability at the cost of run time.)
Example: Time to First Failure from a Weibull Inter-Arrival Process
Assume failures follow a Weibull inter-arrival distribution, but the model starts at an arbitrary point in time and does not use a warm-up period.
Instead of reusing the Weibull distribution directly for the first failure, generate a statistically correct time-to-first-failure distribution. Open a script window and run this command with the example parameters:
createTTFeventDist(
"FirstFailureDist",
"weibull(0,120, 1.8)",
5000,
100000);
This command:
- Generates a large inter-arrival timeline from 100000 samples of the Weibull distribution
- Samples valid times to the next failure
- Creates an Empirical Distribution named FirstFailureDist
- Fits a theoretical distribution and reports suggested parameters (eg. beta(-0.08, 356.54, 1.20, 4.89))
Using the Result in the Model
You can now use the generated distribution in either of the following ways:
- Use the fitted distribution expression
Copy the suggested distribution name and parameters into a
Time to First Failure or arrival field.
- Reference the Empirical Distribution directly
Sample from the Empirical object where a time-to-first-event value is required, choosing either:
- Fitted distribution sampling, or
- Empirical data sampling
Both approaches ensure the first event is statistically consistent with the defined inter-arrival process.