NonHomogeneousPoissonAgeReplacementPolicy#
- class relife.policy.NonHomogeneousPoissonAgeReplacementPolicy(nhpp, cr, cp, discounting_rate=0.0, ar=None)[source]#
Age replacement policy for non-Homogeneous Poisson process.
- Parameters:
- nhppnon-homogeneous Poisson process
The underlying non homogeneous poisson process. If the process expects covars, it must be frozen before.
- crfloat or 1darray
The cost of repair.
- cpfloat or 1darray
The cost of failure.
- discounting_ratefloat, default is 0.
The discounting rate value used in the exponential discounting function
- arfloat or 1darray, optional
Ages of preventive replacements, by default None. If not given, one must call
optimizeto setarvalues and access to the rest of the object interface.
- Attributes:
Methods
The asymtotic expected equivalent annual cost.
The asymtotic expected net present value.
The expected equivalent annual cost.
The expected net present value.
Optimize the policy according the costs, the discounting rate and the underlying non-homogeneous Poisson process.
- property ar#
Preventive ages of replacement.
- Returns:
- np.ndarray
- asymptotic_expected_equivalent_annual_cost()[source]#
The asymtotic expected equivalent annual cost.
\[\lim_{t\to\infty} q(t)\]- Parameters:
- total_sumbool, default False
If True, returns the total sum over the first axis of the result. If the policy data encodes several assets, this option allows to return the sum result on the flit rather than calling
np.sumafterwards.
- Returns:
- ndarray
The asymptotic expected values.
- asymptotic_expected_net_present_value(total_sum=False)[source]#
The asymtotic expected net present value.
\[\lim_{t\to\infty} z(t)\]- Parameters:
- total_sumbool, default False
If True, returns the total sum over the first axis of the result. If the policy data encodes several assets, this option allows to return the sum result on the flit rather than calling
np.sumafterwards.
- Returns:
- ndarray
The asymptotic expected values.
- property cp#
Costs of preventive replacement.
- Returns:
- np.ndarray
- property cr#
Cost of minimal repair.
- Returns:
- np.ndarray
- expected_equivalent_annual_cost(tf, nb_steps, total_sum=False)[source]#
The expected equivalent annual cost.
\[q(t) = \dfrac{\delta z(t)}{1 - e^{-\delta t}}\]where :
\(t\) is the time.
\(z(t)\) is the expected net present value at time \(t\).
\(\delta\) is the discounting rate.
- Parameters:
- tffloat
The final time.
- nb_stepsint
The number of steps used to discretized the time.
- total_sumbool, default False
If True, returns the total sum over the first axis of the result. If the policy data encodes several assets, this option allows to return the sum result on the flit rather than calling
np.sumafterwards.
- Returns:
- tuple of two ndarrays
A tuple containing the timeline and the computed values.
- expected_net_present_value(tf, nb_steps, total_sum=False)[source]#
The expected net present value.
\[z(t) = \mathbb{E}(Z_t) = \int_{0}^{\infty}\mathbb{E}(Z_t~|~X_1 = x)dF(x)\]where :
\(t\) is the time
\(X_1 \sim F\) is the random lifetime of the first asset
\(Z_t\) are the random costs at each time \(t\)
\(\delta\) is the discounting rate
It is computed by solving the renewal equation.
- Parameters:
- tffloat
The final time.
- nb_stepsint
The number of steps used to discretized the time.
- total_sumbool, default False
If True, returns the total sum over the first axis of the result. If the policy data encodes several assets, this option allows to return the sum result on the flit rather than calling
np.sumafterwards.
- Returns:
- tuple of two ndarrays
A tuple containing the timeline and the computed values.