ArticlePDF Available

PRE-EMPTIVE OR CORRECTIVE MAINTENANCE -AN OPTIMAL DECISION MODEL

Authors:

Abstract and Figures

Nowadays we depend on equipment that may fail at any moment. But some failures may cause such big damage, e.g. the fall of an aircraft, that it is essential a pre-emptive maintenance strategy. In my work, I present an inter-temporal optimisation model that permits the comparison between the net benefit of a pre-emptive maintenance strategy and a corrective maintenance strategy "wait and see".
Content may be subject to copyright.
VI Congreso Galego de Estatística e Investigación de Operacións
Vigo 5-7 de Novembro de 2003
PRE-EMPTIVE OR CORRECTIVE MAINTENANCE - AN OPTIMAL DECISION
MODEL
Pedro Cosme da Costa Vieira1
1Faculdade de Economia do Porto
Universidade do Porto - Portugal
ABSTRACT
Nowadays we depend on equipment that may fail at any moment. But some failures
may cause such big damage, e.g. the fall of an aircraft, that it is essential a pre-
emptive maintenance strategy. In my work, I present an inter-temporal optimisation
model that permits the comparison between the net benefit of a pre-emptive
maintenance strategy and a corrective maintenance strategy "wait and see".
Key Words: Dynamic programming; Optimal decision; Pre-emptive Maintenance;
AMS Classification: 60G10; 60G50.
1. INTRODUCTION
It is known that the equipment that we rely on may fail at any moment, (e.g. see Sinha, 1986).
Being that some failures cause only a small damage so that it is acceptable to “wait and see”,
another failures cause such a big damage, e.g. the fall of an aircraft, that it is essential a pre-
emptive maintenance strategy to reduce the probability of failure to near zero.
In this work I am concerned with the ‘middle term’ case that failure is not catastrophic but
causes a considerable damage so that it is optimal that the maintenance strategy include both a pre-
emptive maintenance that reduces the probability of failure and a corrective maintenance just in
case a failure occurs.
2. FORMALISATION OF THE DYNAMIC OPTIMISATION MODEL
When dealing with complex problems, the first step one should take concerning the
rationalisation of the decision process is to transform the physical equipment in an operative
mathematical model. In this way, it becomes possible to quantify the effect of each action taken.
As complex equipment results from the physical assembly of N simple equipment, one builds
representative models of the complex equipment algebraically assembling the mathematical
models of the simple equipment that compose it.
The science of building representative models of world’s complex phenomena and see it as a
system is known as Cybernetics after Wiener (1948).
Assuming, without loss of generality, that there are N equipment, that a fail halts the system
and that the fail probability, pf, in present time period of a equipment working properly, f = 0, is a
function of the age of the equipment, ta, and the time since maintenance, tm, then the physical
equipment can be model by the vector function Pf of dimension N.
Probability of fail of equipment i = Pf(ta, tm | f = 0)[i] (1)
The variables ta, tm and f are named state variables because they are sufficient to characterise
the state of the equipment with the detail that I require. The variable ta increases till the
substitution of the equipment, tm increases till the maintenance occurs and the state ‘out of
service’, f = 1, is an absorbing state being necessary repair or substitute the equipment so that it
becomes ‘ready for service’, f = 0.
Being the complex equipment, or system, an assembly of N simple equipment, or systems, its
layout can be model by a matrix of connections, L, and its state can be characterised by the vectors
of state Ta = [ta1, ta2,…, taN], Tm = [tm1, tm2,…, tmN] and F = [f1, f2,…, fN] for equipment 1, 2,…,
N.
The maintenance strategy, M, is a matrix of order N×2 because it resumes the costs of 2
possible interventions (a maintenance intervention or a substitution, without loss of generality) in
each of the N equipment. The maintenance strategy is function of the state vectors, Ta, Tm e F.
Maintenance strategy = MT(Ta, Tm, F) (2)
Each maintenance intervention has associated a cost that may be summarised in a matrix of
order 2×N, assuming only 2 possible interventions with different cost for each equipment.
Maintenance cost per intervention = C (3)
Given the system layout and its state, we quantify the system present period pay-off as U:
System pay-off in T = U(Ta, Tm, F) (4)
Actions taken in the present period will also have impact in the future performance of the
system. To include the future in the decision model, I use a stochastic recursive model named
Dynamic Programming after Bellman (1957). Naming as V the system’s discounted pay-off that
result if it is used in all future periods the optimal maintenance strategy, and if the value of state
variable in next period results from the first order markov process , the optimal model becomes:
MT: V(Ta, Tm, F) = max{U(Ta, Tm, F) – sum(MT×C) +
β
E[V(TaT+1, TmT+1, FT+1)]} (5)
s.a. (TaT+1, TmT+1, FT+1) = (TaT, TmT, FT, MT, Pf)
3. DETAIL OF THE DECISION MODEL
So that it becomes clear, now I detail what may happen to one equipment during the present
period, being its initial state ta, tm and f that results from end of period T – 1.
If the equipment is not working properly (f = 1) the equipment may be substituted (S = yes), be
correctively maintained (man = yes) or taken no action. Otherwise (f = 0) the equipment may be
pre-emptively substituted (S = yes) or be pre-emptively maintained (man = yes). In the end of the
period the equipment may fail (occurs failure, o f = yes) or not.
As it can be seen in the next picture, it results one of 7 possible situations:
1 - taT+1= 1, tmT+1= 1, fT+1 = 1, MT = [0, 1]
2 - taT+1= 1, tmT+1= 1, fT+1 = 0, MT = [0, 1]
3 - taT+1= ta + 1, tmT+1= tm + 1, fT+1 = 1, MT = [0, 0]
4 - taT+1= ta + 1, tmT+1= 1, fT+1 = 1, MT = [1, 0]
5 - taT+1= ta + 1, tmT+1= 1, fT+1 = 0, MT = [1, 0]
6 - taT+1= ta + 1, tmT+1= 1, fT+1 = 1, MT = [0, 0]
7 - taT+1= ta + 1, tmT+1= tm + 1, fT+1 = 0, MT = [0, 0]
Fig. 1 - State transition from T to T+1 period for one equipment
4. APPLICATION TO AN EXAMPLE
Assuming that the time is measured in months, the next period pay-off discount factor is
β
=
0.9 and that the probability, pf, of failing of the equipment in the present month, pf(ta, tm | f=0) is
equal to .01 + (ta/6 + tm)/100 if less than .99 and .99 otherwise.
The system is composed of only one equipment and the system halts if the equipment fail.
The cost of maintenance is C[1] = 10 and the cost of substitution is C[2] = 100.
The present period system pay-off U(Ta, Tm, F) in present month is 0 if F is 1 and otherwise it
is 100.
Resolving the model at (5) by backward induction, from the future downwards the present, it
results the maintenance optimal strategy. As this model don’t have algebraic solution, I implement
it using MS Visual Basic which code is in appendix (e.g. Halvorson and Moss 1998).
Although the complexity of the model, results from it a simple maintenance program. If the
equipment is working properly it’s optimal a pre-emptive maintenance each 4 periods and a pre-
emptive substitution of the equipment when it ages 68 periods. If the equipment is not working
properly it’s optimal his maintenance if the equipment age is smaller than 65 periods, being
substituted if older than 65 periods.
The expected discounted payoff of the system if followed the optimal strategy is 936.992
monetary units that is bigger than the expected discounted payoff if it is not done pre-emptive
maintenance that is 921.231 monetary units.
As predicted, the benefit of the optimal pre-emptive maintenance strategy increase with the
damage that the fail of the equipment cause.
5. CONCLUSION
I present in this paper a very complicated dynamic optimal model of pre-emptive maintenance
that must be manipulated by computer methods. But, contra-intuitively, it results from this model a
simple optimal pre-emptive maintenance strategy. For example, the strategy is of the type “do pre-
emptive maintenance every 4 months and substitute the equipment that is older than 6 years”. And
with this “simple” strategy the payoff that results from the system increases, being the benefit of
the pre-emptive strategy bigger if the damage that the fail of the equipment cause is greater.
6. REFERENCES
Bellman, R. (1957). Dynamic Programming. Princeton University Press.
Halvorson, M. and J. Moss (1998). Microsoft Visual Basic 6.0 Professional Step by Step.
Microsoft Press, New York
Sinha, S. K. (1986). Reliability and life testing. Wiley, New York
Wiener, N. (1948). Cybernetics, or control and communication in the animal and the machine.
Cambridge, Massachusetts: The Technology Press. John Wiley & Sons, Inc.
APPENDIX: VB COMPUTER ROUTINES
Const beta = 0.9, N=120
Dim V(N+1, N+1, 1), Va(N, N, 1) 'This period and backward period discounted pay-off
Dim U(1 To 3) 'This period pay-off considering 3 cases: substitute, maintain or do nothing
Function pfail(ta, tm)
Dim aux
aux = 0.01 + (ta / 6 + tm) / 100
If aux > 0.99 Then aux = 0.99
pfail = aux
End Function 'end of pfail
Function Cases(ta, tm, f)
Dim x, max, tal, tml
If f = 0 Then ‘The equipment is working properly
U(1) = 100: U(2) = 100: U(3) = 100
else
U(1) = 0: U(2) = 0: U(3) = 0
Endif
'Substitute the equipment
tal = 0: tml = 0
x = pfail(tal, tml)
U(1) = U(1) + beta * (V(tal, tml, 1) * x + V(tal, tml, 0) * (1 - x)) - 100
'Do not substitute the equipment, do maintenance
tal = ta + 1: tml = 0
x = pfail(tal, tml)
U(2) = U(2) + beta * (V(tal, tml, 1) * x + V(tal, tml, 0) * (1 - x)) -10
'Do nothing, continuing not working properly
tal = ta + 1: tml = tm + 1
if f = 1 then
U(3) = U(3) + beta * V(tal, tml, 1) 'it will continue not working properly
else
x = pfail(tal, tml)
U(3) = U(3) + beta * (V(tal, tml, 1) * x + V(tal, tml, 0) * (1 - x))
endif
'(this routine continues in next page)
'Select the best strategy
max = U(1)
If U(2) > max then max = U(2)
If U(3) > max then max = U(3)
Cases = max 'Returns the best payoff
End Function 'end of Cases
Sub DoItBackwards()
Dim ta, tm, f
'In this routine I compute the 'all periods' pay-off function for 'all' values of ta, tm e f
'I compute the pay-off with the function Cases and save it in Uva
for iterations=1 to 120 'it is sufficient to consider the 'infinite' as 120 periods
For ta = 0 To 120
For tm = 0 To 120
For f = 0 To 1 '1 if it is not working properly
Va(ta, tm, f) = Cases(ta, tm, f = 1)
Next
Next
Next
'I actualise the pay-off function - I omit here the case 121
For ta = 0 To 120
For tm = 0 To 120
For f = 0 To 1
V(ta, tm, f) = Va(ta, tm, f)
Next
Next
Next
Next iterations
End Sub 'end of DoItBackwards
ResearchGate has not been able to resolve any citations for this publication.
Microsoft Visual Basic 6.0 Professional Step by Step Reliability and life testing Cybernetics, or control and communication in the animal and the machine
  • M Halvorson
  • J Moss
  • S K Sinha
Halvorson, M. and J. Moss (1998). Microsoft Visual Basic 6.0 Professional Step by Step. Microsoft Press, New York Sinha, S. K. (1986). Reliability and life testing. Wiley, New York Wiener, N. (1948). Cybernetics, or control and communication in the animal and the machine. Cambridge, Massachusetts: The Technology Press. John Wiley & Sons, Inc. APPENDIX: VB COMPUTER ROUTINES Const beta = 0.9, N=120 Dim V(N+1, N+1, 1), Va(N, N, 1) 'This period and backward period discounted pay-off Dim U(1 To 3) 'This period pay-off considering 3 cases: substitute, maintain or do nothing