Maintenance Costs
In order to determine when to schedule maintenance actions we need to consider costs for the maintenance. Once we can determine what the total cost of maintenance actions are at various possible maintenance intervals, we can minimize the cost to find the interval to actually schedule.
Costs involved can be averaged over the entire population of pumps in order to determine what the cost of an individual repair is. Costs to consider include: cost of the repair or replacement of a pump; cost of lost revenue during the time it takes to repair a pump; and, the cost of not utilizing the full available lifetime of a pump by repairing or replacing it prior to it failing.
It may be simpler to understand the cost components by analogy. The predictions that we are making are similar to scheduling when to replace tires. The mileage on any given tire is specific to that tire – tires are replaced as necessary and not as a group; this is similar to the age at which we will be performing maintenance on the pumps. If we wait until they fail, that corresponds to not replacing a tire until it goes flat. Clearly not a desireable event. If we schedule a tire to be replaced at a particular mileage, that corresponds to performing scheduled maintenance at a certain pump age. If we do that we have the cost of the replacement tire and labor for doing so. We also have any lost revenue from use of the tire while we wait for the tire to be replaced or repaired. This corresponds to the lost revenue while a pump is not working. Finally we have the cost of replacing a tire prior to it going flat; corresponding to the time we do not use the pump when it would not have failed. For the tire this is represented by the miles not driven by the tire, and for the pumps it is the time between when a repair of replacement was performed and when the pump would have failed.
For all of the costs, there are some assumptions that we can make. These assumptions bound the costs involved and provide a structure for determining how those costs vary with the scheduled maintenance interval. These include:
- \(C_{\mathrm{pump}} \, = \, \$2,000.00 \,\) – cost of a new pump (replacement cost)
If a maintenance action requires a pump to be replaced, this is the maximum cost for the maintenance action.
- \(C_{\mathrm{repair}} \, = \, 60\% \, C_{\mathrm{pump}} \, = \, \$1,200.00\) – average non-replacement maintenance cost
This is the aggregate average over the entire pump population for the cost of maintenance that does not require the pump to be replaced. This proportion holds for both scheduled and unscheduled maintenance actions.
- \(p_{\mathrm{replace}} \, = \, 20\%\) – proportion of maintenance actions that require the pump to be replaced
This is the proportion of all repairs that require the entire pump to be replaced.
- \(p_{\mathrm{discount}} \, = \, 80\%\) – scheduled maintenance cost as a proportion of unscheduled maintenance costs
This is a reduction in maintenance costs due to the ability to leverage supplier buying power by bulk and scheduled purchases as well as the ability to schedule labor costs rather than paying a premium for unscheduled, emergency, labor.
- \(mttr_{\mathrm{unscheduled}} \, = \, 7 \, \mathrm{days}\) – mean time to repair (MTTR) for unscheduled maintenance
This is the amount of time from when a pump actually fails to when that pump is returned to operation. This includes detection time, the time to schedule an emergency repair, and the actual time to repair.
- \(mttr_{\mathrm{scheduled}} \, = \, 2 \, \mathrm{days}\) – mean time to repair (MTTR) for scheduled maintenance
This is the amount of time from when a scheduled maintenace action starts to when that maintenance action is complete and the pump being maintained is returned to operation.
Repair costs
The cost of a repair for any pump will include the parts and labor for the repair. If the repair is done on a scheduled basis, then the cost should be adjusted to account for the shorter interval (on average) requiring more maintenance (on average) than would be incurred for repairs only performed on pumps which had failed.
Parts and labor costs
An unscheduled maintenance action cost will be the cost of a new pump times the number of new pumps needed plus the cost of repair times the number of pumps repaired:
\[\begin{aligned} (10)\quad & C_{\mathrm{unscheduled}} = p_{\mathrm{replace}} \, C_{\mathrm{pump}} \, + \, ( 1 - p_{\mathrm{replace}} ) \, C_{\mathrm{repair}} & \quad\text{Cost of unscheduled maintenance action} \\ & = 0.2 \, \times \, $2,000.00 \, + 0.8 \, \times \, $1,200.00 & \\ & = $1,360.00 & \\ \end{aligned}\]
Scheduled maintenance costs are similar to the unscheduled costs, but have a lower cost for parts and labor:
\[\begin{aligned} (11)\quad & C_{\mathrm{scheduled}} = p_{\mathrm{discount}} \, C_{\mathrm{unscheduled}} & \quad\text{Cost of scheduled maintenance action} \\ & = 0.8 \, \times \, $1,360.00 & \\ & = $1,088.00 & \\ \end{aligned}\]
With these two repair costs available, the repair cost as a function of the quantile of failed pumps can be derived, and from there the repair cost as a function of the maintenance interval.
\[\begin{aligned} (12)\quad & C_{\mathrm{maintenance}} = q \, C_{\mathrm{unscheduled}} \, + \, ( 1 - q ) \, C_{\mathrm{scheduled}} & \quad\text{Cost of maintenance action} \\ & \, = F(t) \, C_{\mathrm{unscheduled}} \, + \, S(t) \, C_{\mathrm{scheduled}} & \\ & \, = C_{\mathrm{unscheduled}} \, \left( p_{\mathrm{discount}} \, + ( 1 - p_{\mathrm{discount}} ) \, F(t) \right) & \\ & \, = \$1,360.00 \, \times \, \big( 0.8 \, + 0.2 \, \times \, F(t) \big) \, = \, \$272.00 \, \times \, F(t) \, + \, \$1,088.00 & \\ \end{aligned}\]
This cost as a function of the maintenance interval for the theoretical model as well as the bounds of estimated model parameters is shown in the chart below:
Adjustment due to shorter intervals
Since we are proposing to perform maintenance actions – and incur maintenance costs – prior to pumps actually failing, we need to account for the loss of use of the un-failed portion of the pumps lifetime. For example if we simply repaired each pump each week, we would expect to not see any failures, but we would be paying for 147 weeks (34 months), on average, of repairs where we would have payed only once for the repair if we waited for it to fail.
Remembering the tire analogy, we can think of this as the per-mile cost of the tire times the number of miles not driven. For the pumps, this is the per-month cost of the maintenance times the amount of time that the pump is not used. The amount of time the pump is not used can be estimated by the MTTF value. The per-month cost for the pump is simply the cost of a maintenace action, which is identified in equation (12) as \(C_{\mathrm{maintenance}}\) divided by the interval at which this cost is incurred. We can either compare the per-month costs for all maintenance actions or use some other common time frame. Since companies typically account for costs anually or quarterly we can use either of these time frames as a reference. For here we will use annual costs, so we can simply multiply the monthly cost (maintenance costs divided by the age in months at which the maintenance is performec) by 12 (months in a year).
\[\begin{aligned} (13)\quad & C_{\mathrm{adjusted}} = & 12 \, \times \, \left( \frac{C_\mathrm{maintenance}(t_{\mathrm{interval}})}{t_{\mathrm{interval}}} \right) & \quad\text{Annualized cost of early repair} \\ \end{aligned}\]
The chart below illustrates this cost and shows that this is the element of cost that penalizes early maintenance with a very high cost for short intervals.
Lost Revenue
The time when a pump is out of service – either for a scheduled maintenance action or for an emergency repair after failure – represents the loss of revenue from that pump. This is considered a cost and must be accounted for when determining the cost of scheduling maintenance for pumps.
In the assumptions, we can see that scheduled outages are much smaller (2 days) than outages due to failures (7 days). This is due to the additional time to detect the failure and schedule the repair. The actual repair time will be the same for both. The revenue lost during an outage is:
\[\begin{aligned} (14)\quad & C_{\mathrm{repair time}}(t) = \frac{\mathrm{Revenue}}{n_{\mathrm{total}}} \, \times \, t & \quad\text{Lost revenue for a repair} \\ & = \, \$782.78 \, \times \, t & \text{[per pump per day]} \\ \end{aligned}\]
The cost of lost revenue for repairing or maintaining a pump depends on the number of repairs after failures and the number of maintenance actions prior to failures. This proportion is the quantile that we have used before.
\[\begin{aligned} (15)\quad & C_{\mathrm{lost revenue}} & = q \, C_{\mathrm{repair time}} \left( mttr_{\mathrm{unscheduled}} \right) & \quad\text{Cost due to lost revenue} \\ & & + \left( 1 - q \right) \, C_{\mathrm{repair time}} \left( mttr_{\mathrm{scheduled}} \right) & \\ & & = \$782.78 \, \times \big( 2 \, {\mathrm{days}} \, + \, q \, \left( 5 \, {\mathrm{days}} \right) \big) & \\ \end{aligned}\]
And now we can use the cumulative distribution to translate the formula from the quantiles to the maintenance interval. Since we want to be able to combine this cost with the maintenance cost calculated above, we go ahead and annualize the cost here as well.
\[\begin{aligned} (16)\quad & C_{\mathrm{lost revenue}} & = \frac{12}{t} \, \$782.78 \, \times \big( 2 \, {\mathrm{days}} \, + \, 5 \, {\mathrm{days}} \, \times \, F(t) \big) & \quad\text{Cost due to lost revenue} \\ \end{aligned}\]
Total Maintenance Cost
Once we have determined what the annualized cost is to perform the maintenance and the cost for not having the pumps available during maintenance, we can simply combine those costs to determine what the annual cost per pump is. This can be compared with the cost of not performing scheduled maintenance in order to determine what the benefit is from scheduling the maintenance. The total cost is the sum of the individual costs:
\[\begin{aligned} (17)\quad & C_{\mathrm{total}} \, = \, & C_{\mathrm{adjusted}} \, + \, C_{\mathrm{lost revenue}} & \quad\text{Total cost per pump} \\ \end{aligned}\]
We can determine the maintenance cost that are incurred in the absence of any scheduled repairs by simply setting the maintenance interval to MTTF and the percentage of failed pumps to 100% in the above formulas. The degenerate formulas for no scheduled maintenance are:
\[\begin{aligned} (13a)\quad & C_{\mathrm{adjusted}} \, = \, \$1,360.00 \, \times \, \left( \frac{12}{\mathrm{MTTF}} \right) \, = \, \$480.00 & \quad\text{Annualized cost of repair} \\ \end{aligned}\]
\[\begin{aligned} (14a)\quad & C_{\mathrm{lost revenue}} \, = \, \$782.78 \, \times \, 7 \, = \, \$5,479.46 & \quad\text{Per pump per repair} \\ & \$5,479.46 \, \times \, \left( \frac{12}{\mathrm{MTTF}} \right) \, = \, \$1,933.93 & \quad\text{Annualized} \\ \end{aligned}\]
Resulting in a total cost prior to scheduling maintenance of:
\[\begin{aligned} (18)\quad & C_{\mathrm{total}} \, = & \, \$480.00 \, + \, \$1,933.93 \, = \, \$2,413.03 & \quad\text{Annual cost per pump} \\ & C_{\mathrm{entire}} \, = & \, n_{\mathrm{total}} \, \times \, \$2,413.03 \, = \$16,897,510.00 & \quad\text{Total annualized revenue for repairs} \\ \end{aligned}\]
Now that we have a cost for repairs where we do not schedule maintenance, we can determine the cost when we do and find the optimum maintenance age for the pumps as well as the total annualized cost of repairs for comparison with the non-scheduled option.
In the plot below, we see the total cost curve for the nominal case and for the extreme conditions of the estimated model parameters. The minimum cost has been identified for each of the curves as well.
The annualized cost per pump per year for the nominal case is $1360.55. The maintenance interval at the minimum cost (prescribed repair age) is 25.8 months. Annualized and summed over all of the pumps, the cost becomes:
\[\begin{aligned} (19)\quad & C_{\mathrm{total}} \, = & \, \$1,360.55 & \quad\text{Annual cost per pump} \\ & C_{\mathrm{entire}} \, = & \, n_{\mathrm{total}} \, \times \, \$1,360.55 \, = \$9,523,850.00 & \quad\text{Total annualized revenue for repairs} \\ \end{aligned}\]