CompoundRenewalProcess[rdist,jdist]
represents a compound renewal process with renewal-time distribution rdist and jump size distribution jdist.
CompoundRenewalProcess
CompoundRenewalProcess[rdist,jdist]
represents a compound renewal process with renewal-time distribution rdist and jump size distribution jdist.
Details
- CompoundRenewalProcess is also known as a renewal-reward process or cumulative renewal process.
- CompoundRenewalProcess is a continuous-time process with continuous rdist, a discrete-time process for a discrete rdist, a continuous-state process with continuous jdist, and a discrete-state process with discrete jdist.
- The distribution rdist can be any univariate distribution with non-negative domain. The distribution jdist can be any univariate distribution.
- The state at time
is given by
, where the
are independent and identically distributed random variables following jdist and
follows RenewalProcess[rdist]. - CompoundRenewalProcess can be used with such functions as Mean, Variance, and RandomFunction.
Examples
open all close allBasic Examples (1)
Simulate a compound renewal process with gamma renewal times and exponential jumps:
𝒫 = CompoundRenewalProcess[GammaDistribution[.3, 1.7], ExponentialDistribution[0.3]];data = RandomFunction[𝒫, {50}]ListStepPlot[data, Filling -> Axis]Scope (3)
Simulate a compound renewal process with discrete jumps:
𝒫 = CompoundRenewalProcess[GammaDistribution[2, .7], GeometricDistribution[.4]];data = RandomFunction[𝒫, {30}, 4]ListStepPlot[data, Filling -> Axis]Simulate a compound renewal process with continuous jumps:
𝒫 = CompoundRenewalProcess[GammaDistribution[2, .3], NormalDistribution[0, 2]];data = RandomFunction[𝒫, {30}, 4]ListStepPlot[data, Filling -> Axis]Process parameters estimation:
sample = RandomFunction[CompoundRenewalProcess[BorelTannerDistribution[.3, 4], GammaDistribution[2, 5]], {1, 10 ^ 3}];Estimate the distribution parameters from sample data:
EstimatedProcess[sample, CompoundRenewalProcess[BorelTannerDistribution[p, n], GammaDistribution[a, b]]]Applications (2)
The hourly arrival of shoppers at a newly renovated store follows an Erlang distribution with shape parameter 2 and rate parameter 30. The store promotes this event by giving every customer a gift. The gift has a value that follows a WeibullDistribution with shape parameter 14 and scale parameter 3. Simulate the cost of the gift process during the 12-hour period for which the store is open that day and find the expected total cost to the store:
giftProcess = CompoundRenewalProcess[ErlangDistribution[2, 30], WeibullDistribution[14, 3]];Simulate the process for 12 hours:
data = RandomFunction[giftProcess, {12}, 3];ListStepPlot[data]Expected total cost of the gifts given on the inaugural day:
Mean[N@giftProcess[12]]Simulate the distribution of the cost:
data1 = RandomVariate[giftProcess[12], 10 ^ 3];Empirical probability density function:
Histogram[data1, 50, "PDF"]Empirical probability that the store spends between $450 and $600 on the gifts:
Probability[450 < p < 600, pdata1]//NDefine a random walk process with steps following NormalDistribution:
proc = CompoundRenewalProcess[PascalDistribution[1, 1], NormalDistribution[.2, 1.3]];sample = RandomFunction[proc, {100}]ListLinePlot[sample]Mean[proc[t]]Properties & Relations (3)
CompoundRenewalProcess is a jump process:
proc = CompoundRenewalProcess[BorelTannerDistribution[.1, 2], NormalDistribution[]];path = RandomFunction[proc, {40}];
f = path["PathFunction"];
jumps = path["Times"];Plot[f[t], {t, 0, 40}, Exclusions -> jumps, ExclusionsStyle -> Red]Compound renewal process is not weakly stationary:
WeakStationarity[CompoundRenewalProcess[BorelTannerDistribution[.3, 4], PascalDistribution[3, .4]]]BinomialProcess is a special case of a compound renewal process:
proc = CompoundRenewalProcess[PascalDistribution[1, p], BernoulliDistribution[1]];proc[t]//MeanMean[BinomialProcess[p][t]]Create empirical covariance functions:
sample1 = RandomFunction[proc /. p -> .3, {30}, 10 ^ 3];cov1[s_, t_] := Covariance[sample1["SliceData", s], sample1["SliceData", t]]sample2 = RandomFunction[BinomialProcess[.3], {0, 30}, 10 ^ 3];cov2[s_, t_] := Covariance[sample2["SliceData", s], sample2["SliceData", t]]Compare the covariance functions:
DiscretePlot3D[#[s, t], {s, 1, 15}, {t, 1, 15}, ExtentSize -> 1 / 2, ColorFunction -> "Rainbow", PlotRange -> {0, 4}]& /@ {cov1, cov2}Related Guides
History
Text
Wolfram Research (2012), CompoundRenewalProcess, Wolfram Language function, https://reference.wolfram.com/language/ref/CompoundRenewalProcess.html.
CMS
Wolfram Language. 2012. "CompoundRenewalProcess." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/CompoundRenewalProcess.html.
APA
Wolfram Language. (2012). CompoundRenewalProcess. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/CompoundRenewalProcess.html
BibTeX
@misc{reference.wolfram_2026_compoundrenewalprocess, author="Wolfram Research", title="{CompoundRenewalProcess}", year="2012", howpublished="\url{https://reference.wolfram.com/language/ref/CompoundRenewalProcess.html}", note=[Accessed: 13-June-2026]}
BibLaTeX
@online{reference.wolfram_2026_compoundrenewalprocess, organization={Wolfram Research}, title={CompoundRenewalProcess}, year={2012}, url={https://reference.wolfram.com/language/ref/CompoundRenewalProcess.html}, note=[Accessed: 13-June-2026]}