1 Introduction On robust optimization of wind farm maintenance and operation under uncertainty

advertisement
On robust optimization of wind farm maintenance and operation under
uncertainty
ISEN 689 Project report, Fall 2007
Eunshin Byon
1
Introduction
Wind power capacity has been rapidly increasing in the past decade, but the market share of
wind energy still remains a small portion of the entire energy market. The amount of electricity
generated from wind power has tripled in the past five years [1]. Therefore, wind becomes the
second largest source of new power generation in the U.S. after natural gas. However, wind
capacity is still just over 1% of world-wide electricity use [1].
The main factor to increase marketability of wind power is the cost. To this end, researchers
and practitioners put emphasis on reducing operation costs as well as making new turbines
with larger capacity. In this project, I will focus on minimizing operation cost by building an
efficient and effective maintenance policy.
Every maintenance activity involves skilled laborers, time, and heavy-duty equipment.
Thanks to the advent of sensor technology, many turbine manufactures have installed conditionbased monitoring equipment with many sensors within turbines. This monitoring equipment
reduces the need to carry out scheduled, and/or corrective maintenance, both of which are very
costly. These condition monitoring systems generate sensor signals to represent the turbine
states. With the obtained sensor signals, we have to make decisions about which maintenance
actions should be taken. The actions will include normal operation, dispatching crew with
1
necessary equipment, or carrying out intensive care to get more accurate information. However,
no active research on building an optimal, or at least, efficient policy for wind farm maintenance
and operation exits yet.
In order to decide which actions to take, we need to consider several factors. Weather
conditions are one of the most important factors because wind is the primary source of wind
power. The probabilities about the turbine state, which is derived from sensor signals, are
another important input factor. Other factors include turbine age, repair history and so on
[2]. Most of these factors involve uncertainty, under which we have to take proper maintenance
actions.
In this project, I developed the two optimal decision making models considering the aforementioned uncertainties. The model will involve a two-stage decision process in a rolling horizon manner under the framework of large scale stochastic programming. In the first stage, we
have to decide the required resource size (labor, time, equipment, etc) for the current horizon
and prepare the necessary resource for the next horizon. The second stage involves the uncertainty of short-term weather conditions and the turbine states. After more accurate short-term
weather conditions are forecasted and turbine states are realized, optimal maintenance actions
will be decided in the second stage.
To implement the model, I used Benders decomposition algorithm, which has been commonly used in electric power systems for generating unit planning, generation maintenance
scheduling, and so on [3]. Later, the model will be implemented with L-shaped algorithm and
other decomposition methods to improve the computation efficiency.
2
This project will be a pioneering work in this area. Because condition-based monitoring
technique itself is in the infant stage, no significant research has been done on how to utilize
the (sensor) output from the condition-based monitoring system. Therefore, this project will
be good guidelines for ongoing and future research in wind farm operation and maintenance
area.
2
2.1
Background
Wind turbine components
A wind turbine is composed of several components as shown in Figure 1. Among these components, gearbox (0.3 failures/year) and control (0.34 failures/year) are the most frequently
failed components[4]. Thus, in the project, those two components will be used in the illustrative
examples of Section 4.
Figure 1: Condition-based maintenance
2.2
Condition-based maintenance
Statistical reliability-based preventive maintenance is to find the minimum total cost objective(or maximum availability) by establishing fixed statistically “optimal” PM(Preventive
3
Maintenance) intervals at which to replace of overhaul equipment or components, while condition based maintenance approach involves the use of sensor-based monitoring of equipment
condition in order to predict when machine failure will occur[5]. Under condition-based PM,
intervals between PM work are no longer fixed, but are performed only “when needed”.
Even though the degradation of a component is a continuous precess, we can categorize
the condition into several discrete states as shown in Figure 2. In the corrective maintenance
policy, we fix the component when it fails. But we might be able to reduce the maintenance
cost by fixing the component earlier, say, when it is in “alarm” state, before the breakdown.
In this project, I set the policy that once the component is transited to alarmed state, we need
to consider maintenance action.
normal
alert
alarm
failed
Figure 2: Condition-based maintenance
3
Model Formulation
Suppose that the decisions can be made in discrete time. The problem can be modeled in a
rolling horizon fashion. Suppose that maintenance decision is made in the beginning of the
period in the following way.
1. In the first-stage, there is a set of turbines that should be maintained (turbines in “failed”
4
or “alarmed” state). These jobs are known in the beginning of the period. Thus we need
to decide the maintenance actions for these first-stage jobs.
Also, we need to prepare the necessary resources (man power, equipment, parts) for the
next period. For the next period, we know the probability that a set of jobs occur at
the next period. Based on this information, labor hours (and other resources) must be
prepared for anticipated jobs.
2. In the beginning of the next period, uncertainties for this new period (such as number
of alarmed/failed turbines, weather conditions) are realized. Now we need to decide the
maintenance action for this period and the labor hours (and other resources) should be
changed adaptively.
3.1
Model Formulation
1. Policy
Once the set of turbines in the failed state or alarmed state are known in the beginning
of the period, all the turbines in these states should be fixed during the period.
2. Rationale
In the power industry, availability of generators are very important. Thus, all of the
turbines need to be available almost any time to meed the load (energy demand).
3. Assumptions
• All of the necessary parts and equipments are available when needed.
• In the beginning of the period, we know the number of the current failed/alarmed
turbines.
4. Decisions
Adequate manpower should be decided to fix all of the alarmed or failed turbines. That
is,
5
• first stage decision variable: Adjusted man power to fix all of the current alarmed
or failed turbines. Man-power preparation for the next period.
• second stage decision variable: Adjusted man power to fix all of the alarmed or
failed turbines in the next stage.
5. Notation
Data: Sets
• I: Index set of jobs (or index of failure modes)
• J: Condition state (2=alarm state, 3=failure state)
• K: Index set of required skills
• Ω: Set of scenarios
Data: Stage 1 and Stage 2
• c1k : Unit labor cost for unscheduled (or outsourced) manpower with skill k
• c2k : Unit labor cost for reserved (or, scheduled, pre-assigned) manpower with skill
k. In general, c1k > c2k .
• hijk : # Hours needed for repairing one turbine in ith failure mode, j th state which
requires k th skill.
• gij : Repairing cost to fix one turbine in ith failure mode, j th state. Repairing cost
includes parts cost and equipment usage cost. In general, repairing cost to fix a
failed turbine is more expensive than to fix an alarmed turbine. That is, gi2 ≤ gi3
• N : Total number of turbines
Data: Stage 1
• Hk : Pre-assigned labor hour with skill k for the current period
• nij : # turbines in ith failure mode, j th state (known, fixed).
Data: Stage 2
• pω : Probability of scenario ω ∈ Ω.
6
• τijω : # turbines in ith failure mode, j th state under scenario ω ∈ Ω
Decision Variables: Stage 1
• x1k : Labor hours for k th skill to be added after the turbine states for the current
period are realized
• x2k : Labor hours for k th skill reserved for anticipated jobs in the next period
Decision Variables: Stage 2
ω : Added (unscheduled, outsourced) labor hours for k th skill under scenario ω ∈ Ω
• y1k
6. Model formulation (SP1 )
min
X
X
c1k x1k +
k∈K
c2k x2k +
XX
gij nij + E[f (x, ω̃)]
(1)
i∈I j∈J
k∈K
s.t.
x1k ≥
XX
nij hijk − Hk , ∀k ∈ K
(2)
i∈I j∈J
x1k , x2k ≥ 0, , ∀k ∈ K
for each outcome ω ∈ Ω,
XX
X
ω
+
gij τijω
f (x, ω) = min
c1k y1k
where,
(3)
i∈I j∈J
k∈K
s.t.
ω
y1k
≥
XX
τijω hijk − x2k , ∀k ∈ K
i∈I j∈J
ω
y1k
≥ 0, ∀k ∈ K
The first stage objective function (i.e., Equation (1)) includes
• Adjusted labor cost for the current period
• Reserved labor cost for the next period
• Repairing cost for alarmed or failed turbines for the current period
• Expected cost for the next period
7
(4)
The constraint, Equation (2), adjusts the labor hours to fix all of turbines under maintenance consideration. The total acquired labor hour, that is, reserved hour plus adjusted
hour (=Hk + x1k ) should be greater than, or equal to the total required labor hour,
P P
i∈I
j∈J nij hijk .
Similarly, the second stage objective function (i.e., Equation (3)) includes the adjusted
labor cost and the repairing cost for alarmed or failed turbines in the second stage. The
constraint Equation (4) also adjusts the labor hours to fix all of alarmed or failed turbines
in the second stage.
7. Scenarios
Uncertainty comes from the number of alarmed or failed turbine components in the
second period (τij , i ∈ I, j ∈ J = {2, 3}). Thus the maximum number of scenarios is
|I|
N (N +1)
, where | · | refers the cardinality of set and N is the number of total turbines
2
in the wind farm.
8. Implementation
Model SP1 is the two-stage stochastic problem. Thus it can be solved by the Bender’s
decomposition, or L-shaped algorithm.
9. Restriction of SP1
• No consideration of setup cost (ex. a binary variable might need to be introduced
to add setup cost. For example, suppose that z is the variable to indicate whether
the maintenance action is carried out. Then, z = 1 if there are any failed or alarmed
turbines).
• What if we want to incorporate the case that the alarmed/failed turbines in the
current stage doesn’t necessarily need to be fixed now, but to be delayed to the
following periods? In this case, the randomness (or scenarios) will depend on the
first-stage decision. The model (SP2 ) introduced in Section 5 models this situation
by extending the current model.
8
4
Illustrative Example of SP1
In this example, we consider two failure modes: gearbox and control. The relevant data are
summarized in Table 1.
Table 1: Relevant data
(a)unit repairing cost (gij )
gearbox
control
alarmed
4,200
2,100
failed
8,400
3,000
(b) reparing hour (hijk )
gearbox
control
alarmed
36
6
failed
72
12
(c) unit labor cost (c1k , c2k )
gearbox
control
adjusted
80
100
reserved
60
70
1. First horizon
In the very first beginning, it’s not likely to have any alarmed or failed turbine in practice. So we didn’t have any reserved labor hour. Thus, the data for the first-stage is as
in Table 2.
However, we expect some of the turbine components will have problems in the next
horizon. Table 3 shows the distribution of the number of alarmed/failed components
in each failure mode. Assuming the independence between gearbox failures and control
failures, we have eight possible scenarios with the corresponding probabilities.
9
Table 2: first stage data
(a)number of turbines (nij )
gearbox
control
alarmed
0
0
failed
0
0
(b) Reserved labor hour (Hk )
gearbox
control
0
0
With the data from Table 1 to Table 3, the values of decision variables are as in Table
4. Since there are no turbines to be fixed right now, we don’t have to adjust the labor
hour for the current horizon. But based on the information about the possible failures
in the next horizon, we prepare the labor hours: 288 hours and 144 hours for gearbox,
control maintenance, respectively. Once the specific scenario is realized in the next period
(i.e., once we know the number of alarmed/failed turbines in each failure mode in the
beginning of the second period), we can add the necessary labor hours as shown in Table
4(b). For example, we have to add 108 labor hours for gearbox maintenance if scenario
#3 is observed. The total expected cost for the first period and second period is $45,130.
2. Second horizon
Suppose that scenario #3 is realized. That is, we observe three alarmed/four failed
gearboxes and 5 alarmed/7 failed controls. From the table 4(a), the reserved labor hours
were 288 and 114 hours each for gearbox and control maintenance. Then, we need to
add 108 labor hours for gearbox maintenance (See table 6(a)), which is same as in the
row of scenario #3 of 4(b). The reason that we have same result is that we use rolling
horizon manner.
Also, suppose that the possible scenarios and the corresponding probabilities of the next
(third) horizon are given as in Table 5. Then, we need to prepare the 504 hours and
198 hours for these possible alarms/failures. Once the specific scenario is observed in the
next period, we should adapt the labor hour as shown in (See table 6(b)).
10
Table 3: Distribution of # alarmed/failed turbine components for second period
(a)gearbox (τ1j )
alarmed
failed
probability
3
2
0.2
3
4
0.25
4
2
0.3
4
7
0.25
(b) control (τ2j )
alarmed
failed
probability
5
7
0.55
7
10
0.45
Same process can be applied in later horizons. Figure 3 shows the summary of the decision
process.
5
Model Extension (SP2 )
In the previous model SP1, we assumed that all of the alarmed or failed turbines should be
fixed during the period. That is, we didn’t allow the delay of the maintenance jobs. This may
not be cost-effective for some situation. Suppose that the wind farm is located very far from
the operation center. Offshore wind farm will be a good example. If only one turbine is in the
alarmed state, carrying out maintenance jobs won’t be economical because every maintenance
involves costly action to carry huge cranes, etc (even vessels if the turbines are offshore).
The second model (SP2 ) extends the first model by incorporating the decision about whether
we dispatch crew for maintenance jobs or delay the action.
1. Policy
Once the set of turbines in the alarmed/failed states are known in the beginning of the
period, we will decide to carry out maintenance action or not. If we decide to dispatch
11
Table 4: Result for first horizon
(a) first stage variable (x1k , x2k )
labor hour
gearbox
control
adjusted hour for the first horizon
0
0
reserved hour for the second horizon
288
144
(b) second stage variable (y1k )
adjusted hour for second period
gearbox
control
scenario #1
0
0
scenario #2
0
48
scenario #3
108
0
scenario #4
108
48
scenario #5
0
0
scenario #6
0
48
scenario #7
360
0
scenario #8
360
48
crew, all of the alarmed/failed turbines will be fixed during the period.
2. Rationale
We want to minimize the total cost. Cost include the setup cost for maintenance action,
labor cost, repairing cost, and also revenue losses. Dispatching crew itself requires expensive setup cost. Thus we may want to fix multiple turbines through one visit. On the
other hand, delaying the maintenance action cause another costs too. We may lose revenue from the failed, thus stopped turbines. Also, if the alarmed turbines are transited
to the failed state by delaying maintenance, the repairing cost to fix these failed turbines
can be increased (See Table 7).
3. Assumptions
12
Table 5: Distribution of # alarmed/failed turbines for second period
(a)gearbox (τ1j )
alarmed
failed
probability
3
4
0.15
4
5
0.35
4
6
0.3
5
7
0.2
(b) control (τ2j )
alarmed
failed
probability
9
12
0.6
10
15
0.4
• All of the necessary parts and equipments are available when needed.
• In the beginning of the period, we know the number of the current alarmed/failed
turbines, weather conditions during the period.
4. Decisions
In addition to deciding adequate man power as in SP1, we decide whether to carry out
maintenance action or delay it in each period. That is,
• First stage decision variable: Whether to carry out maintenance in the current
stage. If so, adjusted man power to fix all of the current alarmed or failed turbines.
And man power preparation for the next period.
• Second stage decision variable: Whether to carry out maintenance in the next stage.
If so, adjusted man power to fix all of the alarmed or failed turbines.
5. Notation
The newly added notations are as follows.
13
Table 6: Result for second horizon
(a) first stage variable (x1k , x2k )
labor hour
gearbox
control
adjusted hour for the first horizon
108
0
reserved hour for the second horizon
504
198
(b) second stage variable (y1k )
adjusted hour for second period
gearbox
control
scenario #1
0
0
scenario #2
0
42
scenario #3
0
0
scenario #4
0
42
scenario #5
72
0
scenario #6
72
42
scenario #7
108
0
scenario #8
108
42
Data: Stage 1 and Stage 2
• S: Setup cost for maintenance action
Data: Stage 1
• l: Revenue losses from one failed turbine if not maintained in the current period
(known)
Table 7: Cost trade-off
Maintenance action
Relevant costs
Doing nothing
revenue losses from failed turbines,
increased repair cost
Carrying our maintenance
setup cost
14
horizon #1
horizon #2
Labor hour
Gearbox
control
Gearbox
control
Reserved hour for current epoch
0
0
288
144
Adjusted hour for current epoch
0
0
108
0
Reserved hour for next epoch
288
144
504
198
Scenario #3 realized
horizon #3
Scenario #6 realized
horizon #4
Gearbox
control
Gearbox
control
504
198
1152
168
72
42
0
0
1152
168
1980
210
Figure 3: Summary of decision process
• nf : Number of turbines in failed state of any failure mode. Note that nf ≤
P
i∈I
ni3 .
The inequality holds when any turbine is in the failed state of more than two failure
modes.
• L1 : Minimum number of turbines that should be operated in the first period to
meet the load
Data: Stage 2
• θω : Revenue losses from one failed turbine if not maintained in the second period
under scenario ω ∈ Ω. This parameter value will depend on weather condition
because the amount of power generation depends on the weather condition. For
example, more power is generated in the windy season.
0
• nijω : The number of turbines in ith failure mode, j th state in the second period
among the alarmed/failed turbines in the previous period. When not maintained
in the previous period, some of turbines in alarmed state can be transited to failed
state.
0
• nfω : The number of failed turbines in the second period among the alarmed/failed
P
0
0
turbines in the previous period. Note that nfω ≤ i∈I ni3ω . The inequality holds
when some turbines are in the failed state of more than two failure modes.
15
• τijω : The number of newly observed alarmed/failed turbines in the second stage
under scenario ω ∈ Ω, which were not in alarmed/failed states in the first stage.
• τfω : # turbines in failed state of any failure mode under scenario ω ∈ Ω. Note that
P
ω.
τfω ≤ i∈I τi3
• L2 : Minimum number of turbines that should be operated in the second period to
meet the load
Decision Variables: Stage 1
• x3 : Binary variable to represent whether to carry out maintenance action in the
current period (x3 = 0 if doing nothing, x3 = 1 if doing maintenance)
Decision Variables: Stage 2
• y3ω : Binary variable to represent whether to carry out maintenance action in the next
period under scenario ω ∈ Ω (y3 = 0 if doing nothing, y3 = 1 if doing maintenance)
6. Model formulation (SP2 )
16

