({{, (RefLink[CompoundRenewalProcess, paclet:ref/CompoundRenewalProcess])[rdist,jdist] 
represents a compound renewal process with renewal-time distribution rdist and jump size distribution jdist.}})

OpenersNotesSection(Spacer1)Details

(RefLink[CompoundRenewalProcess, paclet:ref/CompoundRenewalProcess]) is also known as a renewal-reward process or cumulative renewal process.

(RefLink[CompoundRenewalProcess, paclet:ref/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 t is given by (∑_(i=1)^(n(t)))(Subscript[x, i]), where the (Subscript[x, i]) are independent and identically distributed random variables following jdist and n follows (RefLink[RenewalProcess, paclet:ref/RenewalProcess])[rdist].

(RefLink[CompoundRenewalProcess, paclet:ref/CompoundRenewalProcess]) can be used with such functions as (RefLink[Mean, paclet:ref/Mean]), (RefLink[Variance, paclet:ref/Variance]), and (RefLink[RandomFunction, paclet:ref/RandomFunction]).

OpenersPrimaryExamplesSection(Spacer1)Examples  (9)

OpenersExampleSection0(Spacer1)Basic 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]

OpenersExampleSection1(Spacer1)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]]]

OpenersExampleSection3(Spacer1)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 (RefLink[WeibullDistribution, paclet:ref/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[giftProcess[12]]//N

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,p\[Distributed]data1]//N

Define a random walk process with steps following (RefLink[NormalDistribution, paclet:ref/NormalDistribution]):

proc=CompoundRenewalProcess[PascalDistribution[1,1],NormalDistribution[.2,1.3]];

Simulate:

sample=RandomFunction[proc,{100}]

ListLinePlot[sample]

Mean function:

Mean[proc[t]]

OpenersExampleSection4(Spacer1)Properties & Relations  (3)

(RefLink[CompoundRenewalProcess, paclet:ref/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]]]

(RefLink[BinomialProcess, paclet:ref/BinomialProcess]) is a special case of a compound renewal process:

proc=CompoundRenewalProcess[PascalDistribution[1,p],BernoulliDistribution[1]];

The mean functions agree:

proc[t]//Mean

Mean[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}

({{DocumentationFooterIconsRelatedFunction.png, ({{See Also}, {(RefLink[CompoundPoissonProcess, paclet:ref/CompoundPoissonProcess])  ▪  (RefLink[RenewalProcess, paclet:ref/RenewalProcess])  ▪  (RefLink[TransformedDistribution, paclet:ref/TransformedDistribution])}})}})

({{DocumentationFooterIconsRelatedGuide.png, ({{Related Guides}, {▪(RefLinkPlain[Actuarial Computation, paclet:guide/ActuarialComputation])}, {▪(RefLinkPlain[Derived Random Processes, paclet:guide/DerivedRandomProcesses])}, {▪(RefLinkPlain[Parametric Random Processes, paclet:guide/ParametricRandomProcesses])}})}})