min
Sx3 +
X
c1k x1k +
k∈K
X
c2k x2k + 

XX
gij nij  x3 + l · nf (1 − x3 )
i∈I j∈J
k∈K
+E[f (x, ω̃)]
(5)
s.t.

x1k ≥ 

XX
nij hijk  x3 − Hk , ∀k ∈ K
(6)
i∈I j∈J
N − nf (1 − x3 ) ≥ L1
(7)
x3 = {0, 1}, x1k , x2k ≥ 0, ∀k ∈ K
for each outcome ω ∈ Ω,


XX
X
0
ω
+
gij (τijω + (1 − x3 )nijω ) y3
f (x, ω) = min Sy3 +
c1k y1k
where,
i∈I j∈J
k∈K
+θ
ω
(τfω
0ω
+ (1 − x3 )nf )(1 − y3 )
(8)
s.t.
ω
y1k


XX
0
≥
τijω + (1 − x3 )nijω hijk  y3 − x2k , ∀k ∈ K
(9)
i∈I j∈J
0
N − (τfω + (1 − x3 )nfω )(1 − y3 ) ≥ L2
(10)
ω
≥ 0, ∀k ∈ K
y3 = {0, 1}, y1k
The first stage objective function, that is, Equation (5) includes
• Setup cost for the current period
• Adjusted labor cost for the current period. Note that when we decide doing nothing,
we don’t have to add extra man-power. This is satisfied in Equation (5) and (6).
When x3 = 0, x1k ≥ 0 holds in the constraint (6) all the time. And the problem
P
will force to x1k = 0 to minimize the corresponding objective value k∈K c1k x1k .
When x3 = 1, Equation (6) equals to (2) in the previous model.
• Reserved labor cost for the next period
• Repairing cost for alarmed or failed turbines
• Revenue losses when not fixing the failed turbines in the current period
• Expected cost for the next period
17
Equation (7) is availability condition. To meat the energy demand (load), at least some
number of turbines should be operated.
In the second stage, the number of alarmed/failed turbines in ith failure mode, j th state
0
is τijω + (1 − x3 )nijω . τijω is the number of newly observed alarmed/failed turbines in the
second stage, which were not in alarmed/failed states in the first stage, and n0ij represent
the number of turbines in ith failure mode, j th state in the second period among the
alarmed/failed turbines in the previous period. When not maintained in the previous
period, n0ik will not be necessarily same as nik because some alarmed turbines can move
to the failed state. Therefore, the number of alarmed/failed turbines in the second stage
will depend on first-stage decision.
0
Similarly, τfω + (1 − x3 )nfω is the number of the total failed turbines in the second stage.
7. Scenarios
Uncertainty comes from several factors, which include the number of alarmed or failed
turbines in the next period (τijω , i ∈ I, j ∈ J = {2, 3}), how many alarmed turbines in
the first period will transit to the failed state in the second period when not maintained,
and the possible number of revenue losses. Thus the maximum number of scenarios is
|I|
N (N +1)
×N |I| ×(# possible values of revenue losses). The number of possible values
2
of revenue losses will be infinite because revenue loss is continuous random variable. So
we may need the discrete approximation approach ([6]).
8. Implementation
Model SP2 is the two-stage mixed integer(binary) stochastic problem. Both of the master
problem and subproblem has one binary decision variable and other continuous variables.
So it cannot be solved by the L-shaped or binary first-stage algorithm, but should be
solved by other decomposition algorithms.
9. Restriction of SP2
• In the first model SP1, the scenarios in the second stage don’t depend on the
first-stage decision. But in this model, the scenarios depend on whether there is
18
maintenance action in the first stage. Thus, the first and second stage decision
will affect the scenarios in the next stages. So we may need to add the expected
˜ in the second stage objective function. This makes the problem as
cost E(x, y, ω)
multi-stage problem.
6
Conclusion
In this project, two stochastic programming (SP) optimization models are suggested for wind
farm operation and maintenance. Both models are based on a rolling horizon decision process.
In the first model, necessary labor hours are prepared and adjusted using the most recent
information to fix any alarmed or failed turbine components. The second model extends the
first model. In the second model, we can delay the maintenance action in later horizons if the
number of alarmed/failed components are small and setup cost is huge. The first model can be
implemented using Benders decomposition or L-shaped algorithm. The second model involves
one binary decision variable in each stage, and thus different algorithm is needed.
This work provides a dynamic data-driven framework for wind farm operation and maintenance policy, which will enable a cost-effective generation of wind electricity. And the progress
in wind turbines will also benefit the power generation, automobile, aerospace, and engine
industries.
We need to extend the current SP optimization models by incorporating more sophisticated uncertainty factors and also to multi-period decision model. Also, the SP model will be
Integrated with simulation whereby, the simulation generates the necessary data and validates
the optimal policies from the optimization model.
19
References
[1] World Wind Energy Association Statistics, Jan. 2007
[2] Y. Ding, E. Byon, C. Park, J. Tang, Y. Lu,and X. Wang, Dynamic Data-Driven Fault
Diagnosis of Wind Turbine Systems, ICCS 2007, Part I, LNCS 4487, pp. 1197-1204, 2007.
[3] M. Shahidehpour and M. Marwali, Maintenance Scheduling in Restructured Power Systems,
Kluwer Academic Publishers, Norwell, Massachusetts, 2000.
[4] G.J.W.van Bussel and M.B.Zaaijer, Reliability, Availability and Maintenance aspects of
large-scale offshore wind farms, a concepts study, Marine Renewable Energy Conference
(MAREC), March 2001
[5] L.Mann, A.Saxena and G.M.Knapp, Statistical-based or Condition-based Preventive Maintenance?, Journal of Quality in Maintenance Engineering, Volume 1, Number 1, 1995, pp.
46-59(14)
[6] R.Schultz, Continuity Properties of Expectation Functions in Stochastic Integer Programming, Mathematics of Operations Research 18, 578-589
20
Download